mirror of
https://github.com/YGGverse/hlsdk-portable.git
synced 2025-02-03 10:35:42 +00:00
Make monster_big_smoke
This commit is contained in:
parent
43b7ea9531
commit
164c2bb142
1063
dlls/bigsmoke.cpp
1063
dlls/bigsmoke.cpp
File diff suppressed because it is too large
Load Diff
@ -24,13 +24,14 @@
|
|||||||
#include "cbase.h"
|
#include "cbase.h"
|
||||||
#include "monsters.h"
|
#include "monsters.h"
|
||||||
#include "schedule.h"
|
#include "schedule.h"
|
||||||
|
#include "weapons.h"
|
||||||
|
|
||||||
//=========================================================
|
//=========================================================
|
||||||
// Monster's Anim Events Go Here
|
// Monster's Anim Events Go Here
|
||||||
//=========================================================
|
//=========================================================
|
||||||
|
#define ZOMBIE_AE_ATTACK_BOTH 0x03
|
||||||
#define ZOMBIE_AE_ATTACK_RIGHT 0x01
|
#define ZOMBIE_AE_ATTACK_RIGHT 0x01
|
||||||
#define ZOMBIE_AE_ATTACK_LEFT 0x02
|
#define ZOMBIE_AE_ATTACK_LEFT 0x02
|
||||||
#define ZOMBIE_AE_ATTACK_BOTH 0x03
|
|
||||||
|
|
||||||
#define ZOMBIE_FLINCH_DELAY 2 // at most one flinch every n secs
|
#define ZOMBIE_FLINCH_DELAY 2 // at most one flinch every n secs
|
||||||
|
|
||||||
@ -158,57 +159,32 @@ void Czombozo::IdleSound( void )
|
|||||||
//=========================================================
|
//=========================================================
|
||||||
void Czombozo::HandleAnimEvent( MonsterEvent_t *pEvent )
|
void Czombozo::HandleAnimEvent( MonsterEvent_t *pEvent )
|
||||||
{
|
{
|
||||||
|
|
||||||
switch( pEvent->event )
|
switch( pEvent->event )
|
||||||
{
|
{
|
||||||
case ZOMBIE_AE_ATTACK_RIGHT:
|
case ZOMBIE_AE_ATTACK_RIGHT:
|
||||||
{
|
{
|
||||||
// do stuff for this event.
|
UTIL_MakeVectors( pev->angles );
|
||||||
//ALERT( at_console, "Slash right!\n" );
|
CGrenade::ShootTimed( pev, pev->origin + gpGlobals->v_forward * 17 - gpGlobals->v_right * 27 + gpGlobals->v_up * 6, g_vecZero, 3 );
|
||||||
CBaseEntity *pHurt = CheckTraceHullAttack( 70, gSkillData.zombieDmgOneSlash, DMG_SLASH );
|
//n a group, only try to throw grenade if ordered.
|
||||||
if( pHurt )
|
|
||||||
{
|
|
||||||
if( pHurt->pev->flags & ( FL_MONSTER | FL_CLIENT ) )
|
|
||||||
{
|
|
||||||
pHurt->pev->punchangle.z = -18;
|
|
||||||
pHurt->pev->punchangle.x = 5;
|
|
||||||
pHurt->pev->velocity = pHurt->pev->velocity - gpGlobals->v_right * 100;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case ZOMBIE_AE_ATTACK_LEFT:
|
case ZOMBIE_AE_ATTACK_LEFT:
|
||||||
{
|
{
|
||||||
// do stuff for this event.
|
UTIL_MakeVectors( pev->angles );
|
||||||
//ALERT( at_console, "Slash left!\n" );
|
CGrenade::ShootTimed( pev, pev->origin + gpGlobals->v_forward * 17 - gpGlobals->v_right * 27 + gpGlobals->v_up * 6, g_vecZero, 3 );
|
||||||
CBaseEntity *pHurt = CheckTraceHullAttack( 70, gSkillData.zombieDmgOneSlash, DMG_SLASH );
|
|
||||||
if( pHurt )
|
|
||||||
{
|
|
||||||
if( pHurt->pev->flags & ( FL_MONSTER | FL_CLIENT ) )
|
|
||||||
{
|
|
||||||
pHurt->pev->punchangle.z = 18;
|
|
||||||
pHurt->pev->punchangle.x = 5;
|
|
||||||
pHurt->pev->velocity = pHurt->pev->velocity + gpGlobals->v_right * 100;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case ZOMBIE_AE_ATTACK_BOTH:
|
case ZOMBIE_AE_ATTACK_BOTH:
|
||||||
{
|
{
|
||||||
// do stuff for this event.
|
//ALERT( at_console, "Slash right!\n" );
|
||||||
CBaseEntity *pHurt = CheckTraceHullAttack( 70, gSkillData.zombieDmgBothSlash, DMG_SLASH );
|
UTIL_MakeVectors( pev->angles );
|
||||||
if( pHurt )
|
CGrenade::ShootTimed( pev, pev->origin + gpGlobals->v_forward * 17 - gpGlobals->v_right * 27 + gpGlobals->v_up * 6, g_vecZero, 3 );
|
||||||
{
|
|
||||||
if( pHurt->pev->flags & ( FL_MONSTER | FL_CLIENT ) )
|
|
||||||
{
|
|
||||||
pHurt->pev->punchangle.x = 5;
|
|
||||||
pHurt->pev->velocity = pHurt->pev->velocity + gpGlobals->v_forward * -100;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
CBaseMonster::HandleAnimEvent( pEvent );
|
CBaseMonster::HandleAnimEvent( pEvent );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user