Changed the overall GP time variable to a double from a float

Added the overall GP time to the GP end screen 


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1452 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
scifly 2008-02-10 22:04:45 +00:00
parent 15adc2f2d4
commit b507825bec
2 changed files with 13 additions and 12 deletions

View File

@ -61,13 +61,11 @@ GrandPrixEnd::GrandPrixEnd()
const unsigned int MAX_STR_LEN = 60;
const unsigned int NUM_KARTS = world->getNumKarts();
Kart *kart;
int *scores = new int[NUM_KARTS];
int *scores = new int[NUM_KARTS];
int *position = new int[NUM_KARTS];
float *race_time = new float[NUM_KARTS];
double *race_time = new double[NUM_KARTS];
for( unsigned int i = 0; i < NUM_KARTS; ++i )
{
kart = world->getKart(i);
position[i] = i;
scores[i] = race_manager->getKartScore(i);
race_time[i] = race_manager->getKartOverallTime(i);
@ -84,7 +82,7 @@ GrandPrixEnd::GrandPrixEnd()
&& race_time[i] > race_time[i+1]))
{
int tmp_score[2];
float tmp_time;
double tmp_time;
tmp_score[0] = position[i];
tmp_score[1] = scores[i];
@ -103,6 +101,7 @@ GrandPrixEnd::GrandPrixEnd()
}
} while(!sorted);
Kart *kart;
kart = world->getKart(position[0]);
static char output[MAX_MESSAGE_LENGTH];
@ -119,9 +118,11 @@ GrandPrixEnd::GrandPrixEnd()
for(unsigned int i=0; i < NUM_KARTS; ++i)
{
char sTime[20];
TimeToString(race_time[i], sTime);
kart = world->getKart(position[i]);
sprintf((char*)(m_score + MAX_STR_LEN * i), "%d. %s %d",
i + 1, kart->getName().c_str(), scores[i]);
sprintf((char*)(m_score + MAX_STR_LEN * i), "%d. %s %d %s",
i + 1, kart->getName().c_str(), scores[i], sTime );
widget_manager->addWgt(WTOK_FIRSTKART + i, 40, 5);
widget_manager->showWgtRect(WTOK_FIRSTKART + i);

View File

@ -40,7 +40,7 @@ public:
virtual std::string getKartName(int kart) const { return "";}
virtual int getPositionScore(int pos ) const {return 0;}
virtual void addKartOverallTime (int kart, float race_time) {}
virtual float getKartOverallTime (int kart) const {return 0.0f;}
virtual double getKartOverallTime (int kart) const {return 0.0f;}
};
class GrandPrixMode : public RaceMode
@ -55,13 +55,13 @@ private:
{
std::string ident;//The .tkkf filename without the .tkkf
int score;
float overall_time;
double overall_time;
int prev_finish_pos;
int player;//Which player controls the kart, for the AI this is
//the number of players.
KartStatus(const std::string& ident_, const int& score_,
const float& overall_time_, const int& prev_finish_pos_,
const double& overall_time_, const int& prev_finish_pos_,
const int& player_) :
ident(ident_), score(score_), overall_time(overall_time_),
prev_finish_pos(prev_finish_pos_), player(player_){}
@ -92,7 +92,7 @@ public:
m_karts[kart].score +=
getPositionScore(pos);
}
float getKartOverallTime (int kart) const {return m_karts[kart].overall_time;}
double getKartOverallTime (int kart) const {return m_karts[kart].overall_time;}
void addKartOverallTime (int kart, float race_time)
{
m_karts[kart].overall_time += race_time;
@ -182,7 +182,7 @@ public:
std::string getKartName(int kart) const { return m_mode->getKartName(kart); }
void addKartScore(int kart, int pos) { m_mode->addKartScore(kart, pos); }
void addKartOverallTime(int kart, float race_time) {m_mode->addKartOverallTime(kart, race_time); }
float getKartOverallTime(int kart) {return m_mode->getKartOverallTime(kart); }
double getKartOverallTime(int kart) {return m_mode->getKartOverallTime(kart); }
void addFinishedKarts(int num) { m_num_finished_karts += num; }
void PlayerFinishes() { m_num_finished_players++; }
int allPlayerFinished() {return m_num_finished_players==m_players.size();}