This repository has been archived by the owner. It is now read-only.
Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Showing
with
20 additions
and
2 deletions.
-
+1
−0
src/control/Script9.cpp
-
+14
−0
src/core/World.cpp
-
+1
−0
src/core/World.h
-
+4
−2
src/weapons/ShotInfo.cpp
There are no files selected for viewing
|
|
@@ -376,6 +376,7 @@ int8 CRunningScript::ProcessCommands1500To1599(int32 command) |
|
|
} |
|
|
case COMMAND_CLEAR_OBJECT_LAST_WEAPON_DAMAGE: |
|
|
{ |
|
|
CollectParameters(&m_nIp, 1); |
|
|
CObject* pObject = CPools::GetObjectPool()->GetAt(GET_INTEGER_PARAM(0)); |
|
|
if (!pObject) |
|
|
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; |
|
|
} |
|
|
|
|
|
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 TriggerExplosionSectorList(CPtrList& list, const CVector& position, float fRadius, float fPower, CEntity* pCreator, bool bProcessVehicleBombTimer); |
|
|
static void UseDetonator(CEntity *pEntity); |
|
|
static void CheckObjectsEffectedByFire(float, float, float, float, CEntity*); |
|
|
|
|
|
// NB: following functions are unused (TODO?) |
|
|
static void CastShadow(float, float, float, float); |
|
|
|
|
|
@@ -143,7 +143,9 @@ CShotInfo::Update() |
|
|
} |
|
|
} |
|
|
} |
|
|
if (!((CTimer::GetFrameCounter() + slot) & 3)) |
|
|
CWorld::SetCarsOnFire(shot.m_startPos.x, shot.m_startPos.y, shot.m_startPos.z, 4.0f, shot.m_sourceEntity); |
|
|
if (!((CTimer::GetFrameCounter() + slot) & 3)) { |
|
|
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); |
|
|
} |
|
|
} |
|
|
} |
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session.
You signed out in another tab or window. Reload to refresh your session.