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:
parent
15adc2f2d4
commit
b507825bec
@ -61,13 +61,11 @@ GrandPrixEnd::GrandPrixEnd()
|
|||||||
const unsigned int MAX_STR_LEN = 60;
|
const unsigned int MAX_STR_LEN = 60;
|
||||||
const unsigned int NUM_KARTS = world->getNumKarts();
|
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];
|
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 )
|
for( unsigned int i = 0; i < NUM_KARTS; ++i )
|
||||||
{
|
{
|
||||||
kart = world->getKart(i);
|
|
||||||
position[i] = i;
|
position[i] = i;
|
||||||
scores[i] = race_manager->getKartScore(i);
|
scores[i] = race_manager->getKartScore(i);
|
||||||
race_time[i] = race_manager->getKartOverallTime(i);
|
race_time[i] = race_manager->getKartOverallTime(i);
|
||||||
@ -84,7 +82,7 @@ GrandPrixEnd::GrandPrixEnd()
|
|||||||
&& race_time[i] > race_time[i+1]))
|
&& race_time[i] > race_time[i+1]))
|
||||||
{
|
{
|
||||||
int tmp_score[2];
|
int tmp_score[2];
|
||||||
float tmp_time;
|
double tmp_time;
|
||||||
|
|
||||||
tmp_score[0] = position[i];
|
tmp_score[0] = position[i];
|
||||||
tmp_score[1] = scores[i];
|
tmp_score[1] = scores[i];
|
||||||
@ -103,6 +101,7 @@ GrandPrixEnd::GrandPrixEnd()
|
|||||||
}
|
}
|
||||||
} while(!sorted);
|
} while(!sorted);
|
||||||
|
|
||||||
|
Kart *kart;
|
||||||
kart = world->getKart(position[0]);
|
kart = world->getKart(position[0]);
|
||||||
|
|
||||||
static char output[MAX_MESSAGE_LENGTH];
|
static char output[MAX_MESSAGE_LENGTH];
|
||||||
@ -119,9 +118,11 @@ GrandPrixEnd::GrandPrixEnd()
|
|||||||
|
|
||||||
for(unsigned int i=0; i < NUM_KARTS; ++i)
|
for(unsigned int i=0; i < NUM_KARTS; ++i)
|
||||||
{
|
{
|
||||||
|
char sTime[20];
|
||||||
|
TimeToString(race_time[i], sTime);
|
||||||
kart = world->getKart(position[i]);
|
kart = world->getKart(position[i]);
|
||||||
sprintf((char*)(m_score + MAX_STR_LEN * i), "%d. %s %d",
|
sprintf((char*)(m_score + MAX_STR_LEN * i), "%d. %s %d %s",
|
||||||
i + 1, kart->getName().c_str(), scores[i]);
|
i + 1, kart->getName().c_str(), scores[i], sTime );
|
||||||
|
|
||||||
widget_manager->addWgt(WTOK_FIRSTKART + i, 40, 5);
|
widget_manager->addWgt(WTOK_FIRSTKART + i, 40, 5);
|
||||||
widget_manager->showWgtRect(WTOK_FIRSTKART + i);
|
widget_manager->showWgtRect(WTOK_FIRSTKART + i);
|
||||||
|
@ -40,7 +40,7 @@ public:
|
|||||||
virtual std::string getKartName(int kart) const { return "";}
|
virtual std::string getKartName(int kart) const { return "";}
|
||||||
virtual int getPositionScore(int pos ) const {return 0;}
|
virtual int getPositionScore(int pos ) const {return 0;}
|
||||||
virtual void addKartOverallTime (int kart, float race_time) {}
|
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
|
class GrandPrixMode : public RaceMode
|
||||||
@ -55,13 +55,13 @@ private:
|
|||||||
{
|
{
|
||||||
std::string ident;//The .tkkf filename without the .tkkf
|
std::string ident;//The .tkkf filename without the .tkkf
|
||||||
int score;
|
int score;
|
||||||
float overall_time;
|
double overall_time;
|
||||||
int prev_finish_pos;
|
int prev_finish_pos;
|
||||||
int player;//Which player controls the kart, for the AI this is
|
int player;//Which player controls the kart, for the AI this is
|
||||||
//the number of players.
|
//the number of players.
|
||||||
|
|
||||||
KartStatus(const std::string& ident_, const int& score_,
|
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_) :
|
const int& player_) :
|
||||||
ident(ident_), score(score_), overall_time(overall_time_),
|
ident(ident_), score(score_), overall_time(overall_time_),
|
||||||
prev_finish_pos(prev_finish_pos_), player(player_){}
|
prev_finish_pos(prev_finish_pos_), player(player_){}
|
||||||
@ -92,7 +92,7 @@ public:
|
|||||||
m_karts[kart].score +=
|
m_karts[kart].score +=
|
||||||
getPositionScore(pos);
|
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)
|
void addKartOverallTime (int kart, float race_time)
|
||||||
{
|
{
|
||||||
m_karts[kart].overall_time += 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); }
|
std::string getKartName(int kart) const { return m_mode->getKartName(kart); }
|
||||||
void addKartScore(int kart, int pos) { m_mode->addKartScore(kart, pos); }
|
void addKartScore(int kart, int pos) { m_mode->addKartScore(kart, pos); }
|
||||||
void addKartOverallTime(int kart, float race_time) {m_mode->addKartOverallTime(kart, race_time); }
|
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 addFinishedKarts(int num) { m_num_finished_karts += num; }
|
||||||
void PlayerFinishes() { m_num_finished_players++; }
|
void PlayerFinishes() { m_num_finished_players++; }
|
||||||
int allPlayerFinished() {return m_num_finished_players==m_players.size();}
|
int allPlayerFinished() {return m_num_finished_players==m_players.size();}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user