welcome: please sign in
location: "クレーンゲーム"の差分
7と16のリビジョン間の差分 (その間の編集: 9回)
2011-05-31 12:29:06時点のリビジョン7
サイズ: 1155
編集者: masahiko
コメント:
2011-06-01 13:10:08時点のリビジョン16
サイズ: 2718
編集者: masahiko
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 3: 行 3:
ゲーム作りを通してプログラム作成の手順を学びます。 ゲーム作りを通してプログラム作成の考え方を学びます。(オブジェクト指向)
行 7: 行 7:
Aボタンを押すとクレーンが動き始め、
Bボタンを押すとクレーンが下がり、
うまくぬいぐるみをつかんだら運ぶことができます。
Aボタンを押すとクレーンが動き始め、Bボタンを押すとクレーンが下がり、うまくぬいぐるみをつかんだら運ぶことができます。
行 14: 行 12:
 . {{attachment:catch.png}}
状態図に書くとこのようになります。
 . {{attachment:crane21.png}}
順に箇条書きにするとこのようになります。(シナリオ)
 1. クレーンが右に動く
 1. Bボタンを押す
 1. クレーンが下に動く
 1. 下端についた
 1. クレーンが上に動く
 1. 上端についた
 1. クレーンが左に動く
 1. 左端についた
 1. 停止

図に書くとこのようになります。(状態図)
行 18: 行 27:
一度に1つのスクリプトがチクタクで動作するように考えす。 一度に1つのスクリプトがチクタクで動作するように考えると分かりや
行 20: 行 29:
青の点線で囲んだ範囲が1つのスクリプトになります。
行 22: 行 30:
青の点線で囲んだ範囲を1つのスクリプトとして作成します。

スクリプト1はこのように書けます。
クレーンの絵の向きを変えずに動かす方法は2つあります。
 . 座標を設定する方法で書いた場合
 . {{attachment:crane07.png}}
 . 進行方向を設定する方法を用いる場合
 . {{attachment:crane08.png}}
Bボタンが押されたときは、スクリプト1を停止し、スクリプト2をスタートすればよい。
 . {{attachment:crane10.png}}
スクリプト2は下方向の移動で、下端についたときの処理を
テストタイルを使って書きます。
 . {{attachment:crane09.png}}
スクリプト3、スクリプト4も同様に書けます。
行 23: 行 45:
=== 動作全体 ===
Aボタンが押されたときの処理を加えれば、とりあえず完成
=== 全体の動作 ===
Aボタンが押されたときの処理を加えれば、とりあえず動作する
行 26: 行 48:
Aボタンが押されたときに必要な処理
 . クレーンを初期位置に移動する
 . スクリプト1をスタートする
行 28: 行 53:
上の状態図で考えられていないときの処理。 上の状態図で考えられていない動作。(別のシナリオ)

次の場合の処理が記述されていません。
 * スクリプト1が動作しているときにBボタンが押されなかった。
 * 停止状態でないときにAボタンが押された。
 * スクリプト2,3,4が動いているときにBボタンが押された。
行 34: 行 64:

 . {{attachment:crane11.png}}

クレーンゲーム

ゲーム作りを通してプログラム作成の考え方を学びます。(オブジェクト指向)

ゲーム内容

  • Aボタンを押すとクレーンが動き始め、Bボタンを押すとクレーンが下がり、うまくぬいぐるみをつかんだら運ぶことができます。


クレーンの動きを考える

うまく操作したときのクレーンの動きを考えます。

  • [添付]

順に箇条書きにするとこのようになります。(シナリオ)

  1. クレーンが右に動く
  2. Bボタンを押す
  3. クレーンが下に動く
  4. 下端についた
  5. クレーンが上に動く
  6. 上端についた
  7. クレーンが左に動く
  8. 左端についた
  9. 停止

図に書くとこのようになります。(状態図)

  • [添付]

個々の状態に対応するスクリプトに分け、 一度に1つのスクリプトがチクタクで動作するように考えると分かりやすい。

  • [添付]

青の点線で囲んだ範囲を1つのスクリプトとして作成します。

スクリプト1はこのように書けます。 クレーンの絵の向きを変えずに動かす方法は2つあります。

  • 座標を設定する方法で書いた場合
  • [添付]

  • 進行方向を設定する方法を用いる場合
  • [添付]

Bボタンが押されたときは、スクリプト1を停止し、スクリプト2をスタートすればよい。

  • [添付]

スクリプト2は下方向の移動で、下端についたときの処理を テストタイルを使って書きます。

  • [添付]

スクリプト3、スクリプト4も同様に書けます。


全体の動作

Aボタンが押されたときの処理を加えれば、とりあえず動作する。

  • [添付]

Aボタンが押されたときに必要な処理

  • クレーンを初期位置に移動する
  • スクリプト1をスタートする


動作詳細

上の状態図で考えられていない動作。(別のシナリオ)

次の場合の処理が記述されていません。

  • スクリプト1が動作しているときにBボタンが押されなかった。
  • 停止状態でないときにAボタンが押された。
  • スクリプト2,3,4が動いているときにBボタンが押された。
  • [添付]


ぬいぐるみの動作

  • [添付]

  • crane11.png

クレーンゲーム (最終更新日時 2012-06-14 12:49:54 更新者 masahiko)