/// @descr place_meeting_tile(x, y, layer);
/// @arg x
/// @arg y
/// @arg layer_as_string
//checks for a place_meeting at x, y with the tile layer supplied
var xx = argument0;
var yy = argument1;
var layer_id = layer_tilemap_get_id(argument2);
//save our current position
var xpos = x;
var ypos = y;
//move to test position
x = xx;
y = yy;
//check for collision
var meeting = tilemap_get_at_pixel(layer_id, bbox_left, bbox_top) or
tilemap_get_at_pixel(layer_id, bbox_right, bbox_top) or
tilemap_get_at_pixel(layer_id, bbox_left, bbox_bottom) or
tilemap_get_at_pixel(layer_id, bbox_right, bbox_bottom) or
tilemap_get_at_pixel(layer_id, bbox_left, y) or
tilemap_get_at_pixel(layer_id, bbox_right, y) or
tilemap_get_at_pixel(layer_id, x, bbox_top) or
tilemap_get_at_pixel(layer_id, x, bbox_bottom) or
tilemap_get_at_pixel(layer_id, x, y);
//return object to original position
x = xpos;
y = ypos;
//return collision status
if meeting return true else return false;