4868
コメント:
|
2935
|
削除された箇所はこのように表示されます。 | 追加された箇所はこのように表示されます。 |
行 21: | 行 21: |
=== 今回分 === | === 今回追加分 === |
行 36: | 行 36: |
=== 主人公が敵とで当たったときの処理 === | === 主人公が敵と当たったときの処理 === これまで主人公の動作は(初期化を除いて) 主人公のスクリプトとして記述してきました。 主人公が敵と当たったときの処理は 敵を主体として考えれば、 敵のスクリプトとして記述することもできます。 今回は'''敵のスクリプト内に記述'''してみましょう。 正しく動作している主人公のスクリプトを 修正しなくてすみます。 主人公に関する命令を敵のスクリプト内に記述することになるので 注意して作成してください。 '''例''' . 主人公が敵と当たったとき、主人公を特定の位置に移動します。 敵を主語にして、文を書き直すと . 敵が主人公と当たったとき、主人公を特定の位置に移動します。 |
行 39: | 行 59: |
---- === 他の人に遊んでもらえるように画面を整える === ---- ==== ゴールについた時の処理を記述する ==== . ゴールについたら、クリアできたことを示した後、スクリプトを停止します。 ==== 障害物にぶつかった時の処理を記述する ==== . 障害物にぶつかったら、主人公をスタート位置にもどします。 ==== 敵にぶつかった時の処理を記述する ==== . 敵にぶつかった時も、主人公をスタート位置にもどします。 ---- === 動作確認(1) === ここまでの動作確認をしっかりしておきます。 |
|
行 58: | 行 61: |
----- === アイテムの追加 === |
|
行 70: | 行 72: |
=== 判定のための変数を作る === アイテムを取ったかどうかを変数(属性の一種)の 値として覚えておくと処理が簡単です。 主人公のビューア上部の'''V'''の部分を押して、変数を作ります。 . 変数名は'''リンゴを持っている'''にしました。 . 変数の左にあるメニューをクリックし、変数型を'''Boolean'''に変更します。 . {{attachment:game16.png}} ---- === アイテムが主人公と一緒に動くようにする === 上で作成した変数を使うと簡単に書けます。 . {{attachment:game17.png}} . 変数の値を'''はい'''にすると一緒に動き . 変数の値が'''いいえ'''のときは動かない ことを確認しておきます。 ---- === アイテムを取る === 主人公がアイテムのある場所に行ったら、変数の値を'''はい'''に変えます。 ---- === アイテムを持っているとき === 敵や障害物に出会ったときの処理です。 . 変数の値が'''いいえ'''の場合はすでに記述しました。 . 変数の値が'''はい'''の場合の処理を追加します。 敵にぶつかったときの処理を変える例です。 . アイテムをもっていないときの処理がこのようになっていたとします。 . {{attachment:game18.png}} . テストタイルを追加し、変数の値が'''はい'''か'''いいえ'''かの判定をします。 . {{attachment:game19.png}} . 変数が'''いいえ'''のときだけ、アイテムをもっていない時の処理をすればよいのでこのようになります。 . {{attachment:game20.png}} |
=== 他の人に遊んでもらえるように画面を整える === . ゴールについたら、クリアできたことを示した後、スクリプトを停止します。 . スタートボタンを押すだけで何度でも遊ぶことができる。 |
行 105: | 行 77: |
=== スタートボタンを作る === スタートボタンを作って完成です。 処理内容は . 主人公をスタート位置に配置する . アイテムを指定の位置に配置する . 変数の値をいいえにする . スクリプトをスタートする(主人公、敵、アイテム) ---- === 動作確認(2) === もういちど動作確認をします。 . クリアした後でも、スタートボタンで再び開始できること。 . アイテムを持っていないときは、クリアするのが難しいこと。 . アイテムを取った後は、クリアするのが易しいこと。 |
ジョイスティックを使ったゲーム
主人公をジョイスティックを使って動かして遊ぶゲームを作ります。
以下の例を参考にして、楽しいものを作りましょう。
前回まで
前回分は 真偽値型の変数を利用する のページを参照してください。
画面例
ここまでできていました。
- 主人公をジョイスティックを使って動かす。
- いくつかある障害物のところは通れない。
- ゴールにたどり着いたら終わり。
- アイテムを取ると動作が変わる。
今回追加分
- ゴール(またはアイテム、宝など)を守っている敵を配置する。
- 敵にそれらしい動きをつける。
- 主人公が敵とであったときの処理を記述する。
- ゲームバランスを調整する。
- 他の人に遊んでもらえるように画面を整える。
敵を配置し、動きをつける
ゴール(またはアイテム、宝など)を守っているような動きをつけましょう。
動かし方は 変数を使った動き のページを参考にしてください。
主人公が敵と当たったときの処理
これまで主人公の動作は(初期化を除いて) 主人公のスクリプトとして記述してきました。
- 主人公が敵と当たったときの処理は 敵を主体として考えれば、 敵のスクリプトとして記述することもできます。
今回は敵のスクリプト内に記述してみましょう。
- 正しく動作している主人公のスクリプトを 修正しなくてすみます。
主人公に関する命令を敵のスクリプト内に記述することになるので 注意して作成してください。
例
- 主人公が敵と当たったとき、主人公を特定の位置に移動します。
敵を主語にして、文を書き直すと
- 敵が主人公と当たったとき、主人公を特定の位置に移動します。
ゲームバランスを調整する
敵の動きや配置などを考え、クリアするのが難しい程度にするとよい。
アイテムを配置し、 主人公がこれを取った後では クリアしやすくなるようにします。
例
- 速く動けるようになる薬。
- 敵より強くなる武器。
- 障害物に穴をあける道具。
他の人に遊んでもらえるように画面を整える
- ゴールについたら、クリアできたことを示した後、スクリプトを停止します。
- スタートボタンを押すだけで何度でも遊ぶことができる。