diff --git a/base/src/server/items.qc b/base/src/server/items.qc index 4236146a..601bf7cb 100644 --- a/base/src/server/items.qc +++ b/base/src/server/items.qc @@ -27,9 +27,12 @@ item_pickup::Touch(entity eToucher) } Logging_Pickup(eToucher, this, __NULL__); - UseTargets(eToucher, TRIG_TOGGLE, m_flDelay); +#ifdef WASTES + Sound_Play(eToucher, CHAN_ITEM, "item_weapon.pickup"); +#endif + if (real_owner || m_iWasDropped == 1 || cvar("sv_playerslots") == 1) { remove(self); } else { @@ -60,6 +63,7 @@ item_pickup::Respawn(void) SetOrigin(GetSpawnOrigin()); /* At some points, the item id might not yet be set */ + if (m_oldModel) { SetModel(m_oldModel); } @@ -74,7 +78,7 @@ item_pickup::Respawn(void) } if (!m_bFloating) { - droptofloor(); + DropToFloor(); SetMovetype(MOVETYPE_TOSS); } } @@ -82,6 +86,10 @@ item_pickup::Respawn(void) void item_pickup::item_pickup(void) { +#ifdef WASTES + Sound_Precache("item_weapon.pickup"); +#endif + super::NSRenderableEntity(); Respawn(); } diff --git a/base/src/shared/fx_gibhuman.qc b/base/src/shared/fx_gibhuman.qc index d78c0219..b9b6c97e 100644 --- a/base/src/shared/fx_gibhuman.qc +++ b/base/src/shared/fx_gibhuman.qc @@ -24,7 +24,7 @@ FX_GibHuman_Init(void) #endif void -FX_GibHuman(vector pos) +FX_GibHuman(vector vecOrigin, vector vecDir, float flForce) { } diff --git a/src/gs-entbase/shared/NSMonster.qc b/src/gs-entbase/shared/NSMonster.qc index 686c61ed..eba8372d 100644 --- a/src/gs-entbase/shared/NSMonster.qc +++ b/src/gs-entbase/shared/NSMonster.qc @@ -99,7 +99,7 @@ void NSMonster::Gib(void) { takedamage = DAMAGE_NO; - FX_GibHuman(this.origin); + FX_GibHuman(origin, vectoangles(origin - g_dmg_eAttacker.origin), g_dmg_iDamage * 2.0f); Hide(); } @@ -205,8 +205,7 @@ NSMonster::SeeThink(void) if (flDot < SeeFOV()/180) continue; - other = world; - traceline(origin, w.origin, MOVE_OTHERONLY, this); + traceline(origin, w.origin, MOVE_EVERYTHING, this); /* we have line of sight with the player */ if (trace_fraction == 1.0f) { diff --git a/src/server/defs.h b/src/server/defs.h index 1854204d..b80d8080 100644 --- a/src/server/defs.h +++ b/src/server/defs.h @@ -32,7 +32,7 @@ var int autocvar_mp_flashlight = TRUE; void FX_Impact(impactType_t, vector, vector); void FX_Explosion(vector); -void FX_GibHuman(vector); +void FX_GibHuman(vector vecOrigin, vector vecDir, float flForce); void Footsteps_Update(void); void TraceAttack_FireBullets(int, vector, int, vector, int);