【マリオ風アクションゲーム】4.アイテムを出す

2020年7月18日土曜日

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

t f B! P L

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

4.アイテムを出す


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

前回の続きです。 3.ワープをつくる



4-1:アイテムのスプライトを作る

キャラクターのスプライトを複製します。




複製したスプライトの名前を「アイテム」に変更します。




アイテムのコスチュームから、1と2を削除します。




コスチュームを選ぶをクリック。




「食べ物」の中から「Apple」を選んでください。




「判定用」の四角を「Apple」の内側になるように大きさを調整します。
「Apple」をコピーして調整した場合は、最後はAppleを消してください。




↓こういう感じになります。








4-2:アイテムの大きさを60%にする


「Apple」のコードを書きかえます。

実行開始イベント(はたのあるブロック)を見つけます。
「大きさを~%にする」ブロックのところを「60」に変えます。







4-3:「アニメーションする」と「ジャンプする」を取りのぞく


「(キャラ移動)を受け取ったとき」ブロックを見つけよう。
「アニメーションする」と「ジャンプする」のブロックをドラッグして取りだします。







4-4:アイテムの「最初の位置に移動する」ブロックを作る


「ブロック定義」から「ブロックを作る」ボタンを押しましょう。

次のようなブロックを作ります。





次に、「移動する方向」変数を作っておきます。

「変数」の「変数を作る」ボタンを押しましょう。

次のような変数を作ります。




「最初の位置に移動する」ブロックをプログラミングします。

・「変数」から「(移動する方向)を○にする」ブロックを使う
・「演算」から「○から○までの乱数」ブロックを使う
・「制御」から「もし~なら、でなければ~」ブロックを使う
・「動き」から「X座標を○、Y座標を○にする」ブロックを使う

↓のようにします。




「移動する方向」変数には、1か2がランダムで入るよ。

1のとき: 画面左上に移動します
2のとき: 画面右上に移動します 


「最初の位置に移動する」ブロックを配置する。

「ブロック定義」から「最初の位置に移動する」ブロックを使います。




実行してみましょう。

画面上の右か左のどちらかランダムで「Apple」が出現します。







4-5:自動でうごくようにする


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





「移動する方向」変数の数字によって移動する方向をかえるようにします。

1のとき: 右へ移動する
2のとき: 左へ移動する


 「右向き矢印」と「左向き矢印」のキーが押されたかどうかを調べているところを次のように変更します。

「右向き矢印」のところ: 「移動する方向」=1 ならにする
「左向き矢印」のところ: 「移動する方向」=2 ならにする

 
 
 
スピードを少し遅くしましょう。




実行してみましょう。







4-6:キャラクターに触れたら「最初の位置に移動する」でもどす


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

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

「コスチュームを「判定用」にする」
「もし「キャラクターに触れた」なら」の中に
「最初の位置に移動する」ブロックを入れる 
「コスチュームを「Apple」にする」

 



実行してみましょう。

 





4-8:やってみよう

・「得点」変数を作って画面に表示してみよう

ヒント:




・アイテムをキャラクターがキャッチしたら、「得点」が100増えるようにしよう

・アイテムをキャラクターがキャッチしたら、音「ニャー」が鳴るようにしてみよう

ヒント:「ワープする」ブロックに追加するよ



次の記事だよ → 5.土管を出す

今回作ったプロジェクトはここだよ → マリオ風ゲーム:Step4(アイテム)

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




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


このブログを検索

ブログをよくする

自己紹介

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

連絡フォーム

名前

メール *

メッセージ *

QooQ