{"id":2942,"date":"2014-08-01T23:55:25","date_gmt":"2014-08-01T14:55:25","guid":{"rendered":"http:\/\/lepetit-prince.net\/ios\/?p=2942"},"modified":"2014-08-01T23:55:25","modified_gmt":"2014-08-01T14:55:25","slug":"%e3%81%8f%e3%81%ad%e3%81%8f%e3%81%ad%e3%83%9c%e3%83%bc%e3%83%aa%e3%83%b3%e3%82%b0","status":"publish","type":"post","link":"https:\/\/lepetit-prince.net\/ios\/?p=2942","title":{"rendered":"\u304f\u306d\u304f\u306d\u30dc\u30fc\u30ea\u30f3\u30b0"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/-jcoZlPtVzQE\/U9uphSaXD3I\/AAAAAAAACew\/i88iV248PHA\/s288\/Screen%2520Shot%25202014-08-01%2520at%252011.50.33%2520PM.png\" width=\"288\" height=\"188\" alt=\"iPhone\u304f\u306d\u3063\u3068\u30dc\u30fc\u30ea\u30f3\u30b0\" class=\"alignnone\" \/><\/p>\n<p><\/p>\n<p>\u304f\u306d\u304f\u306d\u3057\u3066\u3044\u308b\u30d4\u30f3\u3092\u4f55\u500b\u306f\u3058\u304d\u98db\u3070\u305b\u308b\u304b\uff01\u3068\u3044\u3046IPhone\u30a2\u30d7\u30ea\u306e\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3092\u63cf\u3044\u3066\u307f\u307e\u3059\u3002\n<\/p>\n<p><!--more--><\/p>\n<p>\n<iframe loading=\"lazy\" width=\"467\" height=\"350\" src=\"https:\/\/www.youtube.com\/embed\/V5geB7vn8Bw?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #d12f1b\"><span style=\"color: #78492a\">#import <\/span>&#8220;ViewController.h&#8221;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span style=\"color: #bb2ca2\">@import<\/span> SpriteKit;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #bb2ca2\">@interface<\/span><span style=\"color: #000000\"> BowlingScene : <\/span>SKScene<span style=\"color: #000000\"> &lt;<\/span>SKPhysicsContactDelegate<span style=\"color: #000000\">&gt;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #bb2ca2\">@property<span style=\"color: #000000\"> (<\/span>nonatomic<span style=\"color: #000000\">) <\/span><span style=\"color: #703daa\">uint8_t<\/span><span style=\"color: #000000\"> move;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #bb2ca2\">@property<span style=\"color: #000000\"> (<\/span>nonatomic<span style=\"color: #000000\">, <\/span>weak<span style=\"color: #000000\">) <\/span><span style=\"color: #703daa\">SKNode<\/span><span style=\"color: #000000\"> *selected;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #bb2ca2\">@property<span style=\"color: #000000\"> (<\/span>nonatomic<span style=\"color: #000000\">) <\/span><span style=\"color: #703daa\">CGPoint<\/span><span style=\"color: #000000\"> start;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #bb2ca2\">@end<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #bb2ca2\">@implementation<span style=\"color: #000000\"> BowlingScene<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)didMoveToView:(<span style=\"color: #703daa\">SKView<\/span> *)view<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">{<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span>physicsBody<span style=\"color: #000000\"> = [<\/span>SKPhysicsBody<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">bodyWithEdgeLoopFromRect<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span>frame<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span>physicsBody<span style=\"color: #000000\">.<\/span>categoryBitMask<span style=\"color: #000000\"> = <\/span><span style=\"color: #272ad8\">0x1<\/span><span style=\"color: #000000\"> &lt;&lt; <\/span><span style=\"color: #272ad8\">3<\/span><span style=\"color: #000000\">;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span>physicsWorld<span style=\"color: #000000\">.<\/span>gravity<span style=\"color: #000000\"> = <\/span><span style=\"color: #3d1d81\">CGVectorMake<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #272ad8\">0<\/span><span style=\"color: #000000\">, <\/span><span style=\"color: #272ad8\">0<\/span><span style=\"color: #000000\">);<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span>physicsWorld<span style=\"color: #000000\">.<\/span>contactDelegate<span style=\"color: #000000\"> = <\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #31595d\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\"> <\/span>createLabel<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #31595d\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\"> <\/span>createPin<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #31595d\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\"> <\/span>createBall<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)createPin<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">{<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">UIBezierPath<\/span> *path = [<span style=\"color: #703daa\">UIBezierPath<\/span> <span style=\"color: #3d1d81\">bezierPathWithRect<\/span>:<span style=\"color: #3d1d81\">CGRectMake<\/span>(-<span style=\"color: #272ad8\">10<\/span>, &#8211;<span style=\"color: #272ad8\">4<\/span>, <span style=\"color: #272ad8\">20<\/span>, <span style=\"color: #272ad8\">8<\/span>)];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SKNode<\/span> *tmp;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">for<\/span> (<span style=\"color: #bb2ca2\">int<\/span> i=<span style=\"color: #272ad8\">0<\/span>; i&lt;<span style=\"color: #272ad8\">30<\/span>; i++) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">float<\/span> x = <span style=\"color: #3d1d81\">CGRectGetMidX<\/span>(<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #703daa\">frame<\/span>);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">float<\/span> y = <span style=\"color: #3d1d81\">CGRectGetMaxY<\/span>(<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #703daa\">frame<\/span>) &#8211; i * <span style=\"color: #272ad8\">15<\/span> &#8211; <span style=\"color: #272ad8\">30<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0 \u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><\/span>SKShapeNode<span style=\"color: #000000\"> *p = [<\/span>SKShapeNode<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">node<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>p.<span style=\"color: #703daa\">name<\/span> = (i == <span style=\"color: #272ad8\">0<\/span>) ? <span style=\"color: #d12f1b\">@&#8221;topPin&#8221;<\/span> : <span style=\"color: #d12f1b\">@&#8221;pin&#8221;<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>p.<span style=\"color: #703daa\">position<\/span> = <span style=\"color: #3d1d81\">CGPointMake<\/span>(x, y);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>p.<span style=\"color: #703daa\">path<\/span> = path.<span style=\"color: #703daa\">CGPath<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>p.<span style=\"color: #703daa\">fillColor<\/span> = [<span style=\"color: #78492a\">SKColor<\/span> <span style=\"color: #3d1d81\">clearColor<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>p.<span style=\"color: #703daa\">strokeColor<\/span> = [<span style=\"color: #78492a\">SKColor<\/span> <span style=\"color: #3d1d81\">yellowColor<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>p.<span style=\"color: #703daa\">lineWidth<\/span> = <span style=\"color: #272ad8\">3<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span> <span style=\"color: #3d1d81\">addChild<\/span>:p];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0 \u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>p.<\/span><span style=\"color: #703daa\">physicsBody<\/span><span style=\"color: #000000\"> = [<\/span><span style=\"color: #703daa\">SKPhysicsBody<\/span><span style=\"color: #000000\"> <\/span>bodyWithRectangleOfSize<span style=\"color: #000000\">:<\/span>CGSizeMake<span style=\"color: #000000\">(<\/span><span style=\"color: #272ad8\">20<\/span><span style=\"color: #000000\">, <\/span><span style=\"color: #272ad8\">8<\/span><span style=\"color: #000000\">)];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>p.<\/span>physicsBody<span style=\"color: #000000\">.<\/span>density<span style=\"color: #000000\"> = <\/span><span style=\"color: #272ad8\">0.05<\/span><span style=\"color: #000000\">;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>p.<\/span>physicsBody<span style=\"color: #000000\">.<\/span>categoryBitMask<span style=\"color: #000000\"> = <\/span><span style=\"color: #272ad8\">0x1<\/span><span style=\"color: #000000\"> &lt;&lt; <\/span><span style=\"color: #272ad8\">1<\/span><span style=\"color: #000000\">;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>p.<\/span>physicsBody<span style=\"color: #000000\">.<\/span>contactTestBitMask<span style=\"color: #000000\"> = <\/span><span style=\"color: #272ad8\">0x1<\/span><span style=\"color: #000000\"> &lt;&lt; <\/span><span style=\"color: #272ad8\">1<\/span><span style=\"color: #000000\">;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0 \u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><\/span>SKPhysicsJointSliding<span style=\"color: #000000\"> *sl = [<\/span>SKPhysicsJointSliding<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">jointWithBodyA<\/span><span style=\"color: #000000\">:p.<\/span>physicsBody<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">bodyB<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span>physicsBody<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">anchor<\/span><span style=\"color: #000000\">:p.<\/span>position<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">axis<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #3d1d81\">CGVectorMake<\/span><span style=\"color: #000000\">(<\/span><span style=\"color: #272ad8\">1<\/span><span style=\"color: #000000\">, <\/span><span style=\"color: #272ad8\">0<\/span><span style=\"color: #000000\">)];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #703daa\">physicsWorld<\/span> <span style=\"color: #3d1d81\">addJoint<\/span>:sl];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0 \u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">if<\/span> (tmp) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/span><\/span>SKPhysicsJointSpring<span style=\"color: #000000\"> *spring = [<\/span>SKPhysicsJointSpring<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">jointWithBodyA<\/span><span style=\"color: #000000\">:p.<\/span>physicsBody<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">bodyB<\/span><span style=\"color: #000000\">:tmp.<\/span>physicsBody<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">anchorA<\/span><span style=\"color: #000000\">:p.<\/span>position<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">anchorB<\/span><span style=\"color: #000000\">:tmp.<\/span>position<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/span>spring.<span style=\"color: #703daa\">frequency<\/span> = <span style=\"color: #272ad8\">0.7<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/span>spring.<span style=\"color: #703daa\">damping<\/span> = <span style=\"color: #272ad8\">1.0<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #703daa\">physicsWorld<\/span> <span style=\"color: #3d1d81\">addJoint<\/span>:spring];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0 \u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>tmp = p;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)createBall<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">{<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #703daa\">UIBezierPath<\/span><span style=\"color: #000000\"> *path = [<\/span><span style=\"color: #703daa\">UIBezierPath<\/span><span style=\"color: #000000\"> <\/span>bezierPathWithArcCenter<span style=\"color: #000000\">:<\/span><span style=\"color: #703daa\">CGPointZero<\/span><span style=\"color: #000000\"> <\/span>radius<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">15<\/span><span style=\"color: #000000\"> <\/span>startAngle<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">0<\/span><span style=\"color: #000000\"> <\/span>endAngle<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">2.0<\/span><span style=\"color: #000000\">*<\/span><span style=\"color: #78492a\">M_PI<\/span><span style=\"color: #000000\"> <\/span>clockwise<span style=\"color: #000000\">:<\/span><span style=\"color: #bb2ca2\">NO<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span>SKShapeNode<span style=\"color: #000000\"> *ball = [<\/span>SKShapeNode<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">node<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>ball.<span style=\"color: #703daa\">name<\/span> = <span style=\"color: #d12f1b\">@&#8221;ball&#8221;<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>ball.<span style=\"color: #703daa\">path<\/span> = path.<span style=\"color: #703daa\">CGPath<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>ball.<\/span><span style=\"color: #703daa\">position<\/span><span style=\"color: #000000\"> = <\/span>CGPointMake<span style=\"color: #000000\">(<\/span>CGRectGetMidX<span style=\"color: #000000\">(<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span><span style=\"color: #703daa\">frame<\/span><span style=\"color: #000000\">), <\/span><span style=\"color: #272ad8\">60<\/span><span style=\"color: #000000\">);<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>ball.<span style=\"color: #703daa\">lineWidth<\/span> = <span style=\"color: #272ad8\">8<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span> <span style=\"color: #3d1d81\">addChild<\/span>:ball];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)createLabel {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span>SKLabelNode<span style=\"color: #000000\"> *score = [<\/span>SKLabelNode<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">node<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>score.<span style=\"color: #703daa\">name<\/span> = <span style=\"color: #d12f1b\">@&#8221;score&#8221;<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>score.<span style=\"color: #703daa\">text<\/span> = <span style=\"color: #d12f1b\">@&#8221;00&#8243;<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>score.<\/span><span style=\"color: #703daa\">fontColor<\/span><span style=\"color: #000000\"> = [[<\/span><span style=\"color: #78492a\">SKColor<\/span><span style=\"color: #000000\"> <\/span>whiteColor<span style=\"color: #000000\">] <\/span>colorWithAlphaComponent<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">0.2<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>score.<span style=\"color: #703daa\">fontSize<\/span> = <span style=\"color: #272ad8\">200<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>score.<span style=\"color: #703daa\">position<\/span> = <span style=\"color: #3d1d81\">CGPointMake<\/span>(<span style=\"color: #272ad8\">160<\/span>, <span style=\"color: #272ad8\">300<\/span>);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span> <span style=\"color: #3d1d81\">addChild<\/span>:score];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)update:(<span style=\"color: #703daa\">NSTimeInterval<\/span>)currentTime<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">{<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SKNode<\/span> *pin = [<span style=\"color: #bb2ca2\">self<\/span> <span style=\"color: #3d1d81\">childNodeWithName<\/span>:<span style=\"color: #d12f1b\">@&#8221;topPin&#8221;<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">if<\/span> (<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">move<\/span> == <span style=\"color: #272ad8\">1<\/span>) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>pin.<span style=\"color: #703daa\">physicsBody<\/span>.<span style=\"color: #703daa\">velocity<\/span> = <span style=\"color: #3d1d81\">CGVectorMake<\/span>(<span style=\"color: #272ad8\">60<\/span>, <span style=\"color: #272ad8\">0<\/span>);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">if<\/span> (pin.<span style=\"color: #703daa\">position<\/span>.<span style=\"color: #703daa\">x<\/span> &gt; <span style=\"color: #272ad8\">300<\/span>) <span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">move<\/span> = <span style=\"color: #272ad8\">0<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>} <span style=\"color: #bb2ca2\">else<\/span> {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>pin.<span style=\"color: #703daa\">physicsBody<\/span>.<span style=\"color: #703daa\">velocity<\/span> = <span style=\"color: #3d1d81\">CGVectorMake<\/span>(-<span style=\"color: #272ad8\">60<\/span>, <span style=\"color: #272ad8\">0<\/span>);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">if<\/span> (pin.<span style=\"color: #703daa\">position<\/span>.<span style=\"color: #703daa\">x<\/span> &lt; <span style=\"color: #272ad8\">20<\/span>) <span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">move<\/span> = <span style=\"color: #272ad8\">1<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)touchesBegan:(<span style=\"color: #703daa\">NSSet<\/span> *)touches withEvent:(<span style=\"color: #703daa\">UIEvent<\/span> *)event<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">{<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">CGPoint<\/span> p = [[touches <span style=\"color: #3d1d81\">anyObject<\/span>] <span style=\"color: #3d1d81\">locationInNode<\/span>:<span style=\"color: #bb2ca2\">self<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SKNode<\/span> *hit = [<span style=\"color: #bb2ca2\">self<\/span> <span style=\"color: #3d1d81\">nodeAtPoint<\/span>:p];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">if<\/span> ([hit.<span style=\"color: #703daa\">name<\/span> <span style=\"color: #3d1d81\">isEqual<\/span>:<span style=\"color: #d12f1b\">@&#8221;ball&#8221;<\/span>]) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">selected<\/span> = hit;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">start<\/span> = p;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)touchesMoved:(<span style=\"color: #703daa\">NSSet<\/span> *)touches withEvent:(<span style=\"color: #703daa\">UIEvent<\/span> *)event<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">{<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">CGPoint<\/span> p = [[touches <span style=\"color: #3d1d81\">anyObject<\/span>] <span style=\"color: #3d1d81\">locationInNode<\/span>:<span style=\"color: #bb2ca2\">self<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">selected<\/span>.<span style=\"color: #703daa\">position<\/span> = p;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SKShapeNode<\/span> *guide = (<span style=\"color: #703daa\">SKShapeNode<\/span> *)[<span style=\"color: #bb2ca2\">self<\/span> <span style=\"color: #3d1d81\">childNodeWithName<\/span>:<span style=\"color: #d12f1b\">@&#8221;guide&#8221;<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">if<\/span> (!guide) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>guide = [<span style=\"color: #703daa\">SKShapeNode<\/span> <span style=\"color: #3d1d81\">node<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>guide.<span style=\"color: #703daa\">name<\/span> = <span style=\"color: #d12f1b\">@&#8221;guide&#8221;<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>guide.<span style=\"color: #703daa\">strokeColor<\/span> = [<span style=\"color: #78492a\">SKColor<\/span> <span style=\"color: #3d1d81\">purpleColor<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>guide.<span style=\"color: #703daa\">lineWidth<\/span> = <span style=\"color: #272ad8\">2<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span> <span style=\"color: #3d1d81\">addChild<\/span>:guide];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #703daa\">UIBezierPath<\/span><span style=\"color: #000000\"> *path = [<\/span><span style=\"color: #703daa\">UIBezierPath<\/span><span style=\"color: #000000\"> <\/span>bezierPathWithArcCenter<span style=\"color: #000000\">:<\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span><span style=\"color: #4f8187\">start<\/span><span style=\"color: #000000\"> <\/span>radius<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">4<\/span><span style=\"color: #000000\"> <\/span>startAngle<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">0<\/span><span style=\"color: #000000\"> <\/span>endAngle<span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">2.0<\/span><span style=\"color: #000000\">*<\/span><span style=\"color: #78492a\">M_PI<\/span><span style=\"color: #000000\"> <\/span>clockwise<span style=\"color: #000000\">:<\/span><span style=\"color: #bb2ca2\">YES<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[path <span style=\"color: #3d1d81\">moveToPoint<\/span>:<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">start<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[path <span style=\"color: #3d1d81\">addLineToPoint<\/span>:p];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>guide.<span style=\"color: #703daa\">path<\/span> = path.<span style=\"color: #703daa\">CGPath<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)touchesEnded:(<span style=\"color: #703daa\">NSSet<\/span> *)touches withEvent:(<span style=\"color: #703daa\">UIEvent<\/span> *)event<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">{<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">CGPoint<\/span> p = [[touches <span style=\"color: #3d1d81\">anyObject<\/span>] <span style=\"color: #3d1d81\">locationInNode<\/span>:<span style=\"color: #bb2ca2\">self<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">CGVector<\/span> v = <span style=\"color: #3d1d81\">CGVectorMake<\/span>(<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">start<\/span>.<span style=\"color: #703daa\">x<\/span> &#8211; p.<span style=\"color: #703daa\">x<\/span>, <span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">start<\/span>.<span style=\"color: #703daa\">y<\/span> &#8211; p.<span style=\"color: #703daa\">y<\/span>);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #008400\">\/\/<span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>v = CGVectorMake(10.0 * v.dx, 10.0 * v.dy);<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #008400\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span>\/\/ ball physicsBody<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span><span style=\"color: #4f8187\">selected<\/span><span style=\"color: #000000\">.<\/span>physicsBody<span style=\"color: #000000\"> = [<\/span>SKPhysicsBody<span style=\"color: #000000\"> <\/span><span style=\"color: #3d1d81\">bodyWithCircleOfRadius<\/span><span style=\"color: #000000\">:<\/span><span style=\"color: #272ad8\">13<\/span><span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span><span style=\"color: #4f8187\">selected<\/span><span style=\"color: #000000\">.<\/span>physicsBody<span style=\"color: #000000\">.<\/span>density<span style=\"color: #000000\"> = <\/span><span style=\"color: #272ad8\">10.0<\/span><span style=\"color: #000000\">;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span><span style=\"color: #4f8187\">selected<\/span><span style=\"color: #000000\">.<\/span>physicsBody<span style=\"color: #000000\">.<\/span>categoryBitMask<span style=\"color: #000000\"> = <\/span><span style=\"color: #272ad8\">0x1<\/span><span style=\"color: #000000\"> &lt;&lt; <\/span><span style=\"color: #272ad8\">2<\/span><span style=\"color: #000000\">;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #703daa\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><\/span><span style=\"color: #bb2ca2\">self<\/span><span style=\"color: #000000\">.<\/span><span style=\"color: #4f8187\">selected<\/span><span style=\"color: #000000\">.<\/span>physicsBody<span style=\"color: #000000\">.<\/span>contactTestBitMask<span style=\"color: #000000\"> = <\/span><span style=\"color: #272ad8\">0x1<\/span><span style=\"color: #000000\"> &lt;&lt; <\/span><span style=\"color: #272ad8\">1<\/span><span style=\"color: #000000\">;<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">selected<\/span>.<span style=\"color: #703daa\">physicsBody<\/span> <span style=\"color: #3d1d81\">applyImpulse<\/span>:v];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #4f8187\">selected<\/span> = <span style=\"color: #bb2ca2\">nil<\/span>;<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)didBeginContact:(<span style=\"color: #703daa\">SKPhysicsContact<\/span> *)contact<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">{<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #bb2ca2\">if<\/span> ([contact.<span style=\"color: #703daa\">bodyA<\/span>.<span style=\"color: #703daa\">node<\/span>.<span style=\"color: #703daa\">name<\/span> <span style=\"color: #3d1d81\">isEqualToString<\/span>:<span style=\"color: #d12f1b\">@&#8221;pin&#8221;<\/span>]) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>[contact.<span style=\"color: #703daa\">bodyA<\/span>.<span style=\"color: #703daa\">joints<\/span> <span style=\"color: #3d1d81\">enumerateObjectsUsingBlock<\/span>:^(<span style=\"color: #bb2ca2\">id<\/span> obj, <span style=\"color: #703daa\">NSUInteger<\/span> idx, <span style=\"color: #bb2ca2\">BOOL<\/span> *stop) {<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #703daa\">physicsWorld<\/span> <span style=\"color: #3d1d81\">removeJoint<\/span>:obj];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>}];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0 \u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SKLabelNode<\/span> *score = (<span style=\"color: #703daa\">SKLabelNode<\/span> *)[<span style=\"color: #bb2ca2\">self<\/span> <span style=\"color: #3d1d81\">childNodeWithName<\/span>:<span style=\"color: #d12f1b\">@&#8221;score&#8221;<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 \u00a0 \u00a0 <\/span>score.<span style=\"color: #703daa\">text<\/span> = [<span style=\"color: #703daa\">NSString<\/span> <span style=\"color: #3d1d81\">stringWithFormat<\/span>:<span style=\"color: #d12f1b\">@&#8221;%d&#8221;<\/span>, [score.<span style=\"color: #703daa\">text<\/span> <span style=\"color: #3d1d81\">intValue<\/span>] + <span style=\"color: #272ad8\">1<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #bb2ca2\">@end<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #4f8187\"><span style=\"color: #bb2ca2\">@interface<\/span><span style=\"color: #000000\"> <\/span>ViewController<span style=\"color: #000000\"> ()<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #bb2ca2\">@end<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span style=\"color: #bb2ca2\">@implementation<\/span> ViewController<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">&#8211; (<span style=\"color: #bb2ca2\">void<\/span>)viewDidLoad<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">{<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3d1d81\"><span style=\"color: #000000\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<\/span><span style=\"color: #bb2ca2\">super<\/span><span style=\"color: #000000\"> <\/span>viewDidLoad<span style=\"color: #000000\">];<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><span class=\"Apple-converted-space\">\u00a0\u00a0 \u00a0<\/span><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SKView<\/span> *spriteView = [[<span style=\"color: #703daa\">SKView<\/span> <span style=\"color: #3d1d81\">alloc<\/span>] <span style=\"color: #3d1d81\">initWithFrame<\/span>:<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #703daa\">view<\/span>.<span style=\"color: #703daa\">bounds<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[<span style=\"color: #bb2ca2\">self<\/span>.<span style=\"color: #703daa\">view<\/span> <span style=\"color: #3d1d81\">addSubview<\/span>:spriteView];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span><span style=\"color: #703daa\">SKScene<\/span> *scene = [[<span style=\"color: #4f8187\">BowlingScene<\/span> <span style=\"color: #3d1d81\">alloc<\/span>] <span style=\"color: #3d1d81\">initWithSize<\/span>:spriteView.<span style=\"color: #703daa\">frame<\/span>.<span style=\"color: #703daa\">size<\/span>];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\"><span class=\"Apple-converted-space\">\u00a0 \u00a0 <\/span>[spriteView <span style=\"color: #3d1d81\">presentScene<\/span>:scene];<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo\">}<\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px\"><\/p>\n<p style=\"margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #bb2ca2\">@end<\/p>\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u304f\u306d\u304f\u306d\u3057\u3066\u3044\u308b\u30d4\u30f3\u3092\u4f55\u500b\u306f\u3058\u304d\u98db\u3070\u305b\u308b\u304b\uff01\u3068\u3044\u3046IPh&#8230;<\/p>\n","protected":false},"author":2,"featured_media":2944,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[4],"tags":[116,24,119,117],"class_list":["post-2942","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ios","tag-ios7","tag-iphone","tag-objective-c","tag-spritekit"],"aioseo_notices":[],"jetpack_featured_media_url":"https:\/\/lepetit-prince.net\/ios\/wp-content\/uploads\/d9af68dbe3521f2175593e8f2e9edc04.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/posts\/2942","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2942"}],"version-history":[{"count":1,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/posts\/2942\/revisions"}],"predecessor-version":[{"id":2943,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/posts\/2942\/revisions\/2943"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=\/wp\/v2\/media\/2944"}],"wp:attachment":[{"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2942"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2942"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lepetit-prince.net\/ios\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2942"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}