리스트 아이템의 인덱스 가져오기
이 문서에서는 주어진 리스트에서 특정 아이템의 인덱스 위치를 찾는 방법에 대해 설명합니다. 이 작업을 통해 리스트에서 원하는 값의 인덱스를 추출할 수 있습니다.
동작 설명
이 액션을 사용하면 원하는 리스트 아이템의 인덱스를 찾을 수 있습니다. 사용자는 Create List 액션을 통해 반환된 리스트 인덱스를 저장하는 변수와, 리스트에서 인덱스를 찾고자 하는 값을 입력합니다. 그리고 반환된 인덱스 위치를 저장할 목표 변수를 제공합니다. 이 목표 변수는 스크립트나 이벤트가 끝날 때까지 사용할 수 있는 임시 로컬 변수로 플래그를 지정할 수 있습니다.
주의: 찾고자 하는 값이 리스트에 존재하지 않을 경우, 반환값은 -1이 됩니다.
액션 구문
인자 설명
| 인자 | 설명 |
|---|---|
| List | 제거할 리스트의 인덱스(변수로 저장됨) |
| Value | 리스트에서 확인할 값 |
| Target | 반환된 인덱스를 저장할 목표 변수 |
예제
다음 예제는 인스턴스 위치에서 충돌을 확인하고, 충돌이 발견되면 인스턴스의 고유 ID 값을 임시 변수에 저장한 후, 이 값이 리스트 데이터 구조에 존재하는지를 확인하는 코드입니다. 값이 존재하면 아이템이 리스트에서 제거되고 인스턴스가 파괴됩니다.
// 충돌 체크 및 인스턴스 제거 예제
var collision_instance = instance_position(x, y, obj_collision);
if (collision_instance != noone) {
var instance_id = collision_instance.id;
var index = get_index_of_list_item(myList, instance_id);
if (index != -1) {
// 리스트에서 아이템 제거
array_delete(myList, index);
instance_destroy(collision_instance);
}
}
활용 및 응용 예제
- 리스트에서 유저의 아이템 삭제하기
- 유저가 특정 아이템을 사용했을 때, 그 아이템을 리스트에서 삭제할 수 있습니다.
- 리스트 내 데이터 점검
- 게임 내 모든 적의 ID를 리스트로 관리하고, 특정 적이 존재하는지 확인한 후 처치할 수 있습니다.
- 점수 시스템 연동
- 리스트를 사용하여 플레이어의 점수를 관리하고, 점수가 조건을 만족할 경우 특별한 아이템을 지급할 수 있습니다.
마무리
리스트에서 아이템의 인덱스를 가져오는 유용한 기능을 통해 다양한 게임 로직을 구현할 수 있습니다. 이를 통해 게임의 흥미를 더하고 원활한 데이터 관리가 가능합니다.
© Copyright YoYo Games Ltd. 2021 All Rights Reserved