以下は、GDScriptでAction Game Makerの各種クラスにアクセスするための関数メソッドのリストです。
変数 / スイッチ メソッド
| 項目 | メソッド |
|---|---|
| 変数データの取得 | $“../VariableSettings”.get_value(“VariableDataName”) |
| スイッチデータの取得 | $“../SwitchSettings”.get_value(“SwitchDataName”) |
| 変数の存在チェック | $“../VariableSettings”.has_value(“VariableDataName”) |
| スイッチの存在チェック | $“../SwitchSettings”.has_value(“SwitchDataName”) |
| 変数データの設定 | $“../VaribleSettings”.set_value(“VariableName”, Value) |
| スイッチデータの設定 | $“../SwitchSettings”.set_value(“SwitchName”, True / False) |
| シグナルの接続 | custom_signal.connect(Callable(GameObject インスタンス, “receive_signal”)) |
| VariableSettings ノードの取得 | $“../GameObject”.get_variable_settings() |
| SwitchSettings ノードの取得 | $“../GameObject”.get_switch_settings() |
読み取り専用変数 / スイッチ
以下のACTION GAME MAKERの変数 / スイッチは読み取り専用であり、メソッドで変更することはできません。
| タイプ | 名前 |
|---|---|
| スイッチ | is_locked, is_touching_portal |
| 変数 | object_id, stayed_area_id, visible_direction, x_speed, y_speed, player_id, controller_id, taken_damage |
データベースメソッド
| 項目 | メソッド |
|---|---|
| ユーザーデータベースの取得 | AGMakerManager.get_project_database_plain(“database_name”, “record_name”, “column_name”) |
| プロジェクト変数の取得 | AGMakerManager.get_project_database_variable(“record_name”) |
| プロジェクトスイッチの取得 | AGMakerManager.get_project_database_switch(“record_name”) |
| オーディオデータベースの取得 | AGMakerManager.get_project_database_sound(“record_name”, “column_name”) |
| ユーザーデータベース変数の設定 | AGMakerManager.update_project_database_plain(“DatabaseName”, “RecordName”, “CplumnName”, variable) |
| プロジェクトデータベース変数の設定 | AGMakerManager.update_project_database_variable(“VariableName”, variable) |
| プロジェクトデータベーススイッチの設定 | AGMakerManager.update_project_database_switch(“SwitchName”, True / False) |
記録インデックスによるデータ取得メソッド
get_project_database_plain_by_idx:ユーザーデータベースget_project_database_equipment_type_by_idx:装備タイプget_project_database_attribute_type_by_idx:属性タイプget_project_database_custom_type_by_idx:ユーザー定義タイプget_project_database_sound_by_idx:オーディオデータベースget_project_database_variable_by_idx:プロジェクト変数get_project_database_switch_by_idx:プロジェクトスイッチ
記録インデックスによるデータ更新メソッド
update_project_database_plain_by_idx:ユーザーデータベースupdate_project_database_variable_by_idx:プロジェクト変数update_project_database_switch_by_idx:プロジェクトスイッチ
記録数の取得メソッド
get_project_database_plain_record_max:ユーザーデータベースget_project_database_equipment_type_record_max:装備タイプget_project_database_attribute_type_record_max:属性タイプget_project_database_custom_type_record_max:ユーザー定義タイプget_project_database_sound_record_max:オーディオデータベースget_project_database_variable_record_max:プロジェクト変数get_project_database_switch_record_max:プロジェクトスイッチ
カメラ関連メソッド
CameraTargetSettings の生成
var camera_target_settings = CameraTargetSettings.new()
camera_target_settings._target_id = “任意ID”
camera_target_settings._is_active_target = true
camera_target_settings._visible_size = Vector2(100, 100)
add_child(camera_target_settings)
camera_target_settings.position = Vector2(100, 100)
ZoomCamera2D に CameraTargetSettings を登録
$ZoomCamera2D.regist_target(camera_target_settings.get_instance_id())
ZoomCamera2D から CameraTargetSettings を登録解除
$ZoomCamera2D.unregist_target(camera_target_settings.get_instance_id())
その他の AGMakerManager メソッド
GDScript で生成した GameObject を AGMakerManager に登録
AGMakerManager.regist_game_object(“TargetNode”)
シーン切り替え
get_current_game_scene()
- 現在実行中の GameScene を返す。返り値の型は GameScene。
- 例:
func _ready() -> void:
var game_scene = AGMakerManager.get_current_game_scene()
print("*** 現在のシーン = ", game_scene.name)
pass
シグナル
GameObject
- 保存 / 読み込み シグナル
on_saved(int slot, Object object)
on_loaded(int slot, Object object)
AGMakerManager
-
保存 / 読み込み シグナル
on_saved(int slot)
on_loaded(int slot) -
シーン切り替え関連シグナル
game_scene_about_to_change(current: Object)
このシグナルは、シーン切り替えが実行される前に発生します。
パラメータ current には切り替え前の GameScene が渡されます。
game_scene_changed(current: Object)
このシグナルは、シーン切り替えが完了した後に発生します。
パラメータ current には切り替え後の GameScene が渡されます。
-
注意:
Godot の仕様上、パラメータの型はObjectです。
使用する際には、ユーザー側でGameSceneまたはNode2Dに変換してください。 -
例:
func _ready() -> void:
# シーン切り替え前のシグナルに接続
AGMakerManager.game_scene_about_to_change.connect(_on_before_change_scene)
# シーン切り替え後のシグナルに接続
AGMakerManager.game_scene_changed.connect(_on_after_change_scene)
pass
func _on_before_change_scene(current_scene: GameScene):
print("*** シーン切り替え前 = ", current_scene.name)
pass
func _on_after_change_scene(current_scene: GameScene):
print("*** シーン切り替え後 = ", current_scene.name)
pass