변수 인스턴스 이름 가져오기
이 문서에서는 variable_instance_get_names
함수에 대해 설명합니다. 이 함수는 인스턴스의 변수 이름이나 게임의 전역 변수를 포함하는 배열을 반환합니다. 인스턴스 ID 값을 전달하면, 배열의 각 항목은 해당 인스턴스에서 생성된 인스턴스 범위 변수의 이름을 문자열로 나타냅니다. 만약 global
키워드를 전달하면, 배열의 각 항목은 전역 범위 변수의 이름을 문자열로 나타냅니다.
문법
variable_instance_get_names(instance_id/global);
인수 설명
인수 | 유형 | 설명 |
---|---|---|
instance_id | Instance ID | 확인할 인스턴스의 고유 ID 값 |
global | 키워드 | 전역 변수를 가져오기 위한 키워드 |
반환 값
- 배열 (각 항목은 문자열)
예제 코드
다음 코드는 인스턴스의 모든 인스턴스 범위 변수를 가져와서 해당 값과 함께 디버그 출력에 표시합니다.
var str = "";
var array = variable_instance_get_names(id);
show_debug_message("Variables for " + object_get_name(object_index) + string(id));
for (var i = 0; i < array_length(array); i++;){
str = array[i] + ":" + string(variable_instance_get(id, array[i]));
show_debug_message(str);
}
활용 예제
1. 인스턴스 변수 목록 출력
인스턴스의 모든 변수를 출력하여 디버깅할 수 있습니다.
var variables = variable_instance_get_names(id);
for (var i = 0; i < array_length(variables); i++) {
var var_name = variables[i];
var var_value = variable_instance_get(id, var_name);
show_debug_message(var_name + ": " + string(var_value));
}
2. 전역 변수 목록 출력
게임의 전역 변수를 확인하고 출력할 수 있습니다.
var global_vars = variable_instance_get_names(global);
for (var i = 0; i < array_length(global_vars); i++) {
var global_var_name = global_vars[i];
var global_var_value = global[global_var_name];
show_debug_message(global_var_name + ": " + string(global_var_value));
}
3. 특정 변수 값 확인
특정 인스턴스의 특정 변수를 확인하는 방법입니다.
var var_name = "health"; // 확인할 변수 이름
if (array_contains(variable_instance_get_names(id), var_name)) {
var health_value = variable_instance_get(id, var_name);
show_debug_message("Health: " + string(health_value));
}
이와 같은 방법으로 variable_instance_get_names
함수를 활용하여 인스턴스 및 전역 변수에 대한 정보를 쉽게 얻고 디버깅할 수 있습니다.