Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Dec 9, 2009, 4:54:20 PM (15 years ago)
Author:
wirthmi
Message:

Changed a function call when hit from damage() to hit(). Pass through to controller

Location:
code/branches/presentation2/src/orxonox/worldentities
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • code/branches/presentation2/src/orxonox/worldentities/MovableEntity.cc

    r5929 r6295  
    7979            if (victim)
    8080            {
    81                 victim->damage(this->collisionDamage_ * (victim->getVelocity() - this->getVelocity()).length());
     81                float damage = this->collisionDamage_ * (victim->getVelocity() - this->getVelocity()).length();
     82                victim->hit(0, contactPoint, damage);
    8283            }
    8384        }
  • code/branches/presentation2/src/orxonox/worldentities/pawns/Pawn.cc

    r6112 r6295  
    3838#include "PawnManager.h"
    3939#include "infos/PlayerInfo.h"
     40#include "controllers/Controller.h"
    4041#include "gametypes/Gametype.h"
    4142#include "graphics/ParticleSpawner.h"
     
    176177    }
    177178
     179    void Pawn::hit(Pawn* originator, btManifoldPoint& contactpoint, float damage)
     180    {
     181        if (this->getGametype() && this->getGametype()->allowPawnHit(this, originator))
     182        {
     183            this->damage(damage, originator);
     184
     185            if ( this->getController() )
     186                this->getController()->hit(originator, contactpoint, damage);
     187
     188            // play hit effect
     189        }
     190    }
     191
    178192    void Pawn::kill()
    179193    {
  • code/branches/presentation2/src/orxonox/worldentities/pawns/Pawn.h

    r6111 r6295  
    7575                { return this->lastHitOriginator_; }
    7676
    77             virtual void damage(float damage, Pawn* originator = 0);
    7877            virtual void hit(Pawn* originator, const Vector3& force, float damage);
     78            virtual void hit(Pawn* originator, btManifoldPoint& contactpoint, float damage);
    7979            virtual void kill();
    8080
     
    131131            virtual void spawneffect();
    132132
     133            virtual void damage(float damage, Pawn* originator = 0);
     134
    133135            bool bAlive_;
    134136
Note: See TracChangeset for help on using the changeset viewer.