summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorblingu <36486731+blingu@users.noreply.github.com>2020-03-24 17:24:47 +0100
committerGitHub <noreply@github.com>2020-03-24 17:24:47 +0100
commit43fb59e356651950912ac1c980448a771c53d935 (patch)
treec2dbb15d1364b0190d67fc101bc07b73833e4c59
parentchange default script to story (diff)
downloadre3-43fb59e356651950912ac1c980448a771c53d935.tar
re3-43fb59e356651950912ac1c980448a771c53d935.tar.gz
re3-43fb59e356651950912ac1c980448a771c53d935.tar.bz2
re3-43fb59e356651950912ac1c980448a771c53d935.tar.lz
re3-43fb59e356651950912ac1c980448a771c53d935.tar.xz
re3-43fb59e356651950912ac1c980448a771c53d935.tar.zst
re3-43fb59e356651950912ac1c980448a771c53d935.zip
-rw-r--r--src/core/Fire.h37
1 files changed, 21 insertions, 16 deletions
diff --git a/src/core/Fire.h b/src/core/Fire.h
index 624bf608..9afcf1b0 100644
--- a/src/core/Fire.h
+++ b/src/core/Fire.h
@@ -7,18 +7,22 @@ class CFire
public:
bool m_bIsOngoing;
bool m_bIsScriptFire;
- bool m_bPropogationFlag;
+ bool m_bPropagationFlag;
bool m_bAudioSet;
CVector m_vecPos;
CEntity *m_pEntity;
CEntity *m_pSource;
- int m_nExtinguishTime;
- int m_nStartTime;
- int field_20;
- int field_24;
+ uint32 m_nExtinguishTime;
+ uint32 m_nStartTime;
+ int32 field_20;
+ uint32 field_24;
uint32 m_nFiremenPuttingOut;
- float field_2C;
+ float m_fStrength;
+ CFire();
+ ~CFire();
+ void ProcessFire(void);
+ void ReportThisFire(void);
void Extinguish(void);
};
@@ -27,20 +31,21 @@ class CFireManager
enum {
MAX_FIREMEN_ATTENDING = 2,
};
- uint32 m_nTotalFires;
public:
+ uint32 m_nTotalFires;
CFire m_aFires[NUM_FIRES];
- void StartFire(CEntity *entityOnFire, CEntity *culprit, float, uint32);
- void StartFire(CVector, float, uint8);
+ void StartFire(CVector pos, float size, bool propagation);
+ void StartFire(CEntity *entityOnFire, CEntity *fleeFrom, float strength, bool propagation);
void Update(void);
- CFire *FindFurthestFire_NeverMindFireMen(CVector coors, float, float);
- CFire *FindNearestFire(CVector, float*);
+ CFire *FindFurthestFire_NeverMindFireMen(CVector coords, float minRange, float maxRange);
+ CFire *FindNearestFire(CVector vecPos, float *pDistance);
+ CFire *GetNextFreeFire(void);
uint32 GetTotalActiveFires() const;
- void ExtinguishPoint(CVector, float);
- int32 StartScriptFire(const CVector& pos, CEntity* culprit, float, uint8);
- bool IsScriptFireExtinguish(int16);
- void RemoveScriptFire(int16);
+ void ExtinguishPoint(CVector point, float range);
+ int32 StartScriptFire(const CVector &pos, CEntity *target, float strength, bool propagation);
+ bool IsScriptFireExtinguish(int16 index);
void RemoveAllScriptFires(void);
- void SetScriptFireAudio(int16, bool);
+ void RemoveScriptFire(int16 index);
+ void SetScriptFireAudio(int16 index, bool state);
};
extern CFireManager &gFireManager;