//set light for glow effect
lightsprite->set_blend(Blend(GL_SRC_ALPHA, GL_ONE));
lightsprite->set_color(Color(0.2f, 0.2f, 0.0f));
+
+ sprite->set_action((direction == LEFT) ? "left" : "right");
}
void
}
void
- GrowUp::draw(DrawingContext& context){
- //Set Sprite rotation angle
- sprite->set_angle(get_pos().x * 360.0f / (32.0f * M_PI));
+ GrowUp::draw(DrawingContext& context)
+ {
+ if(physic.get_velocity_x() != 0) {
+ //Set Sprite rotation angle
+ sprite->set_angle(get_pos().x * 360.0f / (32.0f * M_PI));
+ }
//Draw the Sprite.
MovingSprite::draw(context);
//Draw shade
physic.set_velocity_y(0);
if(hit.bottom && physic.get_velocity_y() > 0)
physic.set_velocity_y(0);
- if(hit.left || hit.right)
+ if(hit.left || hit.right) {
physic.set_velocity_x(-physic.get_velocity_x());
+ if(hit.left)
+ sprite->set_action("right");
+ else {
+ sprite->set_action("left");
+ }
+
+ }
}
HitResponse
{
Player* player = dynamic_cast<Player*>(&other);
if(player != 0) {
- if(!player->add_bonus(GROWUP_BONUS, true)){
+ if(!player->add_bonus(GROWUP_BONUS, true)) {
// Tux can't grow right now.
collision_solid( hit );
return ABORT_MOVE;