mirror of
https://github.com/1dot13/source.git
synced 2026-07-22 13:40:22 +02:00
- updated breaklight effect to use the radius and duration values from Explosives.xml - updated tracer bullet lighting effect (will probably require more tweaking) - updated AI - when trapped in gas in Insane the AI goes nuts instead of getting scared. AI in all levels is more likely to use autofire over burst/single fire when in gas (panicking). git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@190 3b4a5df2-a311-0410-b5c6-a8a6f20db521
48 lines
1.2 KiB
C
48 lines
1.2 KiB
C
#ifndef __LIGHT_EFFECTS
|
|
#define __LIGHT_EFFECTS
|
|
|
|
|
|
/*
|
|
// Light effect types
|
|
enum
|
|
{
|
|
NO_LIGHT_EFFECT,
|
|
LIGHT_FLARE_MARK_1,
|
|
};
|
|
*/
|
|
|
|
typedef struct
|
|
{
|
|
INT16 sGridNo; // gridno at which the tear gas cloud is centered
|
|
|
|
UINT8 ubDuration; // the number of turns will remain effective
|
|
UINT8 bRadius; // the current radius
|
|
INT8 bAge; // the number of turns light has been around
|
|
BOOLEAN fAllocated;
|
|
INT32 iLight;
|
|
UINT32 uiTimeOfLastUpdate;
|
|
|
|
} LIGHTEFFECT;
|
|
|
|
|
|
|
|
// Decays all light effects...
|
|
void DecayLightEffects( UINT32 uiTime );
|
|
|
|
// Add light to gridno
|
|
// ( Replacement algorithm uses distance away )
|
|
void AddLightEffectToTile( INT8 bType, INT16 sGridNo );
|
|
|
|
void RemoveLightEffectFromTile( INT16 sGridNo );
|
|
|
|
INT32 NewLightEffect( INT16 sGridNo, UINT8 ubDuration, UINT8 ubStartRadius );
|
|
|
|
|
|
BOOLEAN SaveLightEffectsToSaveGameFile( HWFILE hFile );
|
|
BOOLEAN LoadLightEffectsFromLoadGameFile( HWFILE hFile );
|
|
|
|
BOOLEAN SaveLightEffectsToMapTempFile( INT16 sMapX, INT16 sMapY, INT8 bMapZ );
|
|
BOOLEAN LoadLightEffectsFromMapTempFile( INT16 sMapX, INT16 sMapY, INT8 bMapZ );
|
|
void ResetLightEffects();
|
|
|
|
#endif |