welcome: please sign in
location: "etoys真偽値型の変数を利用する"の差分
14と15のリビジョン間の差分
2012-06-17 12:57:47時点のリビジョン14
サイズ: 2261
編集者: masahiko
コメント:
2012-06-17 12:59:59時点のリビジョン15
サイズ: 2362
編集者: masahiko
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 52: 行 52:
処理の順番に注意が必要です。
このように書くと障害物に当たったら

障害物に当たったかどうか判定し、
あたっていないときだけ動けばよいので
このように書けそうですが…
 . {{attachment:game34.png}}
この方法では
障害物に当たったら
行 55: 行 60:
 . {{attachment:game34.png}}

真偽値型の変数を利用する

主人公をジョイスティックを使って動かして遊ぶゲームを作ります。

  • game31.png

例えばこのような画面で

  • いくつかある障害物のところは通れない。
  • 途中でアイテムを取ってからでないと、ゴールできない。

という条件で作ることにします。

例えば

  • アイテムを取った後では障害物の1つは通れる

ことにすれば上の画面でもゴールできるようになります。 (他のアイデアでもかまいません)


変数の利用

アイテムを取ったかどうかを 真偽値型の変数を用いて表すことができます。

主人公の変数「アイテムを持っている」を

  • アイテムを取る前は値が「いいえ」
  • アイテムを取った後は値が「はい」

となるようにして使います。

こうしておくと、 アイテムを取った後か取る前かを、変数の値を参照するだけで判定でき スクリプトが簡単になります。

主人公のビューアを開き 変数を作成します。

  • 変数名をわかりやすくつけます
  • 種類を真偽値型にします

このようになります。

  • game32.png

値は「はい」「いいえ」のどちらかになります。


ジョイスティックで動かす

主人公をジョイスティックで動かせるようにします。

単純な例を示します。

  • game33.png

くわしくはジョイスティックのページを参照してください。


障害物にぶつかったとき

障害物のところは通れないようにします。

障害物に当たったかどうか判定し、 あたっていないときだけ動けばよいので このように書けそうですが…

  • game34.png

この方法では 障害物に当たったら そのあとずっと動けなくなってしまいます。

  • game35.png


スタートボタン


アイテムを取ったとき


アイテムを取った後


次回続きを作り、ゲームを完成させます。

etoys真偽値型の変数を利用する (最終更新日時 2012-06-22 00:13:05 更新者 masahiko)