MSG_INFO_NOTIF(WEAPON_ARC_SUICIDE_BOLT, N_CONSOLE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponarc", _("^BG%s^K1 played with Arc bolts%s%s"), "")
MSG_INFO_NOTIF(WEAPON_BLASTER_MURDER, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponlaser", _("^BG%s%s^K1 was shot to death by ^BG%s^K1's Blaster%s%s"), "")
MSG_INFO_NOTIF(WEAPON_BLASTER_SUICIDE, N_CONSOLE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponlaser", _("^BG%s^K1 shot themself to hell with their Blaster%s%s"), "")
- MSG_INFO_NOTIF(WEAPON_CLASSIC_PRI_MURDER_DIRECT, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponclassic", _("^BG%s%s^K1 ate ^BG%s^K1's classic rocket%s%s"), "")
- MSG_INFO_NOTIF(WEAPON_CLASSIC_PRI_MURDER_SPLASH, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponclassic", _("^BG%s%s^K1 got too close to ^BG%s^K1's classic rocket%s%s"), "")
- MSG_INFO_NOTIF(WEAPON_CLASSIC_PRI_SUICIDE, N_CONSOLE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponclassic", _("^BG%s^K1 blew themself up with their own classic rocket%s%s"), "")
- MSG_INFO_NOTIF(WEAPON_CLASSIC_SEC_MURDER_DIRECT, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponclassic", _("^BG%s%s^K1 ate ^BG%s^K1's classic grenade%s%s"), "")
- MSG_INFO_NOTIF(WEAPON_CLASSIC_SEC_MURDER_SPLASH, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponclassic", _("^BG%s%s^K1 got too close to ^BG%s^K1's classic grenade%s%s"), "")
- MSG_INFO_NOTIF(WEAPON_CLASSIC_SEC_SUICIDE, N_CONSOLE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponclassic", _("^BG%s^K1 didn't see their own classic grenade%s%s"), "")
+ MSG_INFO_NOTIF(WEAPON_CLASSIC_PRI_MURDER_DIRECT, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrocketlauncher", _("^BG%s%s^K1 ate ^BG%s^K1's classic rocket%s%s"), "")
+ MSG_INFO_NOTIF(WEAPON_CLASSIC_PRI_MURDER_SPLASH, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrocketlauncher", _("^BG%s%s^K1 got too close to ^BG%s^K1's classic rocket%s%s"), "")
+ MSG_INFO_NOTIF(WEAPON_CLASSIC_PRI_SUICIDE, N_CONSOLE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponrocketlauncher", _("^BG%s^K1 blew themself up with their own classic rocket%s%s"), "")
+ MSG_INFO_NOTIF(WEAPON_CLASSIC_SEC_MURDER_DIRECT, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapongrenadelauncher", _("^BG%s%s^K1 ate ^BG%s^K1's classic grenade%s%s"), "")
+ MSG_INFO_NOTIF(WEAPON_CLASSIC_SEC_MURDER_SPLASH, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapongrenadelauncher", _("^BG%s%s^K1 got too close to ^BG%s^K1's classic grenade%s%s"), "")
+ MSG_INFO_NOTIF(WEAPON_CLASSIC_SEC_SUICIDE, N_CONSOLE, 2, 1, "s1 s2loc spree_lost", "s1", "weapongrenadelauncher", _("^BG%s^K1 didn't see their own classic grenade%s%s"), "")
MSG_INFO_NOTIF(WEAPON_CRYLINK_MURDER, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponcrylink", _("^BG%s%s^K1 felt the strong pull of ^BG%s^K1's Crylink%s%s"), "")
MSG_INFO_NOTIF(WEAPON_CRYLINK_SUICIDE, N_CONSOLE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponcrylink", _("^BG%s^K1 felt the strong pull of their Crylink%s%s"), "")
MSG_INFO_NOTIF(WEAPON_DEVASTATOR_MURDER_DIRECT, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponrocketlauncher", _("^BG%s%s^K1 ate ^BG%s^K1's rocket%s%s"), "")
MSG_MULTI_NOTIF(WEAPON_ARC_SUICIDE_BOLT, N_ENABLE, NULL, INFO_WEAPON_ARC_SUICIDE_BOLT, CENTER_DEATH_SELF_GENERIC)
MSG_MULTI_NOTIF(WEAPON_BLASTER_MURDER, N_ENABLE, NULL, INFO_WEAPON_BLASTER_MURDER, NULL)
MSG_MULTI_NOTIF(WEAPON_BLASTER_SUICIDE, N_ENABLE, NULL, INFO_WEAPON_BLASTER_SUICIDE, CENTER_DEATH_SELF_GENERIC)
+ MSG_MULTI_NOTIF(WEAPON_CLASSIC_PRI_MURDER_DIRECT, N_ENABLE, NULL, INFO_WEAPON_CLASSIC_PRI_MURDER_DIRECT, NULL)
+ MSG_MULTI_NOTIF(WEAPON_CLASSIC_PRI_MURDER_SPLASH, N_ENABLE, NULL, INFO_WEAPON_CLASSIC_PRI_MURDER_SPLASH, NULL)
+ MSG_MULTI_NOTIF(WEAPON_CLASSIC_PRI_SUICIDE, N_ENABLE, NULL, INFO_WEAPON_CLASSIC_PRI_SUICIDE, CENTER_DEATH_SELF_GENERIC)
+ MSG_MULTI_NOTIF(WEAPON_CLASSIC_SEC_MURDER_DIRECT, N_ENABLE, NULL, INFO_WEAPON_CLASSIC_SEC_MURDER_DIRECT, NULL)
+ MSG_MULTI_NOTIF(WEAPON_CLASSIC_SEC_MURDER_SPLASH, N_ENABLE, NULL, INFO_WEAPON_CLASSIC_SEC_MURDER_SPLASH, NULL)
+ MSG_MULTI_NOTIF(WEAPON_CLASSIC_SEC_SUICIDE, N_ENABLE, NULL, INFO_WEAPON_CLASSIC_SEC_SUICIDE, CENTER_DEATH_SELF_GENERIC)
MSG_MULTI_NOTIF(WEAPON_CRYLINK_MURDER, N_ENABLE, NULL, INFO_WEAPON_CRYLINK_MURDER, NULL)
MSG_MULTI_NOTIF(WEAPON_CRYLINK_SUICIDE, N_ENABLE, NULL, INFO_WEAPON_CRYLINK_SUICIDE, CENTER_DEATH_SELF_GENERIC)
MSG_MULTI_NOTIF(WEAPON_DEVASTATOR_MURDER_DIRECT, N_ENABLE, NULL, INFO_WEAPON_DEVASTATOR_MURDER_DIRECT, NULL)
if(GetResource(this, RES_HEALTH) <= 0)
W_PrepareExplosionByDamage(this, attacker, adaptor_think2use_hittype_splash);
- //W_PrepareExplosionByDamage(this, attacker, W_Classic_Rocket_Explode_use);
}
void W_Classic_Rocket_Attack(Weapon thiswep, entity actor, .entity weaponentity)
{
PROJECTILE_TOUCH(this, toucher);
- // always explode when hitting a player, or if normal classic projectile
+ // always explode when hitting a player
if(toucher.takedamage == DAMAGE_AIM)
{
this.use(this, NULL, toucher);
}
else // bounce
{
- spamsound(this, CH_SHOTS, SND_GRENADE_BOUNCE_RANDOM(), VOL_BASE, ATTN_NORM);
+ spamsound(this, CH_SHOTS, SND_GRENADE_BOUNCE_RANDOM(), VOL_BASE+0.3, ATTN_NORM);
Send_Effect(EFFECT_HAGAR_BOUNCE, this.origin, this.velocity, 1);
this.projectiledeathtype |= HITTYPE_BOUNCE;
}
PHYS_INPUT_BUTTON_ATCK2(actor) = true;
if(random() < 0.5) actor.bot_secondary_grenademooth = 0;
}
- else
+ else // bots have a really hard time aiming for direct hits with a 700 ups arcing projectile, fallback to rockets
{
if(bot_aim(actor, weaponentity, WEP_CVAR_PRI(classic, speed), 0, WEP_CVAR_PRI(classic, lifetime), false, true))
{
{
W_Reload(actor, weaponentity, min(WEP_CVAR_PRI(classic, ammo), WEP_CVAR_SEC(classic, ammo)), SND_RELOAD); // WEAPONTODO? imported from mortar.qc which had "WEAPONTODO"
}
-/*
+
METHOD(Classic, wr_suicidemessage, Notification(entity thiswep))
{
if(w_deathtype & HITTYPE_SECONDARY)
}
}
-*/
+
#endif
#ifdef CSQC
{
vector org2;
org2 = w_org + w_backoff * 12;
- pointparticles(EFFECT_GRENADE_EXPLODE, org2, '0 0 0', 1);
+ pointparticles(EFFECT_ROCKET_EXPLODE, org2, '0 0 0', 1);
if(!w_issilent)
sound(actor, CH_SHOTS, SND_GRENADE_IMPACT, VOL_BASE, ATTN_NORM);
}