From: Samual Lenks Date: Mon, 4 Feb 2013 19:01:21 +0000 (-0500) Subject: Add killstreaks and centerprints to weapon notifications X-Git-Tag: xonotic-v0.7.0~62^2~23^2~282 X-Git-Url: http://git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=commitdiff_plain;h=f9ef5be6734e8ff12b01bafb8beaaf8235a16b5a Add killstreaks and centerprints to weapon notifications --- diff --git a/qcsrc/common/notifications.qh b/qcsrc/common/notifications.qh index 0618e43d6..692198784 100644 --- a/qcsrc/common/notifications.qh +++ b/qcsrc/common/notifications.qh @@ -282,55 +282,55 @@ void Send_CSQC_Centerprint_Generic_Expire(entity e, float id); MSG_INFO_NOTIF(INFO_RACE_NEW_TIME, 2, 0, XPD(s1, s2), XPD(s1, ""), "race_newtime", "", "") \ MSG_INFO_NOTIF(INFO_RACE_NEW_RANK, 2, 0, XPD(s1, s2), XPD(s1, ""), "race_newrankyellow", "", "") \ MULTITEAM_INFO(INFO_SCORES_, 4, 0, 0, NO_STR_ARG, XPD("", ""), "", _("^TC^TT ^BGteam scores!\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_THINKING_WITH_PORTALS, 1, 0, s1, XPD(s1, ""), "notify_selfkill", _("^BG%s^K1 is now thinking with portals...\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_CRYLINK_SUICIDE, 1, 0, s1, XPD(s1, ""), "weaponcrylink", _("^BG%s^K1 felt the strong pull of their Crylink\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_CRYLINK_MURDER, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponcrylink", _("^BG%s^K1 felt the strong pull of ^BG%s^K1's Crylink\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_ELECTRO_SUICIDE_ORBS, 1, 0, s1, XPD(s1, ""), "weaponelectro", _("^BG%s^K1 could not remember where they put their Electro plasma\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_ELECTRO_SUICIDE_BOLT, 1, 0, s1, XPD(s1, ""), "weaponelectro", _("^BG%s^K1 played with Electro plasma\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_ELECTRO_MURDER_BOLT, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponelectro", _("^BG%s^K1 was blasted by ^BG%s^K1's Electro bolt\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_ELECTRO_MURDER_ORBS, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponelectro", _("^BG%s^K1 got too close to ^BG%s^K1's Electro plasma\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_ELECTRO_MURDER_COMBO, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponelectro", _("^BG%s^K1 felt the electrifying air of ^BG%s^K1's Electro combo\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_FIREBALL_SUICIDE_FIREMINE, 1, 0, s1, XPD(s1, ""), "weaponfireball", _("^BG%s^K1 forgot about their firemine\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_FIREBALL_SUICIDE_BLAST, 1, 0, s1, XPD(s1, ""), "weaponfireball", _("^BG%s^K1 should have used a smaller gun\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_FIREBALL_MURDER_FIREMINE, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponfireball", _("^BG%s^K1 got burnt by ^BG%s^K1's firemine\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_FIREBALL_MURDER_BLAST, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponfireball", _("^BG%s^K1 got too close to ^BG%s^K1's fireball\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_MORTAR_SUICIDE_EXPLODE, 1, 0, s1, XPD(s1, ""), "weapongrenadelauncher", _("^BG%s^K1 blew themself up with their own Mortar\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_MORTAR_SUICIDE_BOUNCE, 1, 0, s1, XPD(s1, ""), "weapongrenadelauncher", _("^BG%s^K1 didn't see their own Mortar grenade\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_MORTAR_MURDER_EXPLODE, 2, 0, XPD(s1, s2), XPD(s1, s2), "weapongrenadelauncher", _("^BG%s^K1 ate ^BG%s^K1's Mortar grenade\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_MORTAR_MURDER_BOUNCE, 2, 0, XPD(s1, s2), XPD(s1, s2), "weapongrenadelauncher", _("^BG%s^K1 got too close to ^BG%s^K1's Mortar grenade\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_HAGAR_SUICIDE, 1, 0, s1, XPD(s1, ""), "weaponhagar", _("^BG%s^K1 played with tiny Hagar rockets\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_HAGAR_MURDER_BURST, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponhagar", _("^BG%s^K1 was pummeled by a burst of ^BG%s^K1's Hagar rockets\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_HAGAR_MURDER_SPRAY, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponhagar", _("^BG%s^K1 was pummeled by ^BG%s^K1's Hagar rockets\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_HLAC_SUICIDE, 1, 0, s1, XPD(s1, ""), "weaponhlac", _("^BG%s^K1 got a little jumpy with their HLAC\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_HLAC_MURDER, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponhlac", _("^BG%s^K1 was cut down with ^BG%s^K1's HLAC\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_HOOK_MURDER, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponhook", _("^BG%s^K1 was caught in ^BG%s^K1's Hook gravity bomb\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_LASER_SUICIDE, 1, 0, s1, XPD(s1, ""), "weaponlaser", _("^BG%s^K1 shot themself to hell with their Laser\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_LASER_MURDER, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponlaser", _("^BG%s^K1 was shot to death by ^BG%s^K1's Laser\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_MINELAYER_SUICIDE, 1, 0, s1, XPD(s1, ""), "weaponminelayer", _("^BG%s^K1 forgot about their mine\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_MINELAYER_MURDER, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponminelayer", _("^BG%s^K1 got too close to ^BG%s^K1's mine\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_MINSTANEX_MURDER, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponminstanex", _("^BG%s^K1 has been vaporized by ^BG%s^K1's Minstanex\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_NEX_MURDER, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponnex", _("^BG%s^K1 has been vaporized by ^BG%s^K1's Nex\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_RIFLE_MURDER_HAIL_PIERCING, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponrifle", _("^BG%s^K1 failed to hide from ^BG%s^K1's Rifle bullet hail\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_RIFLE_MURDER_HAIL, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponrifle", _("^BG%s^K1 died in ^BG%s^K1's Rifle bullet hail\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_RIFLE_MURDER_PIERCING, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponrifle", _("^BG%s^K1 failed to hide from ^BG%s^K1's Rifle\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_RIFLE_MURDER, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponrifle", _("^BG%s^K1 was sniped with a Rifle by ^BG%s\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_RIFLE_MURDER_HEADSHOT, 2, 0, XPD(s1, s2), XPD(s1, s2), "notify_headshot", _("^BG%s^K1 was shot in the head with a Rifle by ^BG%s\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_ROCKETLAUNCHER_SUICIDE, 1, 0, s1, XPD(s1, ""), "weaponrocketlauncher", _("^BG%s^K1 blew themself up with their Rocketlauncher\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_ROCKETLAUNCHER_MURDER_DIRECT, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponrocketlauncher", _("^BG%s^K1 ate ^BG%s^K1's rocket\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_ROCKETLAUNCHER_MURDER_SPLASH, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponrocketlauncher", _("^BG%s^K1 got too close ^BG%s^K1's rocket\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_SEEKER_SUICIDE, 1, 0, s1, XPD(s1, ""), "weaponseeker", _("^BG%s^K1 played with tiny Seeker rockets\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_SEEKER_MURDER_TAG, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponseeker", _("^BG%s^K1 was tagged by ^BG%s^K1's Seeker\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_SEEKER_MURDER_SPRAY, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponseeker", _("^BG%s^K1 was pummeled by ^BG%s^K1's Seeker rockets\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_SHOTGUN_MURDER_SLAP, 2, 0, XPD(s2, s1), XPD(s1, s2), "notify_melee_shotgun", _("^BG%s^K1 slapped ^BG%s^K1 around a bit with a large Shotgun\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_SHOTGUN_MURDER, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponshotgun", _("^BG%s^K1 was gunned down by ^BG%s^K1's Shotgun\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_TUBA_SUICIDE, 1, 0, s1, XPD(s1, ""), "weapontuba", _("^BG%s^K1 hurt their own ears with the @!#%%'n Tuba\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_TUBA_MURDER, 2, 0, XPD(s1, s2), XPD(s1, s2), "weapontuba", _("^BG%s^K1 died of ^BG%s^K1's great playing on the @!#%%'n Tuba\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_ACCORDEON_SUICIDE, 1, 0, s1, XPD(s1, ""), "weapontuba", _("^BG%s^K1 hurt their own ears with the @!#%%'n Accordeon\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_ACCORDEON_MURDER, 2, 0, XPD(s1, s2), XPD(s1, s2), "weapontuba", _("^BG%s^K1 died of ^BG%s^K1's great playing on the @!#%%'n Accordeon\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_KLEINBOTTLE_SUICIDE, 1, 0, s1, XPD(s1, ""), "weapontuba", _("^BG%s^K1 hurt their own ears with the @!#%%'n Klein Bottle\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_KLEINBOTTLE_MURDER, 2, 0, XPD(s1, s2), XPD(s1, s2), "weapontuba", _("^BG%s^K1 died of ^BG%s^K1's great playing on the @!#%%'n Klein Bottle\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_UZI_MURDER_SNIPE, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponuzi", _("^BG%s^K1 was sniped by ^BG%s^K1's Machine Gun\n"), "") \ - MSG_INFO_NOTIF(INFO_WEAPON_UZI_MURDER_SPRAY, 2, 0, XPD(s1, s2), XPD(s1, s2), "weaponuzi", _("^BG%s^K1 was riddled full of holes by ^BG%s^K1's Machine Gun\n"), "") + MSG_INFO_NOTIF(INFO_WEAPON_THINKING_WITH_PORTALS, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "notify_selfkill", _("^BG%s^K1 is now thinking with portals%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_CRYLINK_SUICIDE, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weaponcrylink", _("^BG%s^K1 felt the strong pull of their Crylink%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_CRYLINK_MURDER, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponcrylink", _("^BG%s^K1 felt the strong pull of ^BG%s^K1's Crylink%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_ELECTRO_SUICIDE_ORBS, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weaponelectro", _("^BG%s^K1 could not remember where they put their Electro plasma%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_ELECTRO_SUICIDE_BOLT, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weaponelectro", _("^BG%s^K1 played with Electro plasma%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_ELECTRO_MURDER_BOLT, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponelectro", _("^BG%s^K1 was blasted by ^BG%s^K1's Electro bolt%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_ELECTRO_MURDER_ORBS, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponelectro", _("^BG%s^K1 got too close to ^BG%s^K1's Electro plasma%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_ELECTRO_MURDER_COMBO, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponelectro", _("^BG%s^K1 felt the electrifying air of ^BG%s^K1's Electro combo%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_FIREBALL_SUICIDE_FIREMINE, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weaponfireball", _("^BG%s^K1 forgot about their firemine%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_FIREBALL_SUICIDE_BLAST, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weaponfireball", _("^BG%s^K1 should have used a smaller gun%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_FIREBALL_MURDER_FIREMINE, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponfireball", _("^BG%s^K1 got burnt by ^BG%s^K1's firemine%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_FIREBALL_MURDER_BLAST, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponfireball", _("^BG%s^K1 got too close to ^BG%s^K1's fireball%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_MORTAR_SUICIDE_EXPLODE, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weapongrenadelauncher", _("^BG%s^K1 blew themself up with their own Mortar%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_MORTAR_SUICIDE_BOUNCE, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weapongrenadelauncher", _("^BG%s^K1 didn't see their own Mortar grenade%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_MORTAR_MURDER_EXPLODE, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weapongrenadelauncher", _("^BG%s^K1 ate ^BG%s^K1's Mortar grenade%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_MORTAR_MURDER_BOUNCE, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weapongrenadelauncher", _("^BG%s^K1 got too close to ^BG%s^K1's Mortar grenade%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_HAGAR_SUICIDE, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weaponhagar", _("^BG%s^K1 played with tiny Hagar rockets%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_HAGAR_MURDER_BURST, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponhagar", _("^BG%s^K1 was pummeled by a burst of ^BG%s^K1's Hagar rockets%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_HAGAR_MURDER_SPRAY, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponhagar", _("^BG%s^K1 was pummeled by ^BG%s^K1's Hagar rockets%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_HLAC_SUICIDE, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weaponhlac", _("^BG%s^K1 got a little jumpy with their HLAC%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_HLAC_MURDER, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponhlac", _("^BG%s^K1 was cut down with ^BG%s^K1's HLAC%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_HOOK_MURDER, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponhook", _("^BG%s^K1 was caught in ^BG%s^K1's Hook gravity bomb%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_LASER_SUICIDE, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weaponlaser", _("^BG%s^K1 shot themself to hell with their Laser%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_LASER_MURDER, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponlaser", _("^BG%s^K1 was shot to death by ^BG%s^K1's Laser%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_MINELAYER_SUICIDE, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weaponminelayer", _("^BG%s^K1 forgot about their mine%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_MINELAYER_MURDER, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponminelayer", _("^BG%s^K1 got too close to ^BG%s^K1's mine%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_MINSTANEX_MURDER, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponminstanex", _("^BG%s^K1 has been vaporized by ^BG%s^K1's Minstanex%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_NEX_MURDER, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponnex", _("^BG%s^K1 has been vaporized by ^BG%s^K1's Nex%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_RIFLE_MURDER_HAIL_PIERCING, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponrifle", _("^BG%s^K1 failed to hide from ^BG%s^K1's Rifle bullet hail%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_RIFLE_MURDER_HAIL, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponrifle", _("^BG%s^K1 died in ^BG%s^K1's Rifle bullet hail%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_RIFLE_MURDER_PIERCING, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponrifle", _("^BG%s^K1 failed to hide from ^BG%s^K1's Rifle%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_RIFLE_MURDER, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponrifle", _("^BG%s^K1 was sniped with a Rifle by ^BG%s^K1%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_RIFLE_MURDER_HEADSHOT, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "notify_headshot", _("^BG%s^K1 was shot in the head with a Rifle by ^BG%s^K1%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_ROCKETLAUNCHER_SUICIDE, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weaponrocketlauncher", _("^BG%s^K1 blew themself up with their Rocketlauncher%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_ROCKETLAUNCHER_MURDER_DIRECT, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponrocketlauncher", _("^BG%s^K1 ate ^BG%s^K1's rocket%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_ROCKETLAUNCHER_MURDER_SPLASH, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponrocketlauncher", _("^BG%s^K1 got too close ^BG%s^K1's rocket%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_SEEKER_SUICIDE, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weaponseeker", _("^BG%s^K1 played with tiny Seeker rockets%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_SEEKER_MURDER_TAG, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponseeker", _("^BG%s^K1 was tagged by ^BG%s^K1's Seeker%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_SEEKER_MURDER_SPRAY, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponseeker", _("^BG%s^K1 was pummeled by ^BG%s^K1's Seeker rockets%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_SHOTGUN_MURDER_SLAP, 2, 1, XPD(s2, s1, SPREE_END), XPD(s1, s2), "notify_melee_shotgun", _("^BG%s^K1 slapped ^BG%s^K1 around a bit with a large Shotgun%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_SHOTGUN_MURDER, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponshotgun", _("^BG%s^K1 was gunned down by ^BG%s^K1's Shotgun%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_TUBA_SUICIDE, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weapontuba", _("^BG%s^K1 hurt their own ears with the @!#%%'n Tuba%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_TUBA_MURDER, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weapontuba", _("^BG%s^K1 died of ^BG%s^K1's great playing on the @!#%%'n Tuba%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_ACCORDEON_SUICIDE, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weapontuba", _("^BG%s^K1 hurt their own ears with the @!#%%'n Accordeon%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_ACCORDEON_MURDER, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weapontuba", _("^BG%s^K1 died of ^BG%s^K1's great playing on the @!#%%'n Accordeon%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_KLEINBOTTLE_SUICIDE, 1, 1, XPD(s1, SPREE_LOST), XPD(s1, ""), "weapontuba", _("^BG%s^K1 hurt their own ears with the @!#%%'n Klein Bottle%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_KLEINBOTTLE_MURDER, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weapontuba", _("^BG%s^K1 died of ^BG%s^K1's great playing on the @!#%%'n Klein Bottle%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_UZI_MURDER_SNIPE, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponuzi", _("^BG%s^K1 was sniped by ^BG%s^K1's Machine Gun%s\n"), "") \ + MSG_INFO_NOTIF(INFO_WEAPON_UZI_MURDER_SPRAY, 2, 1, XPD(s1, s2, SPREE_END), XPD(s1, s2), "weaponuzi", _("^BG%s^K1 was riddled full of holes by ^BG%s^K1's Machine Gun%s\n"), "") #define MULTITEAM_CENTER(prefix,teams,strnum,flnum,args,cpid,durcnt,normal,gentle) \ MSG_CENTER_NOTIF(prefix##RED, strnum, flnum, args, cpid, durcnt, TCR(normal, COL_TEAM_1, strtoupper(STR_TEAM_1)), TCR(gentle, COL_TEAM_1, strtoupper(STR_TEAM_1))) \ @@ -411,31 +411,31 @@ void Send_CSQC_Centerprint_Generic_Expire(entity e, float id); #define MSG_WEAPON_NOTIFICATIONS \ MSG_WEAPON_NOTIF(WEAPON_EMPTY, NO_MSG, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_THINKING_WITH_PORTALS, INFO_WEAPON_THINKING_WITH_PORTALS, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_CRYLINK_SUICIDE, INFO_WEAPON_CRYLINK_SUICIDE, NO_MSG) \ + MSG_WEAPON_NOTIF(WEAPON_THINKING_WITH_PORTALS, INFO_WEAPON_THINKING_WITH_PORTALS, CENTER_DEATH_SELF_GENERIC) \ + MSG_WEAPON_NOTIF(WEAPON_CRYLINK_SUICIDE, INFO_WEAPON_CRYLINK_SUICIDE, CENTER_DEATH_SELF_GENERIC) \ MSG_WEAPON_NOTIF(WEAPON_CRYLINK_MURDER, INFO_WEAPON_CRYLINK_MURDER, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_ELECTRO_SUICIDE_ORBS, INFO_WEAPON_ELECTRO_SUICIDE_ORBS, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_ELECTRO_SUICIDE_BOLT, INFO_WEAPON_ELECTRO_SUICIDE_BOLT, NO_MSG) \ + MSG_WEAPON_NOTIF(WEAPON_ELECTRO_SUICIDE_ORBS, INFO_WEAPON_ELECTRO_SUICIDE_ORBS, CENTER_DEATH_SELF_GENERIC) \ + MSG_WEAPON_NOTIF(WEAPON_ELECTRO_SUICIDE_BOLT, INFO_WEAPON_ELECTRO_SUICIDE_BOLT, CENTER_DEATH_SELF_GENERIC) \ MSG_WEAPON_NOTIF(WEAPON_ELECTRO_MURDER_BOLT, INFO_WEAPON_ELECTRO_MURDER_BOLT, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_ELECTRO_MURDER_ORBS, INFO_WEAPON_ELECTRO_MURDER_ORBS, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_ELECTRO_MURDER_COMBO, INFO_WEAPON_ELECTRO_MURDER_COMBO, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_FIREBALL_SUICIDE_FIREMINE, INFO_WEAPON_FIREBALL_SUICIDE_FIREMINE, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_FIREBALL_SUICIDE_BLAST, INFO_WEAPON_FIREBALL_SUICIDE_BLAST, NO_MSG) \ + MSG_WEAPON_NOTIF(WEAPON_FIREBALL_SUICIDE_FIREMINE, INFO_WEAPON_FIREBALL_SUICIDE_FIREMINE, CENTER_DEATH_SELF_GENERIC) \ + MSG_WEAPON_NOTIF(WEAPON_FIREBALL_SUICIDE_BLAST, INFO_WEAPON_FIREBALL_SUICIDE_BLAST, CENTER_DEATH_SELF_GENERIC) \ MSG_WEAPON_NOTIF(WEAPON_FIREBALL_MURDER_FIREMINE, INFO_WEAPON_FIREBALL_MURDER_FIREMINE, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_FIREBALL_MURDER_BLAST, INFO_WEAPON_FIREBALL_MURDER_BLAST, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_MORTAR_SUICIDE_EXPLODE, INFO_WEAPON_MORTAR_SUICIDE_EXPLODE, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_MORTAR_SUICIDE_BOUNCE, INFO_WEAPON_MORTAR_SUICIDE_BOUNCE, NO_MSG) \ + MSG_WEAPON_NOTIF(WEAPON_MORTAR_SUICIDE_EXPLODE, INFO_WEAPON_MORTAR_SUICIDE_EXPLODE, CENTER_DEATH_SELF_GENERIC) \ + MSG_WEAPON_NOTIF(WEAPON_MORTAR_SUICIDE_BOUNCE, INFO_WEAPON_MORTAR_SUICIDE_BOUNCE, CENTER_DEATH_SELF_GENERIC) \ MSG_WEAPON_NOTIF(WEAPON_MORTAR_MURDER_EXPLODE, INFO_WEAPON_MORTAR_MURDER_EXPLODE, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_MORTAR_MURDER_BOUNCE, INFO_WEAPON_MORTAR_MURDER_BOUNCE, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_HAGAR_SUICIDE, INFO_WEAPON_HAGAR_SUICIDE, NO_MSG) \ + MSG_WEAPON_NOTIF(WEAPON_HAGAR_SUICIDE, INFO_WEAPON_HAGAR_SUICIDE, CENTER_DEATH_SELF_GENERIC) \ MSG_WEAPON_NOTIF(WEAPON_HAGAR_MURDER_BURST, INFO_WEAPON_HAGAR_MURDER_BURST, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_HAGAR_MURDER_SPRAY, INFO_WEAPON_HAGAR_MURDER_SPRAY, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_HLAC_SUICIDE, INFO_WEAPON_HLAC_SUICIDE, NO_MSG) \ + MSG_WEAPON_NOTIF(WEAPON_HLAC_SUICIDE, INFO_WEAPON_HLAC_SUICIDE, CENTER_DEATH_SELF_GENERIC) \ MSG_WEAPON_NOTIF(WEAPON_HLAC_MURDER, INFO_WEAPON_HLAC_MURDER, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_HOOK_MURDER, INFO_WEAPON_HOOK_MURDER, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_LASER_SUICIDE, INFO_WEAPON_LASER_SUICIDE, NO_MSG) \ + MSG_WEAPON_NOTIF(WEAPON_LASER_SUICIDE, INFO_WEAPON_LASER_SUICIDE, CENTER_DEATH_SELF_GENERIC) \ MSG_WEAPON_NOTIF(WEAPON_LASER_MURDER, INFO_WEAPON_LASER_MURDER, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_MINELAYER_SUICIDE, INFO_WEAPON_MINELAYER_SUICIDE, NO_MSG) \ + MSG_WEAPON_NOTIF(WEAPON_MINELAYER_SUICIDE, INFO_WEAPON_MINELAYER_SUICIDE, CENTER_DEATH_SELF_GENERIC) \ MSG_WEAPON_NOTIF(WEAPON_MINELAYER_MURDER, INFO_WEAPON_MINELAYER_MURDER, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_MINSTANEX_MURDER, INFO_WEAPON_MINSTANEX_MURDER, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_NEX_MURDER, INFO_WEAPON_NEX_MURDER, NO_MSG) \ @@ -444,19 +444,19 @@ void Send_CSQC_Centerprint_Generic_Expire(entity e, float id); MSG_WEAPON_NOTIF(WEAPON_RIFLE_MURDER_PIERCING, INFO_WEAPON_RIFLE_MURDER_PIERCING, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_RIFLE_MURDER, INFO_WEAPON_RIFLE_MURDER, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_RIFLE_MURDER_HEADSHOT, INFO_WEAPON_RIFLE_MURDER_HEADSHOT, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_ROCKETLAUNCHER_SUICIDE, INFO_WEAPON_ROCKETLAUNCHER_SUICIDE, NO_MSG) \ + MSG_WEAPON_NOTIF(WEAPON_ROCKETLAUNCHER_SUICIDE, INFO_WEAPON_ROCKETLAUNCHER_SUICIDE, CENTER_DEATH_SELF_GENERIC) \ MSG_WEAPON_NOTIF(WEAPON_ROCKETLAUNCHER_MURDER_DIRECT, INFO_WEAPON_ROCKETLAUNCHER_MURDER_DIRECT, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_ROCKETLAUNCHER_MURDER_SPLASH, INFO_WEAPON_ROCKETLAUNCHER_MURDER_SPLASH, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_SEEKER_SUICIDE, INFO_WEAPON_SEEKER_SUICIDE, NO_MSG) \ + MSG_WEAPON_NOTIF(WEAPON_SEEKER_SUICIDE, INFO_WEAPON_SEEKER_SUICIDE, CENTER_DEATH_SELF_GENERIC) \ MSG_WEAPON_NOTIF(WEAPON_SEEKER_MURDER_TAG, INFO_WEAPON_SEEKER_MURDER_TAG, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_SEEKER_MURDER_SPRAY, INFO_WEAPON_SEEKER_MURDER_SPRAY, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_SHOTGUN_MURDER_SLAP, INFO_WEAPON_SHOTGUN_MURDER_SLAP, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_SHOTGUN_MURDER, INFO_WEAPON_SHOTGUN_MURDER, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_TUBA_SUICIDE, INFO_WEAPON_TUBA_SUICIDE, NO_MSG) \ + MSG_WEAPON_NOTIF(WEAPON_TUBA_SUICIDE, INFO_WEAPON_TUBA_SUICIDE, CENTER_DEATH_SELF_GENERIC) \ MSG_WEAPON_NOTIF(WEAPON_TUBA_MURDER, INFO_WEAPON_TUBA_MURDER, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_ACCORDEON_SUICIDE, INFO_WEAPON_ACCORDEON_SUICIDE, NO_MSG) \ + MSG_WEAPON_NOTIF(WEAPON_ACCORDEON_SUICIDE, INFO_WEAPON_ACCORDEON_SUICIDE, CENTER_DEATH_SELF_GENERIC) \ MSG_WEAPON_NOTIF(WEAPON_ACCORDEON_MURDER, INFO_WEAPON_ACCORDEON_MURDER, NO_MSG) \ - MSG_WEAPON_NOTIF(WEAPON_KLEINBOTTLE_SUICIDE, INFO_WEAPON_KLEINBOTTLE_SUICIDE, NO_MSG) \ + MSG_WEAPON_NOTIF(WEAPON_KLEINBOTTLE_SUICIDE, INFO_WEAPON_KLEINBOTTLE_SUICIDE, CENTER_DEATH_SELF_GENERIC) \ MSG_WEAPON_NOTIF(WEAPON_KLEINBOTTLE_MURDER, INFO_WEAPON_KLEINBOTTLE_MURDER, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_UZI_MURDER_SNIPE, INFO_WEAPON_UZI_MURDER_SNIPE, NO_MSG) \ MSG_WEAPON_NOTIF(WEAPON_UZI_MURDER_SPRAY, INFO_WEAPON_UZI_MURDER_SPRAY, NO_MSG) diff --git a/qcsrc/server/g_damage.qc b/qcsrc/server/g_damage.qc index 428c6fe0e..d5c502f75 100644 --- a/qcsrc/server/g_damage.qc +++ b/qcsrc/server/g_damage.qc @@ -353,7 +353,7 @@ void Obituary_SpecialDeath(entity notif_target, float murder, float deathtype, s } float w_deathtype; -float Obituary_WeaponDeath(float murder, float deathtype, string s1, string s2) +float Obituary_WeaponDeath(float murder, float deathtype, string s1, string s2, float f1) { float death_weapon = DEATH_WEAPONOF(deathtype); @@ -363,7 +363,7 @@ float Obituary_WeaponDeath(float murder, float deathtype, string s1, string s2) float death_message = weapon_action(death_weapon, ((murder) ? WR_KILLMESSAGE : WR_SUICIDEMESSAGE)); w_deathtype = FALSE; - if(death_message) { Send_Notification_Legacy_Wrapper(NOTIF_ANY, world, MSG_WEAPON, death_message, s1, s2, NO_FL_ARG, NO_FL_ARG, NO_FL_ARG); } + if(death_message) { Send_Notification_Legacy_Wrapper(NOTIF_ANY, world, MSG_WEAPON, death_message, s1, s2, f1, NO_FL_ARG, NO_FL_ARG); } else { dprint(sprintf("Obituary_WeaponDeath(): ^1Deathtype ^7(%s-%d)^1 has no notification for weapon %d!\n", Deathtype_Name(deathtype), deathtype, death_weapon)); } return TRUE; @@ -422,7 +422,7 @@ void Obituary(entity attacker, entity inflictor, entity targ, float deathtype) Obituary_SpecialDeath(targ, FALSE, deathtype, s1, s2, f1, f2, NO_FL_ARG); } - else if not(Obituary_WeaponDeath(FALSE, deathtype, targ.netname, NO_STR_ARG)) + else if not(Obituary_WeaponDeath(FALSE, deathtype, targ.netname, NO_STR_ARG, targ.killcount)) { backtrace("SUICIDE: what the hell happened here?\n"); } @@ -528,8 +528,9 @@ void Obituary(entity attacker, entity inflictor, entity targ, float deathtype) s1, NO_STR_ARG, (targ.FRAG_VERBOSE ? attacker.health : NO_FL_ARG), (targ.FRAG_VERBOSE ? attacker.armorvalue : NO_FL_ARG), (targ.FRAG_VERBOSE ? ((clienttype(attacker) == CLIENTTYPE_BOT) ? BOT_PING : attacker.ping) : NO_FL_ARG)); } } - - if not(Obituary_WeaponDeath(TRUE, deathtype, targ.netname, attacker.netname)) + + //print("targ_killcount = ", ftos(targ.killcount), ", attacker_killcount = ", ftos(attacker.killcount), ".\n"); + if not(Obituary_WeaponDeath(TRUE, deathtype, targ.netname, attacker.netname, targ.killcount)) Obituary_SpecialDeath(targ, TRUE, deathtype, s2, s1, targ.killcount, NO_FL_ARG, NO_FL_ARG); } }