mirror of
https://github.com/ReactionQuake3/reaction.git
synced 2025-01-31 13:50:55 +00:00
Elder:
Last batch of updated for the 0-06-00 VMs Note: Kevlar is still messed up
This commit is contained in:
parent
d360e123de
commit
512a7008ab
6 changed files with 22 additions and 12 deletions
|
@ -2644,7 +2644,10 @@ void PmoveSingle (pmove_t *pmove) {
|
|||
PM_Weapon();
|
||||
|
||||
//weapon animations(rq3 specific)
|
||||
PM_WeaponAnimation();
|
||||
//Elder: hack to avoid messing up fast-reloads
|
||||
if (pm->ps->weapon == WP_PISTOL)
|
||||
PM_WeaponAnimation();
|
||||
|
||||
// torso animation
|
||||
PM_TorsoAnimation();
|
||||
|
||||
|
|
|
@ -1570,7 +1570,9 @@ void ClientEndFrame( gentity_t *ent ) {
|
|||
if ( bg_itemlist[ent->client->ps.stats[STAT_HOLDABLE_ITEM]].giTag == HI_LASER )
|
||||
{
|
||||
//Disable laser if switching weapons, bandaging, etc.
|
||||
if (ent->client->lasersight && ent->client->ps.weaponstate == WEAPON_DROPPING)
|
||||
if (ent->client->lasersight &&
|
||||
(ent->client->ps.weaponstate == WEAPON_DROPPING ||
|
||||
ent->client->ps.weaponstate == WEAPON_RELOADING))
|
||||
{
|
||||
Laser_Gen(ent, qfalse);
|
||||
}
|
||||
|
|
|
@ -1992,8 +1992,12 @@ void Cmd_Reload( gentity_t *ent ) {
|
|||
|
||||
//ent->client->ps.weaponstate = WEAPON_RELOADING;
|
||||
ent->client->ps.weaponstate = WEAPON_RELOADING;
|
||||
//ent->client->ps.torsoAnim = ( ( ent->client->ps.torsoAnim & ANIM_TOGGLEBIT )
|
||||
// ^ ANIM_TOGGLEBIT ) | TORSO_DROP;
|
||||
//Elder: temporary hack to drop weapon if it's not the MK23
|
||||
if (ent->client->ps.weapon != WP_PISTOL)
|
||||
{
|
||||
ent->client->ps.torsoAnim = ( ( ent->client->ps.torsoAnim & ANIM_TOGGLEBIT )
|
||||
^ ANIM_TOGGLEBIT ) | TORSO_DROP;
|
||||
}
|
||||
ent->client->ps.weaponTime += delay;
|
||||
|
||||
//Elder: at this point there should be sufficient ammo requirements to reload
|
||||
|
|
|
@ -1662,31 +1662,30 @@ void G_Damage( gentity_t *targ, gentity_t *inflictor, gentity_t *attacker,
|
|||
//Vest stuff
|
||||
if (bg_itemlist[targ->client->ps.stats[STAT_HOLDABLE_ITEM]].giTag == HI_KEVLAR)
|
||||
{
|
||||
|
||||
//if ((attacker->client->ps.stats[STAT_WEAPONS] & (1 << WP_SSG3000)) == (1 << WP_SSG3000))
|
||||
if (attacker->client->ps.weapon == WP_SSG3000)
|
||||
{ trap_SendServerCommand(attacker-g_entities, va("print \"%s has a Kevlar Vest, too bad you have AP rounds...\n\"",targ->client->pers.netname));
|
||||
{
|
||||
trap_SendServerCommand(attacker-g_entities, va("print \"%s has a Kevlar Vest, too bad you have AP rounds...\n\"",targ->client->pers.netname));
|
||||
trap_SendServerCommand(targ-g_entities, va("print \"Kevlar Vest absorbed some of %s's AP sniper round\n\"",attacker->client->pers.netname));
|
||||
take = take * 0.325;
|
||||
|
||||
}
|
||||
else
|
||||
{ trap_SendServerCommand( attacker-g_entities, va("print \"%s^7 has a Kevlar Vest - AIM FOR THE HEAD!\n\"", targ->client->pers.netname));
|
||||
trap_SendServerCommand( targ-g_entities, va("print \"Kevlar Vest absorbed most of %s shot\n\"", attacker->client->pers.netname ));
|
||||
take = take/10;
|
||||
instant_dam = 1;
|
||||
bleeding = 0;
|
||||
}
|
||||
//Elder: flag for sound in feedback
|
||||
targ->client->damage_vest = qtrue;
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
trap_SendServerCommand( attacker-g_entities, va("print \"You hit %s^7 in the chest.\n\"", targ->client->pers.netname));
|
||||
trap_SendServerCommand( targ-g_entities, va("print \"Chest Damage.\n\""));
|
||||
take *= 0.65;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case (LOCATION_STOMACH):
|
||||
{
|
||||
|
|
|
@ -1583,7 +1583,7 @@ void RQ3_DroppedItemThink(gentity_t *ent) {
|
|||
rq3_temp = (gentity_t*)SelectRandomDeathmatchSpawnPoint();
|
||||
G_FreeEntity(ent);
|
||||
Drop_Item (rq3_temp, rq3_item, angle);
|
||||
G_Printf("RQ3_DroppedItemThink: Freeing item entity + respawning\n");
|
||||
//G_Printf("RQ3_DroppedItemThink: Freeing item entity + respawning\n");
|
||||
break;
|
||||
default:
|
||||
//Elder: shouldn't have to come here
|
||||
|
|
|
@ -482,13 +482,12 @@ void G_BreakGlass( gentity_t *ent, vec3_t point, int mod )
|
|||
//eParm should now be under 1 byte and shiftCount >= 0
|
||||
//G_Printf("New eParm: %i Shifts: %i\n", eParm, shiftCount);
|
||||
|
||||
G_FreeEntity( ent );
|
||||
|
||||
// Tell the program based on the gun if it was caused by splash damage
|
||||
switch( mod ) {
|
||||
//Elder: added + compacted
|
||||
case MOD_KNIFE:
|
||||
case MOD_KNIFE_THROWN:
|
||||
case MOD_MP5:
|
||||
case MOD_M4:
|
||||
case MOD_M3:
|
||||
case MOD_PISTOL:
|
||||
|
@ -506,7 +505,10 @@ void G_BreakGlass( gentity_t *ent, vec3_t point, int mod )
|
|||
VectorScale(size, 0.5, size);
|
||||
VectorAdd(ent->r.mins, size, impactPoint);
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
G_FreeEntity( ent );
|
||||
|
||||
switch ( shiftCount )
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue