// SuperTux
-// Copyright (C) 2009 Ingo Ruhnke <grumbel@gmx.de>
+// Copyright (C) 2009 Ingo Ruhnke <grumbel@gmail.com>
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
#define HEADER_SUPERTUX_OBJECT_BONUS_BLOCK_HPP
#include "object/block.hpp"
+#include "object/moving_sprite.hpp"
class BonusBlock : public Block
{
HitResponse collision(GameObject& other, const CollisionHit& hit);
void try_open(Player *player);
+ void try_drop(Player *player);
enum Contents {
CONTENT_COIN,
CONTENT_FIREGROW,
CONTENT_ICEGROW,
+ CONTENT_AIRGROW,
+ CONTENT_EARTHGROW,
CONTENT_STAR,
CONTENT_1UP,
- CONTENT_CUSTOM
+ CONTENT_CUSTOM,
+ CONTENT_SCRIPT,
+ CONTENT_LIGHT,
+ CONTENT_TRAMPOLINE,
+ CONTENT_RAIN,
+ CONTENT_EXPLODE
};
protected:
public:
Contents contents;
- MovingObject* object;
+ std::shared_ptr<MovingObject> object;
+ int hit_counter;
+ void draw(DrawingContext& context);
private:
BonusBlock(const BonusBlock&);
BonusBlock& operator=(const BonusBlock&);
+ std::string sprite_name;
+ std::string script;
+ SurfacePtr lightsprite;
};
#endif