Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Nov 30, 2011, 4:17:00 PM (12 years ago)
Author:
eceline
Message:

DistanceMultiTrigger

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/spaceraceTwo/src/modules/gametypes/RaceCheckPoint.cc

    r8949 r8954  
    4040    CreateFactory(RaceCheckPoint);
    4141   
    42       
     42     
    4343
    44     RaceCheckPoint::RaceCheckPoint(BaseObject* creator): DistanceTrigger(creator), RadarViewable(creator, static_cast<WorldEntity*>(this))
     44    RaceCheckPoint::RaceCheckPoint(BaseObject* creator): DistanceMultiTrigger(creator), RadarViewable(creator, static_cast<WorldEntity*>(this))
    4545    {
    4646        RegisterObject(RaceCheckPoint);
    47        
     47        this->setDistance(100);
     48        this->setBeaconMode("off");
     49        this->setBroadcast(false);
     50        this->setSimultaneousTriggerers(100);
    4851       
    4952           
     
    5659        this->setRadarObjectShape(RadarViewable::Triangle);
    5760        this->setRadarVisibility(true);
     61   
     62    //this->addTarget("WorldEntity");
     63   
     64   
    5865    }
     66   
    5967
    60     RaceCheckPoint::~RaceCheckPoint()
     68   RaceCheckPoint::~RaceCheckPoint()
    6169    {
    62          //if (this->isInitialized())
     70   
     71         if (this->isInitialized())
    6372        {
    6473            //for (size_t i = 0; i < 3; ++i)
     
    7685        if(this->isVisible_){this->setRadarVisibility(true);}
    7786        else{this->setRadarVisibility(false);}
    78        
     87       
     88     
     89     
    7990       
    8091        /*this->setRadarVisibility(false);
     
    103114    }
    104115
    105         void RaceCheckPoint::triggered(bool bIsTriggered, PlayerInfo* player)
     116        void RaceCheckPoint::fire(bool bIsTriggered,BaseObject* player)
    106117    {
    107         DistanceTrigger::triggered(bIsTriggered);
     118       
     119        //bool b= bIsTriggered;
     120        //PlayerInfo* pl= player;
     121        DistanceMultiTrigger::fire((bool)bIsTriggered,player);
     122       
     123   //SUPER(RaceCheckPoint,fire,bIsTriggered,player);
     124               
    108125
    109126        SpaceRace* gametype = orxonox_cast<SpaceRace*>(this->getGametype().get());
    110127        assert(gametype);
    111         if (gametype && this->getCheckpointIndex() == gametype->getCheckpointReached(player) && bIsTriggered)
     128       
     129                 PlayerInfo* player2 = (PlayerInfo*)player;
     130        assert(player2);
     131                //DistanceMultiTrigger::fire(bIsTriggered,player);
     132               
     133               
     134               
     135       
     136               
     137        if (gametype && this->getCheckpointIndex() == gametype->getCheckpointReached(player2) && bIsTriggered)
    112138        {
    113139            gametype->clock_.capture();
     
    122148            else
    123149            {
    124                 gametype->newCheckpointReached(this,player);
     150                gametype->newCheckpointReached(this,player2);
    125151                this->setRadarObjectColour(ColourValue::Green); //sets the radar colour of the checkpoint to green if it is reached, else it is red.
    126152            }
Note: See TracChangeset for help on using the changeset viewer.