はじめてのiOSアプリ開発

風船をタッチして割れるようにしよう

全334コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
風船のスプライトがタッチされたときに、風船が割れるようにしてみましょう。また、割った風船の数をカウントして表示するコードも追加します。
講師:
05:44

字幕

このレッスンでは 画面がタッチされた時に その位置に風船があるかどうかを確認して 風船を割れるようにしていきたいと思います まず 今回は「 touchesBegan 」と言う メソッドを使って作業していきますので こちらをご覧ください 現在はタッチした位置に スプライトを作成するという コードが書かれているのですけれども スプライトを作成する この「 spriteNode 」の作成の部分から 「 addChild 」して画面に 追加する所まで 全て消したいと思います 全部の行を選択したら Delete ボタンで一気に消します ここに for 文が 書かれているのですけれども タッチに対応するだけなのに 何故 for 文が 書かれているのかと言うと 2本指とか3本指で 同時にタッチされたり あるいは同じ指で2回 もの凄く早くタッチしたといった時に 1度に2つ以上の点が 取れる時があります なので その全てのタッチに 対応できるように それぞれのタッチに対応するために この for 文が書かれています ということで 1個1個のタッチが どこの場所で行われたか確認するためには この「 location 」が「 touch 」に対して 「 locationInNode 」 というメソッドで 取得できていますので これを使うことができます では この「 location 」の位置に 現在 風船があるかないかということを 次に取得したいと思います 風船があるかないか ということを取得するためには 「 SKNode 」を使って ここにスプライトが あるかないか ということで判断します ここではスプライトという 名前ではないのですけれども 「 nodeAtPoint 」と言う メソッドを使って 判断をします この「 Point 」の所には 「 location 」を渡します 今まではスプライトについて 説明してきましたが 画面に表示されるものの中には スプライト以外のものも 実はあったりします 最たるものが上にある この「 Hello, World! 」です この「 Hello, World! 」は 「 SKLabelNode 」というノードで 画面に表示される様々なものが この「 Node 」で表されています それも含めて「 SKNode 」を 使うことによって 取得することができます そして「 SKNode *sprite 」と書いて これが「 nodeAtPoint 」で 自分がタッチした所にあるかないか ということを確認して来ると これで「 sprite 」を取得できます いろんな「 sprite 」を 取得できますので 本当にこれが「 spriteNode 」なのか ここままでは確認できません ですので ちょっと上の方に戻って この「 didMove 」というビューで作った この「 sprite 」に対して 名前を1つ設定しておきます このようにスプライトに対して 名前を付けることができます 「 sprite.name = @"balloon" 」 これは小文字でも大文字でも良いので 今回は小文字にしておきます 「 balloon 」と書いておくと スプライトに名前が付けられます このスプライトに付いた名前が 本当にここの「 sprite 」で 同じものになっているか確認することで 風船のスプライトが タッチされたかどうかを これで確認できるわけです このようにして 「 SKNode *sprite 」=「 nodeAtPoint 」 こうして取得したものに対して 名前が「 isEqualToString 」 というメソッドで 「 balloon 」に等しいかどうかを 判断しました これで「 balloon 」に等しい 「 sprite 」が取れていた場合には ここに風船があったわけです 次はこの風船を割る すなわち 消す という作業が必要になりますので ここで「 sprite 」に対して 「 balloon 」だったら この「 sprite 」に対して 「 removeFromParent 」という メソッドを呼び出します これも名前の通りで parent は自分が表示されている 画面のことです 画面から自分自身を消してください というお願いを 「 sprite 」にすることで 画面の上からスプライトが消えることが 実現できます それでは アプリケーションを 実行してみたいと思います 「実行」ボタンを押します この画面上に表示された この風船に対して タッチしていくと 今 分かりましたか? 何個かスプライトが 消えたのが分かると思います もう一度 起動しなおします この様にタッチしていくと 画面上に表示された 風船が消えました このレッスンでは 風船のスプライトがタッチされた時に その風船を消す すなわち割るということが 実装できるようにしました

はじめてのiOSアプリ開発

このコースではXcodeを使ったiOS用アプリの開発に必要な基礎知識を学びます。Xcodeの基本的な使い方から本格的なゲーム制作のためのSprite Kitを用いた制作方法まで、カウントダウンタイマーやスピード暗算ゲームなど3つの簡単なiOS用アプリを作りながら説明します。このコースを見れば、本当に必要なアプリ開発の知識を着実に身に付けられるでしょう!

5時間55分 (52 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 2,990
発売日:2015年06月04日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。