Don't count cheated games as wins/losses in multiplayer stats.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7227 4a71c877-e1ca-e34f-864e-861f7616d084
master
Guangcong Luo 2009-04-28 19:46:39 +00:00 committed by Git SVN Gateway
parent b8772dd066
commit 663321709e
1 changed files with 22 additions and 0 deletions

View File

@ -40,6 +40,7 @@
#include "multirecv.h"
#include "multistat.h"
#include "multiint.h"
#include "mission.h" // for cheats
extern char MultiPlayersPath[PATH_MAX];
@ -205,6 +206,11 @@ void updateMultiStatsDamage(UDWORD attacker, UDWORD defender, UDWORD inflicted)
{
PLAYERSTATS st;
if (Cheated)
{
return;
}
if(isHumanPlayer(attacker))
{
st = getMultiStats(attacker,true); // get stats
@ -248,6 +254,10 @@ void updateMultiStatsGames(void)
{
PLAYERSTATS st;
if (Cheated)
{
return;
}
st = getMultiStats(selectedPlayer,true);
st.played ++;
setMultiStats(player2dpid[selectedPlayer], st, true);
@ -257,6 +267,10 @@ void updateMultiStatsGames(void)
void updateMultiStatsWins(void)
{
PLAYERSTATS st;
if (Cheated)
{
return;
}
st = getMultiStats(selectedPlayer,true);
st.wins ++;
setMultiStats(player2dpid[selectedPlayer], st, true);
@ -266,6 +280,10 @@ void updateMultiStatsWins(void)
void updateMultiStatsLoses(void)
{
PLAYERSTATS st;
if (Cheated)
{
return;
}
st = getMultiStats(selectedPlayer,true);
++st.losses;
setMultiStats(player2dpid[selectedPlayer], st, true);
@ -276,6 +294,10 @@ void updateMultiStatsKills(BASE_OBJECT *psKilled,UDWORD player)
{
PLAYERSTATS st;
if (Cheated)
{
return;
}
if(isHumanPlayer(player))
{
st = getMultiStats(player,true);