シューティング


プログラムの 中身 なかみ くわ しくみてみましょう

ビームを って てき たお すゲームのスクリプトについてスプライトごとに 解説 かいせつ します。

自機 じき

主な うご

  • キーボードの左(←)キーと、右(→)キーで、左右に 移動 いどう する。
  • に当たったら 元気 げんき を1 らし、音を鳴らして 点滅 てんめつ する。
  • に当たって 元気 げんき が1になったら コスチューム(ダメージ)にし、 瀕死 ひんし を送る。
  • に当たって 元気 げんき が0になったら コスチュームにし、(ステージ)と game overを送る。
  • から 回復 かいふく が送られてきたら コスチューム正常 せいじょう )にする。

「Start」を受け取ったとき

    • 説明 せつめい
    • Startを受け取ったとき、 てき の数 てき の列数 × てき の行数 たっ する のを( てき 配置 はいち 完了 かんりょう するのを)待ってから、 自機 じき 操作 そうさ する 処理 しょり を開始します。

      右向き 矢印 やじるし (→)キーが されたら右へ、左向き 矢印 やじるし (←)キーが されたら左へ 移動 いどう します。

      てき ビームに当たってしまった場合は 元気 げんき が1つ ります。

    • 必要な 処理 しょり
    • 1. 変数 へんすう 初期化 しょきか
    • 2. 左右 矢印 やじるし キー(←→)が された時の左右への 移動 いどう
    • 3. てき ビームに れてしまった時の 処理 しょり
    • コードの 詳細 しょうさい
    • てき の数 てき の列数× てき の行数 たっ する ( てき 配置 はいち 完了 かんりょう する)まで待ちます。

      てき 配置 はいち 完了 かんりょう したらAの 処理 しょり をくり返します。

    • A :

      横に うご かすを実行します。
      てき ビームに た時に、 無敵状態 むてきじょうたい でなかったら( 無敵状態 むてきじょうたい =0なら) 以下 いか のBの 処理 しょり をします。
      てき ビームに ても、 無敵状態 むてきじょうたい 無敵状態 むてきじょうたい =0 以外 いがい )であったら何もしません。)

    • B :

      元気 げんき を1 らします。
      もし 元気 げんき が0になってしまったら game overを送り、スクリプトを止めます。
      無敵状態 むてきじょうたい 無敵状態 むてきじょうたい =1)にし、 てき ビームに当たってしまってから一定時間は、 さらに てき ビームに当たってしまっても 元気 げんき らないようにします。
      攻撃 こうげき を受けたの音を鳴らします。
      攻撃 こうげき を受けたを送ります。
      てき ビームに当たってしまった時の 処理 しょり をこのループ内でおこなうと、 その間は左右のキーで 自機 じき うご かすことができなくなるため、メッセージを送った先でおこなうようにしています。 ( てき ビームに当たってしまった時の 処理 しょり と左右のキーが された時の 処理 しょり 並行 へいこう しておこなわれるようにします。)
      もし 元気 げんき が1になってしまったら 瀕死 ひんし を送り、コスチュームをダメージにします。

初期化 しょきか

    • 説明 せつめい
    • 各変数 かくへんすう 初期化 しょきか し、 初期状態 しょきじょうたい にして 表示 ひょうじ します。

    • コードの 詳細 しょうさい
    • コスチュームを 正常 せいじょう にし、 ちょうどよい大きさにするために大きさを18%にしています。

      (コスチュームを 最初 さいしょ から小さくしておけば大きさを 変更 へんこう しなくても大丈夫です)

      はし を210、 はし を-210にします。これは左右に 移動 いどう できる 範囲 はんい 設定 せってい しています。

      x 座標 ざひょう はし (-210)、 y 座標 ざひょう を-150にします。

      元気 げんき を2にします。 ( てき たま に当たると1ずつ り、ハートを取ると1ずつ えます。0になるとゲームオーバーとなります。)

      無敵状態 むてきじょうたい を0にします。

      うご く速さを6にします。(左右の 矢印 やじるし キーを すと6ずつ 移動 いどう します。)

      表示 ひょうじ します。

横に うご かす

    • 説明 せつめい
    • 左右の 矢印 やじるし キーで 自機 じき を横に うご かすための 処理 しょり です。

    • コードの 詳細 しょうさい
    • 右向き 矢印 やじるし キーが されていたら x 座標 ざひょう うご く速さずつ えます。(右に うご く速さずつ うご かします)

      ただし、 移動後 いどうご はし えてしまう 位置 いち にいる場合はx 座標 ざひょう はし にします。

      左向き 矢印 やじるし キーが されていたら x 座標 ざひょう を- うご く速さずつ えます。(左に うご く速さずつ うご かします)

      ただし、 移動後 いどうご はし えてしまう 位置 いち にいる場合はx 座標 ざひょう はし にします。

「攻撃 こうげき を受けた」を受け取ったとき

    • 説明 せつめい
    • てき ビームに当たってしまった時に実行します。

      自機 じき 点滅 てんめつ させ、0.5秒待った後に 無敵状態 むてきじょうたい 解除 かいじょ します。

    • コードの 詳細 しょうさい
    • かく して0.1秒待つ表示 ひょうじ して0.1秒待つをくり返して 点滅 てんめつ させます。

      0.5秒待った後に 無敵状態 むてきじょうたい を0にして 無敵状態 むてきじょうたい 解除 かいじょ します。

GAME OVERを受け取ったとき

    • 説明 せつめい
    • てき ビームに当たり、 元気 げんき が0になってしまった時に実行します。

      自機 じき 爆発 ばくはつ しているように見せます。

    • コードの 詳細 しょうさい
    • ねん のため 元気 げんき を0にします。

      コスチュームの 爆発 ばくはつ 2 爆発 ばくはつ 1を0.3秒ごとに 交互 こうご 表示 ひょうじ し続けます。

回復 かいふく を受け取ったとき

  • ハートをキャッチするとハートから 回復 かいふく が送られてきます。
    コスチュームを 正常 せいじょう にします。

自機 じき のビーム

主な うご

  • スペースキーが されたら 発射 はっしゃ する( 自機 じき がいる 位置 いち から上に向かって 移動 いどう する)。
  • から 撃墜 げきつい が送られてきたら かく す( 非表示 ひひょうじ にする)。

がクリックされたとき

  • 非表示 ひひょうじ にし、他のスプライトと重なった さい に後ろに 表示 ひょうじ されるように30 そう 下げます。
    (他のどのスプライトよりも下の そう にあればよいので必ずしも30 そう である 必要 ひつよう はありません)

スペースキーが されたとき

    • 説明 せつめい
    • ビームを 発射 はっしゃ します。

      自機 じき と同じ 座標 ざひょう から 表示 ひょうじ し、上の はし に着くまで上方向に10ずつ進みます。

      ( てき てき のビームに当たったら 非表示 ひひょうじ にしますが、その 処理 しょり 撃墜 げきつい を受け取ったときのほうで書きます)

    • コードの 詳細 しょうさい
    • 元気 げんき が0の場合は何もせずにスクリプトを止めます。

      x 座標 ざひょう y 座標 ざひょう 自機 じき と同じ 座標 ざひょう にします。

      非表示 ひひょうじ から 表示 ひょうじ 変更 へんこう します。

      zoopの音を鳴らします。

      はし れるまでy 座標 ざひょう を10ずつ える 処理 しょり をくり返し、上に向かって動いていくようにします。

      はし れたら かく します。

      以下 いか のコードはどちらも、同じ うご きになります。

撃墜 げきつい を受け取ったとき

  • 自機 じき のビームが てき に当たった時にこのメッセージが送られてきます。
    かく してから、このスプライトの他のスクリプトを止めます。
    ( 自機 じき のビームが てき もしくは てき のビームに当たると 撃墜 げきつい が送られてきます)

てき

主な うご

  • ゲーム開始時に てき の列数 × てき の行数(10×5)のクローンを作って なら べる。
    すべてのクローンを なら べ終わったら 配置完了 はいちかんりょう を送る。
  • それぞれのクローンがランダムに てき ビーム発射 はっしゃ する。
  • 配置 はいち 完了直後 かんりょうちょくご 移動 いどう せず、6体以上 たお されたらそれぞれが横方向へ うご はじ める。
    左右のどちらに向かって うご き出すのかはクローンごとにランダムに決定する。
    はし に着いたらはね返る。
  • 自機 じき のビームに当たったら音を鳴らし、 コスチュームダメージにする。
    てき の数を1 らし、スコアを1 やす。
    0.5秒たったらこのクローンを 削除 さくじょ する。
  • 自機 じき のビームに当たったら 自機 じき のビームへ 撃墜 げきつい を送る。
  • 画面上 がめんじょう のすべてのクローンがすべてうち落とされ てき の数が0になったら、 自分自身に 配置 はいち 開始を送り、 再度 さいど てき の列数× てき の行数(10×4)のクローンを作って なら べる。

がクリックされたとき

    • 説明 せつめい
    • 各変数 かくへんすう 初期化 しょきか し、 配置 はいち 開始を送ります。

    • コードの 詳細 しょうさい
    • 回転方法 かいてんほうほう 回転しないにします。

      ブロックで指定せずにスプライトのinfo内の回転の 種類 しゅるい を回転しない にしても同じ 効果 こうか があります。

      大きさを40%にして 非表示 ひひょうじ にします。

      横の 間隔 かんかく かく クローンのx 座標 ざひょう 間隔 かんかく )、 たて 間隔 かんかく かく クローンのy 座標 ざひょう 間隔 かんかく )をそれぞれ30にします。

      てき の行数を5行、 てき の列数を10列にします。

      上端 じょうたん の行のy 座標 ざひょう を110にします。

      横の 間隔 かんかく てき の列数から はし の列のx 座標 ざひょう を計算します。

      はし の列のx 座標 ざひょう を- はし の列のx 座標 ざひょう にします。

      クローン?をnoにします。

「Start」を受け取ったとき

  • 配置開始を送ります。

配置 はいち 開始を受け取ったとき

    • 説明 せつめい
    • 50個のクローンを作り、横に10列、 たて に5行で なら べます。

      まず左上から10個のクローンを作り、横10列に 配置 はいち します。

      それを5行分くり返します。

      配置 はいち が終わったら 配置完了 はいちかんりょう を送ります。

    • コードの 詳細 しょうさい
    • 配置 はいち 開始を クローンが受け取った場合はそのクローンを 削除 さくじょ します。

      クローンでない場合のみ 以下 いか 処理 しょり を実行します。

      画面 がめん 表示 ひょうじ されている てき の数を表す てき の数一旦 いったん 0にします。

      ( はし の列のx 座標 ざひょう , 上端 じょうたん の行のy 座標 ざひょう )(左上)に自分自身のクローンを作り、 てき の数を1 やします。

      x 座標 ざひょう 横の 間隔 かんかく だけ やします。(1列分、右にずれます)

      これを てき の列数(10列)分 なら べるまでくり返します。

    • これで1行分の 配置 はいち 完了 かんりょう です。

      完了 かんりょう したらy 座標 ざひょう たて 間隔 かんかく だけ らします。(1行分、下にずれます)

      x 座標 ざひょう はし の列のx 座標 ざひょう にします。 (左 はし の列に 移動 いどう します)

      同じように てき の列数 なら べて2行目を 配置 はいち します。

      これを てき の行数(5行)分 なら べるまでくり返します。

    • すべての 配置 はいち 完了 かんりょう したら 配置完了 はいちかんりょう を送ります。

配置完了 はいちかんりょう を受け取ったとき

    • 説明 せつめい
    • てき がすべて たお されたら てき 再度 さいど 配置 はいち します。

    • コードの 詳細 しょうさい
    • 配置完了 はいちかんりょう をクローンが受け取った場合は何もせずにこのスクリプトを止めます。

      (そうしないと存在しているクローンの数だけ 以下 いか 処理 しょり が実行されてしまいます。)

      てき の数が0 以下 いか になるまで待ちます。

      (なんらかの理由で0 未満 みまん になってしまった場合に そな えて ねん のため0 未満 みまん 判定条件 はんていじょうけん くわ えています)

      てき の数が0 以下 いか になったらスプライトの他のスクリプトを止めます。

      1秒待ってからスコア を5 やして 配置 はいち 開始を送ります。

クローンされたとき

3つの 処理 しょり 並行 へいこう で開始します。

    • 説明 せつめい
    • 自機 じき のビームに当たった時の 処理 しょり です。

    • コードの 詳細 しょうさい
    • クローン? をyesにして自身がクローンであることを 判別 はんべつ できるようにします。

      コスチュームを通常にして 表示 ひょうじ します。

      以下 いか のAの 処理 しょり をずっとくり返します。

    • A :

      自機 じき のビームに れた以下 いか のBの 処理 しょり をします。

    • B :

      撃墜 げきつい を送ります。 ( 自機 じき のビームが受け取り、 非表示 ひひょうじ になります。)
      popの音を鳴らします。
      コスチュームを ダメージにします。
      0.5秒待ちます。
      てき の数を1 らします。
      スコアを1 やします。
      たお した てき の数を1 やします。
      このクローンを 削除 さくじょ します。

    • 説明 せつめい
    • ランダムに てき ビームを 発射 はっしゃ します。

      かく クローンで 並行 へいこう して実行されます。

    • コードの 詳細 しょうさい
    • 2秒待ってからAの 処理 しょり をくり返すことで てき ビームを 発射 はっしゃ します。

    • A :

      1秒~10秒の間 待機 たいき します。( 乱数 らんすう を使って決定します)
      1から10までの 乱数 らんすう を 発生させ1から4だった場合にビームを 発射 はっしゃ します。( 発射 はっしゃ する 確率 かくりつ は40%)
      ビーム 発射処理 はっしゃしょり を開始したら全クローンで 共用 きょうよう する 攻撃中 こうげきちゅう を1にし、1の間は他のクローンはビームを 発射 はっしゃ しないようにします。
      (他のどのクローンも 攻撃中 こうげきちゅう でない場合のみビームを 発射 はっしゃ します。)
      攻撃中 こうげきちゅう てき ビームの クローンされたときの中で0に もど します。
      てき ビームの 発射 はっしゃ 位置 いち となる てき X てき Y発射 はっしゃ するクローンの x 座標 ざひょう y 座標 ざひょう にします。
      てき X てき Yは 「 てき ビーム」のスプライトでも使うため、すべてのスプライト用としています。
      てき ビームのクローンを作ります。

    • <補足>

      自機 じき のビームの時には x 座標 ざひょう ( 自機 じき )y 座標 ざひょう ( 自機 じき )を使ってビームの 発射 はっしゃ 位置 いち を指定していますが、 自機 じき はクローンを作らないためその 方法 ほうほう が使えました。
      てき ビームの時に x 座標 ざひょう ( てき )y 座標 ざひょう ( てき )を使うと、 発射 はっしゃ した てき 座標 ざひょう ではなく、クローン元となった てき 座標 ざひょう から 発射 はっしゃ されてしまいます。
      そのため 発射 はっしゃ したクローンの 座標 ざひょう てき X てき Yに代入して てき ビームに渡しています。
      複数 ふくすう のクローンが同時にビームを 発射 はっしゃ できないようにしている理由は2つあります。

    • 理由1 :

      てき X てき Y は全体で1つのものを かく クローンで使用するため、同時に使われないようにしています。
      複数 ふくすう のクローンが同時に使用してしまうと、 発射 はっしゃ されるべき場所から 発射 はっしゃ されない 可能性 かのうせい があります。

    • 理由2 :

      同時に 発射 はっしゃ できるようにすると てき ビームが多すぎてしまう場合があります。
      ビームを 発射 はっしゃ する 確率 かくりつ を下げれば りますが、 そうすると ぎゃく にまったく 発射 はっしゃ されないこともあり、 てき ビームの 発射 はっしゃ かたよ りが出てしまいます。
      まんべんなく 発射 はっしゃ されるようにするために 複数 ふくすう のクローンが同時に 発射 はっしゃ をしないようにしています。

    • 説明 せつめい
    • てき を6 ひき 以上 たお されるまで待ちます。

      ( てき の数が( てき の列数× てき の行数-5)より少なくなるまで待ちます。)

      てき が6 ひき 以上 たお されたらそれぞれが横への 移動 いどう を開始するようにします。

      左右のどちらの方向へ 移動 いどう を開始するのかは かく クローンでランダムに決定します。

      はし に着いたらはね返ります。

てき のビーム

向きを180°(下向き)にします。

主な うご

  • てき てき ビームのクローンを作る。 発射 はっしゃ した てき (クローン)と同じ 座標 ざひょう から 表示 ひょうじ し、 下の はし れるまで下方向に進める。
    自機 じき のビームに れたら 自機 じき のビームへ 撃墜 げきつい を送り、 このクローンを 削除 さくじょ する。

がクリックされたとき

  • 大きさを20%にして 非表示 ひひょうじ にします。
    #コスチュームのエディター等であらかじめ小さくしておいても かま いません。

クローンされたとき( てき から 発射 はっしゃ されたとき)

    • 説明 せつめい
    • 発射 はっしゃ した てき (クローン)と同じ 座標 ざひょう から 表示 ひょうじ し、下の はし れるまで下方向に進めます。

      自機 じき のビームに れたら 撃墜 げきつい を送り、このクローンを 削除 さくじょ します。

    • コードの 詳細 しょうさい
    • x 座標 ざひょう y 座標 ざひょう 発射 はっしゃ した てき と同じ 座標 ざひょう にします。

      #ここでx 座標 ざひょう ( てき )y 座標 ざひょう ( てき )ブロックを使用すると 発射 はっしゃ した てき ではなく、 クローン元となった てき 座標 ざひょう から 発射 はっしゃ されてしまうため、 てき X てき Yを 使用して 発射 はっしゃ した てき 座標 ざひょう を受け取っています。

      攻撃中 こうげきちゅう を0に もど します。

      前に出して 表示 ひょうじ します。

      はし れるまで5歩ずつ うご かします。(下方向に進めます)

      もし 自機 じき のビームに れた 撃墜 げきつい を送り、 popの音を鳴らし、 コスチュームを 爆発 ばくはつ にします。 そして0.5秒待ってからクローンを 削除 さくじょ します。

      はし れた場合もクローンを 削除 さくじょ します。

ハート

主な うご

  • 一定時間ごとに自分自身のクローンを作り、そのクローンが上から落ちる。
    落ちる さい x 座標 ざひょう はランダムに決定する。
    元気 げんき あたい が高くなるほどクローンを作る 間隔 かんかく を長くする。 (ハートを出にくくする)
  • 正常 せいじょう )に さわ ったら音を鳴らし、 元気 げんき を1 やしてからこのクローンを 削除 さくじょ する。
  • 正常 せいじょう )に さわ ったら 正常 せいじょう 回復 かいふく を送る。

「Start」を受け取ったとき

    • 説明 せつめい
    • Startを受け取ったとき、 各変数 かくへんすう 初期化 しょきか し、60秒後から定期 てき にクローンを作ります。

      元気 げんき 状態 じょうたい によってハートが 出現 しゅつげん する 間隔 かんかく 変更 へんこう します。

      ( 元気 げんき あたい が大きいほど 出現 しゅつげん しにくくします。)

    • コードの 詳細 しょうさい
    • 60秒待ってからAの 処理 しょり をずっとくり返します。

    • A :

      自分自身のクローンを作ります。
      もし 元気 げんき が1(2 未満 みまん )なら ハートの 出現間隔 しゅつげんかんかく を10秒にします。
      元気 げんき が2(3 未満 みまん )なら 出現間隔 しゅつげんかんかく を30秒にします。
      それ 以外 いがい (3以上)なら 出現間隔 しゅつげんかんかく を60秒にします。
      ハートの 出現間隔 しゅつげんかんかく 秒待ってから次のクローンを作ります。

初期化 しょきか

    • 説明 せつめい
    • 各変数 かくへんすう 初期化 しょきか して 初期状態 しょきじょうたい にします。

      クローン?をnoにします。

瀕死 ひんし を受け取ったとき

  • クローン?がnoの場合 (クローン 以外 いがい が受け取った場合)のみ5秒後にクローンを作ります。
    てき ビームに当たってしまい 元気 げんき が 1になったら5秒後にハートを 出現 しゅつげん させます)。

クローンされたとき

    • 説明 せつめい
    • 画面 がめん の上の はし から下の はし まで進みます。

      x 座標 ざひょう はランダムに決定します。

      自機 じき れた元気 げんき を1つ やし、 回復 かいふく を送ります。

      自機 じき のコスチュームがダメージだったら 正常 せいじょう もど します。)

    • 必要な 処理 しょり
    • 1. 変数 へんすう 初期化 しょきか
    • 2. 上の はし から下の はし まで5ずつ 移動 いどう
    • 3. 自機 じき れた時の 処理 しょり
    • コードの 詳細 しょうさい
    • クローン?をyesにして 自身がクローンであることを 判別 はんべつ できるようにします。

      y 座標 ざひょう を180にします。

      x 座標 ざひょう を-210から210のいずれかにします。

      乱数 らんすう を使ってランダムに決定します)

      前に出して 表示 ひょうじ します。

      y 座標 ざひょう が-140より 小さくなるまで 以下 いか のAの 処理 しょり をくり返します。

    • A :

      y 座標 ざひょう を-5ずつ えます。(下方向に うご かします)
      もし 自機 じき れた以下 いか のBの 処理 しょり をします。

    • B :

      popの音を鳴らします。
      ( 自機 じき の) 元気 げんき を1 やします。
      キャッチしたハートを1 やします。
      回復 かいふく を送ります。
      このクローンを 削除 さくじょ します。

    • y 座標 ざひょう が-140より 小さくなりループを けたらコスチュームを star3-bにします。

      落としたハートを1 やします。

      0.5秒待ってからクローンを 削除 さくじょ します。

ステージ

主な うご

  • がクリックされたらプレイ時間を計る タイマーをリセットし、 各変数 かくへんすう 初期化 しょきか する。
  • Startを受け取ったとき dance aroundをくり返し 再生 さいせい する。
  • 正常 せいじょう からGAME OVERが送られてきたら GAME OVERの音を鳴らし、 プレイ時間やキャッチしたハートの数、 たお した てき の数などを 画面 がめん 表示 ひょうじ する。

がクリックされたとき

  • プレイ時間を計るタイマーを0にして、 各変数 かくへんすう 初期化 しょきか します。

「Start」を受け取ったとき

  • 音量を30%にする。終わるまでdance aroundを流します。

GAME OVERを受け取ったら

  • GAME OVER の音を鳴らし、プレイ時間や たお した てき の数などを 画面 がめん 表示 ひょうじ した後にステージの他のスクリプトを止めます。

GAME OVER

主な うご

  • から GAME OVERが送られてきたら 画面中央 がめんちゅうおう の前面に 表示 ひょうじ する。

がクリックされたとき

  • 非表示 ひひょうじ にします。
    大きさを50%にします。
    x 座標 ざひょう を0、 y 座標 ざひょう を0( 画面中央 がめんちゅうおう )にします。

GAME OVERを受け取ったら

  • 3秒待ってから前に出して 表示 ひょうじ します。

Start

主な うご

  • がクリックされたらコスチュームをStartにして 表示 ひょうじ する。
  • クリックされたら かく スプライトへStartを送り、 非表示 ひひょうじ にする( かく スプライト Startを受け取ってゲーム開始)。

緑の はた がクリックされたとき

    • 説明 せつめい
    • ゲームスタートの 準備 じゅんび をする。
    • 必要な 処理 しょり
    • 座標 ざひょう 初期化 しょきか
      Startの 表示 ひょうじ
      マウスポインターが上に乗ったとき色を える
    • コードの 詳細 しょうさい
    • x 座標 ざひょう (横の 表示 ひょうじ 位置 いち )を0、 y 座標 ざひょう ( たて 表示 ひょうじ 位置 いち )を0にします。

      コスチュームをStartにして 表示 ひょうじ します。 (ゲーム終了時は 非表示 ひひょうじ になっているため)

      マウスポインターがこのスプライトに れているときは色を え、 はな れたら元の色に もど します。

このスプライトがクリックされたとき

    • コードの 詳細 しょうさい
    • コード「 緑の はた がクリックされたとき」が動作しているので、止めます。

      かく スプライトにStartを送りゲームを開始します。

^