#include "object/camera.hpp"
#include "object/magicblock.hpp"
#include "sprite/sprite.hpp"
-#include "supertux/main.hpp"
+#include "supertux/globals.hpp"
#include "supertux/object_factory.hpp"
#include "supertux/sector.hpp"
+#include "util/reader.hpp"
namespace {
const float MIN_INTENSITY = 0.8f;
MagicBlock::MagicBlock(const Reader& lisp) :
MovingSprite(lisp, "images/objects/magicblock/magicblock.sprite"),
is_solid(false),
+ trigger_red(),
+ trigger_green(),
+ trigger_blue(),
solid_time(0),
- switch_delay(0),
- light(1.0f,1.0f,1.0f)
+ switch_delay(0),
+ color(),
+ light(1.0f,1.0f,1.0f),
+ center(),
+ black()
{
set_group(COLGROUP_STATIC);
//get color from lisp
solid_time+=elapsed_time;
color.alpha = ALPHA_SOLID;
sprite->set_action("solid");
+ set_group(COLGROUP_STATIC);
} else {
color.alpha = ALPHA_NONSOLID;
sprite->set_action("normal");
+ set_group(COLGROUP_DISABLED);
}
}
HitResponse
MagicBlock::collision(GameObject& /*other*/, const CollisionHit& /*hit*/)
{
- return SOLID;
+ return FORCE_MOVE;
}
-IMPLEMENT_FACTORY(MagicBlock, "magicblock");
-
/* EOF */