このコースでは、ACTION GAME MAKERでの基本的なスクリプト作成方法を学んでいきます。
第五回では、シーン遷移を作っていきます。
コース開始の事前準備
第一回~第四回で使用したプロジェクトを引き続き利用します。
それではプロジェクトを開いて準備してください。
STEP1: タイトル画面を作ろう、シーン遷移を使って移動してみよう。
- 新しいシーンタブを開き、ゲームシーンを作成してください。作成したらtitleと名前をつけて保存しておきましょう。
- UIObjectRootの子として、ColorRectノードを追加してください。
- メニュー表示領域を覆うようにColorRectを拡大します。
- 白では眩しいのでColorプロパティで黒くしましょう。
- UIObjectRootの子として、Labelノードを追加します。これは文字を描くノードです。
- プロパティのテキスト欄に"SAMPLE GAME PROJECT PRESS A START"と記入しましょう。
- 続いて、新しいLabelSettingsを作り、フォントサイズを80にします。
- 水平方向整列を中央揃えにして、Labelの位置を動かして大体真ん中あたりに調整しましょう。
- 非常に簡素なものですがタイトルシーンができました。上部のタブでScene Transitionに変更してください。
- 先ほど作成したtitle.tscnをgame_sceneより左に配置し、ヴィジュアルスクリプトと同じようにtitleからgame_sceneにリンクをつなぎましょう。
- 遷移条件(Switching Conditions)でAボタンの入力があったときと設定します。
- 遷移エフェクトとして、遷移前、遷移後ともにBLACKを設定します。
- Titleを右クリックしてスタートシーンに設定してください。
- テストプレイをしてみましょう。正常に設定できていればタイトルシーンが表示され、Aボタン、もしくはZキーを押せばゲームシーンに遷移するはずです。
シーンが複数ある際のテストプレイについて。
特定のシーンを開いた状態でテストプレイボタンの近くの
かF6キーを押すことで現在のシーンを実行することができます。

しかし、その状態ではシーン遷移が正常に動作しない可能性がありますので、シーン遷移も含めたテストをしたい場合はテストしたシーンをシーン遷移タブでスタートシーンとしてテストすることをおすすめします。
STEP2: ポータルを使ってシーンを移動してみよう。
- game_sceneタブに切り替えてください。ObjectRootの子としてPortalを作成します。
- ポータルのプロパティを設定します。右の入力があったとき、と設定します。移動先のシーンはシーンパスは空欄のまま次にいきます。
- 入場エフェクトの入場タイプ、退場タイプをBLACKにしておきましょう。
- CollisionMaskに2を追加しましょう。サンプルプレイヤーのレイヤーは2になっているため、マスクが1だけでは衝突できないためです。
- Portalの座標をステージの右端に持っていきましょう。この時、PortalCollisionではなくPortalノード自体を移動するようにしてください。Portalノードの位置が移動先になります。
- PortalCollisionがでかすぎるので横幅を小さくしましょう。あまり大きいと接触が暴発してしまうかもしれません。
1.続いて移動先のシーンを作ります。ファイルシステムでgame_scene.tscnを複製してgame_scene2.tscnを作りましょう。
- game_scene2を開き、playerを削除しましょう。削除しないとプレイヤーが2人に分裂してしまうためです。
- Portalノードの位置をマップの左端に移動します。
- PortalCollisionの位置を修正します。ポータル移動後、ポータルコリジョンのサイズを変更したためずれているはずです。この画像ではPortalノードに対して右側にCollisionがあるため左側にしておきましょう。
- ポータルのプロパティを変更します。入力条件を右ではなく、左に変更し、ターゲットシーンとしてgame_scene.tscnを設定します。すると、game_sceneにあるポータルが選択できるので選択します。
- game_sceneタブに戻ります。 同様に、シーンパスにgame_scene2.tscnを設定しポータルを選択します。
- テストプレイしてみましょう。うまく設定できていれば、2つのシーンを自由に行き来できるはずです。
おわりに
チュートリアル:スクリプトコースの内容は以上です。
チュートリアルで解説した内容は基本的なものだけです。
ACTION GAME MAKERのヴィジュアルスクリプトでは、条件とアクションを組み合わせることで様々な動きを作ることができます。
発想次第で、私達開発チームが思いもよらなかったようなものをツクる人もでてくるかもしれません。
思いついた内容はぜひ、SNSやギルドで共有してみてください。
他のコースを受講される場合はこちら
1. グラフィックコース
自分が描いたキャラクターを動かしたい!という人向けのコースです。
3. 表現強化コース
Godotらしいカッコイイ表現をつけてみたい!という人向けのコースです。