aboutsummaryrefslogtreecommitdiff
path: root/mp/src/game/server/ai_squadslot.cpp
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 /mp/src/game/server/ai_squadslot.cpp
downloadsource-sdk-2013-39ed87570bdb2f86969d4be821c94b722dc71179.tar.xz
source-sdk-2013-39ed87570bdb2f86969d4be821c94b722dc71179.zip
First version of the SOurce SDK 2013
Diffstat (limited to 'mp/src/game/server/ai_squadslot.cpp')
-rw-r--r--mp/src/game/server/ai_squadslot.cpp88
1 files changed, 88 insertions, 0 deletions
diff --git a/mp/src/game/server/ai_squadslot.cpp b/mp/src/game/server/ai_squadslot.cpp
new file mode 100644
index 00000000..4944e266
--- /dev/null
+++ b/mp/src/game/server/ai_squadslot.cpp
@@ -0,0 +1,88 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose: Base combat character with no AI
+//
+// $Workfile: $
+// $Date: $
+//
+//-----------------------------------------------------------------------------
+// $Log: $
+//
+// $NoKeywords: $
+//=============================================================================//
+
+#include "cbase.h"
+#include "ai_squadslot.h"
+#include "ai_basenpc.h"
+#include "stringregistry.h"
+
+// memdbgon must be the last include file in a .cpp file!!!
+#include "tier0/memdbgon.h"
+
+//=============================================================================
+// Init static variables
+//=============================================================================
+CAI_GlobalNamespace CAI_BaseNPC::gm_SquadSlotNamespace;
+
+//-----------------------------------------------------------------------------
+// Purpose: Given and SquadSlot name, return the SquadSlot ID
+//-----------------------------------------------------------------------------
+int CAI_BaseNPC::GetSquadSlotID(const char* slotName)
+{
+ return gm_SquadSlotNamespace.SymbolToId(slotName);
+}
+
+
+//-----------------------------------------------------------------------------
+// Purpose: Given and SquadSlot name, return the SquadSlot ID
+//-----------------------------------------------------------------------------
+const char* CAI_BaseNPC::GetSquadSlotDebugName( int iSquadSlot )
+{
+ switch( iSquadSlot )
+ {
+ case SQUAD_SLOT_NONE: return "None";
+ break;
+ case SQUAD_SLOT_ATTACK1: return "SQUAD_SLOT_ATTACK1";
+ break;
+ case SQUAD_SLOT_ATTACK2: return "SQUAD_SLOT_ATTACK2";
+ break;
+ case SQUAD_SLOT_INVESTIGATE_SOUND: return "SQUAD_SLOT_INVESTIGATE_SOUND";
+ break;
+ case SQUAD_SLOT_EXCLUSIVE_HANDSIGN: return "SQUAD_SLOT_EXCLUSIVE_HANDSIGN";
+ break;
+ case SQUAD_SLOT_EXCLUSIVE_RELOAD: return "SQUAD_SLOT_EXCLUSIVE_RELOAD";
+ break;
+ case SQUAD_SLOT_PICKUP_WEAPON1: return "SQUAD_SLOT_PICKUP_WEAPON1";
+ break;
+ case SQUAD_SLOT_PICKUP_WEAPON2: return "SQUAD_SLOT_PICKUP_WEAPON2";
+ break;
+ case SQUAD_SLOT_SPECIAL_ATTACK: return "SQUAD_SLOT_SPECIAL_ATTACK";
+ break;
+
+ default:
+ // If we default, that means that our derived class (which has already been called)
+ // didn't provide text for a squad slot that isn't part of the base ai squad slots.
+ // OR someone added a squad slot to base AI and didn't update here.
+ return "Failed to specify!";
+ break;
+ }
+}
+
+
+//-----------------------------------------------------------------------------
+// Purpose:
+// Input :
+// Output :
+//-----------------------------------------------------------------------------
+void CAI_BaseNPC::InitDefaultSquadSlotSR(void)
+{
+ gm_SquadSlotNamespace.AddSymbol( "SQUAD_SLOT_ATTACK1", AI_RemapToGlobal(SQUAD_SLOT_ATTACK1) );
+ gm_SquadSlotNamespace.AddSymbol( "SQUAD_SLOT_ATTACK2", AI_RemapToGlobal(SQUAD_SLOT_ATTACK2) );
+ gm_SquadSlotNamespace.AddSymbol( "SQUAD_SLOT_INVESTIGATE_SOUND", AI_RemapToGlobal(SQUAD_SLOT_INVESTIGATE_SOUND) );
+ gm_SquadSlotNamespace.AddSymbol( "SQUAD_SLOT_EXCLUSIVE_HANDSIGN", AI_RemapToGlobal(SQUAD_SLOT_EXCLUSIVE_HANDSIGN) );
+ gm_SquadSlotNamespace.AddSymbol( "SQUAD_SLOT_EXCLUSIVE_RELOAD", AI_RemapToGlobal(SQUAD_SLOT_EXCLUSIVE_RELOAD) );
+ gm_SquadSlotNamespace.AddSymbol( "SQUAD_SLOT_PICKUP_WEAPON1", AI_RemapToGlobal(SQUAD_SLOT_PICKUP_WEAPON1) );
+ gm_SquadSlotNamespace.AddSymbol( "SQUAD_SLOT_PICKUP_WEAPON2", AI_RemapToGlobal(SQUAD_SLOT_PICKUP_WEAPON2) );
+ gm_SquadSlotNamespace.AddSymbol( "SQUAD_SLOT_SPECIAL_ATTACK", AI_RemapToGlobal(SQUAD_SLOT_SPECIAL_ATTACK) );
+}
+