{ if (sprite.get_framenum()== frames/4) {  if (explode) { Game_window::get_game_window()->add_dirty(explode); explode->remove_this(); explode = 0; } Game_object_vector vec; Game_object::find_nearby(vec, pos, c_any_shapenum, 5, 0); for (Game_object_vector::const_iterator it = vec.begin(); it != vec.end(); ++it) { (**it).attacked(0, 704, 0); }
{ Game_window *gwin = Game_window::get_instance(); if (++num_ticks == 10) { add_dirty(); eman->remove_text_effect(this); return; }  gwin->get_tqueue()->add(Game::get_ticks() + gwin->get_std_delay(), this, 0L); if (!item) return;  Tile_coord npos = Figure_text_pos(item); if (npos == pos) return; add_dirty(); pos = npos; add_dirty();
void Explosion_effect::handle_event	(	unsigned long curtime,		// Current time of day.	long udata	){	if (sprite.get_framenum()== frames/4) {		// this was in ~Explosion_effect before		if (explode)			{				Game_window::get_game_window()->add_dirty(explode);				explode->remove_this();				explode = 0;			}		Game_object_vector vec;			// Find objects near explosion.		Game_object::find_nearby(vec, pos, c_any_shapenum, 5, 0);		for (Game_object_vector::const_iterator it = vec.begin(); it != vec.end(); ++it)			{				(**it).attacked(0, 704, 0);			}	}	Sprites_effect::handle_event(curtime, udata);}