mirror of
https://github.com/YGGverse/hlsdk-portable.git
synced 2025-01-23 13:14:51 +00:00
Merge branch 'opfor' into opforfixed
This commit is contained in:
commit
d13dec76f2
@ -1364,7 +1364,7 @@ int CHFGrunt :: ISoundMask ( void)
|
|||||||
//=========================================================
|
//=========================================================
|
||||||
void CHFGrunt :: CheckAmmo ( void )
|
void CHFGrunt :: CheckAmmo ( void )
|
||||||
{
|
{
|
||||||
if ( m_cAmmoLoaded <= 0 )
|
if ( pev->weapons != 0 && m_cAmmoLoaded <= 0 )
|
||||||
{
|
{
|
||||||
SetConditions(bits_COND_NO_AMMO_LOADED);
|
SetConditions(bits_COND_NO_AMMO_LOADED);
|
||||||
}
|
}
|
||||||
@ -1533,7 +1533,7 @@ BOOL CHFGrunt :: CheckMeleeAttack1 ( float flDot, float flDist )
|
|||||||
//=========================================================
|
//=========================================================
|
||||||
BOOL CHFGrunt :: CheckRangeAttack1 ( float flDot, float flDist )
|
BOOL CHFGrunt :: CheckRangeAttack1 ( float flDot, float flDist )
|
||||||
{
|
{
|
||||||
if ( !HasConditions( bits_COND_ENEMY_OCCLUDED ) && flDist <= 2048 && flDot >= 0.5 && NoFriendlyFire() && ( GetBodygroup( 3 ) != 3 ) )
|
if ( !HasConditions( bits_COND_ENEMY_OCCLUDED ) && flDist <= 2048 && flDot >= 0.5 && NoFriendlyFire() && GetBodygroup( FG_GUN_GROUP ) != FG_GUN_NONE )
|
||||||
{
|
{
|
||||||
TraceResult tr;
|
TraceResult tr;
|
||||||
|
|
||||||
@ -1546,7 +1546,7 @@ BOOL CHFGrunt :: CheckRangeAttack1 ( float flDot, float flDist )
|
|||||||
Vector vecSrc = GetGunPosition();
|
Vector vecSrc = GetGunPosition();
|
||||||
|
|
||||||
// verify that a bullet fired from the gun will hit the enemy before the world.
|
// verify that a bullet fired from the gun will hit the enemy before the world.
|
||||||
UTIL_TraceLine( vecSrc, m_hEnemy->BodyTarget(vecSrc), ignore_monsters, ignore_glass, ENT(pev), &tr);
|
UTIL_TraceLine( vecSrc, m_hEnemy->BodyTarget(vecSrc), ignore_monsters, ENT(pev), &tr);
|
||||||
|
|
||||||
if ( tr.flFraction == 1.0 )
|
if ( tr.flFraction == 1.0 )
|
||||||
{
|
{
|
||||||
@ -1994,33 +1994,38 @@ void CHFGrunt :: Spawn()
|
|||||||
{
|
{
|
||||||
m_iHead = RANDOM_LONG(FG_HEAD_SAW, FG_HEAD_SAW_BLACK);
|
m_iHead = RANDOM_LONG(FG_HEAD_SAW, FG_HEAD_SAW_BLACK);
|
||||||
}
|
}
|
||||||
|
else if (pev->weapons == 0)
|
||||||
|
{
|
||||||
|
m_iHead = FG_HEAD_MP;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
m_iHead = FG_HEAD_MASK;
|
m_iHead = FG_HEAD_MASK;
|
||||||
}
|
}
|
||||||
else if ( m_iHead >= FG_HEAD_COUNT )
|
else if ( m_iHead >= FG_HEAD_COUNT )
|
||||||
m_iHead = FG_HEAD_MASK;
|
m_iHead = FG_HEAD_MASK;
|
||||||
|
|
||||||
if ( pev->weapons <= 0 )
|
|
||||||
{
|
|
||||||
pev->weapons = FGRUNT_9MMAR;
|
|
||||||
}
|
|
||||||
if (FBitSet( pev->weapons, FGRUNT_SHOTGUN ))
|
|
||||||
{
|
|
||||||
SetBodygroup( FG_GUN_GROUP, FG_GUN_SHOTGUN );
|
|
||||||
SetBodygroup( FG_TORSO_GROUP, FG_TORSO_SHOTGUN );
|
|
||||||
m_cClipSize = 8;
|
|
||||||
}
|
|
||||||
if (FBitSet( pev->weapons, FGRUNT_9MMAR ))
|
if (FBitSet( pev->weapons, FGRUNT_9MMAR ))
|
||||||
{
|
{
|
||||||
SetBodygroup( FG_GUN_GROUP, FG_GUN_MP5 );
|
SetBodygroup( FG_GUN_GROUP, FG_GUN_MP5 );
|
||||||
m_cClipSize = FGRUNT_CLIP_SIZE;
|
m_cClipSize = FGRUNT_CLIP_SIZE;
|
||||||
}
|
}
|
||||||
if (FBitSet( pev->weapons, FGRUNT_M249 ))
|
else if (FBitSet( pev->weapons, FGRUNT_SHOTGUN ))
|
||||||
|
{
|
||||||
|
SetBodygroup( FG_GUN_GROUP, FG_GUN_SHOTGUN );
|
||||||
|
SetBodygroup( FG_TORSO_GROUP, FG_TORSO_SHOTGUN );
|
||||||
|
m_cClipSize = 8;
|
||||||
|
}
|
||||||
|
else if (FBitSet( pev->weapons, FGRUNT_M249 ))
|
||||||
{
|
{
|
||||||
SetBodygroup( FG_GUN_GROUP, FG_GUN_SAW );
|
SetBodygroup( FG_GUN_GROUP, FG_GUN_SAW );
|
||||||
SetBodygroup( FG_TORSO_GROUP, FG_TORSO_M249 );
|
SetBodygroup( FG_TORSO_GROUP, FG_TORSO_M249 );
|
||||||
m_cClipSize = FGRUNT_CLIP_SIZE;
|
m_cClipSize = FGRUNT_CLIP_SIZE;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
SetBodygroup( FG_GUN_GROUP, FG_GUN_NONE );
|
||||||
|
m_cClipSize = 0;
|
||||||
|
}
|
||||||
|
|
||||||
SetBodygroup( FG_HEAD_GROUP, m_iHead );
|
SetBodygroup( FG_HEAD_GROUP, m_iHead );
|
||||||
|
|
||||||
@ -2375,7 +2380,7 @@ Schedule_t* CHFGrunt :: GetScheduleOfType ( int Type )
|
|||||||
break;
|
break;
|
||||||
case SCHED_HGRUNT_ALLY_ELOF_FAIL:
|
case SCHED_HGRUNT_ALLY_ELOF_FAIL:
|
||||||
{
|
{
|
||||||
return GetScheduleOfType( SCHED_RANGE_ATTACK1 );
|
return GetScheduleOfType( SCHED_TAKE_COVER_FROM_ENEMY );
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SCHED_HGRUNT_ALLY_ESTABLISH_LINE_OF_FIRE:
|
case SCHED_HGRUNT_ALLY_ESTABLISH_LINE_OF_FIRE:
|
||||||
|
@ -38,7 +38,7 @@ public:
|
|||||||
void EXPORT DeployThink(void);
|
void EXPORT DeployThink(void);
|
||||||
void Flight(void);
|
void Flight(void);
|
||||||
void EXPORT HitTouch(CBaseEntity *pOther);
|
void EXPORT HitTouch(CBaseEntity *pOther);
|
||||||
virtual void EXPORT FindAllThink(void);
|
void EXPORT FindAllThink(void);
|
||||||
void EXPORT HoverThink(void);
|
void EXPORT HoverThink(void);
|
||||||
virtual CBaseMonster *MakeGrunt(Vector vecSrc);
|
virtual CBaseMonster *MakeGrunt(Vector vecSrc);
|
||||||
void EXPORT CrashTouch(CBaseEntity *pOther);
|
void EXPORT CrashTouch(CBaseEntity *pOther);
|
||||||
@ -86,4 +86,4 @@ public:
|
|||||||
int m_iDoRightSmokePuff;
|
int m_iDoRightSmokePuff;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // OSPREY_H
|
#endif // OSPREY_H
|
||||||
|
Loading…
x
Reference in New Issue
Block a user