Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Dec 7, 2011, 2:38:31 PM (12 years ago)
Author:
eceline
Message:

RaceCheckPoint::fire doesn't work

File:
1 edited

Legend:

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

    r8954 r8959  
    3333#include "core/XMLPort.h"
    3434#include "chat/ChatManager.h"
     35
     36#include <infos/PlayerInfo.h>
    3537
    3638#include "SpaceRace.h"
     
    5153       
    5254           
    53         this->bCheckpointIndex_ = 0;
    54         //this->bIsLast_ = false;
     55       
     56       
    5557        this->bTimeLimit_ = 0;
    5658        this->isVisible_=true;
     
    6062        this->setRadarVisibility(true);
    6163   
     64        this->reached_=NULL;
    6265    //this->addTarget("WorldEntity");
    6366   
     
    7174         if (this->isInitialized())
    7275        {
    73             //for (size_t i = 0; i < 3; ++i)
    74             //   this->nextcheckpoints_[i]->destroy();
     76           for (size_t i = 0; i < this->next_.size(); ++i)
     77                this->next_[i]->destroy();
    7578        }
    7679       //nextcheckpoints_.destroy;
     
    121124        DistanceMultiTrigger::fire((bool)bIsTriggered,player);
    122125       
    123    //SUPER(RaceCheckPoint,fire,bIsTriggered,player);
    124                
    125 
    126         SpaceRace* gametype = orxonox_cast<SpaceRace*>(this->getGametype().get());
     126       SpaceRace* gametype = orxonox_cast<SpaceRace*>(this->getGametype().get());
    127127        assert(gametype);
    128128       
    129                  PlayerInfo* player2 = (PlayerInfo*)player;
    130         assert(player2);
    131                 //DistanceMultiTrigger::fire(bIsTriggered,player);
     129       
     130       
     131       // BaseObject b=*player;
     132       //  PlayerInfo* p = orxonox_cast<PlayerInfo*,Player>(player);
     133        //assert(player);
     134       //PlayerInfo* player3=((PlayerInfo*) player);
     135       Player* player3=((Player*) player);
     136     
     137      PlayerInfo* player2=( PlayerInfo*) player;
     138       
     139       for (std::map<PlayerInfo*, Player>::iterator it = gametype->players_.begin(); it != gametype->players_.end(); ++it)
     140        {
     141          unsigned int clientid1=0, clientid2=0,clientid3=0;
     142          if(it->first !=NULL)clientid1 = it->first->getClientID();
     143         
     144          if(player3 != NULL && player3->info_ != NULL)clientid2 =         player3->info_->getClientID();
     145          if(player2 != NULL )clientid3 =         player2->getClientID();
     146          orxout()<<clientid1<<endl;orxout()<<clientid2<<endl;orxout()<<clientid3<<endl;
     147        orxout()<<"for"<<endl;if(clientid1==clientid2) {orxout()<<"player"<<endl; player2=it->first;}if((it->first)==player2) {orxout()<<"player2"<<endl; }}
     148       
     149        // PlayerInfo* player2 = orxonox_cast<PlayerInfo*>(player);
     150       // assert(player);
     151        //gametype->newCheckpointReached(this,player);
     152        //if(bIsTriggered)this->reached_=player2;
     153       
     154        /* for (std::map<PlayerInfo*, Player>::iterator it = gametype->players_.begin(); it != gametype->players_.end(); ++it)
     155        {if(gametype->getCheckpointReached(it->first)==-1) orxout()<<"index -1"<<endl;if(player2==it->first)orxout()<<"e"<<endl;}
     156        if(gametype->getCheckpointReached(player2)==-1) orxout()<<"my index -1"<<endl;
     157   orxout()<<gametype->getCheckpointReached(player2)<<endl;
     158         
    132159               
     160                RaceCheckPoint* check=gametype->getCheckpointReached(player2);
    133161               
     162        bool b =false; 
     163        for(int i=0;i<3;i++){
     164       
     165        if (check->getNext[i]==this){
     166                b=true;}
     167        }       
     168       
    134169               
    135        
    136                
    137         if (gametype && this->getCheckpointIndex() == gametype->getCheckpointReached(player2) && bIsTriggered)
     170        if (gametype && b && bIsTriggered)
    138171        {
    139172            gametype->clock_.capture();
     
    147180                gametype->end();
    148181            else
     182                gametype->newCheckpointReached(this,player2)
    149183            {
    150                 gametype->newCheckpointReached(this,player2);
     184               
    151185                this->setRadarObjectColour(ColourValue::Green); //sets the radar colour of the checkpoint to green if it is reached, else it is red.
    152186            }
    153         }
     187        }*/
     188 
     189               
     190
     191     
    154192    }
    155193
Note: See TracChangeset for help on using the changeset viewer.