2016-11-04 9 views
0

私は複数のイベントがすべて同じ部屋を使用することができるフレームワークを作成しようとしています。変数を渡してダイナミックルームを作成することはできますか?

たとえば、プレイヤーはイベントをトリガーし、イベントは渡された変数を使用してルームを構築します。

部屋をダイナミックにするのに問題があります。私は部屋と部屋のオブジェクトがすべてのイベントのために再利用できるようにします。これにはボタンも含まれます。

  • これは可能ですか? OR
  • 作成したい一意のイベントごとに別々の部屋を作成する必要がありますか?

このゲームは、ほとんどの場合メニューに基づいています(ゲーム「Long Live The Queen」のようなものです)。

答えて

0

簡単に答えることができます。

Game Makerの1つの部屋にたくさんのものを入れることができたケースはたくさんあります。この「動的な」ゲーム作成を実現するには、いくつかの方法があります:

  • ファイルとスクリプト。 1つの部屋を使用して、壁、階、プレーヤーの位置、イベントなどをファイル内に保存することで、さまざまなレベルのレベルを保持することができます。あなたはファイル名( "渡された"変数)を受け取り、その部屋の中のあなたのためにレベル内のすべてのインスタンスを単純に作成させるスクリプトを作ることができます。別のレベルのロードを準備するために部屋をクリーンアップする機能を持つこともできます。ただし、あなたの一意性は、これらのファイルに保存できる情報に限定されています。必要に応じて、メニューオプションとテキストダイアログも保存できます。
  • "ユニークな"オブジェクト。 Game MakerはIDEです。エディタで新しいオブジェクトを作成して独自のケースを作成し、別のオブジェクトにハンドラを追加してオンデマンドで作成することを止めるものはありません。あなたはそれらの間の切り替えを管理しなければなりません。
  • 「マネージャ」オブジェクトを作成します。ゲーム内で起こっていることのすべての出来事(そして、その部屋では、そのことについて)を扱うことができます。また、破壊される前に非グローバル変数を格納するためにオブジェクトによって使用することもできます。例えば、あるキャラクターが死亡した場合、それはマネージャーオブジェクト内の変数を "true"に設定することができ、これによりボスが表示されます。あなたがゲームメーカー8のようなものを実行している場合を除き、けれども動的オブジェクトのイベントを操作するという点で

もはや可能ではありません。 GameMakerの前には、「object_add()」のような関数を使ってスタジオ、オブジェクト、スプライトなどを動的にゲームで作成することができるため、これを言っています。もちろん、これらは廃止され、もはや使用することはできません。それにもかかわらず、常にその周りに道があります。

関連する問題