자산에 태그 추가하기: `asset_add_tags` 함수
이 문서에서는 `asset_add_tags` 함수에 대해 설명합니다. 이 함수는 자산 브라우저에서 선택한 자산에 하나 이상의 태그 문자열을 추가하는 기능을 제공합니다.
## 함수 설명
### 함수 사용법
`asset_add_tags` 함수는 자산의 이름(문자열)이나 자산 인덱스, 그리고 하나의 태그 문자열 또는 여러 태그 문자열로 이루어진 배열을 인수로 받습니다. 자산 핸들을 제공하는 경우, 선택적 자산 타입 인수를 추가해야 합니다. 이는 자산의 종류에 따라 인덱스가 동일하더라도 이름이 동일할 수 없기 때문입니다.
### 사용할 수 있는 자산 유형
|자산 유형|설명|
|---|---|
|asset_object|객체 자산|
|asset_room|방 자산|
|asset_sprite|스프라이트 자산|
|asset_sound|사운드 자산|
|asset_font|글꼴 자산|
|asset_shader|셰이더 자산|
|asset_script|스크립트 자산|
|asset_video|비디오 자산|
|asset_texture|텍스처 자산|
### 구문
```gml
asset_add_tags(name_or_index, tags, [asset_type]);
인수 설명
| 인수 | 타입 | 설명 |
|---|---|---|
| name_or_index | 문자열 또는 자산 핸들 | 자산의 이름 (문자열) 또는 핸들 |
| tags | 문자열 또는 문자열 배열 | 단일 자산 태그 문자열 또는 여러 자산 태그를 가진 배열 |
| [asset_type] | 자산 유형 상수 | 태그를 설정할 자산의 유형. 첫 번째 인수로 핸들을 제공하는 경우에만 사용 |
반환 값
- 성공 시:
true - 실패 시:
false
예제
아래는 태그를 추가하는 예제 코드입니다.
var _a = array_create(3);
_a[0] = "enemy";
_a[1] = "all_levels";
_a[2] = "boss";
asset_add_tags(obj_Enemy_Boss_Parent, _a, asset_object);
위 코드는 태그 배열을 생성하고 해당 객체에 추가합니다.
활용 및 응용 예제
1. 다양한 자산에 태그 추가
객체 외에도 게임의 방, 스프라이트에 태그를 추가할 수 있습니다.
// 방에 태그 추가
var room_tags = array_create(2);
room_tags[0] = "dungeon";
room_tags[1] = "level_1";
asset_add_tags(room_main, room_tags, asset_room);
2. 태그를 활용한 필터링
추가된 태그를 기반으로 필터링하여 특정 자산만 선택할 수 있습니다.
// 특정 태그를 가진 모든 객체 검색
var enemies = asset_find_all_with_tags("enemy");
3. 태그 제거 예제
태그를 제거하는 방법도 필요할 수 있습니다. asset_remove_tags 함수를 사용하여 태그를 삭제할 수 있습니다.
var remove_tags = array_create(1);
remove_tags[0] = "boss";
asset_remove_tags(obj_Enemy_Boss_Parent, remove_tags, asset_object);
이 예제에서는 "boss"라는 태그를 제거합니다.
이 문서에서는 asset_add_tags 함수에 대한 기본적인 정보와 여러 예제를 통해 태그를 활용하는 방법을 설명했습니다. 추가적으로 필요한 정보가 있다면 문서를 참조하세요.
© Copyright YoYo Games Ltd. 2024 All Rights Reserved ```