convert line ends
[canaan.git] / prj / cam / src / ai / aicbrtyp.h
blob97e58adc27b517f2acb3174e59f6be1e1e99715c
1 /*
2 @Copyright Looking Glass Studios, Inc.
3 1996,1997,1998,1999,2000 Unpublished Work.
4 */
6 ///////////////////////////////////////////////////////////////////////////////
7 // $Header: r:/t2repos/thief2/src/ai/aicbrtyp.h,v 1.4 1999/04/16 17:03:28 JON Exp $
8 //
10 #ifndef __AICBRTYP_H
11 #define __AICBRTYP_H
13 #include <objtype.h>
15 #pragma once
16 #pragma pack(4)
18 ////////////////////////////////////////
19 // Events
22 typedef int eAINewRangedCombatEvent;
24 enum eAINewRangedCombatEvent_
26 kAIRC_EventWounded,
29 typedef struct sAIRangedCombatEvent
31 eAINewRangedCombatEvent m_type;
32 void* m_pData;
33 } sAIRangedCombatEvent;
35 ////////////////////////////////////////
36 // Ranges
39 typedef int eAIRangedCombatRange;
40 // Note: must keep these in this order, certain modes rely on it
41 enum eAIRangedCombatRange_
43 kAIRC_RangeVeryShort = 0,
44 kAIRC_RangeShort = 1,
45 kAIRC_RangeIdeal = 2,
46 kAIRC_RangeLong = 3,
47 kAIRC_RangeVeryLong = 4,
48 kAIRC_NumRanges,
51 ///////////////////////////////////////
53 typedef int eAIRangedCombatProjTestFlags;
55 enum eAIRangedCombatProjTestFlags_
57 kAIRC_ProjClear = 0x0000, // LOF is not blocked
58 kAIRC_ProjPartial = 0x0001, // partial LOF
59 kAIRC_ProjBlocked = 0x0002, // LOF is blocked
62 ///////////////////////////////////////
64 class cAINewRangedSubcombat;
66 ///////////////////////////////////////
68 // passed to installed callbacks as data
69 struct sAIRangedCombatPhyscastData
71 ObjID sourceID; // ignore both of these
72 ObjID targetID;
73 eAIRangedCombatProjTestFlags flags; // callback sets these
76 ////////////////////////////////////////
79 #pragma pack()
81 #endif /* !__AICBRTYP_H */