今日やったこと(H27.12.16)
今日は体調が今ひとつ。
漢方薬局で買った漢方薬と、一緒に買ったお茶を飲んでゆっくりしていたら、夜中からましになりました^^;
お茶はオリジナルブレンドらしく、毎月変わるそうです。
今月のは、ルイボスティー、シナモン、ローズのミックス。
体が温まりました^^
<今日やったこと & 本読み>
今日は両者を兼ねて、SpriteKitを少し触ってみました。
参考にした本はこちら。
とりあえず1からスタート、おみくじアプリから作ってみました。
本を読みながら、コードを写経...
ところどころ「?」となりながらも
「ふふ...読める、読めるぞ」(▼∀▼)ノ
と進んでいたところ、1つはまったのが下記。
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { for touch: AnyObject in touches{ let location = touch.locationInNode(self) let touchNode = self.nodesAtPoint(location) print(touchNode) if touchNode == btnSprite{ let omikuji = ["大吉","中吉","吉","凶"] let r = Int(arc4random_uniform(4)) myLabel.text = omikuji[r] } } }
let touchNode = self.nodesAtPoint(location)で、タッチした座標に在るものを変数touchNodeに取り出しているのですが、タッチには反応するけど、ラベルの字が変わらない。。(?_?)
いつも見てもよく分からないけど、Referenceを見て...
Returns an array of all descendants that intersect a point
ん??
array??
そういえば、ログも[]がついてる!
[
再度よく見ると...
!(o_o)
nodeAtPoint
と書かなくてはならないところを
nodesAtPoint
と書いてしまっていました。
配列で返すということは、例えば次々落ちてくるnodeの群れをタッチした時、とかそんな時に使うのでしょうか?(想像)
今はまだ謎。。
sを取って再度動かすと...
無事、再現されました(^ ^)/
明日は、次のもぐらたたきゲームを作ってみたいと思います。