summaryrefslogtreecommitdiffstats
path: root/src/control
diff options
context:
space:
mode:
Diffstat (limited to 'src/control')
-rw-r--r--src/control/Bridge.cpp20
-rw-r--r--src/control/Bridge.h10
-rw-r--r--src/control/Darkel.cpp40
-rw-r--r--src/control/Darkel.h32
-rw-r--r--src/control/Garages.cpp45
-rw-r--r--src/control/Garages.h44
6 files changed, 96 insertions, 95 deletions
diff --git a/src/control/Bridge.cpp b/src/control/Bridge.cpp
index 6a577449..53cf6af2 100644
--- a/src/control/Bridge.cpp
+++ b/src/control/Bridge.cpp
@@ -6,20 +6,20 @@
#include "PathFind.h"
#include "Stats.h"
-CEntity*& CBridge::pLiftRoad = *(CEntity**)0x8E2C8C;
-CEntity*& CBridge::pLiftPart = *(CEntity**)0x8E2C94;
-CEntity*& CBridge::pWeight = *(CEntity**)0x8E28BC;
+CEntity *CBridge::pLiftRoad;
+CEntity *CBridge::pLiftPart;
+CEntity *CBridge::pWeight;
-int& CBridge::State = *(int*)0x8F2A1C;
-int& CBridge::OldState = *(int*)0x8F2A20;
+int CBridge::State;
+int CBridge::OldState;
-float& CBridge::DefaultZLiftPart = *(float*)0x941430;
-float& CBridge::DefaultZLiftRoad = *(float*)0x941438;
-float& CBridge::DefaultZLiftWeight = *(float*)0x8F1A44;
+float CBridge::DefaultZLiftPart;
+float CBridge::DefaultZLiftRoad;
+float CBridge::DefaultZLiftWeight;
-float& CBridge::OldLift = *(float*)0x8F6254;
+float CBridge::OldLift;
-uint32& CBridge::TimeOfBridgeBecomingOperational = *(uint32*)0x8F2BC0;
+uint32 CBridge::TimeOfBridgeBecomingOperational;
void CBridge::Init()
{
diff --git a/src/control/Bridge.h b/src/control/Bridge.h
index 63f41578..c5702629 100644
--- a/src/control/Bridge.h
+++ b/src/control/Bridge.h
@@ -14,11 +14,11 @@ enum bridgeStates {
class CBridge
{
public:
- static CEntity *&pLiftRoad, *&pLiftPart, *&pWeight;
- static int &State, &OldState;
- static float &DefaultZLiftPart, &DefaultZLiftRoad, &DefaultZLiftWeight;
- static float &OldLift;
- static uint32 &TimeOfBridgeBecomingOperational;
+ static CEntity *pLiftRoad, *pLiftPart, *pWeight;
+ static int State, OldState;
+ static float DefaultZLiftPart, DefaultZLiftRoad, DefaultZLiftWeight;
+ static float OldLift;
+ static uint32 TimeOfBridgeBecomingOperational;
static void Init();
static void Update();
diff --git a/src/control/Darkel.cpp b/src/control/Darkel.cpp
index b4d15abf..3265d1c2 100644
--- a/src/control/Darkel.cpp
+++ b/src/control/Darkel.cpp
@@ -17,29 +17,29 @@
#define FRENZY_ANY_PED -1
#define FRENZY_ANY_CAR -2
-int32 &CDarkel::TimeLimit = *(int32*)0x885BAC;
-int32 &CDarkel::PreviousTime = *(int32*)0x885B00;
-int32 &CDarkel::TimeOfFrenzyStart = *(int32*)0x9430D8;
-int32 &CDarkel::WeaponType = *(int32*)0x9430F0;
-int32 &CDarkel::AmmoInterruptedWeapon = *(int32*)0x8E29C8;
-int32 &CDarkel::KillsNeeded = *(int32*)0x8F1AB8;
-int8 &CDarkel::InterruptedWeapon = *(int8*)0x95CD60;
+int32 CDarkel::TimeLimit;
+int32 CDarkel::PreviousTime;
+int32 CDarkel::TimeOfFrenzyStart;
+int32 CDarkel::WeaponType;
+int32 CDarkel::AmmoInterruptedWeapon;
+int32 CDarkel::KillsNeeded;
+int8 CDarkel::InterruptedWeapon;
/*
* bStandardSoundAndMessages is a completely beta thing,
* makes game handle sounds & messages instead of SCM (just like in GTA2)
* but it's never been used in the game. Has unused sliding text when frenzy completed etc.
*/
-int8 &CDarkel::bStandardSoundAndMessages = *(int8*)0x95CDB6;
-int8 &CDarkel::bNeedHeadShot = *(int8*)0x95CDCA;
-int8 &CDarkel::bProperKillFrenzy = *(int8*)0x95CD98;
-uint16 &CDarkel::Status = *(uint16*)0x95CCB4;
-uint16 (&CDarkel::RegisteredKills)[NUM_DEFAULT_MODELS] = *(uint16(*)[NUM_DEFAULT_MODELS]) * (uintptr*)0x6EDBE0;
-int32 &CDarkel::ModelToKill = *(int32*)0x8F2C78;
-int32 &CDarkel::ModelToKill2 = *(int32*)0x885B40;
-int32 &CDarkel::ModelToKill3 = *(int32*)0x885B3C;
-int32 &CDarkel::ModelToKill4 = *(int32*)0x885B34;
-wchar *CDarkel::pStartMessage = (wchar*)0x8F2C08;
+int8 CDarkel::bStandardSoundAndMessages;
+int8 CDarkel::bNeedHeadShot;
+int8 CDarkel::bProperKillFrenzy;
+uint16 CDarkel::Status;
+uint16 CDarkel::RegisteredKills[NUM_DEFAULT_MODELS];
+int32 CDarkel::ModelToKill;
+int32 CDarkel::ModelToKill2;
+int32 CDarkel::ModelToKill3;
+int32 CDarkel::ModelToKill4;
+wchar *CDarkel::pStartMessage;
uint8
CDarkel::CalcFade(uint32 time, uint32 start, uint32 end)
@@ -262,10 +262,10 @@ CDarkel::StartFrenzy(eWeaponType weaponType, int32 time, uint16 kill, int32 mode
pStartMessage = text;
if (text == TheText.Get("PAGE_00")) {
- CDarkel::bProperKillFrenzy = 1;
- CDarkel::pStartMessage = 0;
+ CDarkel::bProperKillFrenzy = true;
+ CDarkel::pStartMessage = nil;
} else
- bProperKillFrenzy = 0;
+ bProperKillFrenzy = false;
bStandardSoundAndMessages = standardSound;
bNeedHeadShot = needHeadShot;
diff --git a/src/control/Darkel.h b/src/control/Darkel.h
index 12ce4451..b6092dcb 100644
--- a/src/control/Darkel.h
+++ b/src/control/Darkel.h
@@ -16,22 +16,22 @@ enum
class CDarkel
{
private:
- static int32 &TimeLimit;
- static int32 &PreviousTime;
- static int32 &TimeOfFrenzyStart;
- static int32 &WeaponType;
- static int32 &AmmoInterruptedWeapon;
- static int32 &KillsNeeded;
- static int8 &InterruptedWeapon;
- static int8 &bStandardSoundAndMessages;
- static int8 &bNeedHeadShot;
- static int8 &bProperKillFrenzy;
- static uint16 &Status;
- static uint16 (&RegisteredKills)[NUM_DEFAULT_MODELS];
- static int32 &ModelToKill;
- static int32 &ModelToKill2;
- static int32 &ModelToKill3;
- static int32 &ModelToKill4;
+ static int32 TimeLimit;
+ static int32 PreviousTime;
+ static int32 TimeOfFrenzyStart;
+ static int32 WeaponType;
+ static int32 AmmoInterruptedWeapon;
+ static int32 KillsNeeded;
+ static int8 InterruptedWeapon;
+ static int8 bStandardSoundAndMessages;
+ static int8 bNeedHeadShot;
+ static int8 bProperKillFrenzy;
+ static uint16 Status;
+ static uint16 RegisteredKills[NUM_DEFAULT_MODELS];
+ static int32 ModelToKill;
+ static int32 ModelToKill2;
+ static int32 ModelToKill3;
+ static int32 ModelToKill4;
static wchar *pStartMessage;
public:
diff --git a/src/control/Garages.cpp b/src/control/Garages.cpp
index d187f666..cca8c3b8 100644
--- a/src/control/Garages.cpp
+++ b/src/control/Garages.cpp
@@ -111,27 +111,27 @@ const int32 gaCarsToCollectInCraigsGarages[TOTAL_COLLECTCARS_GARAGES][TOTAL_COLL
{ MI_LANDSTAL, MI_LANDSTAL, MI_LANDSTAL, MI_LANDSTAL, MI_LANDSTAL, MI_LANDSTAL, MI_LANDSTAL, MI_LANDSTAL, MI_LANDSTAL, MI_LANDSTAL, MI_LANDSTAL, MI_CHEETAH, MI_TAXI, MI_ESPERANT, MI_SENTINEL, MI_IDAHO }
};
-int32& CGarages::BankVansCollected = *(int32*)0x8F1B34;
-bool& CGarages::BombsAreFree = *(bool*)0x95CD7A;
-bool& CGarages::RespraysAreFree = *(bool*)0x95CD1D;
-int32& CGarages::CarsCollected = *(int32*)0x880E18;
-int32(&CGarages::CarTypesCollected)[TOTAL_COLLECTCARS_GARAGES] = *(int32(*)[TOTAL_COLLECTCARS_GARAGES]) * (uintptr*)0x8E286C;
-int32& CGarages::CrushedCarId = *(int32*)0x943060;
-uint32& CGarages::LastTimeHelpMessage = *(uint32*)0x8F1B58;
-int32& CGarages::MessageNumberInString = *(int32*)0x885BA8;
-char(&CGarages::MessageIDString)[MESSAGE_LENGTH] = *(char(*)[MESSAGE_LENGTH]) * (uintptr*)0x878358;
-int32& CGarages::MessageNumberInString2 = *(int32*)0x8E2C14;
-uint32& CGarages::MessageStartTime = *(uint32*)0x8F2530;
-uint32& CGarages::MessageEndTime = *(uint32*)0x8F597C;
-uint32& CGarages::NumGarages = *(uint32*)0x8F29F4;
-bool& CGarages::PlayerInGarage = *(bool*)0x95CD83;
-int32& CGarages::PoliceCarsCollected = *(int32*)0x941444;
-CStoredCar(&CGarages::aCarsInSafeHouse1)[NUM_GARAGE_STORED_CARS] = *(CStoredCar(*)[NUM_GARAGE_STORED_CARS]) * (uintptr*)0x6FA210;
-CStoredCar(&CGarages::aCarsInSafeHouse2)[NUM_GARAGE_STORED_CARS] = *(CStoredCar(*)[NUM_GARAGE_STORED_CARS]) * (uintptr*)0x6FA300;
-CStoredCar(&CGarages::aCarsInSafeHouse3)[NUM_GARAGE_STORED_CARS] = *(CStoredCar(*)[NUM_GARAGE_STORED_CARS]) * (uintptr*)0x6FA3F0;
-int32& CGarages::AudioEntity = *(int32*)0x5ECEA8;
-CGarage(&CGarages::aGarages)[NUM_GARAGES] = *(CGarage(*)[NUM_GARAGES]) * (uintptr*)0x72BCD0;
-bool& CGarages::bCamShouldBeOutisde = *(bool*)0x95CDB2;
+int32 CGarages::BankVansCollected;
+bool CGarages::BombsAreFree;
+bool CGarages::RespraysAreFree;
+int32 CGarages::CarsCollected;
+int32 CGarages::CarTypesCollected[TOTAL_COLLECTCARS_GARAGES];
+int32 CGarages::CrushedCarId;
+uint32 CGarages::LastTimeHelpMessage;
+int32 CGarages::MessageNumberInString;
+char CGarages::MessageIDString[MESSAGE_LENGTH];
+int32 CGarages::MessageNumberInString2;
+uint32 CGarages::MessageStartTime;
+uint32 CGarages::MessageEndTime;
+uint32 CGarages::NumGarages;
+bool CGarages::PlayerInGarage;
+int32 CGarages::PoliceCarsCollected;
+CStoredCar CGarages::aCarsInSafeHouse1[NUM_GARAGE_STORED_CARS];
+CStoredCar CGarages::aCarsInSafeHouse2[NUM_GARAGE_STORED_CARS];
+CStoredCar CGarages::aCarsInSafeHouse3[NUM_GARAGE_STORED_CARS];
+int32 CGarages::AudioEntity = AEHANDLE_NONE;
+CGarage CGarages::aGarages[NUM_GARAGES];
+bool CGarages::bCamShouldBeOutisde;
void CGarages::Init(void)
{
@@ -2256,7 +2256,7 @@ void CGarages::Save(uint8 * buf, uint32 * size)
#endif
}
-CStoredCar::CStoredCar(const CStoredCar & other)
+const CStoredCar &CStoredCar::operator=(const CStoredCar & other)
{
m_nModelIndex = other.m_nModelIndex;
m_vecPos = other.m_vecPos;
@@ -2272,6 +2272,7 @@ CStoredCar::CStoredCar(const CStoredCar & other)
m_nVariationA = other.m_nVariationA;
m_nVariationB = other.m_nVariationB;
m_nCarBombType = other.m_nCarBombType;
+ return *this;
}
void CGarages::Load(uint8* buf, uint32 size)
diff --git a/src/control/Garages.h b/src/control/Garages.h
index 26e7a89a..65193b32 100644
--- a/src/control/Garages.h
+++ b/src/control/Garages.h
@@ -70,7 +70,7 @@ public:
void Init() { m_nModelIndex = 0; }
void Clear() { m_nModelIndex = 0; }
bool HasCar() { return m_nModelIndex != 0; }
- CStoredCar(const CStoredCar& other);
+ const CStoredCar &operator=(const CStoredCar& other);
void StoreCar(CVehicle*);
CVehicle* RestoreCar();
};
@@ -179,27 +179,27 @@ class CGarages
enum {
MESSAGE_LENGTH = 8
};
- static int32 &BankVansCollected;
- static bool &BombsAreFree;
- static bool &RespraysAreFree;
- static int32 &CarsCollected;
- static int32 (&CarTypesCollected)[TOTAL_COLLECTCARS_GARAGES];
- static int32 &CrushedCarId;
- static uint32 &LastTimeHelpMessage;
- static int32 &MessageNumberInString;
- static char(&MessageIDString)[MESSAGE_LENGTH];
- static int32 &MessageNumberInString2;
- static uint32 &MessageStartTime;
- static uint32 &MessageEndTime;
- static uint32 &NumGarages;
- static bool &PlayerInGarage;
- static int32 &PoliceCarsCollected;
- static CGarage(&aGarages)[NUM_GARAGES];
- static CStoredCar(&aCarsInSafeHouse1)[NUM_GARAGE_STORED_CARS];
- static CStoredCar(&aCarsInSafeHouse2)[NUM_GARAGE_STORED_CARS];
- static CStoredCar(&aCarsInSafeHouse3)[NUM_GARAGE_STORED_CARS];
- static int32 &AudioEntity;
- static bool &bCamShouldBeOutisde;
+ static int32 BankVansCollected;
+ static bool BombsAreFree;
+ static bool RespraysAreFree;
+ static int32 CarsCollected;
+ static int32 CarTypesCollected[TOTAL_COLLECTCARS_GARAGES];
+ static int32 CrushedCarId;
+ static uint32 LastTimeHelpMessage;
+ static int32 MessageNumberInString;
+ static char MessageIDString[MESSAGE_LENGTH];
+ static int32 MessageNumberInString2;
+ static uint32 MessageStartTime;
+ static uint32 MessageEndTime;
+ static uint32 NumGarages;
+ static bool PlayerInGarage;
+ static int32 PoliceCarsCollected;
+ static CGarage aGarages[NUM_GARAGES];
+ static CStoredCar aCarsInSafeHouse1[NUM_GARAGE_STORED_CARS];
+ static CStoredCar aCarsInSafeHouse2[NUM_GARAGE_STORED_CARS];
+ static CStoredCar aCarsInSafeHouse3[NUM_GARAGE_STORED_CARS];
+ static int32 AudioEntity;
+ static bool bCamShouldBeOutisde;
public:
static void Init(void);