mirror of
https://github.com/1dot13/source.git
synced 2026-08-26 14:30:26 +02:00
Original Source for 1.13 Mod High Resolution version from 12/06/05
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@21 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
@@ -0,0 +1,89 @@
|
||||
#ifndef __BULLETS_H
|
||||
#define __BULLETS_H
|
||||
|
||||
#include "types.h"
|
||||
#include "Soldier Control.h"
|
||||
#include "los.h"
|
||||
#include "tile animation.h"
|
||||
|
||||
|
||||
#define BULLET_FLAG_CREATURE_SPIT 0x0001
|
||||
#define BULLET_FLAG_KNIFE 0x0002
|
||||
#define BULLET_FLAG_MISSILE 0x0004
|
||||
#define BULLET_FLAG_SMALL_MISSILE 0x0008
|
||||
#define BULLET_STOPPED 0x0010
|
||||
#define BULLET_FLAG_TANK_CANNON 0x0020
|
||||
#define BULLET_FLAG_BUCKSHOT 0x0040
|
||||
#define BULLET_FLAG_FLAME 0x0080
|
||||
|
||||
typedef struct
|
||||
{
|
||||
INT32 iBullet;
|
||||
UINT8 ubFirerID;
|
||||
UINT8 ubTargetID;
|
||||
INT8 bStartCubesAboveLevelZ;
|
||||
INT8 bEndCubesAboveLevelZ;
|
||||
UINT32 sGridNo;
|
||||
INT16 sUnused;
|
||||
UINT16 usLastStructureHit;
|
||||
FIXEDPT qCurrX;
|
||||
FIXEDPT qCurrY;
|
||||
FIXEDPT qCurrZ;
|
||||
FIXEDPT qIncrX;
|
||||
FIXEDPT qIncrY;
|
||||
FIXEDPT qIncrZ;
|
||||
DOUBLE ddHorizAngle;
|
||||
INT32 iCurrTileX;
|
||||
INT32 iCurrTileY;
|
||||
INT8 bLOSIndexX;
|
||||
INT8 bLOSIndexY;
|
||||
BOOLEAN fCheckForRoof;
|
||||
INT32 iCurrCubesZ;
|
||||
INT32 iLoop;
|
||||
BOOLEAN fAllocated;
|
||||
BOOLEAN fToDelete;
|
||||
BOOLEAN fLocated;
|
||||
BOOLEAN fReal;
|
||||
BOOLEAN fAimed;
|
||||
UINT32 uiLastUpdate;
|
||||
UINT8 ubTilesPerUpdate;
|
||||
UINT16 usClockTicksPerUpdate;
|
||||
SOLDIERTYPE *pFirer;
|
||||
UINT32 sTargetGridNo;
|
||||
INT16 sHitBy;
|
||||
INT32 iImpact;
|
||||
INT32 iImpactReduction;
|
||||
INT32 iRange;
|
||||
INT32 iDistanceLimit;
|
||||
UINT16 usFlags;
|
||||
ANITILE *pAniTile;
|
||||
ANITILE *pShadowAniTile;
|
||||
UINT8 ubItemStatus;
|
||||
UINT16 fromItem;
|
||||
} BULLET;
|
||||
|
||||
extern UINT32 guiNumBullets;
|
||||
|
||||
INT32 CreateBullet( UINT8 ubFirer, BOOLEAN fFake, UINT16 usFlags,UINT16 fromItem );
|
||||
void RemoveBullet( INT32 iBullet );
|
||||
void StopBullet( INT32 iBullet );
|
||||
void UpdateBullets( );
|
||||
BULLET *GetBulletPtr( INT32 iBullet );
|
||||
|
||||
void DeleteAllBullets( );
|
||||
|
||||
void LocateBullet( INT32 iBulletIndex );
|
||||
|
||||
void HandleBulletSpecialFlags( INT32 iBulletIndex );
|
||||
|
||||
void AddMissileTrail( BULLET *pBullet, FIXEDPT qCurrX, FIXEDPT qCurrY, FIXEDPT qCurrZ );
|
||||
|
||||
//Save the bullet table to the saved game file
|
||||
BOOLEAN SaveBulletStructureToSaveGameFile( HWFILE hFile );
|
||||
|
||||
|
||||
//Load the bullet table from the saved game file
|
||||
BOOLEAN LoadBulletStructureFromSavedGameFile( HWFILE hFile );
|
||||
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user