diff options
| author | Joe Ludwig <[email protected]> | 2013-06-26 15:22:04 -0700 |
|---|---|---|
| committer | Joe Ludwig <[email protected]> | 2013-06-26 15:22:04 -0700 |
| commit | 39ed87570bdb2f86969d4be821c94b722dc71179 (patch) | |
| tree | abc53757f75f40c80278e87650ea92808274aa59 /mp/src/game/server/tempmonster.cpp | |
| download | source-sdk-2013-39ed87570bdb2f86969d4be821c94b722dc71179.tar.xz source-sdk-2013-39ed87570bdb2f86969d4be821c94b722dc71179.zip | |
First version of the SOurce SDK 2013
Diffstat (limited to 'mp/src/game/server/tempmonster.cpp')
| -rw-r--r-- | mp/src/game/server/tempmonster.cpp | 105 |
1 files changed, 105 insertions, 0 deletions
diff --git a/mp/src/game/server/tempmonster.cpp b/mp/src/game/server/tempmonster.cpp new file mode 100644 index 00000000..99676c3a --- /dev/null +++ b/mp/src/game/server/tempmonster.cpp @@ -0,0 +1,105 @@ +//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//
+//=============================================================================//
+//=========================================================
+// NPC template
+//=========================================================
+#include "cbase.h"
+
+// memdbgon must be the last include file in a .cpp file!!!
+#include "tier0/memdbgon.h"
+
+#if 0
+
+//=========================================================
+// NPC's Anim Events Go Here
+//=========================================================
+
+class CMyNPC : public CAI_BaseNPC
+{
+public:
+ DECLARE_CLASS( CMyNPC, CAI_BaseNPC );
+
+ void Spawn( void );
+ void Precache( void );
+ void MaxYawSpeed( void );
+ int Classify ( void );
+ void HandleAnimEvent( animevent_t *pEvent );
+};
+LINK_ENTITY_TO_CLASS( my_NPC, CMyNPC );
+
+//=========================================================
+// Classify - indicates this NPC's place in the
+// relationship table.
+//=========================================================
+int CMyNPC::Classify ( void )
+{
+ return CLASS_MY_NPC;
+}
+
+//=========================================================
+// SetYawSpeed - allows each sequence to have a different
+// turn rate associated with it.
+//=========================================================
+float CMyNPC::MaxYawSpeed ( void )
+{
+ switch ( m_Activity )
+ {
+ case ACT_IDLE:
+ default:
+ return 90;
+ }
+}
+
+//=========================================================
+// HandleAnimEvent - catches the NPC-specific messages
+// that occur when tagged animation frames are played.
+//=========================================================
+void CMyNPC::HandleAnimEvent( animevent_t *pEvent )
+{
+ switch( pEvent->event )
+ {
+ case 0:
+ default:
+ CAI_BaseNPC::HandleAnimEvent( pEvent );
+ break;
+ }
+}
+
+//=========================================================
+// Spawn
+//=========================================================
+void CMyNPC::Spawn()
+{
+ Precache( );
+
+ engine.SetModel(edict(), "models/mymodel.mdl");
+ UTIL_SetSize( this, Vector( -12, -12, 0 ), Vector( 12, 12, 24 ) );
+
+ SetSolid( SOLID_SLIDEBOX );
+ SetMoveType( MOVETYPE_STEP );
+ m_bloodColor = BLOOD_COLOR_GREEN;
+ m_iHealth = 8;
+ m_vecViewOffset = Vector ( 0, 0, 0 );// position of the eyes relative to NPC's origin.
+ m_flFieldOfView = 0.5;// indicates the width of this NPC's forward view cone ( as a dotproduct result )
+ m_NPCState = NPCSTATE_NONE;
+
+ NPCInit();
+}
+
+//=========================================================
+// Precache - precaches all resources this NPC needs
+//=========================================================
+void CMyNPC::Precache()
+{
+ engine.PrecacheModel("models/mymodel.mdl");
+}
+
+//=========================================================
+// AI Schedules Specific to this NPC
+//=========================================================
+#endif
|