Merge branch 'master' of https://code.google.com/p/supertux
authorIngo Ruhnke <grumbel@gmail.com>
Sun, 3 Aug 2014 04:49:40 +0000 (06:49 +0200)
committerIngo Ruhnke <grumbel@gmail.com>
Sun, 3 Aug 2014 04:49:40 +0000 (06:49 +0200)
1  2 
src/object/growup.cpp

diff --combined src/object/growup.cpp
@@@ -37,8 -37,6 +37,8 @@@ GrowUp::GrowUp(Direction direction) 
    //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
@@@ -48,9 -46,12 +48,12 @@@ GrowUp::update(float elapsed_time
  }
  
  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
@@@ -72,15 -73,8 +75,15 @@@ GrowUp::collision_solid(const Collision
      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
@@@ -88,7 -82,7 +91,7 @@@ GrowUp::collision(GameObject& other, co
  {
    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;