bool
MrBomb::collision_squished(GameObject& object)
{
- remove_me();
- Sector::current()->add_object(new Bomb(get_pos(), dir, sprite_name ));
+ if(is_valid()) {
+ remove_me();
+ Sector::current()->add_object(new Bomb(get_pos(), dir, sprite_name ));
+ }
kill_squished(object);
return true;
}
void
MrBomb::kill_fall()
{
- remove_me();
- Explosion* explosion = new Explosion(get_bbox().get_middle());
- Sector::current()->add_object(explosion);
+ if(is_valid()) {
+ remove_me();
+ Explosion* explosion = new Explosion(get_bbox().get_middle());
+ Sector::current()->add_object(explosion);
+ }
run_dead_script();
}