スクラッチでマリオ風のアクションゲームを作ってみる(その18)
18.無敵とタイムオーバーをいれる
「キャラクター」が復活するときに一定時間だけ無敵状態にします。
ステージ毎に制限時間を作って、時間切れでゲームオーバーになるようにします。
今回やること:
- 「キャラクター」が復活した直後は「てき」に当たらない
- 制限時間の表示
- 時間切れでゲームオーバーにする
18-1:「キャラクター」が復活するときに無敵にする
「キャラクター」スプライトを選択してコードを開きます。
「変数」の「変数を作る」ボタンを押して、新しい変数を作ります。
名前を 「むてきタイム」にしましょう。
一番下に次のブロックを追加します。
「(むてきタイム)を(0)にする」
「(キャラ移動)を受け取ったとき」ブロックを見つけましょう。
「POWをおす」ブロックの下に次のブロックを追加します。
「もし「(むてきタイム)>(0)」なら」
「(むてきタイム)を(-1)ずつ変える」
※ ポーズのときは時間を減らしません
「(キャラクターにダメージ)を受け取ったとき」ブロックを見つけましょう。
「もし「(ダメージ)=(5)」なら」~「でなければ」の
「でなければ」の中の一番下に、次のブロックを追加します。
「(むてきタイム)を(60)にする」
次に 「てき」スプライトを選択してコードを開きましょう。
「(状態)=(元気)」のブロックを 次のブロックに入れ替えます。
「「(状態)=(元気)」かつ
「「「(キャラクター)の(むてきタイム)」>(0)」でない」」
実行してみましょう。
「キャラクター」が復活して少しの間は「てき」に当たらなくなりました。
18-2:時間切れでゲームオーバーにする
「キャラクター」スプライトを選択してコードを開きます。
「変数」の「変数を作る」ボタンを押して、新しい変数を作ります。
名前を 「時間切れ」にしましょう。
「次のステージへ」ブロックを見つけましょう。
一番下に次のブロックを追加します。
「(時間切れ)を(1800)にする」
「(キャラ移動)を受け取ったとき」ブロックを見つけましょう。
「もし(ポーズ=(OFF)なら」の中の一番下に、次のブロックを追加します。
「(時間切れ)を(-1)ずつ変える」
追加したブロックの下に、さらに次のブロックを追加します。
「もし「「(時間切れ)>(0)」でない」なら」
「(ゲームオーバー)を(ON)にする」
「(ポーズ)を(ON)にする」
「タイマーをリセット」
実行してみましょう。
※ だいたい1分ぐらいで時間切れゲームオーバーになります
18-3:やってみよう
「時間切れ」のカウントが残り200を切ったら、「キャラクター」の色が変わるようにしてみましょう。
ヒント:
「見た目」の
「(色)の効果を()ずつ変える」 もしくは、
「(色)の効果を()にする」 を使ってみましょう。
他の作品記事もよければ読んでみてください。
「水色のパンダ団」が作ったスクラッチ作品の記事まとめ
スクラッチ作品の作り方や解説をした記事を整理しました。小学生などの初心者やゲームを作りたい中級、上級者などプログラミングのスキル別に作品をまとめています。
0 件のコメント:
コメントを投稿