以下は、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(instance of 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())
FaceDirectionSettings メソッド
set_face_direction(angle, flip_flag):第一引数:向く方向の角度、第二引数:反転するかどうかget_face_direction():現在の向く方向の角度を返す
その他の AGMakerManager メソッド
GDScript で生成されたゲームオブジェクトを AGMakerManager に登録
AGMakerManager.regist_game_object(“TargetNode”)
シーン遷移
get_current_game_scene()
- 現在実行中の GameScene を返します。戻り値の型は GameScene です。
サンプルコード:
func _ready() -> void:
var game_scene = AGMakerManager.get_current_game_scene()
print("*** get current scene = ", 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("*** on before change scene = ", current_scene.name)
pass
func _on_after_change_scene(current_scene: GameScene):
print("*** on after change scene = ", current_scene.name)
pass