mirror of
https://github.com/YGGverse/hlsdk-portable.git
synced 2025-01-23 21:24:27 +00:00
Merge branch 'opfor' into opforfixed
This commit is contained in:
commit
906fb522ff
@ -37,7 +37,7 @@ def build(bld):
|
|||||||
defines = ['CLIENT_DLL']
|
defines = ['CLIENT_DLL']
|
||||||
includes = ['.',
|
includes = ['.',
|
||||||
'../dlls',
|
'../dlls',
|
||||||
'../dlls/gearbox'
|
'../dlls/gearbox',
|
||||||
'../common',
|
'../common',
|
||||||
'../engine',
|
'../engine',
|
||||||
'../pm_shared',
|
'../pm_shared',
|
||||||
|
@ -1849,6 +1849,7 @@ void CHFGrunt :: HandleAnimEvent( MonsterEvent_t *pEvent )
|
|||||||
{
|
{
|
||||||
case HGRUNT_ALLY_AE_DROP_GUN:
|
case HGRUNT_ALLY_AE_DROP_GUN:
|
||||||
{
|
{
|
||||||
|
if (GetBodygroup(FG_GUN_GROUP) != FG_GUN_NONE)
|
||||||
DropMyItems(FALSE);
|
DropMyItems(FALSE);
|
||||||
SetUse( NULL );
|
SetUse( NULL );
|
||||||
}
|
}
|
||||||
@ -1949,7 +1950,7 @@ void CHFGrunt :: HandleAnimEvent( MonsterEvent_t *pEvent )
|
|||||||
SENTENCEG_PlayRndSz(ENT(pev), SentenceByNumber(FGRUNT_SENT_ALERT), FGRUNT_SENTENCE_VOLUME, ATTN_NORM, 0, m_voicePitch);
|
SENTENCEG_PlayRndSz(ENT(pev), SentenceByNumber(FGRUNT_SENT_ALERT), FGRUNT_SENTENCE_VOLUME, ATTN_NORM, 0, m_voicePitch);
|
||||||
JustSpoke();
|
JustSpoke();
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
default:
|
default:
|
||||||
@ -3318,7 +3319,7 @@ void CTorch::HandleAnimEvent(MonsterEvent_t *pEvent)
|
|||||||
KillGas ();
|
KillGas ();
|
||||||
break;
|
break;
|
||||||
case HGRUNT_ALLY_AE_DROP_GUN:
|
case HGRUNT_ALLY_AE_DROP_GUN:
|
||||||
if ( FBitSet( pev->weapons, TORCH_EAGLE ) )
|
if ( FBitSet( pev->weapons, TORCH_EAGLE ) && pev->body != TORCH_GUN_NONE )
|
||||||
{
|
{
|
||||||
DropMyItems(FALSE);
|
DropMyItems(FALSE);
|
||||||
}
|
}
|
||||||
@ -3849,7 +3850,7 @@ void CMedic::HandleAnimEvent(MonsterEvent_t *pEvent)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case HGRUNT_ALLY_AE_DROP_GUN:
|
case HGRUNT_ALLY_AE_DROP_GUN:
|
||||||
if ( FBitSet( pev->weapons, MEDIC_EAGLE | MEDIC_HANDGUN ) )
|
if ( FBitSet( pev->weapons, MEDIC_EAGLE | MEDIC_HANDGUN ) && GetBodygroup(MEDIC_GUN_GROUP) != MEDIC_GUN_NONE )
|
||||||
{
|
{
|
||||||
DropMyItems(FALSE);
|
DropMyItems(FALSE);
|
||||||
}
|
}
|
||||||
|
@ -155,6 +155,8 @@ void CMassn::HandleAnimEvent(MonsterEvent_t *pEvent)
|
|||||||
Vector vecGunPos;
|
Vector vecGunPos;
|
||||||
Vector vecGunAngles;
|
Vector vecGunAngles;
|
||||||
|
|
||||||
|
if(GetBodygroup(GUN_GROUP) != GUN_NONE)
|
||||||
|
{
|
||||||
GetAttachment(0, vecGunPos, vecGunAngles);
|
GetAttachment(0, vecGunPos, vecGunAngles);
|
||||||
|
|
||||||
// switch to body group with no gun.
|
// switch to body group with no gun.
|
||||||
@ -174,7 +176,7 @@ void CMassn::HandleAnimEvent(MonsterEvent_t *pEvent)
|
|||||||
{
|
{
|
||||||
DropItem("ammo_ARgrenades", BodyTarget(pev->origin), vecGunAngles);
|
DropItem("ammo_ARgrenades", BodyTarget(pev->origin), vecGunAngles);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -390,7 +390,7 @@ void CStrooper::HandleAnimEvent(MonsterEvent_t *pEvent)
|
|||||||
SENTENCEG_PlayRndSz(ENT(pev), "ST_ALERT", STROOPER_SENTENCE_VOLUME, STROOPER_ATTN, 0, m_voicePitch);
|
SENTENCEG_PlayRndSz(ENT(pev), "ST_ALERT", STROOPER_SENTENCE_VOLUME, STROOPER_ATTN, 0, m_voicePitch);
|
||||||
JustSpoke();
|
JustSpoke();
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
@ -1010,6 +1010,7 @@ void CVoltigore::StartTask(Task_t *pTask)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case TASK_VOLTIGORE_GET_PATH_TO_ENEMY_CORPSE:
|
case TASK_VOLTIGORE_GET_PATH_TO_ENEMY_CORPSE:
|
||||||
|
{
|
||||||
UTIL_MakeVectors( pev->angles );
|
UTIL_MakeVectors( pev->angles );
|
||||||
if( BuildRoute( m_vecEnemyLKP - gpGlobals->v_forward * 50, bits_MF_TO_LOCATION, NULL ) )
|
if( BuildRoute( m_vecEnemyLKP - gpGlobals->v_forward * 50, bits_MF_TO_LOCATION, NULL ) )
|
||||||
{
|
{
|
||||||
@ -1020,6 +1021,8 @@ void CVoltigore::StartTask(Task_t *pTask)
|
|||||||
ALERT( at_aiconsole, "VoltigoreGetPathToEnemyCorpse failed!!\n" );
|
ALERT( at_aiconsole, "VoltigoreGetPathToEnemyCorpse failed!!\n" );
|
||||||
TaskFail();
|
TaskFail();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
CBaseMonster::StartTask(pTask);
|
CBaseMonster::StartTask(pTask);
|
||||||
break;
|
break;
|
||||||
|
@ -212,7 +212,7 @@ void CHGrunt::GibMonster( void )
|
|||||||
Vector vecGunPos;
|
Vector vecGunPos;
|
||||||
Vector vecGunAngles;
|
Vector vecGunAngles;
|
||||||
|
|
||||||
if( GetBodygroup( 2 ) != 2 )
|
if( GetBodygroup( GUN_GROUP ) != GUN_NONE )
|
||||||
{
|
{
|
||||||
// throw a gun if the grunt has one
|
// throw a gun if the grunt has one
|
||||||
GetAttachment( 0, vecGunPos, vecGunAngles );
|
GetAttachment( 0, vecGunPos, vecGunAngles );
|
||||||
@ -543,7 +543,7 @@ void CHGrunt::TraceAttack( entvars_t *pevAttacker, float flDamage, Vector vecDir
|
|||||||
if( ptr->iHitgroup == 11 )
|
if( ptr->iHitgroup == 11 )
|
||||||
{
|
{
|
||||||
// make sure we're wearing one
|
// make sure we're wearing one
|
||||||
if( GetBodygroup( 1 ) == HEAD_GRUNT && ( bitsDamageType & (DMG_BULLET | DMG_SLASH | DMG_BLAST | DMG_CLUB ) ) )
|
if( GetBodygroup( HEAD_GROUP ) == HEAD_GRUNT && ( bitsDamageType & (DMG_BULLET | DMG_SLASH | DMG_BLAST | DMG_CLUB ) ) )
|
||||||
{
|
{
|
||||||
// absorb damage
|
// absorb damage
|
||||||
flDamage -= 20;
|
flDamage -= 20;
|
||||||
@ -787,6 +787,8 @@ void CHGrunt::HandleAnimEvent( MonsterEvent_t *pEvent )
|
|||||||
switch( pEvent->event )
|
switch( pEvent->event )
|
||||||
{
|
{
|
||||||
case HGRUNT_AE_DROP_GUN:
|
case HGRUNT_AE_DROP_GUN:
|
||||||
|
{
|
||||||
|
if ( GetBodygroup( GUN_GROUP ) != GUN_NONE )
|
||||||
{
|
{
|
||||||
Vector vecGunPos;
|
Vector vecGunPos;
|
||||||
Vector vecGunAngles;
|
Vector vecGunAngles;
|
||||||
@ -811,6 +813,7 @@ void CHGrunt::HandleAnimEvent( MonsterEvent_t *pEvent )
|
|||||||
DropItem( "ammo_ARgrenades", BodyTarget( pev->origin ), vecGunAngles );
|
DropItem( "ammo_ARgrenades", BodyTarget( pev->origin ), vecGunAngles );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case HGRUNT_AE_RELOAD:
|
case HGRUNT_AE_RELOAD:
|
||||||
EMIT_SOUND( ENT( pev ), CHAN_WEAPON, "hgrunt/gr_reload1.wav", 1, ATTN_NORM );
|
EMIT_SOUND( ENT( pev ), CHAN_WEAPON, "hgrunt/gr_reload1.wav", 1, ATTN_NORM );
|
||||||
|
@ -2330,7 +2330,7 @@ void CSpriteTrain::Activate( void )
|
|||||||
if( FStringNull( pev->targetname ) )
|
if( FStringNull( pev->targetname ) )
|
||||||
{
|
{
|
||||||
m_nexting = TRUE;
|
m_nexting = TRUE;
|
||||||
m_nextTime = pev->ltime + 0.1;
|
pev->nextthink = pev->ltime + 0.1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
pev->spawnflags |= SF_TRAIN_WAIT_RETRIGGER;
|
pev->spawnflags |= SF_TRAIN_WAIT_RETRIGGER;
|
||||||
@ -2441,12 +2441,12 @@ void CSpriteTrain::Wait()
|
|||||||
STOP_SOUND( edict(), CHAN_STATIC, STRING( pev->noiseMovement ) );
|
STOP_SOUND( edict(), CHAN_STATIC, STRING( pev->noiseMovement ) );
|
||||||
if( pev->noiseStopMoving )
|
if( pev->noiseStopMoving )
|
||||||
EMIT_SOUND( ENT( pev ), CHAN_VOICE, STRING( pev->noiseStopMoving ), m_volume, ATTN_NORM );
|
EMIT_SOUND( ENT( pev ), CHAN_VOICE, STRING( pev->noiseStopMoving ), m_volume, ATTN_NORM );
|
||||||
pev->nextthink = 0;
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if( m_flWait != 0 )
|
if( m_flWait != 0 )
|
||||||
{
|
{
|
||||||
|
pev->nextthink = pev->ltime + m_flWait;
|
||||||
if( pev->noiseMovement )
|
if( pev->noiseMovement )
|
||||||
STOP_SOUND( edict(), CHAN_STATIC, STRING( pev->noiseMovement ) );
|
STOP_SOUND( edict(), CHAN_STATIC, STRING( pev->noiseMovement ) );
|
||||||
if( pev->noiseStopMoving )
|
if( pev->noiseStopMoving )
|
||||||
@ -2474,7 +2474,6 @@ void CSpriteTrain::Use( CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE
|
|||||||
// Pop back to last target if it's available
|
// Pop back to last target if it's available
|
||||||
if( pev->enemy )
|
if( pev->enemy )
|
||||||
pev->target = pev->enemy->v.targetname;
|
pev->target = pev->enemy->v.targetname;
|
||||||
pev->nextthink = 0;
|
|
||||||
pev->velocity = g_vecZero;
|
pev->velocity = g_vecZero;
|
||||||
if( pev->noiseStopMoving )
|
if( pev->noiseStopMoving )
|
||||||
EMIT_SOUND( ENT( pev ), CHAN_VOICE, STRING( pev->noiseStopMoving ), m_volume, ATTN_NORM );
|
EMIT_SOUND( ENT( pev ), CHAN_VOICE, STRING( pev->noiseStopMoving ), m_volume, ATTN_NORM );
|
||||||
|
@ -20,7 +20,7 @@ def configure(conf):
|
|||||||
conf.fatal("Could not find hl.def")
|
conf.fatal("Could not find hl.def")
|
||||||
|
|
||||||
def build(bld):
|
def build(bld):
|
||||||
excluded_files = ['mpstubb.cpp', 'stats.cpp', 'prop.cpp', 'Wxdebug.cpp', 'gearbox/gearbox_client.cpp']
|
excluded_files = ['mpstubb.cpp', 'stats.cpp', 'Wxdebug.cpp', 'gearbox/gearbox_client.cpp']
|
||||||
|
|
||||||
source = bld.path.ant_glob('**/*.cpp', excl=excluded_files)
|
source = bld.path.ant_glob('**/*.cpp', excl=excluded_files)
|
||||||
source += bld.path.parent.ant_glob('pm_shared/*.c')
|
source += bld.path.parent.ant_glob('pm_shared/*.c')
|
||||||
|
4
wscript
4
wscript
@ -10,6 +10,7 @@ import re
|
|||||||
VERSION = '2.4'
|
VERSION = '2.4'
|
||||||
APPNAME = 'hlsdk-portable'
|
APPNAME = 'hlsdk-portable'
|
||||||
top = '.'
|
top = '.'
|
||||||
|
default_prefix = '/'
|
||||||
|
|
||||||
Context.Context.line_just = 60 # should fit for everything on 80x26
|
Context.Context.line_just = 60 # should fit for everything on 80x26
|
||||||
|
|
||||||
@ -238,6 +239,9 @@ def configure(conf):
|
|||||||
conf.add_subproject('cl_dll')
|
conf.add_subproject('cl_dll')
|
||||||
|
|
||||||
def build(bld):
|
def build(bld):
|
||||||
|
if bld.is_install and not bld.options.destdir:
|
||||||
|
bld.fatal('Set the install destination directory using --destdir option')
|
||||||
|
|
||||||
# don't clean QtCreator files and reconfigure saved options
|
# don't clean QtCreator files and reconfigure saved options
|
||||||
bld.clean_files = bld.bldnode.ant_glob('**',
|
bld.clean_files = bld.bldnode.ant_glob('**',
|
||||||
excl='*.user configuration.py .lock* *conf_check_*/** config.log %s/*' % Build.CACHE_DIR,
|
excl='*.user configuration.py .lock* *conf_check_*/** config.log %s/*' % Build.CACHE_DIR,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user