mirror of
https://github.com/halpz/re3.git
synced 2025-06-29 21:56:21 +00:00
Merge remote-tracking branch 'Fire-Head/master' into Standalone
# Conflicts: # src/render/Coronas.cpp
This commit is contained in:
@ -33,7 +33,6 @@ float CCarAI::FindSwitchDistanceFar(CVehicle* pVehicle)
|
||||
|
||||
void CCarAI::UpdateCarAI(CVehicle* pVehicle)
|
||||
{
|
||||
//((void(*)(CVehicle*))(0x413E50))(pVehicle);
|
||||
//return;
|
||||
if (pVehicle->bIsLawEnforcer){
|
||||
if (pVehicle->AutoPilot.m_nCarMission == MISSION_BLOCKCAR_FARAWAY ||
|
||||
|
@ -67,25 +67,25 @@
|
||||
#define MIN_ANGLE_TO_APPLY_HANDBRAKE 0.7f
|
||||
#define MIN_SPEED_TO_APPLY_HANDBRAKE 0.3f
|
||||
|
||||
int &CCarCtrl::NumLawEnforcerCars = *(int*)0x8F1B38;
|
||||
int &CCarCtrl::NumAmbulancesOnDuty = *(int*)0x885BB0;
|
||||
int &CCarCtrl::NumFiretrucksOnDuty = *(int*)0x9411F0;
|
||||
bool &CCarCtrl::bCarsGeneratedAroundCamera = *(bool*)0x95CD8A;
|
||||
float& CCarCtrl::CarDensityMultiplier = *(float*)0x5EC8B4;
|
||||
int32 &CCarCtrl::NumMissionCars = *(int32*)0x8F1B54;
|
||||
int32 &CCarCtrl::NumRandomCars = *(int32*)0x943118;
|
||||
int32 &CCarCtrl::NumParkedCars = *(int32*)0x8F29E0;
|
||||
int32 &CCarCtrl::NumPermanentCars = *(int32*)0x8F29F0;
|
||||
int8 &CCarCtrl::CountDownToCarsAtStart = *(int8*)0x95CD63;
|
||||
int32 &CCarCtrl::MaxNumberOfCarsInUse = *(int32*)0x5EC8B8;
|
||||
uint32 &CCarCtrl::LastTimeLawEnforcerCreated = *(uint32*)0x8F5FF0;
|
||||
uint32 &CCarCtrl::LastTimeFireTruckCreated = *(uint32*)0x880F5C;
|
||||
uint32 &CCarCtrl::LastTimeAmbulanceCreated = *(uint32*)0x941450;
|
||||
int32 (&CCarCtrl::TotalNumOfCarsOfRating)[TOTAL_CUSTOM_CLASSES] = *(int32(*)[TOTAL_CUSTOM_CLASSES])*(uintptr*)0x8F1A60;
|
||||
int32 (&CCarCtrl::NextCarOfRating)[TOTAL_CUSTOM_CLASSES] = *(int32(*)[TOTAL_CUSTOM_CLASSES])*(uintptr*)0x9412AC;
|
||||
int32 (&CCarCtrl::CarArrays)[TOTAL_CUSTOM_CLASSES][MAX_CAR_MODELS_IN_ARRAY] = *(int32(*)[TOTAL_CUSTOM_CLASSES][MAX_CAR_MODELS_IN_ARRAY])*(uintptr*)0x6EB860;
|
||||
CVehicle* (&apCarsToKeep)[MAX_CARS_TO_KEEP] = *(CVehicle*(*)[MAX_CARS_TO_KEEP])*(uintptr*)0x70D830;
|
||||
uint32 (&aCarsToKeepTime)[MAX_CARS_TO_KEEP] = *(uint32(*)[MAX_CARS_TO_KEEP])*(uintptr*)0x87F9A8;
|
||||
int CCarCtrl::NumLawEnforcerCars;
|
||||
int CCarCtrl::NumAmbulancesOnDuty;
|
||||
int CCarCtrl::NumFiretrucksOnDuty;
|
||||
bool CCarCtrl::bCarsGeneratedAroundCamera;
|
||||
float CCarCtrl::CarDensityMultiplier = 1.0f;
|
||||
int32 CCarCtrl::NumMissionCars;
|
||||
int32 CCarCtrl::NumRandomCars;
|
||||
int32 CCarCtrl::NumParkedCars;
|
||||
int32 CCarCtrl::NumPermanentCars;
|
||||
int8 CCarCtrl::CountDownToCarsAtStart;
|
||||
int32 CCarCtrl::MaxNumberOfCarsInUse = 12;
|
||||
uint32 CCarCtrl::LastTimeLawEnforcerCreated;
|
||||
uint32 CCarCtrl::LastTimeFireTruckCreated;
|
||||
uint32 CCarCtrl::LastTimeAmbulanceCreated;
|
||||
int32 CCarCtrl::TotalNumOfCarsOfRating[TOTAL_CUSTOM_CLASSES];
|
||||
int32 CCarCtrl::NextCarOfRating[TOTAL_CUSTOM_CLASSES];
|
||||
int32 CCarCtrl::CarArrays[TOTAL_CUSTOM_CLASSES][MAX_CAR_MODELS_IN_ARRAY];
|
||||
CVehicle* apCarsToKeep[MAX_CARS_TO_KEEP];
|
||||
uint32 aCarsToKeepTime[MAX_CARS_TO_KEEP];
|
||||
|
||||
void
|
||||
CCarCtrl::GenerateRandomCars()
|
||||
|
@ -120,23 +120,23 @@ public:
|
||||
return angle;
|
||||
}
|
||||
|
||||
static int32 &NumLawEnforcerCars;
|
||||
static int32 &NumAmbulancesOnDuty;
|
||||
static int32 &NumFiretrucksOnDuty;
|
||||
static int32 &NumRandomCars;
|
||||
static int32 &NumMissionCars;
|
||||
static int32 &NumParkedCars;
|
||||
static int32 &NumPermanentCars;
|
||||
static bool &bCarsGeneratedAroundCamera;
|
||||
static float &CarDensityMultiplier;
|
||||
static int8 &CountDownToCarsAtStart;
|
||||
static int32 &MaxNumberOfCarsInUse;
|
||||
static uint32 &LastTimeLawEnforcerCreated;
|
||||
static uint32 &LastTimeFireTruckCreated;
|
||||
static uint32 &LastTimeAmbulanceCreated;
|
||||
static int32 (&TotalNumOfCarsOfRating)[TOTAL_CUSTOM_CLASSES];
|
||||
static int32 (&NextCarOfRating)[TOTAL_CUSTOM_CLASSES];
|
||||
static int32 (&CarArrays)[TOTAL_CUSTOM_CLASSES][MAX_CAR_MODELS_IN_ARRAY];
|
||||
static int32 NumLawEnforcerCars;
|
||||
static int32 NumAmbulancesOnDuty;
|
||||
static int32 NumFiretrucksOnDuty;
|
||||
static int32 NumRandomCars;
|
||||
static int32 NumMissionCars;
|
||||
static int32 NumParkedCars;
|
||||
static int32 NumPermanentCars;
|
||||
static bool bCarsGeneratedAroundCamera;
|
||||
static float CarDensityMultiplier;
|
||||
static int8 CountDownToCarsAtStart;
|
||||
static int32 MaxNumberOfCarsInUse;
|
||||
static uint32 LastTimeLawEnforcerCreated;
|
||||
static uint32 LastTimeFireTruckCreated;
|
||||
static uint32 LastTimeAmbulanceCreated;
|
||||
static int32 TotalNumOfCarsOfRating[TOTAL_CUSTOM_CLASSES];
|
||||
static int32 NextCarOfRating[TOTAL_CUSTOM_CLASSES];
|
||||
static int32 CarArrays[TOTAL_CUSTOM_CLASSES][MAX_CAR_MODELS_IN_ARRAY];
|
||||
};
|
||||
|
||||
extern CVehicle* (&apCarsToKeep)[MAX_CARS_TO_KEEP];
|
||||
extern CVehicle* apCarsToKeep[MAX_CARS_TO_KEEP];
|
@ -20,7 +20,7 @@
|
||||
#include "Script.h"
|
||||
#include "Garages.h"
|
||||
|
||||
uint8 CGameLogic::ActivePlayers; // 0x95CD5E
|
||||
uint8 CGameLogic::ActivePlayers;
|
||||
|
||||
void
|
||||
CGameLogic::InitAtStartOfGame()
|
||||
|
@ -12,7 +12,7 @@ bool gbShowPedPaths;
|
||||
bool gbShowCarPaths;
|
||||
bool gbShowCarPathsLinks;
|
||||
|
||||
CPathFind &ThePaths = *(CPathFind*)0x8F6754;
|
||||
CPathFind ThePaths;
|
||||
|
||||
#define MAX_DIST INT16_MAX-1
|
||||
#define MIN_PED_ROUTE_DISTANCE 23.8f
|
||||
@ -21,11 +21,11 @@ CPathFind &ThePaths = *(CPathFind*)0x8F6754;
|
||||
// 1 UseInRoadBlock
|
||||
// 2 east/west road(?)
|
||||
|
||||
CPathInfoForObject *&InfoForTileCars = *(CPathInfoForObject**)0x8F1A8C;
|
||||
CPathInfoForObject *&InfoForTilePeds = *(CPathInfoForObject**)0x8F1AE4;
|
||||
CPathInfoForObject *InfoForTileCars;
|
||||
CPathInfoForObject *InfoForTilePeds;
|
||||
// unused
|
||||
CTempDetachedNode *&DetachedNodesCars = *(CTempDetachedNode**)0x8E2824;
|
||||
CTempDetachedNode *&DetachedNodesPeds = *(CTempDetachedNode**)0x8E28A0;
|
||||
CTempDetachedNode *DetachedNodesCars;
|
||||
CTempDetachedNode *DetachedNodesPeds;
|
||||
|
||||
bool
|
||||
CPedPath::CalcPedRoute(int8 pathType, CVector position, CVector destination, CVector *pointPoses, int16 *pointsFound, int16 maxPoints)
|
||||
|
@ -138,8 +138,8 @@ struct CPathInfoForObject
|
||||
int8 numRightLanes;
|
||||
uint8 crossing : 1;
|
||||
};
|
||||
extern CPathInfoForObject *&InfoForTileCars;
|
||||
extern CPathInfoForObject *&InfoForTilePeds;
|
||||
extern CPathInfoForObject *InfoForTileCars;
|
||||
extern CPathInfoForObject *InfoForTilePeds;
|
||||
|
||||
struct CTempNode
|
||||
{
|
||||
@ -234,7 +234,7 @@ public:
|
||||
};
|
||||
static_assert(sizeof(CPathFind) == 0x49bf4, "CPathFind: error");
|
||||
|
||||
extern CPathFind &ThePaths;
|
||||
extern CPathFind ThePaths;
|
||||
|
||||
extern bool gbShowPedPaths;
|
||||
extern bool gbShowCarPaths;
|
||||
|
@ -13,13 +13,13 @@
|
||||
#include "RpAnimBlend.h"
|
||||
#include "AnimBlendAssociation.h"
|
||||
|
||||
CPhoneInfo &gPhoneInfo = *(CPhoneInfo*)0x732A20;
|
||||
CPhoneInfo gPhoneInfo;
|
||||
|
||||
bool &CPhoneInfo::bDisplayingPhoneMessage = *(bool*)0x6283AC; // is phone picked up
|
||||
uint32 &CPhoneInfo::PhoneEnableControlsTimer = *(uint32*)0x6283A8;
|
||||
CPhone *&CPhoneInfo::pPhoneDisplayingMessages = *(CPhone**)0x6283B0;
|
||||
bool &CPhoneInfo::bPickingUpPhone = *(bool*)0x6283B4;
|
||||
CPed *&CPhoneInfo::pCallBackPed = *(CPed**)0x6283B8; // ped who picking up the phone (reset after pickup cb)
|
||||
bool CPhoneInfo::bDisplayingPhoneMessage; // is phone picked up
|
||||
uint32 CPhoneInfo::PhoneEnableControlsTimer;
|
||||
CPhone *CPhoneInfo::pPhoneDisplayingMessages;
|
||||
bool CPhoneInfo::bPickingUpPhone;
|
||||
CPed *CPhoneInfo::pCallBackPed; // ped who picking up the phone (reset after pickup cb)
|
||||
|
||||
/*
|
||||
Entering phonebooth cutscene, showing messages and triggering these things
|
||||
|
@ -36,11 +36,11 @@ static_assert(sizeof(CPhone) == 0x34, "CPhone: error");
|
||||
|
||||
class CPhoneInfo {
|
||||
public:
|
||||
static bool &bDisplayingPhoneMessage;
|
||||
static uint32 &PhoneEnableControlsTimer;
|
||||
static CPhone *&pPhoneDisplayingMessages;
|
||||
static bool &bPickingUpPhone;
|
||||
static CPed *&pCallBackPed;
|
||||
static bool bDisplayingPhoneMessage;
|
||||
static uint32 PhoneEnableControlsTimer;
|
||||
static CPhone *pPhoneDisplayingMessages;
|
||||
static bool bPickingUpPhone;
|
||||
static CPed *pCallBackPed;
|
||||
|
||||
int32 m_nMax;
|
||||
int32 m_nScriptPhonesMax;
|
||||
@ -63,7 +63,7 @@ public:
|
||||
void Update(void);
|
||||
};
|
||||
|
||||
extern CPhoneInfo &gPhoneInfo;
|
||||
extern CPhoneInfo gPhoneInfo;
|
||||
|
||||
void PhonePutDownCB(CAnimBlendAssociation *assoc, void *arg);
|
||||
void PhonePickUpCB(CAnimBlendAssociation *assoc, void *arg);
|
||||
|
@ -31,16 +31,16 @@
|
||||
#include "WaterLevel.h"
|
||||
#include "World.h"
|
||||
|
||||
CPickup(&CPickups::aPickUps)[NUMPICKUPS] = *(CPickup(*)[NUMPICKUPS])*(uintptr*)0x878C98;
|
||||
int16 CPickups::NumMessages;// = *(int16*)0x95CC98;
|
||||
int32 CPickups::aPickUpsCollected[NUMCOLLECTEDPICKUPS];// = *(int32(*)[NUMCOLLECTEDPICKUPS])*(uintptr*)0x87C538;
|
||||
int16 CPickups::CollectedPickUpIndex;// = *(int16*)0x95CC8A;
|
||||
CPickup CPickups::aPickUps[NUMPICKUPS];
|
||||
int16 CPickups::NumMessages;
|
||||
int32 CPickups::aPickUpsCollected[NUMCOLLECTEDPICKUPS];
|
||||
int16 CPickups::CollectedPickUpIndex;
|
||||
|
||||
// unused
|
||||
bool &CPickups::bPickUpcamActivated = *(bool*)0x95CD71;
|
||||
CVehicle *&CPickups::pPlayerVehicle = *(CVehicle**)0x8F29E8;
|
||||
CVector &CPickups::StaticCamCoors = *(CVector*)0x9404C8;
|
||||
uint32 &CPickups::StaticCamStartTime = *(uint32*)0x8E289C;
|
||||
bool CPickups::bPickUpcamActivated;
|
||||
CVehicle *CPickups::pPlayerVehicle;
|
||||
CVector CPickups::StaticCamCoors;
|
||||
uint32 CPickups::StaticCamStartTime;
|
||||
|
||||
tPickupMessage CPickups::aMessages[NUMPICKUPMESSAGES];
|
||||
|
||||
|
@ -89,13 +89,13 @@ public:
|
||||
static void Load(uint8 *buf, uint32 size);
|
||||
static void Save(uint8 *buf, uint32 *size);
|
||||
|
||||
static CPickup(&aPickUps)[NUMPICKUPS];
|
||||
static CPickup aPickUps[NUMPICKUPS];
|
||||
|
||||
// unused
|
||||
static bool &bPickUpcamActivated;
|
||||
static CVehicle *&pPlayerVehicle;
|
||||
static CVector &StaticCamCoors;
|
||||
static uint32 &StaticCamStartTime;
|
||||
static bool bPickUpcamActivated;
|
||||
static CVehicle *pPlayerVehicle;
|
||||
static CVector StaticCamCoors;
|
||||
static uint32 StaticCamStartTime;
|
||||
};
|
||||
|
||||
extern uint16 AmmoForWeapon[20];
|
||||
|
@ -10,11 +10,11 @@
|
||||
#include "VehicleModelInfo.h"
|
||||
#include "World.h"
|
||||
|
||||
uint16 &CRecordDataForGame::RecordingState = *(uint16*)0x95CC24;
|
||||
uint8*& CRecordDataForGame::pDataBuffer = *(uint8**)0x8F1B70;
|
||||
uint8*& CRecordDataForGame::pDataBufferPointer = *(uint8**)0x8F1AB0;
|
||||
int& CRecordDataForGame::FId = *(int*)0x885BA4;
|
||||
tGameBuffer& CRecordDataForGame::pDataBufferForFrame = *(tGameBuffer*)0x72CED0;
|
||||
uint16 CRecordDataForGame::RecordingState;
|
||||
uint8* CRecordDataForGame::pDataBuffer;
|
||||
uint8* CRecordDataForGame::pDataBufferPointer;
|
||||
int CRecordDataForGame::FId;
|
||||
tGameBuffer CRecordDataForGame::pDataBufferForFrame;
|
||||
|
||||
#define MEMORY_FOR_GAME_RECORD (150000)
|
||||
|
||||
@ -176,15 +176,15 @@ uint16 CRecordDataForGame::CalcGameChecksum(void)
|
||||
return checksum ^ checksum >> 16;
|
||||
}
|
||||
|
||||
uint8& CRecordDataForChase::Status = *(uint8*)0x95CDCE;
|
||||
int& CRecordDataForChase::PositionChanges = *(int*)0x8F59C8;
|
||||
uint8& CRecordDataForChase::CurrentCar = *(uint8*)0x95CDC9;
|
||||
CAutomobile* (&CRecordDataForChase::pChaseCars)[NUM_CHASE_CARS] = *(CAutomobile * (*)[NUM_CHASE_CARS])*(uintptr*)0x6F46A8;
|
||||
uint32& CRecordDataForChase::AnimStartTime = *(uint32*)0x8F1AEC;
|
||||
float& CRecordDataForChase::AnimTime = *(float*)0x880F88;
|
||||
CCarStateEachFrame* (&CRecordDataForChase::pBaseMemForCar)[NUM_CHASE_CARS] = *(CCarStateEachFrame * (*)[NUM_CHASE_CARS])*(uintptr*)0x70EA18;
|
||||
float& CRecordDataForChase::TimeMultiplier = *(float*)0x8E2A94;
|
||||
int& CRecordDataForChase::FId2 = *(int*)0x8E2C18;
|
||||
uint8 CRecordDataForChase::Status;
|
||||
int CRecordDataForChase::PositionChanges;
|
||||
uint8 CRecordDataForChase::CurrentCar;
|
||||
CAutomobile* CRecordDataForChase::pChaseCars[NUM_CHASE_CARS];
|
||||
uint32 CRecordDataForChase::AnimStartTime;
|
||||
float CRecordDataForChase::AnimTime;
|
||||
CCarStateEachFrame* CRecordDataForChase::pBaseMemForCar[NUM_CHASE_CARS];
|
||||
float CRecordDataForChase::TimeMultiplier;
|
||||
int CRecordDataForChase::FId2;
|
||||
|
||||
#define CHASE_SCENE_LENGTH_IN_SECONDS (80)
|
||||
#define CHASE_SCENE_FRAMES_PER_SECOND (15) // skipping every second frame
|
||||
|
@ -23,7 +23,7 @@ public:
|
||||
CVector pos;
|
||||
};
|
||||
|
||||
extern char* gString;
|
||||
extern char gString[256];;
|
||||
|
||||
class CRecordDataForChase
|
||||
{
|
||||
@ -37,15 +37,15 @@ class CRecordDataForChase
|
||||
STATE_PLAYBACK = 3,
|
||||
STATE_PLAYBACK_BEFORE_RECORDING = 4
|
||||
};
|
||||
static uint8 &Status;
|
||||
static int &PositionChanges;
|
||||
static uint8 &CurrentCar;
|
||||
static CAutomobile*(&pChaseCars)[NUM_CHASE_CARS];
|
||||
static float &AnimTime;
|
||||
static uint32 &AnimStartTime;
|
||||
static CCarStateEachFrame* (&pBaseMemForCar)[NUM_CHASE_CARS];
|
||||
static float &TimeMultiplier;
|
||||
static int &FId2;
|
||||
static uint8 Status;
|
||||
static int PositionChanges;
|
||||
static uint8 CurrentCar;
|
||||
static CAutomobile*pChaseCars[NUM_CHASE_CARS];
|
||||
static float AnimTime;
|
||||
static uint32 AnimStartTime;
|
||||
static CCarStateEachFrame* pBaseMemForCar[NUM_CHASE_CARS];
|
||||
static float TimeMultiplier;
|
||||
static int FId2;
|
||||
public:
|
||||
|
||||
static bool IsRecording(void) { return Status == STATE_RECORD; }
|
||||
@ -86,11 +86,11 @@ class CRecordDataForGame
|
||||
STATE_RECORD = 1,
|
||||
STATE_PLAYBACK = 2,
|
||||
};
|
||||
static uint16& RecordingState;
|
||||
static uint8* &pDataBuffer;
|
||||
static uint8* &pDataBufferPointer;
|
||||
static int &FId;
|
||||
static tGameBuffer &pDataBufferForFrame;
|
||||
static uint16 RecordingState;
|
||||
static uint8* pDataBuffer;
|
||||
static uint8* pDataBufferPointer;
|
||||
static int FId;
|
||||
static tGameBuffer pDataBufferForFrame;
|
||||
|
||||
public:
|
||||
static bool IsRecording() { return RecordingState == STATE_RECORD; }
|
||||
|
@ -39,71 +39,70 @@
|
||||
#include "Camera.h"
|
||||
#include "Radar.h"
|
||||
|
||||
uint8 &CReplay::Mode = *(uint8*)0x95CD5B;
|
||||
CAddressInReplayBuffer &CReplay::Record = *(CAddressInReplayBuffer*)0x942F7C;
|
||||
CAddressInReplayBuffer &CReplay::Playback = *(CAddressInReplayBuffer*)0x8F5F48;
|
||||
uint8 *&CReplay::pBuf0 = *(uint8**)0x8E2C64;
|
||||
CAutomobile *&CReplay::pBuf1 = *(CAutomobile**)0x8E2C68;
|
||||
uint8 *&CReplay::pBuf2 = *(uint8**)0x8E2C6C;
|
||||
CPlayerPed *&CReplay::pBuf3 = *(CPlayerPed**)0x8E2C70;
|
||||
uint8 *&CReplay::pBuf4 = *(uint8**)0x8E2C74;
|
||||
CCutsceneHead *&CReplay::pBuf5 = *(CCutsceneHead**)0x8E2C78;
|
||||
uint8 *&CReplay::pBuf6 = *(uint8**)0x8E2C80;
|
||||
CPtrNode *&CReplay::pBuf7 = *(CPtrNode**)0x8E2C84;
|
||||
uint8 *&CReplay::pBuf8 = *(uint8**)0x8E2C54;
|
||||
CEntryInfoNode *&CReplay::pBuf9 = *(CEntryInfoNode**)0x8E2C58;
|
||||
uint8 *&CReplay::pBuf10 = *(uint8**)0x8F2C28;
|
||||
CDummyPed *&CReplay::pBuf11 = *(CDummyPed**)0x8F2C2C;
|
||||
uint8 *&CReplay::pRadarBlips = *(uint8**)0x8F29F8;
|
||||
uint8 *&CReplay::pStoredCam = *(uint8**)0x8F2C34;
|
||||
uint8 *&CReplay::pWorld1 = *(uint8**)0x8E29C4;
|
||||
CReference *&CReplay::pEmptyReferences = *(CReference**)0x8F256C;
|
||||
CStoredDetailedAnimationState *&CReplay::pPedAnims = *(CStoredDetailedAnimationState**)0x8F6260;
|
||||
uint8 *&CReplay::pPickups = *(uint8**)0x8F1A48;
|
||||
uint8 *&CReplay::pReferences = *(uint8**)0x880FAC;
|
||||
uint8(&CReplay::BufferStatus)[NUM_REPLAYBUFFERS] = *(uint8(*)[NUM_REPLAYBUFFERS])*(uintptr*)0x8804D8;
|
||||
uint8(&CReplay::Buffers)[NUM_REPLAYBUFFERS][REPLAYBUFFERSIZE] = *(uint8(*)[NUM_REPLAYBUFFERS][REPLAYBUFFERSIZE])*(uintptr*)0x779958;
|
||||
bool &CReplay::bPlayingBackFromFile = *(bool*)0x95CD58;
|
||||
bool &CReplay::bReplayEnabled = *(bool*)0x617CAC;
|
||||
uint32 &CReplay::SlowMotion = *(uint32*)0x9414D4;
|
||||
uint32 &CReplay::FramesActiveLookAroundCam = *(uint32*)0x880F84;
|
||||
bool &CReplay::bDoLoadSceneWhenDone = *(bool*)0x95CD76;
|
||||
CPtrList &CReplay::WorldPtrList = *(CPtrList*)0x880F90;
|
||||
CPtrList &CReplay::BigBuildingPtrList = *(CPtrList*)0x941284;
|
||||
CWanted &CReplay::PlayerWanted = *(CWanted*)0x8F6278;
|
||||
CPlayerInfo &CReplay::PlayerInfo = *(CPlayerInfo*)0x8F5840;
|
||||
uint32 &CReplay::Time1 = *(uint32*)0x8F29DC;
|
||||
uint32 &CReplay::Time2 = *(uint32*)0x8F29D0;
|
||||
uint32 &CReplay::Time3 = *(uint32*)0x8F29D4;
|
||||
uint32 &CReplay::Time4 = *(uint32*)0x8F29C8;
|
||||
uint32 &CReplay::Frame = *(uint32*)0x8F2554;
|
||||
uint8 &CReplay::ClockHours = *(uint8*)0x95CDC5;
|
||||
uint8 &CReplay::ClockMinutes = *(uint8*)0x95CDA2;
|
||||
uint16 &CReplay::OldWeatherType = *(uint16*)0x95CCEA;
|
||||
uint16 &CReplay::NewWeatherType = *(uint16*)0x95CC6E;
|
||||
float &CReplay::WeatherInterpolationValue = *(float*)0x8F1A28;
|
||||
float &CReplay::TimeStepNonClipped = *(float*)0x8F5FF4;
|
||||
float &CReplay::TimeStep = *(float*)0x8F2C24;
|
||||
float &CReplay::TimeScale = *(float*)0x880E20;
|
||||
float &CReplay::CameraFixedX = *(float*)0x943054;
|
||||
float &CReplay::CameraFixedY = *(float*)0x943058;
|
||||
float &CReplay::CameraFixedZ = *(float*)0x94305C;
|
||||
int32 &CReplay::OldRadioStation = *(int32*)0x94151C;
|
||||
int8 &CReplay::CameraMode = *(int8*)0x95CD5F;
|
||||
bool &CReplay::bAllowLookAroundCam = *(bool*)0x95CDCD;
|
||||
float &CReplay::LoadSceneX = *(float*)0x880F9C;
|
||||
float &CReplay::LoadSceneY = *(float*)0x880F98;
|
||||
float &CReplay::LoadSceneZ = *(float*)0x880F94;
|
||||
float &CReplay::CameraFocusX = *(float*)0x942F5C;
|
||||
float &CReplay::CameraFocusY = *(float*)0x942F74;
|
||||
float &CReplay::CameraFocusZ = *(float*)0x942F58;
|
||||
bool &CReplay::bPlayerInRCBuggy = *(bool*)0x95CDC3;
|
||||
float &CReplay::fDistanceLookAroundCam = *(float*)0x885B44;
|
||||
float &CReplay::fBetaAngleLookAroundCam = *(float*)0x94072C;
|
||||
float &CReplay::fAlphaAngleLookAroundCam = *(float*)0x8F2A0C;
|
||||
uint8 CReplay::Mode;
|
||||
CAddressInReplayBuffer CReplay::Record;
|
||||
CAddressInReplayBuffer CReplay::Playback;
|
||||
uint8 *CReplay::pBuf0;
|
||||
CAutomobile *CReplay::pBuf1;
|
||||
uint8 *CReplay::pBuf2;
|
||||
CPlayerPed *CReplay::pBuf3;
|
||||
uint8 *CReplay::pBuf4;
|
||||
CCutsceneHead *CReplay::pBuf5;
|
||||
uint8 *CReplay::pBuf6;
|
||||
CPtrNode *CReplay::pBuf7;
|
||||
uint8 *CReplay::pBuf8;
|
||||
CEntryInfoNode *CReplay::pBuf9;
|
||||
uint8 *CReplay::pBuf10;
|
||||
CDummyPed *CReplay::pBuf11;
|
||||
uint8 *CReplay::pRadarBlips;
|
||||
uint8 *CReplay::pStoredCam;
|
||||
uint8 *CReplay::pWorld1;
|
||||
CReference *CReplay::pEmptyReferences;
|
||||
CStoredDetailedAnimationState *CReplay::pPedAnims;
|
||||
uint8 *CReplay::pPickups;
|
||||
uint8 *CReplay::pReferences;
|
||||
uint8 CReplay::BufferStatus[NUM_REPLAYBUFFERS];
|
||||
uint8 CReplay::Buffers[NUM_REPLAYBUFFERS][REPLAYBUFFERSIZE];
|
||||
bool CReplay::bPlayingBackFromFile;
|
||||
bool CReplay::bReplayEnabled = true;
|
||||
uint32 CReplay::SlowMotion;
|
||||
uint32 CReplay::FramesActiveLookAroundCam;
|
||||
bool CReplay::bDoLoadSceneWhenDone;
|
||||
CPtrList CReplay::WorldPtrList;
|
||||
CPtrList CReplay::BigBuildingPtrList;
|
||||
CWanted CReplay::PlayerWanted;
|
||||
CPlayerInfo CReplay::PlayerInfo;
|
||||
uint32 CReplay::Time1;
|
||||
uint32 CReplay::Time2;
|
||||
uint32 CReplay::Time3;
|
||||
uint32 CReplay::Time4;
|
||||
uint32 CReplay::Frame;
|
||||
uint8 CReplay::ClockHours;
|
||||
uint8 CReplay::ClockMinutes;
|
||||
uint16 CReplay::OldWeatherType;
|
||||
uint16 CReplay::NewWeatherType;
|
||||
float CReplay::WeatherInterpolationValue;
|
||||
float CReplay::TimeStepNonClipped;
|
||||
float CReplay::TimeStep;
|
||||
float CReplay::TimeScale;
|
||||
float CReplay::CameraFixedX;
|
||||
float CReplay::CameraFixedY;
|
||||
float CReplay::CameraFixedZ;
|
||||
int32 CReplay::OldRadioStation;
|
||||
int8 CReplay::CameraMode;
|
||||
bool CReplay::bAllowLookAroundCam;
|
||||
float CReplay::LoadSceneX;
|
||||
float CReplay::LoadSceneY;
|
||||
float CReplay::LoadSceneZ;
|
||||
float CReplay::CameraFocusX;
|
||||
float CReplay::CameraFocusY;
|
||||
float CReplay::CameraFocusZ;
|
||||
bool CReplay::bPlayerInRCBuggy;
|
||||
float CReplay::fDistanceLookAroundCam;
|
||||
float CReplay::fBetaAngleLookAroundCam;
|
||||
float CReplay::fAlphaAngleLookAroundCam;
|
||||
|
||||
static void(*(&CBArray)[30])(CAnimBlendAssociation*, void*) = *(void(*(*)[30])(CAnimBlendAssociation*, void*))*(uintptr*)0x61052C;
|
||||
static void(*CBArray_RE3[])(CAnimBlendAssociation*, void*) =
|
||||
static void(*CBArray[])(CAnimBlendAssociation*, void*) =
|
||||
{
|
||||
nil, &CPed::PedGetupCB, &CPed::PedStaggerCB, &CPed::PedEvadeCB, &CPed::FinishDieAnimCB,
|
||||
&CPed::FinishedWaitCB, &CPed::FinishLaunchCB, &CPed::FinishHitHeadCB, &CPed::PedAnimGetInCB, &CPed::PedAnimDoorOpenCB,
|
||||
@ -119,16 +118,13 @@ static uint8 FindCBFunctionID(void(*f)(CAnimBlendAssociation*, void*))
|
||||
if (CBArray[i] == f)
|
||||
return i;
|
||||
}
|
||||
for (int i = 0; i < sizeof(CBArray_RE3) / sizeof(*CBArray_RE3); i++) {
|
||||
if (CBArray_RE3[i] == f)
|
||||
return i;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void(*FindCBFunction(uint8 id))(CAnimBlendAssociation*, void*)
|
||||
{
|
||||
return CBArray_RE3[id];
|
||||
return CBArray[id];
|
||||
}
|
||||
|
||||
static void ApplyPanelDamageToCar(uint32 panels, CAutomobile* vehicle, bool flying)
|
||||
|
@ -205,68 +205,68 @@ class CReplay
|
||||
static_assert(sizeof(tVehicleUpdatePacket) == 48, "tVehicleUpdatePacket: error");
|
||||
|
||||
private:
|
||||
static uint8 &Mode;
|
||||
static CAddressInReplayBuffer &Record;
|
||||
static CAddressInReplayBuffer &Playback;
|
||||
static uint8 *&pBuf0;
|
||||
static CAutomobile *&pBuf1;
|
||||
static uint8 *&pBuf2;
|
||||
static CPlayerPed *&pBuf3;
|
||||
static uint8 *&pBuf4;
|
||||
static CCutsceneHead *&pBuf5;
|
||||
static uint8 *&pBuf6;
|
||||
static CPtrNode *&pBuf7;
|
||||
static uint8 *&pBuf8;
|
||||
static CEntryInfoNode *&pBuf9;
|
||||
static uint8 *&pBuf10;
|
||||
static CDummyPed *&pBuf11;
|
||||
static uint8 *&pRadarBlips;
|
||||
static uint8 *&pStoredCam;
|
||||
static uint8 *&pWorld1;
|
||||
static CReference *&pEmptyReferences;
|
||||
static CStoredDetailedAnimationState *&pPedAnims;
|
||||
static uint8 *&pPickups;
|
||||
static uint8 *&pReferences;
|
||||
static uint8 (&BufferStatus)[NUM_REPLAYBUFFERS];
|
||||
static uint8 (&Buffers)[NUM_REPLAYBUFFERS][REPLAYBUFFERSIZE];
|
||||
static bool &bPlayingBackFromFile;
|
||||
static bool &bReplayEnabled;
|
||||
static uint32 &SlowMotion;
|
||||
static uint32 &FramesActiveLookAroundCam;
|
||||
static bool &bDoLoadSceneWhenDone;
|
||||
static CPtrList &WorldPtrList;
|
||||
static CPtrList &BigBuildingPtrList;
|
||||
static CWanted &PlayerWanted;
|
||||
static CPlayerInfo &PlayerInfo;
|
||||
static uint32 &Time1;
|
||||
static uint32 &Time2;
|
||||
static uint32 &Time3;
|
||||
static uint32 &Time4;
|
||||
static uint32 &Frame;
|
||||
static uint8 &ClockHours;
|
||||
static uint8 &ClockMinutes;
|
||||
static uint16 &OldWeatherType;
|
||||
static uint16 &NewWeatherType;
|
||||
static float &WeatherInterpolationValue;
|
||||
static float &TimeStepNonClipped;
|
||||
static float &TimeStep;
|
||||
static float &TimeScale;
|
||||
static float &CameraFixedX;
|
||||
static float &CameraFixedY;
|
||||
static float &CameraFixedZ;
|
||||
static int32 &OldRadioStation;
|
||||
static int8 &CameraMode;
|
||||
static bool &bAllowLookAroundCam;
|
||||
static float &LoadSceneX;
|
||||
static float &LoadSceneY;
|
||||
static float &LoadSceneZ;
|
||||
static float &CameraFocusX;
|
||||
static float &CameraFocusY;
|
||||
static float &CameraFocusZ;
|
||||
static bool &bPlayerInRCBuggy;
|
||||
static float &fDistanceLookAroundCam;
|
||||
static float &fAlphaAngleLookAroundCam;
|
||||
static float &fBetaAngleLookAroundCam;
|
||||
static uint8 Mode;
|
||||
static CAddressInReplayBuffer Record;
|
||||
static CAddressInReplayBuffer Playback;
|
||||
static uint8 *pBuf0;
|
||||
static CAutomobile *pBuf1;
|
||||
static uint8 *pBuf2;
|
||||
static CPlayerPed *pBuf3;
|
||||
static uint8 *pBuf4;
|
||||
static CCutsceneHead *pBuf5;
|
||||
static uint8 *pBuf6;
|
||||
static CPtrNode *pBuf7;
|
||||
static uint8 *pBuf8;
|
||||
static CEntryInfoNode *pBuf9;
|
||||
static uint8 *pBuf10;
|
||||
static CDummyPed *pBuf11;
|
||||
static uint8 *pRadarBlips;
|
||||
static uint8 *pStoredCam;
|
||||
static uint8 *pWorld1;
|
||||
static CReference *pEmptyReferences;
|
||||
static CStoredDetailedAnimationState *pPedAnims;
|
||||
static uint8 *pPickups;
|
||||
static uint8 *pReferences;
|
||||
static uint8 BufferStatus[NUM_REPLAYBUFFERS];
|
||||
static uint8 Buffers[NUM_REPLAYBUFFERS][REPLAYBUFFERSIZE];
|
||||
static bool bPlayingBackFromFile;
|
||||
static bool bReplayEnabled;
|
||||
static uint32 SlowMotion;
|
||||
static uint32 FramesActiveLookAroundCam;
|
||||
static bool bDoLoadSceneWhenDone;
|
||||
static CPtrList WorldPtrList;
|
||||
static CPtrList BigBuildingPtrList;
|
||||
static CWanted PlayerWanted;
|
||||
static CPlayerInfo PlayerInfo;
|
||||
static uint32 Time1;
|
||||
static uint32 Time2;
|
||||
static uint32 Time3;
|
||||
static uint32 Time4;
|
||||
static uint32 Frame;
|
||||
static uint8 ClockHours;
|
||||
static uint8 ClockMinutes;
|
||||
static uint16 OldWeatherType;
|
||||
static uint16 NewWeatherType;
|
||||
static float WeatherInterpolationValue;
|
||||
static float TimeStepNonClipped;
|
||||
static float TimeStep;
|
||||
static float TimeScale;
|
||||
static float CameraFixedX;
|
||||
static float CameraFixedY;
|
||||
static float CameraFixedZ;
|
||||
static int32 OldRadioStation;
|
||||
static int8 CameraMode;
|
||||
static bool bAllowLookAroundCam;
|
||||
static float LoadSceneX;
|
||||
static float LoadSceneY;
|
||||
static float LoadSceneZ;
|
||||
static float CameraFocusX;
|
||||
static float CameraFocusY;
|
||||
static float CameraFocusZ;
|
||||
static bool bPlayerInRCBuggy;
|
||||
static float fDistanceLookAroundCam;
|
||||
static float fAlphaAngleLookAroundCam;
|
||||
static float fBetaAngleLookAroundCam;
|
||||
|
||||
public:
|
||||
static void Init(void);
|
||||
|
@ -4,22 +4,22 @@
|
||||
#include "Zones.h"
|
||||
#include "PathFind.h"
|
||||
|
||||
uint8 &CRestart::OverrideHospitalLevel = *(uint8*)0x95CD4C;
|
||||
uint8 &CRestart::OverridePoliceStationLevel = *(uint8*)0x95CD50;
|
||||
bool &CRestart::bFadeInAfterNextArrest = *(bool*)0x95CD69;
|
||||
bool &CRestart::bFadeInAfterNextDeath = *(bool*)0x95CD9D;
|
||||
uint8 CRestart::OverrideHospitalLevel;
|
||||
uint8 CRestart::OverridePoliceStationLevel;
|
||||
bool CRestart::bFadeInAfterNextArrest;
|
||||
bool CRestart::bFadeInAfterNextDeath;
|
||||
|
||||
bool &CRestart::bOverrideRestart = *(bool*)0x95CD5D;
|
||||
CVector &CRestart::OverridePosition = *(CVector*)0x8E2C00;
|
||||
float &CRestart::OverrideHeading = *(float*)0x8F2A18;
|
||||
bool CRestart::bOverrideRestart;
|
||||
CVector CRestart::OverridePosition;
|
||||
float CRestart::OverrideHeading;
|
||||
|
||||
CVector(&CRestart::HospitalRestartPoints)[NUM_RESTART_POINTS] = *(CVector(*)[NUM_RESTART_POINTS])*(uintptr*)0x87F9B0;
|
||||
float(&CRestart::HospitalRestartHeadings)[NUM_RESTART_POINTS] = *(float(*)[NUM_RESTART_POINTS])*(uintptr*)0x6F1D40;
|
||||
uint16 &CRestart::NumberOfHospitalRestarts = *(uint16*)0x95CC46;
|
||||
CVector CRestart::HospitalRestartPoints[NUM_RESTART_POINTS];
|
||||
float CRestart::HospitalRestartHeadings[NUM_RESTART_POINTS];
|
||||
uint16 CRestart::NumberOfHospitalRestarts;
|
||||
|
||||
CVector(&CRestart::PoliceRestartPoints)[NUM_RESTART_POINTS] = *(CVector(*)[NUM_RESTART_POINTS])*(uintptr*)0x846228;
|
||||
float(&CRestart::PoliceRestartHeadings)[NUM_RESTART_POINTS] = *(float(*)[NUM_RESTART_POINTS])*(uintptr*)0x6F1D20;
|
||||
uint16 &CRestart::NumberOfPoliceRestarts = *(uint16*)0x95CC44;
|
||||
CVector CRestart::PoliceRestartPoints[NUM_RESTART_POINTS];
|
||||
float CRestart::PoliceRestartHeadings[NUM_RESTART_POINTS];
|
||||
uint16 CRestart::NumberOfPoliceRestarts;
|
||||
|
||||
void
|
||||
CRestart::Initialise()
|
||||
|
@ -17,20 +17,20 @@ public:
|
||||
static void LoadAllRestartPoints(uint8 *buf, uint32 size);
|
||||
static void SaveAllRestartPoints(uint8 *buf, uint32 *size);
|
||||
|
||||
static uint8 &OverrideHospitalLevel;
|
||||
static uint8 &OverridePoliceStationLevel;
|
||||
static bool &bFadeInAfterNextArrest;
|
||||
static bool &bFadeInAfterNextDeath;
|
||||
static uint8 OverrideHospitalLevel;
|
||||
static uint8 OverridePoliceStationLevel;
|
||||
static bool bFadeInAfterNextArrest;
|
||||
static bool bFadeInAfterNextDeath;
|
||||
|
||||
static bool &bOverrideRestart;
|
||||
static CVector &OverridePosition;
|
||||
static float &OverrideHeading;
|
||||
static bool bOverrideRestart;
|
||||
static CVector OverridePosition;
|
||||
static float OverrideHeading;
|
||||
|
||||
static CVector(&HospitalRestartPoints)[NUM_RESTART_POINTS];
|
||||
static float (&HospitalRestartHeadings)[NUM_RESTART_POINTS];
|
||||
static uint16 &NumberOfHospitalRestarts;
|
||||
static CVector HospitalRestartPoints[NUM_RESTART_POINTS];
|
||||
static float HospitalRestartHeadings[NUM_RESTART_POINTS];
|
||||
static uint16 NumberOfHospitalRestarts;
|
||||
|
||||
static CVector (&PoliceRestartPoints)[NUM_RESTART_POINTS];
|
||||
static float (&PoliceRestartHeadings)[NUM_RESTART_POINTS];
|
||||
static uint16 &NumberOfPoliceRestarts;
|
||||
static CVector PoliceRestartPoints[NUM_RESTART_POINTS];
|
||||
static float PoliceRestartHeadings[NUM_RESTART_POINTS];
|
||||
static uint16 NumberOfPoliceRestarts;
|
||||
};
|
||||
|
@ -15,9 +15,9 @@
|
||||
#include "CarCtrl.h"
|
||||
#include "General.h"
|
||||
|
||||
int16 &CRoadBlocks::NumRoadBlocks = *(int16*)0x95CC34;
|
||||
int16 (&CRoadBlocks::RoadBlockObjects)[NUMROADBLOCKS] = *(int16(*)[NUMROADBLOCKS]) * (uintptr*)0x72B3A8;
|
||||
bool (&CRoadBlocks::InOrOut)[NUMROADBLOCKS] = *(bool(*)[NUMROADBLOCKS]) * (uintptr*)0x733810;
|
||||
int16 CRoadBlocks::NumRoadBlocks;
|
||||
int16 CRoadBlocks::RoadBlockObjects[NUMROADBLOCKS];
|
||||
bool CRoadBlocks::InOrOut[NUMROADBLOCKS];
|
||||
|
||||
void
|
||||
CRoadBlocks::Init(void)
|
||||
|
@ -6,9 +6,9 @@ class CVehicle;
|
||||
class CRoadBlocks
|
||||
{
|
||||
public:
|
||||
static int16 (&NumRoadBlocks);
|
||||
static int16 (&RoadBlockObjects)[NUMROADBLOCKS];
|
||||
static bool (&InOrOut)[NUMROADBLOCKS];
|
||||
static int16 NumRoadBlocks;
|
||||
static int16 RoadBlockObjects[NUMROADBLOCKS];
|
||||
static bool InOrOut[NUMROADBLOCKS];
|
||||
|
||||
static void Init(void);
|
||||
static void GenerateRoadBlockCopsForCar(CVehicle* pVehicle, int32 roadBlockType, int16 roadBlockNode);
|
||||
|
@ -87,47 +87,47 @@
|
||||
#define FEET_IN_METER 3.33f
|
||||
#endif
|
||||
|
||||
uint8 (&CTheScripts::ScriptSpace)[SIZE_SCRIPT_SPACE] = *(uint8(*)[SIZE_SCRIPT_SPACE])*(uintptr*)0x74B248;
|
||||
CRunningScript(&CTheScripts::ScriptsArray)[MAX_NUM_SCRIPTS] = *(CRunningScript(*)[MAX_NUM_SCRIPTS])*(uintptr*)0x6F5C08;
|
||||
int32(&CTheScripts::BaseBriefIdForContact)[MAX_NUM_CONTACTS] = *(int32(*)[MAX_NUM_CONTACTS])*(uintptr*)0x880200;
|
||||
int32(&CTheScripts::OnAMissionForContactFlag)[MAX_NUM_CONTACTS] = *(int32(*)[MAX_NUM_CONTACTS])*(uintptr*)0x8622F0;
|
||||
intro_text_line (&CTheScripts::IntroTextLines)[MAX_NUM_INTRO_TEXT_LINES] = *(intro_text_line (*)[MAX_NUM_INTRO_TEXT_LINES])*(uintptr*)0x70EA68;
|
||||
intro_script_rectangle (&CTheScripts::IntroRectangles)[MAX_NUM_INTRO_RECTANGLES] = *(intro_script_rectangle (*)[MAX_NUM_INTRO_RECTANGLES])*(uintptr*)0x72D108;
|
||||
CSprite2d (&CTheScripts::ScriptSprites)[MAX_NUM_SCRIPT_SRPITES] = *(CSprite2d(*)[MAX_NUM_SCRIPT_SRPITES])*(uintptr*)0x72B090;
|
||||
script_sphere_struct(&CTheScripts::ScriptSphereArray)[MAX_NUM_SCRIPT_SPHERES] = *(script_sphere_struct(*)[MAX_NUM_SCRIPT_SPHERES])*(uintptr*)0x727D60;
|
||||
tCollectiveData(&CTheScripts::CollectiveArray)[MAX_NUM_COLLECTIVES] = *(tCollectiveData(*)[MAX_NUM_COLLECTIVES])*(uintptr*)0x6FA008;
|
||||
tUsedObject(&CTheScripts::UsedObjectArray)[MAX_NUM_USED_OBJECTS] = *(tUsedObject(*)[MAX_NUM_USED_OBJECTS])*(uintptr*)0x6E69C8;
|
||||
int32(&CTheScripts::MultiScriptArray)[MAX_NUM_MISSION_SCRIPTS] = *(int32(*)[MAX_NUM_MISSION_SCRIPTS])*(uintptr*)0x6F0558;
|
||||
tBuildingSwap(&CTheScripts::BuildingSwapArray)[MAX_NUM_BUILDING_SWAPS] = *(tBuildingSwap(*)[MAX_NUM_BUILDING_SWAPS])*(uintptr*)0x880E30;
|
||||
CEntity*(&CTheScripts::InvisibilitySettingArray)[MAX_NUM_INVISIBILITY_SETTINGS] = *(CEntity*(*)[MAX_NUM_INVISIBILITY_SETTINGS])*(uintptr*)0x8620F0;
|
||||
CStoredLine (&CTheScripts::aStoredLines)[MAX_NUM_STORED_LINES] = *(CStoredLine(*)[MAX_NUM_STORED_LINES])*(uintptr*)0x743018;
|
||||
bool &CTheScripts::DbgFlag = *(bool*)0x95CD87;
|
||||
uint32 &CTheScripts::OnAMissionFlag = *(uint32*)0x8F1B64;
|
||||
int32 &CTheScripts::StoreVehicleIndex = *(int32*)0x8F5F3C;
|
||||
bool &CTheScripts::StoreVehicleWasRandom = *(bool*)0x95CDBC;
|
||||
CRunningScript *&CTheScripts::pIdleScripts = *(CRunningScript**)0x9430D4;
|
||||
CRunningScript *&CTheScripts::pActiveScripts = *(CRunningScript**)0x8E2BF4;
|
||||
uint32 &CTheScripts::NextFreeCollectiveIndex = *(uint32*)0x942F98;
|
||||
int32 &CTheScripts::LastRandomPedId = *(int32*)0x8F251C;
|
||||
uint16 &CTheScripts::NumberOfUsedObjects = *(uint16*)0x95CC72;
|
||||
bool &CTheScripts::bAlreadyRunningAMissionScript = *(bool*)0x95CDB3;
|
||||
bool &CTheScripts::bUsingAMultiScriptFile = *(bool*)0x95CD55;
|
||||
uint16 &CTheScripts::NumberOfMissionScripts = *(uint16*)0x95CC9A;
|
||||
uint32 &CTheScripts::LargestMissionScriptSize = *(uint32*)0x9414C8;
|
||||
uint32 &CTheScripts::MainScriptSize = *(uint32*)0x9405A4;
|
||||
uint8 &CTheScripts::FailCurrentMission = *(uint8*)0x95CD41;
|
||||
uint8 &CTheScripts::CountdownToMakePlayerUnsafe = *(uint8*)0x95CD51;
|
||||
uint8 &CTheScripts::DelayMakingPlayerUnsafeThisTime = *(uint8*)0x95CD88;
|
||||
uint16 &CTheScripts::NumScriptDebugLines = *(uint16*)0x95CC42;
|
||||
uint16 &CTheScripts::NumberOfIntroRectanglesThisFrame = *(uint16*)0x95CC88;
|
||||
uint16 &CTheScripts::NumberOfIntroTextLinesThisFrame = *(uint16*)0x95CC32;
|
||||
uint8 &CTheScripts::UseTextCommands = *(uint8*)0x95CD57;
|
||||
CMissionCleanup (&CTheScripts::MissionCleanup) = *(CMissionCleanup*)0x8F2A24;
|
||||
CUpsideDownCarCheck (&CTheScripts::UpsideDownCars) = *(CUpsideDownCarCheck*)0x6EE450;
|
||||
CStuckCarCheck (&CTheScripts::StuckCars) = *(CStuckCarCheck*)0x87C588;
|
||||
uint16 &CTheScripts::CommandsExecuted = *(uint16*)0x95CCA6;
|
||||
uint16 &CTheScripts::ScriptsUpdated = *(uint16*)0x95CC5E;
|
||||
int32(&ScriptParams)[32] = *(int32(*)[32])*(uintptr*)0x6ED460;
|
||||
uint8 CTheScripts::ScriptSpace[SIZE_SCRIPT_SPACE];
|
||||
CRunningScript CTheScripts::ScriptsArray[MAX_NUM_SCRIPTS];
|
||||
int32 CTheScripts::BaseBriefIdForContact[MAX_NUM_CONTACTS];
|
||||
int32 CTheScripts::OnAMissionForContactFlag[MAX_NUM_CONTACTS];
|
||||
intro_text_line CTheScripts::IntroTextLines[MAX_NUM_INTRO_TEXT_LINES];
|
||||
intro_script_rectangle CTheScripts::IntroRectangles[MAX_NUM_INTRO_RECTANGLES];
|
||||
CSprite2d CTheScripts::ScriptSprites[MAX_NUM_SCRIPT_SRPITES];
|
||||
script_sphere_struct CTheScripts::ScriptSphereArray[MAX_NUM_SCRIPT_SPHERES];
|
||||
tCollectiveData CTheScripts::CollectiveArray[MAX_NUM_COLLECTIVES];
|
||||
tUsedObject CTheScripts::UsedObjectArray[MAX_NUM_USED_OBJECTS];
|
||||
int32 CTheScripts::MultiScriptArray[MAX_NUM_MISSION_SCRIPTS];
|
||||
tBuildingSwap CTheScripts::BuildingSwapArray[MAX_NUM_BUILDING_SWAPS];
|
||||
CEntity* CTheScripts::InvisibilitySettingArray[MAX_NUM_INVISIBILITY_SETTINGS];
|
||||
CStoredLine CTheScripts::aStoredLines[MAX_NUM_STORED_LINES];
|
||||
bool CTheScripts::DbgFlag;
|
||||
uint32 CTheScripts::OnAMissionFlag;
|
||||
int32 CTheScripts::StoreVehicleIndex;
|
||||
bool CTheScripts::StoreVehicleWasRandom;
|
||||
CRunningScript *CTheScripts::pIdleScripts;
|
||||
CRunningScript *CTheScripts::pActiveScripts;
|
||||
uint32 CTheScripts::NextFreeCollectiveIndex;
|
||||
int32 CTheScripts::LastRandomPedId;
|
||||
uint16 CTheScripts::NumberOfUsedObjects;
|
||||
bool CTheScripts::bAlreadyRunningAMissionScript;
|
||||
bool CTheScripts::bUsingAMultiScriptFile;
|
||||
uint16 CTheScripts::NumberOfMissionScripts;
|
||||
uint32 CTheScripts::LargestMissionScriptSize;
|
||||
uint32 CTheScripts::MainScriptSize;
|
||||
uint8 CTheScripts::FailCurrentMission;
|
||||
uint8 CTheScripts::CountdownToMakePlayerUnsafe;
|
||||
uint8 CTheScripts::DelayMakingPlayerUnsafeThisTime;
|
||||
uint16 CTheScripts::NumScriptDebugLines;
|
||||
uint16 CTheScripts::NumberOfIntroRectanglesThisFrame;
|
||||
uint16 CTheScripts::NumberOfIntroTextLinesThisFrame;
|
||||
uint8 CTheScripts::UseTextCommands;
|
||||
CMissionCleanup CTheScripts::MissionCleanup;
|
||||
CUpsideDownCarCheck CTheScripts::UpsideDownCars;
|
||||
CStuckCarCheck CTheScripts::StuckCars;
|
||||
uint16 CTheScripts::CommandsExecuted;
|
||||
uint16 CTheScripts::ScriptsUpdated;
|
||||
int32 ScriptParams[32];
|
||||
|
||||
CMissionCleanup::CMissionCleanup()
|
||||
{
|
||||
|
@ -240,46 +240,46 @@ enum {
|
||||
|
||||
class CTheScripts
|
||||
{
|
||||
static uint8(&ScriptSpace)[SIZE_SCRIPT_SPACE];
|
||||
static CRunningScript(&ScriptsArray)[MAX_NUM_SCRIPTS];
|
||||
static int32(&BaseBriefIdForContact)[MAX_NUM_CONTACTS];
|
||||
static int32(&OnAMissionForContactFlag)[MAX_NUM_CONTACTS];
|
||||
static intro_text_line(&IntroTextLines)[MAX_NUM_INTRO_TEXT_LINES];
|
||||
static intro_script_rectangle(&IntroRectangles)[MAX_NUM_INTRO_RECTANGLES];
|
||||
static CSprite2d(&ScriptSprites)[MAX_NUM_SCRIPT_SRPITES];
|
||||
static script_sphere_struct(&ScriptSphereArray)[MAX_NUM_SCRIPT_SPHERES];
|
||||
static tCollectiveData(&CollectiveArray)[MAX_NUM_COLLECTIVES];
|
||||
static tUsedObject(&UsedObjectArray)[MAX_NUM_USED_OBJECTS];
|
||||
static int32(&MultiScriptArray)[MAX_NUM_MISSION_SCRIPTS];
|
||||
static tBuildingSwap(&BuildingSwapArray)[MAX_NUM_BUILDING_SWAPS];
|
||||
static CEntity*(&InvisibilitySettingArray)[MAX_NUM_INVISIBILITY_SETTINGS];
|
||||
static CStoredLine(&aStoredLines)[MAX_NUM_STORED_LINES];
|
||||
static bool &DbgFlag;
|
||||
static uint32 &OnAMissionFlag;
|
||||
static CMissionCleanup &MissionCleanup;
|
||||
static CStuckCarCheck &StuckCars;
|
||||
static CUpsideDownCarCheck &UpsideDownCars;
|
||||
static int32 &StoreVehicleIndex;
|
||||
static bool &StoreVehicleWasRandom;
|
||||
static CRunningScript *&pIdleScripts;
|
||||
static CRunningScript *&pActiveScripts;
|
||||
static uint32 &NextFreeCollectiveIndex;
|
||||
static int32 &LastRandomPedId;
|
||||
static uint16 &NumberOfUsedObjects;
|
||||
static bool &bAlreadyRunningAMissionScript;
|
||||
static bool &bUsingAMultiScriptFile;
|
||||
static uint16 &NumberOfMissionScripts;
|
||||
static uint32 &LargestMissionScriptSize;
|
||||
static uint32 &MainScriptSize;
|
||||
static uint8 &FailCurrentMission;
|
||||
static uint8 &CountdownToMakePlayerUnsafe;
|
||||
static uint8 &DelayMakingPlayerUnsafeThisTime;
|
||||
static uint16 &NumScriptDebugLines;
|
||||
static uint16 &NumberOfIntroRectanglesThisFrame;
|
||||
static uint16 &NumberOfIntroTextLinesThisFrame;
|
||||
static uint8 &UseTextCommands;
|
||||
static uint16 &CommandsExecuted;
|
||||
static uint16 &ScriptsUpdated;
|
||||
static uint8 ScriptSpace[SIZE_SCRIPT_SPACE];
|
||||
static CRunningScript ScriptsArray[MAX_NUM_SCRIPTS];
|
||||
static int32 BaseBriefIdForContact[MAX_NUM_CONTACTS];
|
||||
static int32 OnAMissionForContactFlag[MAX_NUM_CONTACTS];
|
||||
static intro_text_line IntroTextLines[MAX_NUM_INTRO_TEXT_LINES];
|
||||
static intro_script_rectangle IntroRectangles[MAX_NUM_INTRO_RECTANGLES];
|
||||
static CSprite2d ScriptSprites[MAX_NUM_SCRIPT_SRPITES];
|
||||
static script_sphere_struct ScriptSphereArray[MAX_NUM_SCRIPT_SPHERES];
|
||||
static tCollectiveData CollectiveArray[MAX_NUM_COLLECTIVES];
|
||||
static tUsedObject UsedObjectArray[MAX_NUM_USED_OBJECTS];
|
||||
static int32 MultiScriptArray[MAX_NUM_MISSION_SCRIPTS];
|
||||
static tBuildingSwap BuildingSwapArray[MAX_NUM_BUILDING_SWAPS];
|
||||
static CEntity* InvisibilitySettingArray[MAX_NUM_INVISIBILITY_SETTINGS];
|
||||
static CStoredLine aStoredLines[MAX_NUM_STORED_LINES];
|
||||
static bool DbgFlag;
|
||||
static uint32 OnAMissionFlag;
|
||||
static CMissionCleanup MissionCleanup;
|
||||
static CStuckCarCheck StuckCars;
|
||||
static CUpsideDownCarCheck UpsideDownCars;
|
||||
static int32 StoreVehicleIndex;
|
||||
static bool StoreVehicleWasRandom;
|
||||
static CRunningScript *pIdleScripts;
|
||||
static CRunningScript *pActiveScripts;
|
||||
static uint32 NextFreeCollectiveIndex;
|
||||
static int32 LastRandomPedId;
|
||||
static uint16 NumberOfUsedObjects;
|
||||
static bool bAlreadyRunningAMissionScript;
|
||||
static bool bUsingAMultiScriptFile;
|
||||
static uint16 NumberOfMissionScripts;
|
||||
static uint32 LargestMissionScriptSize;
|
||||
static uint32 MainScriptSize;
|
||||
static uint8 FailCurrentMission;
|
||||
static uint8 CountdownToMakePlayerUnsafe;
|
||||
static uint8 DelayMakingPlayerUnsafeThisTime;
|
||||
static uint16 NumScriptDebugLines;
|
||||
static uint16 NumberOfIntroRectanglesThisFrame;
|
||||
static uint16 NumberOfIntroTextLinesThisFrame;
|
||||
static uint8 UseTextCommands;
|
||||
static uint16 CommandsExecuted;
|
||||
static uint16 ScriptsUpdated;
|
||||
|
||||
public:
|
||||
static void Init();
|
||||
|
Reference in New Issue
Block a user