1
0
Fork 0
mirror of https://git.rip/DMCA_FUCKER/re3.git synced 2024-12-23 19:10:01 +00:00

new script commands - mostly stubs

This commit is contained in:
Nikolay Korolev 2020-05-22 02:42:04 +03:00
parent 7e5342e9f0
commit 864847a6fe
12 changed files with 1156 additions and 103 deletions

File diff suppressed because it is too large Load diff

View file

@ -488,6 +488,8 @@ private:
void PlayerInAngledAreaCheckCommand(int32, uint32*); void PlayerInAngledAreaCheckCommand(int32, uint32*);
void CharInAreaCheckCommand(int32, uint32*); void CharInAreaCheckCommand(int32, uint32*);
void CarInAreaCheckCommand(int32, uint32*); void CarInAreaCheckCommand(int32, uint32*);
void LocateObjectCommand(int32, uint32*);
void ObjectInAreaCheckCommand(int32, uint32*);
float LimitAngleOnCircle(float angle) { return angle < 0.0f ? angle + 360.0f : angle; } float LimitAngleOnCircle(float angle) { return angle < 0.0f ? angle + 360.0f : angle; }

View file

@ -178,7 +178,7 @@ CColStore::LoadCollision(const CVector2D &pos)
}else{ }else{
for (int j = 0; j < MAX_CLEANUP; j++) { for (int j = 0; j < MAX_CLEANUP; j++) {
CPhysical* pEntity = CTheScripts::MissionCleanup.DoesThisEntityWaitForCollision(j); CPhysical* pEntity = CTheScripts::MissionCleanup.DoesThisEntityWaitForCollision(j);
if (pEntity /* !pEntity->bDontLoadCollision && !pEntity->bIsFrozen */) { if (pEntity && !pEntity->bDontLoadCollision && !pEntity->bIsFrozen) {
if (GetBoundingBox(i).IsPointInside(pEntity->GetPosition(), -80.0f)) if (GetBoundingBox(i).IsPointInside(pEntity->GetPosition(), -80.0f))
wantThisOne = true; wantThisOne = true;
} }

View file

@ -149,12 +149,13 @@ CPlayerInfo::Clear(void)
} }
void void
CPlayerInfo::BlowUpRCBuggy(void) CPlayerInfo::BlowUpRCBuggy(bool actually)
{ {
if (!m_pRemoteVehicle || m_pRemoteVehicle->bRemoveFromWorld) if (!m_pRemoteVehicle || m_pRemoteVehicle->bRemoveFromWorld)
return; return;
CRemote::TakeRemoteControlledCarFromPlayer(); CRemote::TakeRemoteControlledCarFromPlayer();
if (actually)
m_pRemoteVehicle->BlowUpCar(FindPlayerPed()); m_pRemoteVehicle->BlowUpCar(FindPlayerPed());
} }

View file

@ -50,6 +50,7 @@ public:
int32 m_nExplosionsSinceLastReward; int32 m_nExplosionsSinceLastReward;
int32 field_268; int32 field_268;
int32 field_272; int32 field_272;
uint32 m_nHavocLevel;
bool m_bInfiniteSprint; bool m_bInfiniteSprint;
bool m_bFastReload; bool m_bFastReload;
bool m_bFireproof; bool m_bFireproof;
@ -73,7 +74,7 @@ public:
bool IsPlayerInRemoteMode(void); bool IsPlayerInRemoteMode(void);
void PlayerFailedCriticalMission(void); void PlayerFailedCriticalMission(void);
void Clear(void); void Clear(void);
void BlowUpRCBuggy(void); void BlowUpRCBuggy(bool);
void CancelPlayerEnteringCars(CVehicle*); void CancelPlayerEnteringCars(CVehicle*);
bool IsRestartingAfterDeath(void); bool IsRestartingAfterDeath(void);
bool IsRestartingAfterArrest(void); bool IsRestartingAfterArrest(void);

View file

@ -64,6 +64,9 @@ CPhysical::CPhysical(void)
m_phy_flagA20 = false; m_phy_flagA20 = false;
m_nZoneLevel = LEVEL_NONE; m_nZoneLevel = LEVEL_NONE;
bIsFrozen = false;
bDontLoadCollision = false;
} }
CPhysical::~CPhysical(void) CPhysical::~CPhysical(void)

View file

@ -60,6 +60,9 @@ public:
uint8 bHitByTrain : 1; uint8 bHitByTrain : 1;
uint8 bSkipLineCol : 1; uint8 bSkipLineCol : 1;
uint8 bIsFrozen : 1;
uint8 bDontLoadCollision : 1;
uint8 m_nSurfaceTouched; uint8 m_nSurfaceTouched;
int8 m_nZoneLevel; int8 m_nZoneLevel;

View file

@ -603,14 +603,25 @@ CPed::CPed(uint32 pedType) : m_pedIK(this)
bCarPassenger = false; bCarPassenger = false;
bMiamiViceCop = false; bMiamiViceCop = false;
bMoneyHasBeenGivenByScript = false; bMoneyHasBeenGivenByScript = false;
bHasBeenPhotographed = false;
bIsDrowning = false; bIsDrowning = false;
bCanDrownInWater = true; bDrownsInWater = true;
#ifdef VC_PED_PORTS #ifdef VC_PED_PORTS
bHeadStuckInCollision = false; bHeadStuckInCollision = false;
#endif #endif
bIsPlayerFriend = true; bIsPlayerFriend = true;
bDeadPedInFrontOfCar = false; bDeadPedInFrontOfCar = false;
bStayInCarOnJack = false;
bDontFight = false;
bDoomAim = true;
bCanBeShotInVehicle = true;
bIgnoreThreatsBehindObjects = false;
bNeverEverTargetThisPed = false;
bBoughtIceCream = false;
if ((CGeneral::GetRandomNumber() & 3) == 0) if ((CGeneral::GetRandomNumber() & 3) == 0)
bHasACamera = true; bHasACamera = true;
@ -4116,7 +4127,7 @@ CPed::InflictDamage(CEntity *damagedBy, eWeaponType method, float damage, ePedPi
if (DyingOrDead()) if (DyingOrDead())
return false; return false;
if (method == WEAPONTYPE_DROWNING && !bCanDrownInWater) if (method == WEAPONTYPE_DROWNING && !bDrownsInWater)
return false; return false;
if (!bUsesCollision && (!bInVehicle || m_nPedState != PED_DRIVING) && method != WEAPONTYPE_DROWNING) if (!bUsesCollision && (!bInVehicle || m_nPedState != PED_DRIVING) && method != WEAPONTYPE_DROWNING)

View file

@ -225,10 +225,10 @@ enum eObjective : uint32 {
OBJECTIVE_USE_STOP_ATTRACTOR, OBJECTIVE_USE_STOP_ATTRACTOR,
OBJECTIVE_USE_PIZZA_ATTRACTOR, OBJECTIVE_USE_PIZZA_ATTRACTOR,
OBJECTIVE_USE_SHELTER_ATTRACTOR, OBJECTIVE_USE_SHELTER_ATTRACTOR,
OBJ_46, OBJECTIVE_AIM_GUN_AT_PED,
OBJ_47, OBJ_47,
OBJECTIVE_WAIT_FOR_RAIN_TO_END, OBJECTIVE_WAIT_FOR_RAIN_TO_END,
OBJ_49, OBJECTIVE_SPRINT_TO_COORD,
OBJ_50, OBJ_50,
OBJ_51, OBJ_51,
OBJECTIVE_WAIT_FOR_BUS, OBJECTIVE_WAIT_FOR_BUS,
@ -442,10 +442,10 @@ public:
//uint32 b155_10 //uint32 b155_10
uint32 bMiamiViceCop : 1; uint32 bMiamiViceCop : 1;
uint32 bMoneyHasBeenGivenByScript : 1; // uint32 bMoneyHasBeenGivenByScript : 1; //
//uint32 b155_80 uint32 bHasBeenPhotographed : 1; //
uint32 bIsDrowning : 1; uint32 bIsDrowning : 1;
uint32 bCanDrownInWater : 1; // Originally bDrownsInWater uint32 bDrownsInWater : 1;
//uint32 b156_4 //uint32 b156_4
//uint32 b156_8 //uint32 b156_8
uint32 bIsPlayerFriend : 1; uint32 bIsPlayerFriend : 1;
@ -453,23 +453,23 @@ public:
uint32 bHeadStuckInCollision : 1; uint32 bHeadStuckInCollision : 1;
#endif #endif
uint32 bDeadPedInFrontOfCar : 1; uint32 bDeadPedInFrontOfCar : 1;
//uint32 b156_80 uint32 bStayInCarOnJack : 1;
//uint32 b157_1 uint32 bDontFight : 1;
//uint32 b157_2 uint32 bDoomAim : 1;
//uint32 b157_4 uint32 bCanBeShotInVehicle : 1;
//uint32 b157_8 //uint32 b157_8
//uint32 b157_10 //uint32 b157_10
//uint32 b157_20 //uint32 b157_20
//uint32 b157_40 //uint32 b157_40
//uint32 b157_80 uint32 bIgnoreThreatsBehindObjects : 1;
//uint32 b158_1 uint32 bNeverEverTargetThisPed : 1;
//uint32 b158_2 //uint32 b158_2
//uint32 b158_4 //uint32 b158_4
//uint32 b158_8 //uint32 b158_8
//uint32 b158_10 //uint32 b158_10
//uint32 b158_20 uint32 bBoughtIceCream : 1;
//uint32 b158_40 //uint32 b158_40
//uint32 b158_80 //uint32 b158_80

View file

@ -57,7 +57,8 @@ void CCarGenerator::DoInternalProcessing()
mi = -m_nModelIndex; mi = -m_nModelIndex;
if (m_nModelIndex == -1 || !CStreaming::HasModelLoaded(mi)) { if (m_nModelIndex == -1 || !CStreaming::HasModelLoaded(mi)) {
CZoneInfo pZone; CZoneInfo pZone;
CTheZones::GetZoneInfoForTimeOfDay(&FindPlayerCoors(), &pZone); CVector pos = FindPlayerCoors();
CTheZones::GetZoneInfoForTimeOfDay(&pos, &pZone);
mi = CCarCtrl::ChooseCarModel(CCarCtrl::ChooseCarRating(&pZone)); mi = CCarCtrl::ChooseCarModel(CCarCtrl::ChooseCarRating(&pZone));
if (mi < 0) if (mi < 0)
return; return;

View file

@ -30,6 +30,7 @@ bool CVehicle::bAltDodoCheat;
#endif #endif
bool CVehicle::m_bDisableMouseSteering = true; bool CVehicle::m_bDisableMouseSteering = true;
bool CVehicle::bDisableRemoteDetonation; bool CVehicle::bDisableRemoteDetonation;
bool CVehicle::bDisableRemoteDetonationOnContact;
void *CVehicle::operator new(size_t sz) { return CPools::GetVehiclePool()->New(); } void *CVehicle::operator new(size_t sz) { return CPools::GetVehiclePool()->New(); }
void *CVehicle::operator new(size_t sz, int handle) { return CPools::GetVehiclePool()->New(handle); } void *CVehicle::operator new(size_t sz, int handle) { return CPools::GetVehiclePool()->New(handle); }
@ -104,7 +105,9 @@ CVehicle::CVehicle(uint8 CreatedBy)
m_nCarHornPattern = 0; m_nCarHornPattern = 0;
m_nCarHornDelay = 0; m_nCarHornDelay = 0;
bPartOfConvoy = false; bPartOfConvoy = false;
bHeliMinimumTilt = false;
bIsDrowning = false; bIsDrowning = false;
bTyresDontBurst = false;
bCreatedAsPoliceVehicle = false; bCreatedAsPoliceVehicle = false;
bParking = false; bParking = false;
m_nAlarmState = 0; m_nAlarmState = 0;

View file

@ -183,11 +183,11 @@ public:
uint8 bIsCarParkVehicle : 1; // Car has been created using the special CAR_PARK script command uint8 bIsCarParkVehicle : 1; // Car has been created using the special CAR_PARK script command
uint8 bHasAlreadyBeenRecorded : 1; // Used for replays uint8 bHasAlreadyBeenRecorded : 1; // Used for replays
uint8 bPartOfConvoy : 1; uint8 bPartOfConvoy : 1;
//uint8 bHeliMinimumTilt : 1; // This heli should have almost no tilt really uint8 bHeliMinimumTilt : 1; // This heli should have almost no tilt really
//uint8 bAudioChangingGear : 1; // sounds like vehicle is changing gear //uint8 bAudioChangingGear : 1; // sounds like vehicle is changing gear
uint8 bIsDrowning : 1; // is vehicle occupants taking damage in water (i.e. vehicle is dead in water) uint8 bIsDrowning : 1; // is vehicle occupants taking damage in water (i.e. vehicle is dead in water)
//uint8 bTyresDontBurst : 1; // If this is set the tyres are invincible uint8 bTyresDontBurst : 1; // If this is set the tyres are invincible
uint8 bCreatedAsPoliceVehicle : 1;// True if this guy was created as a police vehicle (enforcer, policecar, miamivice car etc) uint8 bCreatedAsPoliceVehicle : 1;// True if this guy was created as a police vehicle (enforcer, policecar, miamivice car etc)
//uint8 bRestingOnPhysical : 1; // Dont go static cause car is sitting on a physical object that might get removed //uint8 bRestingOnPhysical : 1; // Dont go static cause car is sitting on a physical object that might get removed
uint8 bParking : 1; uint8 bParking : 1;
@ -318,6 +318,7 @@ public:
#endif #endif
static bool m_bDisableMouseSteering; static bool m_bDisableMouseSteering;
static bool bDisableRemoteDetonation; static bool bDisableRemoteDetonation;
static bool bDisableRemoteDetonationOnContact;
}; };
void DestroyVehicleAndDriverAndPassengers(CVehicle* pVehicle); void DestroyVehicleAndDriverAndPassengers(CVehicle* pVehicle);