Skip to content
This repository has been archived by the owner. It is now read-only.
Permalink
Browse files
friggin the riggin
  • Loading branch information
Nick007J committed Jul 25, 2021
1 parent dc72900 commit b69222e017560efb8abcff899a328e2879d271c7
Showing with 20 additions and 2 deletions.
  1. +1 −0 src/control/Script9.cpp
  2. +14 −0 src/core/World.cpp
  3. +1 −0 src/core/World.h
  4. +4 −2 src/weapons/ShotInfo.cpp
@@ -376,6 +376,7 @@ int8 CRunningScript::ProcessCommands1500To1599(int32 command)
} }
case COMMAND_CLEAR_OBJECT_LAST_WEAPON_DAMAGE: case COMMAND_CLEAR_OBJECT_LAST_WEAPON_DAMAGE:
{ {
CollectParameters(&m_nIp, 1);
CObject* pObject = CPools::GetObjectPool()->GetAt(GET_INTEGER_PARAM(0)); CObject* pObject = CPools::GetObjectPool()->GetAt(GET_INTEGER_PARAM(0));
if (!pObject) if (!pObject)
printf("CLEAR_OBJECT_LAST_WEAPON_DAMAGE - pObject doesn\'t exist"); printf("CLEAR_OBJECT_LAST_WEAPON_DAMAGE - pObject doesn\'t exist");
@@ -2294,3 +2294,17 @@ CWorld::IsWanderPathClear(CVector const& point1, CVector const& point2, float di
} }
return true; return true;
} }

void
CWorld::CheckObjectsEffectedByFire(float x, float y, float z, float radius, CEntity* reason)
{
int32 i = CPools::GetObjectPool()->GetSize();
while (i--) {
CObject* pObject = CPools::GetObjectPool()->GetSlot(i);
if (pObject) {
if (Abs(pObject->GetPosition().z - z) < 5.0f && Abs(pObject->GetPosition().x - x) < radius &&
Abs(pObject->GetPosition().y - y) < radius)
pObject->m_nLastWeaponToDamage = WEAPONTYPE_FLAMETHROWER;
}
}
}
@@ -155,6 +155,7 @@ class CWorld
static void TriggerExplosion(const CVector& position, float fRadius, float fPower, CEntity* pCreator, bool bProcessVehicleBombTimer); static void TriggerExplosion(const CVector& position, float fRadius, float fPower, CEntity* pCreator, bool bProcessVehicleBombTimer);
static void TriggerExplosionSectorList(CPtrList& list, const CVector& position, float fRadius, float fPower, CEntity* pCreator, bool bProcessVehicleBombTimer); static void TriggerExplosionSectorList(CPtrList& list, const CVector& position, float fRadius, float fPower, CEntity* pCreator, bool bProcessVehicleBombTimer);
static void UseDetonator(CEntity *pEntity); static void UseDetonator(CEntity *pEntity);
static void CheckObjectsEffectedByFire(float, float, float, float, CEntity*);


// NB: following functions are unused (TODO?) // NB: following functions are unused (TODO?)
static void CastShadow(float, float, float, float); static void CastShadow(float, float, float, float);
@@ -143,7 +143,9 @@ CShotInfo::Update()
} }
} }
} }
if (!((CTimer::GetFrameCounter() + slot) & 3)) if (!((CTimer::GetFrameCounter() + slot) & 3)) {
CWorld::SetCarsOnFire(shot.m_startPos.x, shot.m_startPos.y, shot.m_startPos.z, 4.0f, shot.m_sourceEntity); CWorld::SetCarsOnFire(shot.m_startPos.x, shot.m_startPos.y, shot.m_startPos.z, 2.0f, shot.m_sourceEntity);
CWorld::CheckObjectsEffectedByFire(shot.m_startPos.x, shot.m_startPos.y, shot.m_startPos.z, 2.0f, shot.m_sourceEntity);
}
} }
} }

0 comments on commit b69222e

Please sign in to comment.