자산 ID 가져오기 (tag_get_asset_ids)
이 문서는 특정 태그가 할당된 자산을 가져오는 함수인 tag_get_asset_ids에 대해 설명합니다. 이 함수를 통해 특정 유형의 자산을 쉽게 찾을 수 있습니다.
함수 개요
tag_get_asset_ids 함수는 주어진 태그가 할당된 지정된 유형의 모든 자산을 가져옵니다. 태그는 단일 태그(문자열 형식) 또는 여러 개의 태그(문자열 배열 형식)로 제공할 수 있습니다. 또한, 어떤 자산 유형을 확인할지 지정해야 합니다.
사용법
tag_get_asset_ids(tags, asset_type);
매개변수
| 매개변수 | 유형 | 설명 |
|---|---|---|
| tags | 문자열 또는 문자열 배열 | 단일 자산 태그 문자열 또는 여러 자산 태그가 포함된 배열. |
| asset_type | 자산 유형 상수 | 자산 유형 상수 (아래에 명시된 값들 중 하나) |
반환 값
- 배열: 태그가 지정된 자산의 핸들이 포함된 배열.
- 태그가 있는 자산이 없는 경우: 빈 배열을 반환.
예제 코드
아래 코드는 "enemy" 태그를 사용하여 해당 태그가 있는 경로 자산을 모두 찾고, 그 중 무작위로 하나를 선택하여 인스턴스에 할당하는 예입니다.
var _paths = tag_get_asset_ids("enemy", asset_path);
var _num = irandom(array_length(_paths) - 1);
path_start(_paths[_num], 1, path_action_reverse, false);
활용 및 응용 예제
- 적 캐릭터 생성: 특정 레벨에서 적 캐릭터만 찾고 생성하는 게임 메커니즘에 사용할 수 있습니다.
gml var _enemy_paths = tag_get_asset_ids("enemy", asset_path); if (array_length(_enemy_paths) > 0) { var _enemy_num = irandom(array_length(_enemy_paths) - 1); instance_create_layer(0, 0, "Enemies", _enemy_paths[_enemy_num]); }
- 자동맵 생성: 맵에서 특정 자산 유무에 따라 자동으로 경로를 생성하는 데 활용할 수 있습니다.
gml var _path_assets = tag_get_asset_ids("path", asset_path); foreach (_path in _path_assets) { // 각 경로 자산을 사용하여 맵의 요소를 생성 create_map_element(_path); }
- 레벨 변경 시 자산 로딩: 특정 레벨에서 사용되는 자산을 로딩하는 기능에 활용됩니다.
gml var _level_assets = tag_get_asset_ids(current_level_tag, asset_sprites); foreach (_asset in _level_assets) { // 자산을 로드하는 코드 sprite_add(_asset); }
이 문서를 통해 tag_get_asset_ids 함수를 사용하여 태그가 있는 자산을 어떻게 관리하고 활용할 수 있는지 이해하셨기를 바랍니다.