X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fobject%2Ffirefly.hpp;h=632508794be760db7b1c21a3d5e0cc8d476696cc;hb=555d1b7bebb45326d82d934e07463209837309b0;hp=6f9f021983defb96b846401ba4f90bc1c21d32a3;hpb=d4183ad3274efb5bc91c021e048d981af9ec567a;p=supertux.git diff --git a/src/object/firefly.hpp b/src/object/firefly.hpp index 6f9f02198..632508794 100644 --- a/src/object/firefly.hpp +++ b/src/object/firefly.hpp @@ -1,7 +1,7 @@ -// $Id: bell.hpp 2642 2005-06-26 13:38:53Z matzebraun $ -// +// $Id$ +// // SuperTux -// Copyright (C) 2005 Matthias Braun +// Copyright (C) 2006 Matthias Braun // // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License @@ -12,38 +12,36 @@ // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. -// +// // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -// 02111-1307, USA. +// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + #ifndef __FIREFLY_H__ #define __FIREFLY_H__ #include "lisp/lisp.hpp" -#include "moving_object.hpp" -#include "sprite/sprite.hpp" +#include "object/moving_sprite.hpp" #include "serializable.hpp" +#include "badguy/badguy.hpp" /** * A Firefly: When tux touches it, it begins buzzing and you will respawn at this * position. */ -class Firefly : public MovingObject, public Serializable +class Firefly : public MovingSprite, public Serializable { public: Firefly(const lisp::Lisp& lisp); - ~Firefly(); + virtual Firefly* clone() const { return new Firefly(*this); } void write(lisp::Writer& writer); - void update(float elapsed_time); - void draw(DrawingContext& context); HitResponse collision(GameObject& other, const CollisionHit& hit); private: - Sprite* sprite; - bool ringing; + bool activated; + Vector initial_position; /**< position as in level file. This is where Tux will have to respawn, as the level is reset every time */ + void reactivate(); }; #endif -