ゲーム メーカーでオブジェクトをクリックする方法

YoYo Games の Game Maker ゲーム開発スイートには、ゲームをすばやく設計するためのさまざまなドラッグ アンド ドロップ機能が含まれています。ただし、Game Maker の組み込みオプションに特に欠けている機能の 1 つは、オブジェクトがマウスでクリックされたかどうか、およびクリックされた場合に操作を実行できるかどうかを確認できる機能です。ただし、この見落としは、Game Maker の組み込みスクリプト言語である GML を数行使用するだけで簡単に対処できます。
ステップ 1
Sprites を右クリックし、「New Sprite」をクリックしてスプライトを作成します。 「スプライトの編集」をクリックします。スプライトは、ビデオ ゲームで使用するために設計された画像です。サムネイルをダブルクリックします。これにより、「Image Editor」と呼ばれる「Paintshop」のようなプログラムが開きます。速い円を描き、緑色のチェック マークをクリックして保存し、ダイアログを閉じます。
ステップ 2
[オブジェクト] を右クリックし、[新しいオブジェクト] をクリックして、そのスプライトからオブジェクトを作成します。リストからこのオブジェクトのスプライトとして「sprite0」を選択します。
ステップ 3
「イベントを追加」をクリックします。 「マウス」をクリックします。 「左押し」を選択してください。
これで、マウスの左ボタンがクリックされるたびに、このイベントを持つすべてのオブジェクトが指定されたコードを実行します。
ステップ 4
「コントロール」をクリックします。ノートのパッドのように見える「コードの実行」アイコンをアクションボックスにドラッグします。これにより、コード エディターが開きます。
ステップ 5
以下をコード エディターに貼り付けます。
d =point_distance(mouse_x, mouse_y, self.x + (self.sprite_width/2), self.y + (self.sprite_height)/2) if (d
まず、オブジェクト (これはゲーム内のすべてのオブジェクトに適用されることを覚えておいてください) は、マウス ポインターからどれだけ離れているかを確認し、その距離を "d" という名前の変数に格納します。
第二に、その距離がスプライトの幅の半分未満の場合、それ自体が破壊されます。
緑色のチェック マークをクリックして、コード エディターとイベント エディターを終了します。
テスト。 「ルーム」を右クリックし、「ルームの作成」を選択します。部屋の周りを数回クリックして、オブジェクトのインスタンスをいくつか作成します。緑の矢印をクリックしてゲームを実行します。クリックするたびに円が消えるはずです。
オプションの「アドバンスドモード」でゲームメーカーを使用すると、親の機能を継承するオブジェクトのファミリーを設定できます。これにより、より複雑なゲームで、「マウス クリック」関数を 1 回記述するだけで、ゲーム内のすべてのクリック可能なオブジェクトでそれを使用できるようになります。 ステップ 6
ヒント