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 함수를 활용하여 다양한 구조체 내의 정보를 안전하게 가져올 수 있습니다.