struct_get 함수 설명
struct_get
함수는 주어진 구조체(struct) 내에서 특정 이름을 가진 변수의 값을 가져오는 기능을 제공합니다. 이 함수는 구조체 참조와 변수 이름을 문자열로 입력받아 해당 변수의 값을 반환합니다. 만약 지정한 변수가 존재하지 않으면 undefined
를 반환합니다. 변수가 존재하지 않을 경우, undefined
를 반환하게 되며, 이로 인해 게임이 멈추는 오류가 발생할 수 있으므로, 변수를 가져오기 전에 struct_exists
함수를 사용하는 것이 좋습니다.
문법
struct_get(struct, name);
인수 설명
인수 | 타입 | 설명 |
---|---|---|
struct | Struct | 사용할 구조체 참조 (global struct 가능) |
name | String | 가져올 변수의 이름 (문자열로 입력) |
반환 값
- Any (모든 데이터 타입) 또는
undefined
(지정한 변수가 존재하지 않을 경우)
예제
if (struct_exists(mystruct, "shields")) {
var ss = struct_get(mystruct, "shields");
} else {
var ss = -1;
}
위 코드는 주어진 구조체 내에 변수가 존재하는지 확인하고, 존재할 경우 해당 변수의 값을 가져와 로컬 변수에 저장합니다. 변수가 존재하지 않으면 로컬 변수를 -1로 설정합니다.
활용 예제
예제 1: 구조체에서 사용자 정보 가져오기
if (struct_exists(userInfo, "username")) {
var userName = struct_get(userInfo, "username");
} else {
var userName = "Guest";
}
예제 2: 게임 설정 값 가져오기
if (struct_exists(gameSettings, "volume")) {
var volumeLevel = struct_get(gameSettings, "volume");
} else {
var volumeLevel = 50; // 기본 볼륨
}
예제 3: 캐릭터 상태 확인
if (struct_exists(characterStats, "health")) {
var health = struct_get(characterStats, "health");
} else {
var health = 0; // 캐릭터가 존재하지 않음
}
예제 4: 아이템 정보 가져오기
if (struct_exists(inventory, "itemCount")) {
var itemCount = struct_get(inventory, "itemCount");
} else {
var itemCount = 0; // 아이템 없음
}
이와 같이 struct_get
함수를 활용하여 다양한 구조체 내의 정보를 안전하게 가져올 수 있습니다.