aboutsummaryrefslogtreecommitdiff
path: root/sp/src/game/server/ai_hull.h
diff options
context:
space:
mode:
authorJoe Ludwig <[email protected]>2013-06-26 15:22:04 -0700
committerJoe Ludwig <[email protected]>2013-06-26 15:22:04 -0700
commit39ed87570bdb2f86969d4be821c94b722dc71179 (patch)
treeabc53757f75f40c80278e87650ea92808274aa59 /sp/src/game/server/ai_hull.h
downloadsource-sdk-2013-39ed87570bdb2f86969d4be821c94b722dc71179.tar.xz
source-sdk-2013-39ed87570bdb2f86969d4be821c94b722dc71179.zip
First version of the SOurce SDK 2013
Diffstat (limited to 'sp/src/game/server/ai_hull.h')
-rw-r--r--sp/src/game/server/ai_hull.h75
1 files changed, 75 insertions, 0 deletions
diff --git a/sp/src/game/server/ai_hull.h b/sp/src/game/server/ai_hull.h
new file mode 100644
index 00000000..1172942a
--- /dev/null
+++ b/sp/src/game/server/ai_hull.h
@@ -0,0 +1,75 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+//=============================================================================//
+
+#ifndef AI_HULL_H
+#define AI_HULL_H
+#pragma once
+
+class Vector;
+//=========================================================
+// Link Properties. These hulls must correspond to the hulls
+// in AI_Hull.cpp!
+//=========================================================
+enum Hull_t
+{
+ HULL_HUMAN, // Combine, Stalker, Zombie...
+ HULL_SMALL_CENTERED, // Scanner
+ HULL_WIDE_HUMAN, // Vortigaunt
+ HULL_TINY, // Headcrab
+ HULL_WIDE_SHORT, // Bullsquid
+ HULL_MEDIUM, // Cremator
+ HULL_TINY_CENTERED, // Manhack
+ HULL_LARGE, // Antlion Guard
+ HULL_LARGE_CENTERED, // Mortar Synth
+ HULL_MEDIUM_TALL, // Hunter
+//--------------------------------------------
+ NUM_HULLS,
+ HULL_NONE // No Hull (appears after num hulls as we don't want to count it)
+};
+
+enum Hull_Bits_t
+{
+ bits_HUMAN_HULL = 0x00000001,
+ bits_SMALL_CENTERED_HULL = 0x00000002,
+ bits_WIDE_HUMAN_HULL = 0x00000004,
+ bits_TINY_HULL = 0x00000008,
+ bits_WIDE_SHORT_HULL = 0x00000010,
+ bits_MEDIUM_HULL = 0x00000020,
+ bits_TINY_CENTERED_HULL = 0x00000040,
+ bits_LARGE_HULL = 0x00000080,
+ bits_LARGE_CENTERED_HULL = 0x00000100,
+ bits_MEDIUM_TALL_HULL = 0x00000200,
+ bits_HULL_BITS_MASK = 0x000002ff,
+};
+
+inline int HullToBit( Hull_t hull )
+{
+ return ( 1 << hull );
+}
+
+
+
+//=============================================================================
+// >> CAI_Hull
+//=============================================================================
+namespace NAI_Hull
+{
+ const Vector &Mins(int id);
+ const Vector &Maxs(int id);
+
+ const Vector &SmallMins(int id);
+ const Vector &SmallMaxs(int id);
+
+ float Length(int id);
+ float Width(int id);
+ float Height(int id);
+
+ int Bits(int id);
+
+ const char* Name(int id);
+
+ Hull_t LookupId(const char *szName);
+};
+
+#endif // AI_HULL_H