#ifdef REGISTER_WEAPON
REGISTER_WEAPON(HOOK, w_hook, IT_CELLS|IT_FUEL, 0, WEP_FLAG_CANCLIMB | WEP_TYPE_SPLASH, 0, "hookgun", "hook", "Grappling Hook");
#else
+#ifdef SVQC
.float dmg;
.float dmg_edge;
.float dmg_radius;
{
return self.ammo_cells >= cvar("g_balance_hook_secondary_ammo");
}
- else if (req == WR_SUICIDEMESSAGE)
- w_deathtypestring = "did the impossible";
- else if (req == WR_KILLMESSAGE)
- w_deathtypestring = "has run into #'s gravity bomb";
else if (req == WR_RESETPLAYER)
{
self.hook_refire = time;
return TRUE;
};
#endif
+#ifdef CSQC
+float w_hook(float req)
+{
+ if(req == WR_IMPACTEFFECT)
+ {
+ vector org2;
+ org2 = w_org + w_backoff * 2;
+ pointparticles(particleeffectnum("hookbomb_explode"), org2, '0 0 0', 1);
+ if(!w_issilent)
+ sound(self, CHAN_PROJECTILE, "weapons/hookbomb_impact.wav", VOL_BASE, ATTN_NORM);
+ }
+ else if(req == WR_PRECACHE)
+ {
+ precache_sound("weapons/hookbomb_impact.wav");
+ }
+ else if (req == WR_SUICIDEMESSAGE)
+ w_deathtypestring = "%s did the impossible";
+ else if (req == WR_KILLMESSAGE)
+ w_deathtypestring = "%s has run into %s's gravity bomb";
+ return TRUE;
+}
+#endif
+#endif