Under Event->Step
/// @description Insert description here
// You can write your code in this editor
var t1 = tilemap_get_at_pixel (tilemap, bbox_left, bbox_bottom + 1) & tile_index_mask;
var t2 = tilemap_get_at_pixel (tilemap, bbox_right, bbox_bottom + 1) & tile_index_mask;
if (t1 != 0 or t2 != 0) {
if (keyboard_check(vk_space)) {
v_speed = -jump_impulse;
}
}
var dx = move_speed * (keyboard_check(vk_right) - keyboard_check((vk_left)));
var dy = v_speed ;
v_speed += grav;
//lompatlompat
y += dy;
if (dy>0) { //kebawah
var t1 = tilemap_get_at_pixel(tilemap, bbox_left, bbox_bottom) & tile_index_mask;
var t2 = tilemap_get_at_pixel(tilemap, bbox_right, bbox_bottom) & tile_index_mask;
if (t1 != 0 or t2 !=0) {
y = ((bbox_bottom & ~31) -1) - sprite_bbox_bottom;
v_speed = 0;
}
} else { //ngatas
var t1 = tilemap_get_at_pixel(tilemap, bbox_left, bbox_top) & tile_index_mask;
var t2 = tilemap_get_at_pixel(tilemap, bbox_right, bbox_top) & tile_index_mask;
if (t1 != 0 or t2 !=0) {
y = ((bbox_top + 32) & ~31) - sprite_bbox_top;
v_speed = 0;
}
}
//nyamping
x += dx ;
if (dx>0) { //nganan
var t1 = tilemap_get_at_pixel(tilemap, bbox_right, bbox_top) & tile_index_mask;
var t2 = tilemap_get_at_pixel(tilemap, bbox_right, bbox_bottom) & tile_index_mask;
if (t1 != 0 or t2 !=0) {
x = ((bbox_right & ~31) -1) - sprite_bbox_right;
}
} else { //ngiri
var t1 = tilemap_get_at_pixel(tilemap, bbox_left, bbox_top) & tile_index_mask;
var t2 = tilemap_get_at_pixel(tilemap, bbox_left, bbox_bottom) & tile_index_mask;
if (t1 != 0 or t2 !=0) {
x = ((bbox_left + 32) & ~31) - sprite_bbox_left;
}
}