Ehh Panowie no to nie wiem. Teraz mam takie coś i to w dalszym ciągu po kolizji pocisku z cegłami usuwa wszystkie z mapy
if(HIT)
{
sprite_delete(sprite)
sprite = sprite_create_from_surface(sprite, 0, 0, room_width, room_height, false, true, 0, 0)
sprite_collision_mask(sprite, 1, 0, 0, 0, 0, 0, bboxkind_precise, 0) //tworzę do niego maskę
sprite_index = sprite;
HIT = false;
}
draw_sprite(sprite_index, 0, 0, 0);
Chciałbym, żeby po uderzeniu pocisku w cegły, te nie znikały. No i okej, po tej zmianie:
if(HIT)
{//make a new sprite code
sprite_delete(sprite)
sprite = sprite_create_from_surface(sprite, 0, 0, room_width, room_height, false, true, 0, 0)
sprite_collision_mask(sprite, 1, 0, 0, 0, 0, 0, bboxkind_precise, 0)
HIT = false;
}
draw_sprite(sprite, 0, 0, 0);
Faktycznie teren pozostaje nietknięty po uderzeniu pocisku. Dobra. Teraz muszę tylko ponownie zaaplikować robienie dziur
EDIT:
Teraz robienie dziur mi nie działa
if(HIT)
{
sprite_delete(sprite)
sprite = sprite_create_from_surface(sprite, 0, 0, room_width, room_height, false, true, 0, 0)
gpu_set_blendmode(bm_subtract);
draw_set_color(c_black);
draw_rectangle(damage_x -8, damage_y -8, damage_x +7, damage_y +7, false);
gpu_set_blendmode(bm_normal);
sprite_collision_mask(sprite, 1, 0, 0, 0, 0, 0, bboxkind_precise, 0)
HIT = false;
}
draw_sprite(sprite, 0, 0, 0);