【マリオ風アクションゲーム】9.敵をやっつける

2020年8月5日水曜日

Scratch スクラッチ プログラミング マリオ

t f B! P L

スクラッチでマリオ風のアクションゲームを作ってみる(その9)

9.敵をやっつける




作り方まとめページがあるよ→ 記事まとめ

前回の続きです。 8.敵を気絶させる





9-1:きぜつした「てき」を落とす


「てき」のスプライトのコードを開きます。




「ワープする」ブロックを見つけましょう。





「もし「(状態)=(元気)なら」のブロックの下に次のブロックをくっつけます。


「もし「(状態)=(きぜつ)なら」ブロックを追加して中に次のブロックをいれる。

    「(状態)を(たおされた)にする」
    「(重力)を(0)にする」
    「(得点)を「(てきの速さ)×(100)」ずつ変える」






※ このままだと「てき」が落ちるときに「ジャンプとゴール」に触れてワープしてしまうので、次のコードで回避しましょう


「もし「「(状態)=(たおされた)」ではない」なら」ブロックを作りましょう。





すぐ下にある「もし「(ジャンプとゴール)に触れた」なら」ブロックを、

新しく作った、
「もし「「(状態)=(たおされた)」ではない」なら」ブロックの中に入れます。

そのブロックを「コスチュームを(コスチュームの名前)にする」ブロックの上にくっつけます。




「たおされた」時は、壁に当たらないようにしましょう。

「キャラクターを動かす」ブロックを見つけましょう。




「もし「「(状態)=(たおされた)」でない」なら~でなければ」ブロックを作ります。




「キャラクターを動かす」ブロックにある「壁にぶつかる」ブロックを、新しく作ったブロックの中に入れて元の位置に戻しましょう。



実行してみましょう。








9-2:落ちた「てき」を復活させる


ひきつづき、「てき」のコードを作っていきます。

「ブロック定義」から「ブロックを作る」ボタンを押して新しいブロックを作ります。

名前は「復活する」にします。




「復活する」ブロックを次のように作ります。

「もし「(Y座標)< (-185)」なら」ブロックを作り、その中に次のコードを追加。
    「最初の位置に移動する」






「キャラクターを動かす」ブロックにある
「もし「「(状態)=(たおされた)」でない」なら~でなければ」ブロックの 
”でなければ” の中に、「復活する」ブロックを入れましょう。




「最初の位置に移動する」ブロックに移動しましょう。

一番下に次のコードを追加します。

「(状態)を(元気)にする」
「コスチュームを(Crab-a)にする」




実行してみましょう。







9-3:たおした「てき」の数をカウントする

「てき」のコードを開いて、「変数」から「変数を作る」ボタンを押します。

新しい変数「たおした数」を作りましょう。




「はたが押されたとき」ブロックの一番下に、
「(たおした数)を(0)にする」ブロックをくっつけましょう。




「復活する」ブロックに次のカウントするブロックの「最初の位置に移動する」ブロックの上に、
「(たおした数)を(1)ずつ変える」を追加しましょう。




実行してみましょう。






9-4:たおすときに「てき」を押す


「てき」スプライトのコードを開きましょう。

「ワープする」ブロックを見つけます。

次のコードを作ります。

「(移動する方向)を(0)にする」
「(加速)を(0)にする」

「もし「(右向き矢印)キーが押された」なら」を追加して中に、
    「(加速)を(90)にする」を追加する

「もし「(左向き矢印)キーが押された」なら」を追加して中に、
    「(加速)を(-90)にする」を追加する




次のようなコードになります。




このままだと、まだ動きません。

「左右に移動する」ブロックを見つけましょう。

「もし「(状態)=(元気)なら」ブロックの 「(状態)=(元気)」を、

「「(状態)=(元気)」もしくは「(状態)=(たおされた)」」 に変更します。




実行してみましょう。






9-5:やってみよう


今のままだと、「てき」が落ちるときに、「土管」の後ろを通ってしまいます。

落ちるときは、「土管」の前を通るようにしましょう。

また、復活して出てくるときは「土管」の後ろを通るようにしましょう。


ヒント:

「土管」の表示順は、「最前面」の「1層奥」になっています。



「てき」の状態を「たおされた」にするときに、「土管」より前にしましょう。



戻すときは、「最初の位置に移動する」ブロックの中で、「土管」より後ろにしましょう。
(一回、「最前面」にしてから、奥に下げるよ)






今回作ったプロジェクトはここだよ →  マリオ風ゲーム:Step9(倒す)

プロジェクトが作れなかった場合は、動きだけでも見てみてね。




他の作品記事もよければ読んでみてください。


このブログを検索

ブログをよくする

自己紹介

自分の写真
はじめまして。はるはるです。 中2の息子と小5の娘を抱える2児の父です。今はゲーム会社で働いています。 子供のプログラミング学習に協力できるように教え方を勉強中です。 このブログでは簡単なゲームを作りながら自分が学んだことを少しずつ共有していきます。 情報処理の試験をたまに受けます。 第二種情報処理技術者 ソフトウェア開発技術者 基本情報処理技術者 応用情報処理技術者 twitter: https://twitter.com/amaruchan007

連絡フォーム

名前

メール *

メッセージ *

ブログ アーカイブ

QooQ