타일 맵에서 타일 세트 가져오기
이 문서에서는 타일 맵 요소에 할당된 타일 세트 자산의 핸들을 가져오는 방법에 대해 설명합니다. 이 기능은 게임 개발에서 타일 기반 맵을 만들 때 유용하게 사용됩니다.
함수 설명
tilemap_get_tileset 함수를 사용하면 특정 레이어의 타일 맵 요소에 할당된 타일 세트 자산의 핸들을 가져올 수 있습니다. 이 함수는 타일 맵 요소 ID를 인자로 받아 해당 타일 세트 자산의 인덱스를 반환합니다.
문법
tilemap_get_tileset(tilemap_element_id)
인자 설명
| 인자 이름 | 타입 | 설명 |
|---|---|---|
| tilemap_element_id | Tile Map Element ID | 타일 세트에서 가져올 타일 맵 요소의 고유 ID 값입니다. |
반환 값
- 타일 세트 자산의 인덱스
예제 코드
아래 코드는 "Tiles_trees" 레이어에 할당된 현재 타일 세트를 확인하고, 만약 "ts_Nighttime"이 아닐 경우 해당 타일 세트를 할당하는 예제입니다.
var lay_id = layer_get_id("Tiles_trees");
var map_id = layer_tilemap_get_id(lay_id);
if (tilemap_get_tileset(map_id) != ts_Nighttime) {
tilemap_tileset(map_id, ts_Nighttime);
}
활용 예제
- 타일 세트 변경: 특정 조건에 따라 타일 세트를 변경하여 게임의 분위기를 바꿀 수 있습니다.
gml if (player_is_in_night_area) { tilemap_tileset(map_id, ts_Nighttime); } - 타일 세트 확인: 게임의 특정 이벤트 발생 시 현재 타일 세트를 확인하여 적절한 반응을 할 수 있습니다.
gml if (tilemap_get_tileset(map_id) == ts_Daytime) { // 낮에만 발생하는 이벤트 } - 타일 세트 초기화: 게임 시작 시 기본 타일 세트를 설정할 수 있습니다.
gml tilemap_tileset(map_id, ts_Default); - 타일 세트 로딩: 레벨이 변경될 때마다 적절한 타일 세트를 로드할 수 있습니다.
gml switch (current_level) { case 1: tilemap_tileset(map_id, ts_Level1); break; case 2: tilemap_tileset(map_id, ts_Level2); break; }
이와 같은 방법으로 tilemap_get_tileset 함수를 활용하여 게임의 타일 세트를 동적으로 관리할 수 있습니다.