string TTIWrapperDriver::drive(string sensors) { CarState cs(sensors); current=cs; curTick++; if(zombie){ CarControl cc; cc.setMeta(2); return cc.toString(); } if(isDead()){ clear(); zombie=true; std::cout<<"terminated"<<std::endl; CarControl cc; cc.setMeta(2); return cc.toString(); } float lap = current.getLastLapTime(); if(lap!=lastLap){ lapTimes.push_back(lap); lastLap=lap; } if(current.getTrackPos()>=1||current.getTrackPos()<=-1){ outside++; } CarControl cc = wDrive(cs); return cc.toString(); }
string SimpleDriver::drive(string sensors) { CarState cs(sensors); CarControl nextVector = CarControl(0.0f, 0.0f, cs.getGear(), 0.0f, 0.0f); if (automatedControl == NULL) { Keyboard_Update(&nextVector); log->push_back(pair<CarState, CarControl>(cs, nextVector)); } else { this->automatedControl->generateVector(&cs, &nextVector); } return nextVector.toString(); }