2019-06-12 20:35:26 -04:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
class CStats
|
|
|
|
{
|
|
|
|
public:
|
2020-02-16 15:08:54 -05:00
|
|
|
enum {
|
|
|
|
TOTAL_FASTEST_TIMES = 16,
|
|
|
|
TOTAL_HIGHEST_SCORES = 16
|
|
|
|
};
|
2019-06-16 18:16:38 -04:00
|
|
|
static int32 &DaysPassed;
|
2019-08-17 15:03:57 -04:00
|
|
|
static int32 &HeadsPopped;
|
2019-07-07 09:26:55 -04:00
|
|
|
static bool& CommercialPassed;
|
2019-07-10 05:36:47 -04:00
|
|
|
static bool& IndustrialPassed;
|
2020-01-03 11:48:13 -05:00
|
|
|
static bool& SuburbanPassed;
|
2019-07-04 16:31:21 -04:00
|
|
|
static int32 &NumberKillFrenziesPassed;
|
|
|
|
static int32 &PeopleKilledByOthers;
|
2019-08-03 18:31:00 -04:00
|
|
|
static int32 &HelisDestroyed;
|
|
|
|
static int32 *PedsKilledOfThisType; //[NUM_PEDTYPES]
|
2019-10-07 17:29:30 -04:00
|
|
|
static int32 &TimesDied;
|
|
|
|
static int32 &TimesArrested;
|
|
|
|
static int32 &KillsSinceLastCheckpoint;
|
2019-12-09 18:02:02 -05:00
|
|
|
static int32 &DistanceTravelledInVehicle;
|
|
|
|
static int32 &DistanceTravelledOnFoot;
|
2020-01-07 09:37:20 -05:00
|
|
|
static int32 &CarsExploded;
|
|
|
|
static int32 &PeopleKilledByPlayer;
|
2019-12-31 18:35:54 -05:00
|
|
|
static int32 &ProgressMade;
|
|
|
|
static int32 &TotalProgressInGame;
|
|
|
|
static float &MaximumJumpDistance;
|
|
|
|
static float &MaximumJumpHeight;
|
|
|
|
static int32 &MaximumJumpFlips;
|
|
|
|
static int32 &MaximumJumpSpins;
|
|
|
|
static int32 &BestStuntJump;
|
|
|
|
static int32 &NumberOfUniqueJumpsFound;
|
|
|
|
static int32 &TotalNumberOfUniqueJumps;
|
|
|
|
static int32 &PassengersDroppedOffWithTaxi;
|
|
|
|
static int32 &MoneyMadeWithTaxi;
|
|
|
|
static int32 &MissionsGiven;
|
|
|
|
static int32 &MissionsPassed;
|
|
|
|
static char (&LastMissionPassedName)[8];
|
|
|
|
static int32 &TotalLegitimateKills;
|
2020-02-15 06:53:42 -05:00
|
|
|
static int32 &ElBurroTime;
|
2020-02-16 15:08:54 -05:00
|
|
|
static int32 &Record4x4One;
|
|
|
|
static int32 &Record4x4Two;
|
|
|
|
static int32 &Record4x4Three;
|
|
|
|
static int32 &Record4x4Mayhem;
|
|
|
|
static int32 &LivesSavedWithAmbulance;
|
|
|
|
static int32 &CriminalsCaught;
|
|
|
|
static int32 &HighestLevelAmbulanceMission;
|
|
|
|
static int32 &FiresExtinguished;
|
|
|
|
static int32 &LongestFlightInDodo;
|
|
|
|
static int32 &TimeTakenDefuseMission;
|
|
|
|
static int32 &TotalNumberKillFrenzies;
|
|
|
|
static int32 &TotalNumberMissions;
|
|
|
|
static int32(&FastestTimes)[TOTAL_FASTEST_TIMES];
|
|
|
|
static int32(&HighestScores)[TOTAL_HIGHEST_SCORES];
|
2019-07-04 16:31:21 -04:00
|
|
|
|
2019-07-07 03:13:04 -04:00
|
|
|
public:
|
2020-02-16 15:08:54 -05:00
|
|
|
static void RegisterFastestTime(int32, int32);
|
|
|
|
static void RegisterHighestScore(int32, int32);
|
2019-07-04 16:31:21 -04:00
|
|
|
static void AnotherKillFrenzyPassed();
|
2020-02-16 15:08:54 -05:00
|
|
|
static void AnotherLifeSavedWithAmbulance();
|
|
|
|
static void AnotherCriminalCaught();
|
|
|
|
static void RegisterLevelAmbulanceMission(int32);
|
|
|
|
static void AnotherFireExtinguished();
|
|
|
|
static void Register4x4OneTime(int32);
|
|
|
|
static void Register4x4TwoTime(int32);
|
|
|
|
static void Register4x4ThreeTime(int32);
|
|
|
|
static void Register4x4MayhemTime(int32);
|
|
|
|
static void RegisterLongestFlightInDodo(int32);
|
|
|
|
static void RegisterTimeTakenDefuseMission(int32);
|
|
|
|
static void SetTotalNumberKillFrenzies(int32);
|
|
|
|
static void SetTotalNumberMissions(int32);
|
2019-10-07 17:29:30 -04:00
|
|
|
static void CheckPointReachedUnsuccessfully() { KillsSinceLastCheckpoint = 0; };
|
2019-12-31 18:35:54 -05:00
|
|
|
static void CheckPointReachedSuccessfully() { TotalLegitimateKills += KillsSinceLastCheckpoint; KillsSinceLastCheckpoint = 0; };
|
2020-02-15 06:53:42 -05:00
|
|
|
static void RegisterElBurroTime(int32);
|
2020-03-11 03:12:40 -04:00
|
|
|
static void SaveStats(uint8 *buf, uint32 *size);
|
2020-03-11 17:15:27 -04:00
|
|
|
};
|