- Timestamp:
- Dec 7, 2011, 2:38:31 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/spaceraceTwo/src/modules/gametypes/RaceCheckPoint.cc
r8954 r8959 33 33 #include "core/XMLPort.h" 34 34 #include "chat/ChatManager.h" 35 36 #include <infos/PlayerInfo.h> 35 37 36 38 #include "SpaceRace.h" … … 51 53 52 54 53 this->bCheckpointIndex_ = 0;54 //this->bIsLast_ = false;55 56 55 57 this->bTimeLimit_ = 0; 56 58 this->isVisible_=true; … … 60 62 this->setRadarVisibility(true); 61 63 64 this->reached_=NULL; 62 65 //this->addTarget("WorldEntity"); 63 66 … … 71 74 if (this->isInitialized()) 72 75 { 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(); 75 78 } 76 79 //nextcheckpoints_.destroy; … … 121 124 DistanceMultiTrigger::fire((bool)bIsTriggered,player); 122 125 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()); 127 127 assert(gametype); 128 128 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 132 159 160 RaceCheckPoint* check=gametype->getCheckpointReached(player2); 133 161 162 bool b =false; 163 for(int i=0;i<3;i++){ 164 165 if (check->getNext[i]==this){ 166 b=true;} 167 } 168 134 169 135 136 137 if (gametype && this->getCheckpointIndex() == gametype->getCheckpointReached(player2) && bIsTriggered) 170 if (gametype && b && bIsTriggered) 138 171 { 139 172 gametype->clock_.capture(); … … 147 180 gametype->end(); 148 181 else 182 gametype->newCheckpointReached(this,player2) 149 183 { 150 gametype->newCheckpointReached(this,player2);184 151 185 this->setRadarObjectColour(ColourValue::Green); //sets the radar colour of the checkpoint to green if it is reached, else it is red. 152 186 } 153 } 187 }*/ 188 189 190 191 154 192 } 155 193
Note: See TracChangeset
for help on using the changeset viewer.