sequence_get_objects 함수 설명
sequence_get_objects 함수는 주어진 시퀀스 내에서 인스턴스가 생성되고 있는 모든 객체 인덱스의 배열을 가져오는 기능을 제공합니다. 이 함수는 시퀀스 객체 구조체(함수 sequence_create() 또는 sequence_get()에 의해 반환됨) 또는 시퀀스 ID(함수 layer_sequence_get_sequence() 또는 시퀀스 인스턴스 구조체 속성 sequence에서 반환됨)를 인수로 받아들입니다. 함수는 배열을 반환하며, 배열의 각 항목은 시퀀스에서 인스턴스를 생성하는 데 사용되는 다양한 객체의 object_index입니다.
문법
sequence_get_objects(sequence_struct_or_id);
인수 설명
| 인수 | 타입 | 설명 |
|---|---|---|
| sequence_struct_or_id | Sequence Asset 또는 Sequence Object Struct | 객체를 가져올 시퀀스 객체 구조체 또는 ID |
반환 값
- 배열
예제
var _seq = sequence_get(seq_Logo);
obj_array = sequence_get_objects(_seq);
위 코드는 시퀀스 객체의 구조체를 가져오고, 그 구조체가 사용하는 객체들을 검색하여 배열에 저장합니다.
활용 예제
- 시퀀스에서 객체 인스턴스 생성하기
var _seq = sequence_get(seq_Logo);
var obj_array = sequence_get_objects(_seq);
for (var i = 0; i < array_length(obj_array); i++) {
var obj_index = obj_array[i];
instance_create_layer(x, y, "Instances", obj_index);
}
- 특정 객체가 포함된 시퀀스 확인하기
var _seq = sequence_get(seq_Logo);
var obj_array = sequence_get_objects(_seq);
if (array_contains(obj_array, obj_SomeObject)) {
show_message("시퀀스에 obj_SomeObject가 포함되어 있습니다.");
}
- 모든 객체의 인스턴스 수 세기
var _seq = sequence_get(seq_Logo);
var obj_array = sequence_get_objects(_seq);
var total_instances = 0;
for (var i = 0; i < array_length(obj_array); i++) {
total_instances += instance_number(obj_array[i]);
}
show_message("총 인스턴스 수: " + string(total_instances));
- 객체 인스턴스 삭제하기
var _seq = sequence_get(seq_Logo);
var obj_array = sequence_get_objects(_seq);
for (var i = 0; i < array_length(obj_array); i++) {
var obj_index = obj_array[i];
with (obj_index) {
instance_destroy();
}
}
이 예제들은 sequence_get_objects 함수를 활용하여 다양한 작업을 수행하는 방법을 보여줍니다.