타일 세트 비우기 함수 설명
tile_set_empty 함수는 주어진 타일 데이터 세트를 빈 타일로 설정하는 데 사용됩니다. 이 함수는 tilemap_get() 함수를 사용하여 가져온 타일 데이터를 인수로 받습니다. 이 함수는 수정된 타일 데이터 세트를 반환하며, 이는 tilemap_set() 함수를 사용하여 적용할 수 있습니다.
문법
tile_set_empty(tiledata)
인수 설명
| 인수 이름 | 타입 | 설명 |
|---|---|---|
| tiledata | Tile Data | 설정할 타일 데이터 |
반환값
- 수정된 타일 데이터
예제 코드
다음은 타일 맵에서 모든 타일을 비우는 예제 코드입니다:
var lay_id = layer_get_id("Tiles_sky");
var map_id = layer_tilemap_get_id(lay_id);
for (var i = 0; i < tilemap_get_width(map_id); i++) {
for (var j = 0; j < tilemap_get_height(map_id); j++) {
var data = tilemap_get(map_id, i, j);
if (!tile_get_empty(data)) {
data = tile_set_empty(data);
tilemap_set(map_id, data, i, j);
}
}
}
위 코드는 주어진 레이어에서 타일 맵 ID를 가져온 후, 맵의 모든 타일 셀을 확인하여 데이터가 있는 경우 해당 타일을 빈 타일로 설정합니다.
활용 예제
예제 1: 특정 조건에 따라 타일 비우기
if (some_condition) {
var data = tilemap_get(map_id, x, y);
if (!tile_get_empty(data)) {
data = tile_set_empty(data);
tilemap_set(map_id, data, x, y);
}
}
예제 2: 타일 맵 초기화
for (var i = 0; i < tilemap_get_width(map_id); i++) {
for (var j = 0; j < tilemap_get_height(map_id); j++) {
var data = tilemap_get(map_id, i, j);
data = tile_set_empty(data);
tilemap_set(map_id, data, i, j);
}
}
예제 3: 특정 레이어의 모든 타일 비우기
var lay_id = layer_get_id("SomeLayer");
var map_id = layer_tilemap_get_id(lay_id);
for (var i = 0; i < tilemap_get_width(map_id); i++) {
for (var j = 0; j < tilemap_get_height(map_id); j++) {
var data = tilemap_get(map_id, i, j);
data = tile_set_empty(data);
tilemap_set(map_id, data, i, j);
}
}