객체 이벤트 생성하기
GameMaker는 완전히 이벤트 기반으로 작동하며, 모든 행동은 특정 이벤트가 특정 순서로 발생하거나 게임 내 특정 사건에 의해 발생하는 결과로 이루어집니다. 다양한 이벤트가 있으며, 각 이벤트는 특정 작업이나 타이밍을 가지고 있으며, 일부는 별도의 "하위" 이벤트로 나뉘어 있습니다. 일반적으로 이러한 이벤트는 GameMaker가 게임 내 트리거를 감지할 때 또는 매 게임 틱마다 (스텝 및 드로우 이벤트의 경우) 실행됩니다. 그러나 코드 조각 내에서 현재 방의 인스턴스에 이벤트를 적용할 수도 있습니다.
자세한 이벤트에 대한 정보는 객체 이벤트 섹션을 참조하세요.
함수 참조
| 함수 이름 | 설명 |
|---|---|
| event_inherited | 상속된 이벤트를 처리합니다. |
| event_perform | 특정 이벤트를 수행합니다. |
| event_perform_async | 비동기적으로 이벤트를 수행합니다. |
| event_perform_object | 특정 객체에 대해 이벤트를 수행합니다. |
| event_user | 사용자 정의 이벤트를 처리합니다. |
변수 참조
이 변수들은 읽기 전용입니다.
| 변수 이름 | 설명 |
|---|---|
| event_action | 현재 이벤트의 액션을 나타냅니다. |
| event_number | 현재 이벤트의 번호를 나타냅니다. |
| event_object | 현재 이벤트와 관련된 객체를 나타냅니다. |
| event_type | 현재 이벤트의 유형을 나타냅니다. |
활용 예제
1. 기본 이벤트 생성
// 객체가 생성될 때 호출되는 이벤트
event_inherited();
2. 사용자 정의 이벤트 호출
// 사용자 정의 이벤트를 호출하는 방법
event_perform(event_user);
3. 비동기 이벤트 처리
// 비동기적으로 이벤트를 수행하는 예
event_perform_async();
4. 특정 객체에 이벤트 적용
// 특정 객체에 이벤트를 적용하는 방법
event_perform_object(other);
5. 이벤트 타입 확인
// 현재 이벤트의 타입을 확인하는 예
if (event_type == ev_mousebutton) {
// 마우스 버튼 이벤트 처리
}
이와 같은 방식으로 GameMaker에서 다양한 이벤트를 생성하고 활용할 수 있습니다. 각 이벤트는 게임의 흐름과 상호작용을 제어하는 데 중요한 역할을 합니다.