Integrated Reload_NPC into more animation events and changed weapon_crossbow to be able to use a bodygroup instead of a skin for the empty bolt

This commit is contained in:
Blixibon
2021-11-04 09:30:28 -05:00
parent 0ce4251ba3
commit c3176b34d0
6 changed files with 27 additions and 13 deletions

View File

@@ -2374,9 +2374,10 @@ bool CBaseCombatWeapon::Reload( void )
//-----------------------------------------------------------------------------
// Purpose:
//-----------------------------------------------------------------------------
void CBaseCombatWeapon::Reload_NPC( void )
void CBaseCombatWeapon::Reload_NPC( bool bPlaySound )
{
WeaponSound( RELOAD_NPC );
if (bPlaySound)
WeaponSound( RELOAD_NPC );
if (UsesClipsForAmmo1())
{

View File

@@ -321,7 +321,7 @@ public:
bool ReloadsSingly( void ) const;
#ifdef MAPBASE
// Originally created for the crossbow, can be used to add special NPC reloading behavior
virtual void Reload_NPC( void );
virtual void Reload_NPC( bool bPlaySound = true );
#endif
virtual bool AutoFiresFullClip( void ) { return false; }

View File

@@ -398,9 +398,10 @@ bool CWeaponCustomScripted::Reload( void )
return BaseClass::Reload();
}
void CWeaponCustomScripted::Reload_NPC( void )
void CWeaponCustomScripted::Reload_NPC( bool bPlaySound )
{
SIMPLE_VOID_OVERRIDE( Reload_NPC, NULL );
ScriptVariant_t pArgs[] = { bPlaySound };
SIMPLE_VOID_OVERRIDE( Reload_NPC, pArgs );
BaseClass::Reload_NPC();
}

View File

@@ -77,7 +77,7 @@ public:
void FinishReload( void );
void AbortReload( void );
bool Reload( void );
void Reload_NPC( void );
void Reload_NPC( bool bPlaySound = true );
// Weapon firing
void PrimaryAttack( void ); // do "+ATTACK"