今回つくるゲーム
難易度
今回は丸太落としゲームをを作っていきます。スクラッチでのゲーム作りに慣れてきた人にぴったりのゲームです。枝に当たらないように左右に移動しながら木を切っていくゲームですが、ここで使っているのがマップチップというテクニックです。マリオのような横スクロールゲームやRPGゲームなど、画面を超えてステージやアイテムが広がる時に使うテクニックです。これが作れるように慣れば脱初心者と言ってもいいと思いますので是非チャレンジしてください。
まずは実際にゲームをプレイしてみてください。左右の矢印キーで移動スペースキーで伐採です。枝に当たるとゲームオーバー、100個伐採できるとクリアです。
はじめに
まず、以下をリミックスしてください
こちらにはゲームを作るのに必要な素材が揃っています。
ネコが斧を振る
まずは、ネコが斧を振れるようにしていきましょう。左右矢印キーで丸太の左側・右側に移動し、向きも変えるようにします。そしてスペースキーを押すとコスチュームを変化させることで斧を振っているように見せます。コードは以下の通りです。
では実際にスペースキー斧を振ってみましょう。
丸太をならべる
次に丸太を並べていきます。ここで使うのがマップチップというテクニックです。
すでに、丸太マップというリストを作っていますのでチェックボックスにチェックを入れてください。
すると画面上にリストが表示されます。1、2、3の数字の羅列になっていますが、下記のとおり、1が枝なし丸太、2が右枝丸太、3が左枝丸太に対応しています。(コスチュームタブをご確認ください)
このリスト(マップチップ)にそって丸太が積み上がっていくことになります。
マップチップはマリオのような横スクロールゲームのステージ制作にも使います。より詳しい解説はこちらからご確認ください
では、丸太を積み上げるコードを書いていきます。コードは以下の通りです。ここで注意しなけばならないのは、丸太xと丸太yに関しては”このスプライトのみ”にチェックを入れるということです。それぞれの丸太が独自の座標を保つために必要なテクニックになります。
また、このように丸太x、丸太yという独立した座標系を持つことで、画面から上にはみ出している丸太についても制御できるようになります。
また、丸太を配置のブロック定義をするときは、”画面を再描画せずに実行する”をチェックするようにしてください。そうすることで描画が早くなります。
旗を押すと以下のように表示されますが、実際は上部の見えていない部分にもクローンが配置されています。
丸太を伐採する
次に丸太を伐採して落としていきます。以下のようにコードを追加します。スペースキーを押すと、一番下の丸太(y座標=-100)は削除されてそれ以外の丸太はy座標が-54づつ下がります。これで丸太が落とせるようになります。
実際にプレーしてみてください。以下のように丸太を落とせれば成功です。
伐採した丸太を飛ばす
このままでは伐採した丸太が消えてしまうように見えるので、丸太を飛ばす演出を加えます。
飛ばし用のスプライトに移動して以下のようにコードを書きます。ネコの位置によって飛ばす方向を変えるようにします。
プレーすると以下のようになります。
これで、丸太落としゲームのキモの部分は完成です。
ゲームを仕上げる
ここから一気にゲームを仕上げていきます。ゲームの流れは以下の通りです。
ゲーム中という変数を作りゲーム全体をコントロールしていきます。
ゲーム管理のスプライトに以下のようにコードを書きます。効果音やBGMも加えています。
ネコのスプライトに移動し、ゲームオーバーの定義を書きます。枝に当たるというのは色同士が触れるということで定義します。伐採数という変数を加え、効果音も入れています。
丸太のスプライト、飛ばし用のスプライトもそれぞれプレイ中=1で動くように指示を追加していきます。
実際にプレーしてみてください。以下のように動けば成功です。
すべてのコード
これでゲームは完成です。すべてのコードは以下からも確認できます。