View difference between Paste ID: 4jqHYa7G and Rj4Gx6QL
SHOW: | | - or go back to the newest paste.
1
///@description tile_meeting(x,y,layer)
2
///@param x
3
///@param y
4
///@param layer
5
var _layer = argument2,
6
    _tm = layer_tilemap_get_id(_layer);
7
    
8
if(_tm == -1 || layer_get_element_type(_tm) != layerelementtype_tilemap) {
9
  show_debug_message("Checking collision for non existent layer / tilemap") 
10
  return false;
11
}
12
13
var _x1 = tilemap_get_cell_x_at_pixel(_tm, bbox_left + (argument0 - x), y),
14
    _y1 = tilemap_get_cell_y_at_pixel(_tm, x, bbox_top + (argument1 - y)),
15
    _x2 = tilemap_get_cell_x_at_pixel(_tm, bbox_right + (argument0 - x), y),
16
    _y2 = tilemap_get_cell_y_at_pixel(_tm, x, bbox_bottom + (argument1 - y));
17
18
for(var _x = _x1; _x <= _x2; _x++){
19
  for(var _y = _y1; _y <= _y2; _y++){
20
    if(tilemap_get(_tm, _x, _y)){
21
      return true;
22
    }
23
  }
24
}
25
26
return false;