새로운 구조체 생성
이 문서는 구조체를 생성하는 데 사용되는 New Struct 액션에 대해 설명합니다. 이 액션은 생성자 함수로 표시된 함수를 사용하여 구조체를 만들 때에만 사용됩니다.
개념 설명
New Struct 액션은 미리 정의된 함수의 메소드를 사용하며, 함수에 필요한 인자들을 전달합니다. 이러한 인자는 생성되는 구조체를 채우는 데 사용됩니다. 구조체는 타겟 변수로 반환되며, 이 변수는 임시 로컬 변수로 설정할 수도 있습니다.
액션 구문
New Struct(function, argument0, argument1, argument2, argument3, target)
인자 설명
| 인자 | 설명 |
|---|---|
| Function | 호출할 스크립트 또는 사용자 정의 함수의 이름 |
| Argument0 | 스크립트 또는 함수에 전달할 첫 번째 인자 |
| Argument1 | 스크립트 또는 함수에 전달할 두 번째 인자 |
| Argument2 | 스크립트 또는 함수에 전달할 세 번째 인자 |
| Argument3 | 스크립트 또는 함수에 전달할 네 번째 인자 |
| Target | 반환된 값을 대상으로 하는 변수의 이름 (공백으로 남길 수 있음) |
예제
다음은 New Struct 액션을 사용하는 간단한 예입니다. 이 예제에서는 init_char_struct라는 생성자 함수를 사용하여 네 개의 인자를 가진 구조체를 생성합니다.
코드 예제
// 구조체를 초기화 하는 함수
function init_char_struct(_str1, _str2, _val1, _val2) {
var char_struct = {};
char_struct.name = _str1;
char_struct.location = _str2;
char_struct.hp = _val1;
char_struct.mana = _val2;
return char_struct;
}
// Create Event에서 구조체를 생성
var char = New Struct(init_char_struct, "Hero", "Village", 100, 50);
설명
위의 코드에서, init_char_struct 함수는 네 개의 인자를 받아 새로운 구조체를 만듭니다. New Struct 액션을 통해 "Hero"라는 이름, "Village"라는 장소, 체력 100, 마나 50으로 구조체를 생성하여 char 변수에 저장합니다.
활용 및 응용 예제
1. 적 캐릭터 생성
적 캐릭터를 생성하는 생성자 함수 예제입니다.
function init_enemy_struct(_str1, _val1, _val2) {
var enemy_struct = {};
enemy_struct.type = _str1;
enemy_struct.attack = _val1;
enemy_struct.defense = _val2;
return enemy_struct;
}
var enemy1 = New Struct(init_enemy_struct, "Goblin", 15, 5);
2. 아이템 생성
아이템을 생성하는 구조체를 작성하는 예제입니다.
function init_item_struct(_str1, _val1) {
var item_struct = {};
item_struct.name = _str1;
item_struct.power = _val1;
return item_struct;
}
var potion = New Struct(init_item_struct, "Health Potion", 20);
위 예제들은 각각 다른 용도로 사용할 수 있는 구조체를 생성하는 방법을 보여줍니다. 이러한 구조체들을 활용하여 게임 내 캐릭터, 적, 아이템 등을 효과적으로 관리할 수 있습니다.
결론
New Struct 액션은 구조체를 생성할 때 유용한 도구입니다. 구조체의 활용을 통해 게임의 다양한 요소를 효과적으로 구성할 수 있습니다.