IceCrusher::IceCrusher(const Reader& reader) :
MovingSprite(reader, "images/creatures/icecrusher/icecrusher.sprite", LAYER_OBJECTS, COLGROUP_STATIC),
- state(IDLE),
+ state(IDLE),
start_position(),
physic(),
cooldown_timer(0.0),
start_position = get_bbox().p1;
set_state(state, true);
-
+
float sprite_width = sprite->get_width ();
if (sprite_width >= 128.0)
ic_size = LARGE;
/*
IceCrusher::IceCrusher(const IceCrusher& other)
- : MovingSprite(other),
- state(other.state), speed(other.speed)
+ : MovingSprite(other),
+ state(other.state), speed(other.speed)
{
start_position = get_bbox().p1;
set_state(state, true);
}
*/
-void
-IceCrusher::set_state(IceCrusherState state, bool force)
+void
+IceCrusher::set_state(IceCrusherState state, bool force)
{
if ((this->state == state) && (!force)) return;
switch(state) {
}
return FORCE_MOVE;
}
-
-void
+
+void
IceCrusher::collision_solid(const CollisionHit& hit)
{
switch(state) {
const float displacement_y = player_focus_y - crusher_origin_y;
const float displacement_mag = pow(pow(displacement_x, 2.0) + pow(displacement_y, 2.0), 0.5);
// Determine weighting for eye displacement along x given icecrusher eye shape
- int weight_x = sprite->get_width()/64 * ((displacement_x > 0) == right) ? 1 : 4;
+ int weight_x = sprite->get_width()/64 * (((displacement_x > 0) == right) ? 1 : 4);
int weight_y = sprite->get_width()/64 * 2;
return Vector(displacement_x/displacement_mag * weight_x, displacement_y/displacement_mag * weight_y - weight_y);