You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
86 lines
2.3 KiB
86 lines
2.3 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
// $NoKeywords: $ |
|
// |
|
//=============================================================================// |
|
#include "cbase.h" |
|
#include "ai_default.h" |
|
#include "ai_task.h" |
|
#include "ai_schedule.h" |
|
#include "ai_node.h" |
|
#include "ai_hull.h" |
|
#include "ai_hint.h" |
|
#include "ai_memory.h" |
|
#include "ai_route.h" |
|
#include "ai_motor.h" |
|
#include "soundent.h" |
|
#include "game.h" |
|
#include "npcevent.h" |
|
#include "entitylist.h" |
|
#include "activitylist.h" |
|
#include "animation.h" |
|
#include "basecombatweapon.h" |
|
#include "IEffects.h" |
|
#include "vstdlib/random.h" |
|
#include "engine/IEngineSound.h" |
|
#include "ammodef.h" |
|
#include "hl1_ai_basenpc.h" |
|
|
|
class CNPC_Bloater : public CHL1BaseNPC |
|
{ |
|
DECLARE_CLASS( CNPC_Bloater, CHL1BaseNPC ); |
|
public: |
|
|
|
void Spawn( void ); |
|
void Precache( void ); |
|
/*void SetYawSpeed( void ); |
|
int Classify ( void ); |
|
void HandleAnimEvent( MonsterEvent_t *pEvent ); |
|
|
|
void PainSound( const CTakeDamageInfo &info ); |
|
void AlertSound( void ); |
|
void IdleSound( void ); |
|
void AttackSnd( void ); |
|
|
|
// No range attacks |
|
BOOL CheckRangeAttack1 ( float flDot, float flDist ) { return FALSE; } |
|
BOOL CheckRangeAttack2 ( float flDot, float flDist ) { return FALSE; } |
|
int TakeDamage( entvars_t *pevInflictor, entvars_t *pevAttacker, float flDamage, int bitsDamageType );*/ |
|
}; |
|
|
|
LINK_ENTITY_TO_CLASS( monster_bloater, CNPC_Bloater ); |
|
|
|
//========================================================= |
|
// Spawn |
|
//========================================================= |
|
void CNPC_Bloater::Spawn() |
|
{ |
|
Precache( ); |
|
|
|
SetModel( "models/floater.mdl"); |
|
// UTIL_SetSize( this, VEC_HUMAN_HULL_MIN, VEC_HUMAN_HULL_MAX ); |
|
|
|
SetSolid( SOLID_BBOX ); |
|
AddSolidFlags( FSOLID_NOT_STANDABLE ); |
|
SetMoveType( MOVETYPE_FLY ); |
|
m_spawnflags |= FL_FLY; |
|
m_bloodColor = BLOOD_COLOR_GREEN; |
|
m_iHealth = 40; |
|
// pev->view_ofs = VEC_VIEW;// position of the eyes relative to monster's origin. |
|
m_flFieldOfView = 0.5;// indicates the width of this monster's forward view cone ( as a dotproduct result ) |
|
m_NPCState = NPC_STATE_NONE; |
|
|
|
SetRenderColor( 255, 255, 255, 255 ); |
|
|
|
NPCInit(); |
|
} |
|
|
|
//========================================================= |
|
// Precache - precaches all resources this monster needs |
|
//========================================================= |
|
void CNPC_Bloater::Precache() |
|
{ |
|
PrecacheModel("models/floater.mdl"); |
|
}
|
|
|