시퀀스는 방에 배치될 때 레이어의 요소로 배치되며, 이 요소는 시퀀스 인스턴스를 포함합니다. 이 시퀀스 인스턴스는 다음과 같은 속성을 가집니다.
| 변수 이름 |
타입 |
설명 |
| sequence |
Sequence Object Struct |
시퀀스 인스턴스가 생성된 시퀀스 객체 구조체의 ID입니다. 이 구조체를 가져오거나 설정하여 인스턴스가 참조하는 기본 시퀀스를 변경할 수 있습니다. |
| headPosition |
Real |
시퀀스 인스턴스의 현재 재생 위치(프레임 단위)입니다. 이 값을 가져오거나 설정할 수 있지만, 현재 정의된 재생 영역보다 크거나 작은 값으로 설정하면 재생 유형에 따라 다른 효과가 발생합니다. |
| headDirection |
Sequence Direction Constant |
시퀀스 인스턴스의 현재 재생 방향입니다. 다음 표에 주어진 상수를 사용하여 이 값을 가져오거나 설정할 수 있습니다. |
| speedScale |
Real |
재생 속도 배율을 가져오거나 설정하는 데 사용됩니다. 기본 재생 속도는 1이며, 1보다 작은 값은 재생 속도를 느리게 하고, 1보다 큰 값은 재생 속도를 빠르게 합니다. |
| paused |
Boolean |
시퀀스가 일시 정지되었는지 확인할 수 있는 속성입니다. 일시 정지된 경우 true를 반환합니다. |
| finished |
Boolean |
시퀀스가 재생을 완료했는지 확인할 수 있는 속성입니다. 루프 또는 핑퐁으로 설정되지 않은 트랙에 대해서만 true를 반환합니다. |
| elementID |
Sequence Element ID |
시퀀스 요소의 ID를 보유합니다. 이 ID는 방 편집기에서 레이어와 연결된 간단한 식별 값입니다. |
| activeTracks |
Array of Sequence Active Track Structs |
시퀀스의 각 자산 트랙의 현재 상태에 대한 정보를 포함하는 "평가" 구조체의 배열입니다. |
시퀀스 방향 상수
| 상수 이름 |
설명 |
값 |
| seqdir_right |
시퀀스가 왼쪽에서 오른쪽으로 프레임을 재생합니다. |
1 |
| seqdir_left |
시퀀스가 오른쪽에서 왼쪽으로 프레임을 재생합니다. |
-1 |
활성 트랙 구조체
활성 트랙 구조체에 접근할 때 사용할 수 있는 속성은 다음과 같습니다.
| 변수 이름 |
타입 |
설명 |
| posx |
Real |
트랙의 X축에서 자산의 위치입니다. |
| posy |
Real |
트랙의 Y축에서 자산의 위치입니다. |
| rotation |
Real |
시퀀스에서 자산의 회전입니다. |
| xorigin |
Real |
트랙의 자산에 대한 X 원점입니다. |
| yorigin |
Real |
트랙의 자산에 대한 Y 원점입니다. |
| matrix |
Matrix Array |
부모 트랙의 프레임 참조 내에서 트랙의 변환 행렬입니다. |
| parent |
Sequence Instance Struct |
트랙의 부모 시퀀스 인스턴스 ID입니다. |
| trackSequence |
Track Struct |
이 트랙을 기반으로 하는 트랙 구조체입니다. |
활용 예제
시퀀스 인스턴스 생성 및 속성 설정
var seq_instance = layer_sequence_create(layer_id, sequence_id);
layer_sequence_set_headpos(layer_id, seq_instance, 10);
layer_sequence_set_speedscale(layer_id, seq_instance, 1.5);
시퀀스 재생 상태 확인
if (layer_sequence_is_paused(layer_id, seq_instance)) {
layer_sequence_play(layer_id, seq_instance);
} else {
layer_sequence_pause(layer_id, seq_instance);
}
시퀀스 종료 확인 및 처리
if (layer_sequence_is_finished(layer_id, seq_instance)) {
// 다음 행동 수행
}
활성 트랙 정보 가져오기
var active_tracks = layer_sequence_get_active_tracks(layer_id, seq_instance);
for (var i = 0; i < array_length(active_tracks); i++) {
var track = active_tracks[i];
var x_position = track.posx;
var y_position = track.posy;
}