physic.set_acceleration_x(0);
} else if(physic.get_velocity_x() < 0) {
physic.set_acceleration_x(WALK_ACCELERATION_X * 1.5);
physic.set_acceleration_x(0);
} else if(physic.get_velocity_x() < 0) {
physic.set_acceleration_x(WALK_ACCELERATION_X * 1.5);
Vector(dir == LEFT ? -bbox.get_width()-1 : bbox.get_width()+1,
bbox.get_height()*0.66666 - 32);
Rect dest(pos, pos + Vector(32, 32));
Vector(dir == LEFT ? -bbox.get_width()-1 : bbox.get_width()+1,
bbox.get_height()*0.66666 - 32);
Rect dest(pos, pos + Vector(32, 32));
MovingObject* moving_object = dynamic_cast<MovingObject*> (grabbed_object);
if(moving_object) {
moving_object->set_pos(pos);
MovingObject* moving_object = dynamic_cast<MovingObject*> (grabbed_object);
if(moving_object) {
moving_object->set_pos(pos);
float px = get_pos().x + (get_bbox().p2.x - get_bbox().p1.x - airarrow.get()->get_width()) / 2;
float py = Sector::current()->camera->get_translation().y;
float px = get_pos().x + (get_bbox().p2.x - get_bbox().p1.x - airarrow.get()->get_width()) / 2;
float py = Sector::current()->camera->get_translation().y;
context.draw_surface(airarrow.get(), Vector(px, py), LAYER_HUD - 1);
}
context.draw_surface(airarrow.get(), Vector(px, py), LAYER_HUD - 1);
}
if(player_status->bonus == FIRE_BONUS
|| player_status->bonus == ICE_BONUS) {
safe_timer.start(TUX_SAFE_TIME);
set_bonus(GROWUP_BONUS, true);
if(player_status->bonus == FIRE_BONUS
|| player_status->bonus == ICE_BONUS) {
safe_timer.start(TUX_SAFE_TIME);
set_bonus(GROWUP_BONUS, true);
//growing_timer.start(GROWING_TIME);
safe_timer.start(TUX_SAFE_TIME /* + GROWING_TIME */);
adjust_height(30.8);
duck = false;
set_bonus(NO_BONUS, true);
//growing_timer.start(GROWING_TIME);
safe_timer.start(TUX_SAFE_TIME /* + GROWING_TIME */);
adjust_height(30.8);
duck = false;
set_bonus(NO_BONUS, true);