layer_sequence_exists 함수 설명
layer_sequence_exists 함수는 특정 레이어에 시퀀스 요소가 존재하는지 확인하는 데 사용됩니다. 이 함수는 레이어 핸들을 입력받으며, 레이어 이름(룸 편집기에서 정의된) 또는 layer_get_id() 함수로 반환된 고유 레이어 핸들을 사용할 수 있습니다. 또한, 시퀀스 요소 ID도 입력받으며, 이는 layer_sequence_create() 또는 다른 레이어 요소 함수에서 반환됩니다. 함수는 주어진 요소가 존재하면 true를, 그렇지 않으면 false를 반환합니다.
문법
layer_sequence_exists(layer_id, sequence_element_id)
인수 설명
| 인수 이름 | 타입 | 설명 |
|---|---|---|
| layer_id | String 또는 Layer ID | 확인할 레이어의 고유 ID 또는 이름 |
| sequence_element_id | Sequence Element ID | 타겟 시퀀스 요소의 고유 ID 값 |
반환 값
- Boolean: 시퀀스 요소의 존재 여부
예제 코드
아래 코드는 주어진 시퀀스 요소가 존재하는지 확인하고, 존재하지 않을 경우 새로운 시퀀스를 생성한 후 일시 정지합니다.
if (!layer_sequence_exists("Background", my_seq)) {
my_seq = layer_sequence_create("Background", 0, 0, seq_AnimatedBackground);
layer_sequence_pause(my_seq);
}
활용 예제
- 게임 배경 애니메이션 생성
- 배경 레이어에 애니메이션 시퀀스를 추가할 때 사용합니다.
gml if (!layer_sequence_exists("Background", my_background_seq)) { my_background_seq = layer_sequence_create("Background", 0, 0, seq_BackgroundAnimation); } - UI 요소의 시퀀스 확인
- UI 레이어에 버튼 애니메이션이 있는지 확인하고, 없으면 생성합니다.
gml if (!layer_sequence_exists("UI", my_button_seq)) { my_button_seq = layer_sequence_create("UI", 100, 100, seq_ButtonAnimation); } - 게임 오버 시퀀스 관리
- 게임 오버 레이어에 시퀀스가 존재하는지 확인하고, 없으면 생성하여 표시합니다.
gml if (!layer_sequence_exists("GameOver", my_game_over_seq)) { my_game_over_seq = layer_sequence_create("GameOver", 0, 0, seq_GameOver); layer_sequence_play(my_game_over_seq); } - 적 캐릭터 애니메이션
- 적 캐릭터의 애니메이션 시퀀스가 존재하는지 확인하고, 없으면 생성합니다.
gml if (!layer_sequence_exists("Enemies", my_enemy_seq)) { my_enemy_seq = layer_sequence_create("Enemies", enemy_x, enemy_y, seq_EnemyAnimation); } - 특정 이벤트에 따른 시퀀스 관리
- 특정 이벤트 발생 시 시퀀스를 확인하고, 필요 시 생성합니다.
gml if (!layer_sequence_exists("Events", my_event_seq)) { my_event_seq = layer_sequence_create("Events", event_x, event_y, seq_EventAnimation); }