■Objectを動かしてみる動かなくてしょんぼりな結果になってしまったので、Objectを動かしてみます。Objectを動かすには「objPlayer」をダブルクリックして、Objectプロパティを開きます。そこから、「AddEvent」ボタンを押して「Create」イベントを作成します。これはobjPlayerの実体が生成されたときに発生するイベントとなります。「Craete」イベントが作成されたことを確認したら、次にそのイベントに対応するアクションを定義します。今回は移動アクションをさせたいので、8方向の緑色の矢印アイコンを選択してドラッグ&ドロップします。移動方法として、斜め4方向に動かしたいと思います。斜め矢印をそれぞれクリックし、「Speed」のところに数字の「4」を指定します。これは移動する速さとなります。設定が完了したら「OK」ボタンを押します。F5を押して動作を確認します。ボールが斜めに移動して画面外に出て行ったのを確認できると思います。■壁を作るまたもしょんぼりな結果になってしまいました。これはボールの動きを遮るものがないためです。そこでボールが画面外に出て行くのを回避するために外に壁を作りたいと思います。この画像を保存します。したら、Spriteを「sprWall」、Objectを「objWall」で作成してみましょう。(ボール画像と同じ手順で登録できるので省略します)Roomプロパティを開いて、左クリックでぽちぽちと外堀を埋めていきます。「Ctrl+Shift」を押しながらドラッグすると連続で配置することができます。壁を作ったら早速F5で実行しましょう。残念ながらボールは画面外に出て行ってしまいました。これはボールと壁に当たり判定がないため、抜けてしまっています。■当たり判定をつける当たり判定をつけるには、Objectプロパティを設定します。objPlayerはobjWallに衝突すると跳ね返るという動きを設定したいと思います。プロジェクトツリーからobjPlayerをダブルクリックしてObjectプロパティを開きます。Event」ボタンを押して「Collision」を選択、衝突対象には「objWall」を選択します。次にアクションの設定です。Bounceアイコンをドラッグ&ドロップして、Bounce設定はそのまま「OK」を押します。これでobjPlayer側の設定は完了です。続けて、objWall側の設定です。プロジェクトツリーから「objWall」をダブルクリックしてObjectプロパティを開きます。したら「Solid」にチェックを入れます。SolidをつけることによってそのObjectに他のObjectがめり込まなくなります。F5で実行するとボールが壁に跳ね返るようになったと思います。■ゲームらしくするようやくちゃんとした挙動となりましたが、あまりゲームらしくないですね。そこで、周りの壁を壊せるようにして点が入るようにしたいと思います。プロジェクトツリーから「objWall」をダブルクリックしてObjectプロパティを開き、「AddEvent」>「Collision」>「objPlayer」を選択します。Score」アイコンをドラッグ&ドロップします。Score」の設定には以下のように指定します。チェックを入れる(これを入れないと1が代入されてしまう。relativeとは「相対的」という意味です)ついでに壁が破壊されるようにしてみます。Instance」アイコンをドラッグ&ドロップします。Destroy設定は特に何も必要ないので、そのまま「OK」を押します。ボールが壁にぶつかると壁が壊れるようになりました。スコアが表示されていませんね。スコアの表示スコアを表示するために、表示用のObjectを作成します。Event」ボタン>「Draw」ボタンを選択します。続いて対応するアクションの設定です。Textアイコン」をドラッグ&ドロップします。Text」の設定は以下のようにします。string(score)と指定して、xとyにはそれぞれ「32」を指定します。最後にRoomに配置します。ObjectはRoomに配置しない限り、動作をしないためです。「objDrawner」を選択して、任意のところに配置します。配置できたら、F5で実行します。左上にスコアが表示されるようになりました。プレイヤーの入力を受け付けるようにするこのままだと見ているだけでゲームらしくないので、プレイヤーの入力を受け付けるようにします。ここではボールをクリックすると移動方向が90度回転するようにしてみます。pressed」を選択します。Variableアイコン」をドラッグ&ドロップします。設定内容は、variable:directionvalue:90Relative:チェックを入れるとなります。これはボールを左クリックするたび「direction(方向)」を「90度」加算していくアクションとなります。ゲームオーバーを入れるようやくゲームっぽくなってきたのでゲームオーバーを入れてみます。今回は画面外にボールが飛び出したらゲームオーバーになるようにしましょう。room」を選びます。これは「objPlayer」が画面外に出た時発生するイベントです。Messageアイコン」をドロップ>設定項目はmessageに「GameOver!」を指定してOKボタンを押します。1つアクションを追加します。Gameアイコン」をドロップします。■完成!ではF5でゲームを開始してみます。ボールが画面外に出ると「ゲームオーバー」のメッセージが表示され、ゲームが終了します。ゲームオーバーになるコツはクリックを素早く2回連打して反射した方向に戻すことです。低いスコアでゲームオーバーになれるかを競ってみてもいいかもしれません。以上で、チュートリアルは終了となります。深い内容はこちらの動画が参考になると思います。私もまずはこの動画を参考に使いかたを覚えました。(Unity)Unityでタワーディフェンスを作れるようになるチュートリアルを書きました。2Dゲーム制作入門Unityで2Dゲームを作るための解説本を書きました。ミニゲームや横視点のシューティングゲーム、ジャンプアクションゲームの作り方が学べます。(GameMaker:Studio)GameMaker:Studioでタワーディフェンスを作るチュートリアルを書きました。手順どおりに進めていくことで、タワーディフェンスが作れます。無料で始められるゲーム開発ツールの初心者向けの解説本を書きました。シューティングゲームやアクションゲームの作り方を解説しています。