X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fw_minstanex.qc;h=611319a16cd94f4794e5606ed55fb35205f4a54b;hb=315ab0f2f959b04e5a10f2d98ab95656eab74ee3;hp=aa85079052a933081b0b11e20b737c1919196628;hpb=c6466f683b8270a7a56305fbf0e8cc785df8356d;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/w_minstanex.qc b/qcsrc/server/w_minstanex.qc index aa8507905..611319a16 100644 --- a/qcsrc/server/w_minstanex.qc +++ b/qcsrc/server/w_minstanex.qc @@ -14,26 +14,21 @@ void W_MinstaNex_Attack (void) yoda = 0; damage_goodhits = 0; - headshot = 0; FireRailgunBullet (w_shotorg, w_shotorg + w_shotdir * MAX_SHOT_DISTANCE, 10000, 800, 0, 0, 0, 0, WEP_MINSTANEX); if(g_minstagib) { if(yoda) - AnnounceTo(self, "yoda"); + Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_ACHIEVEMENT_YODA); } else { if(yoda && flying) - AnnounceTo(self, "yoda"); - if(headshot) - { - AnnounceTo(self, "headshot"); - } + Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_ACHIEVEMENT_YODA); if(damage_goodhits && self.minstanex_lasthit) { - if(AnnounceTo(self, "impressive")) - damage_goodhits = 0; // only every second time + Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_ACHIEVEMENT_IMPRESSIVE); + damage_goodhits = 0; // only every second time } } @@ -48,25 +43,25 @@ void W_MinstaNex_Attack (void) { switch(self.team) { - case COLOR_TEAM1: // Red + case NUM_TEAM_1: // Red if(damage_goodhits) WarpZone_TrailParticles(world, particleeffectnum("TE_TEI_G3RED_HIT"), w_shotorg, v); else WarpZone_TrailParticles(world, particleeffectnum("TE_TEI_G3RED"), w_shotorg, v); break; - case COLOR_TEAM2: // Blue + case NUM_TEAM_2: // Blue if(damage_goodhits) WarpZone_TrailParticles(world, particleeffectnum("TE_TEI_G3BLUE_HIT"), w_shotorg, v); else WarpZone_TrailParticles(world, particleeffectnum("TE_TEI_G3BLUE"), w_shotorg, v); break; - case COLOR_TEAM3: // Yellow + case NUM_TEAM_3: // Yellow if(damage_goodhits) WarpZone_TrailParticles(world, particleeffectnum("TE_TEI_G3YELLOW_HIT"), w_shotorg, v); else WarpZone_TrailParticles(world, particleeffectnum("TE_TEI_G3YELLOW"), w_shotorg, v); break; - case COLOR_TEAM4: // Pink + case NUM_TEAM_4: // Pink if(damage_goodhits) WarpZone_TrailParticles(world, particleeffectnum("TE_TEI_G3PINK_HIT"), w_shotorg, v); else @@ -90,7 +85,7 @@ void minstagib_stop_countdown(entity e) { if (!e.minstagib_needammo) return; - Send_CSQC_Centerprint_Generic_Expire(e, CPID_MINSTA_FINDAMMO); + Kill_Notification(NOTIF_ONE_ONLY, e, MSG_CENTER_CPID, CPID_MINSTA_FINDAMMO); e.minstagib_needammo = FALSE; } void minstagib_ammocheck(void) @@ -98,12 +93,13 @@ void minstagib_ammocheck(void) if (time < self.minstagib_nextthink) return; - if (self.deadflag || gameover) + if (self.deadflag || gameover || (self.flags & FL_GODMODE)) minstagib_stop_countdown(self); else if (self.ammo_cells > 0 || (self.items & IT_UNLIMITED_WEAPON_AMMO)) { + if (self.minstagib_needammo) + self.health = 100; minstagib_stop_countdown(self); - self.health = 100; } else { @@ -111,60 +107,58 @@ void minstagib_ammocheck(void) if (self.health == 5) { Damage(self, self, self, 5, DEATH_NOAMMO, self.origin, '0 0 0'); - AnnounceTo(self, "terminated"); + Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_MINSTAGIB_TERMINATED); } else if (self.health == 10) { Damage(self, self, self, 5, DEATH_NOAMMO, self.origin, '0 0 0'); - AnnounceTo(self, "1"); + Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_NUM_1); } else if (self.health == 20) { Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0'); - AnnounceTo(self, "2"); + Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_NUM_2); } else if (self.health == 30) { Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0'); - AnnounceTo(self, "3"); + Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_NUM_3); } else if (self.health == 40) { Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0'); - AnnounceTo(self, "4"); + Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_NUM_4); } else if (self.health == 50) { Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0'); - AnnounceTo(self, "5"); + Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_NUM_5); } else if (self.health == 60) { Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0'); - AnnounceTo(self, "6"); + Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_NUM_6); } else if (self.health == 70) { Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0'); - AnnounceTo(self, "7"); + Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_NUM_7); } else if (self.health == 80) { Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0'); - AnnounceTo(self, "8"); + Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_NUM_8); } else if (self.health == 90) { - Send_CSQC_Centerprint_Generic(self, CPID_MINSTA_FINDAMMO, "^1%d^7 seconds left to find some ammo", 1, 9); + Send_Notification(NOTIF_ONE_ONLY, self, MSG_CENTER, CENTER_MINSTA_FINDAMMO); Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0'); - AnnounceTo(self, "9"); + Send_Notification(NOTIF_ONE, self, MSG_ANNCE, ANNCE_NUM_9); } else if (self.health == 100) { - Send_CSQC_Centerprint_Generic(self, CPID_MINSTA_FINDAMMO, "get some ammo or\nyou'll be dead in ^3%d^7 seconds...", 1, 10); + Send_Notification(NOTIF_ONE_ONLY, self, MSG_MULTI, MULTI_MINSTA_FINDAMMO); Damage(self, self, self, 10, DEATH_NOAMMO, self.origin, '0 0 0'); - if not(self.flags & FL_GODMODE) - AnnounceTo(self, "10"); } } self.minstagib_nextthink = time + 1; @@ -276,6 +270,14 @@ float w_minstanex(float req) W_Reload(used_ammo, autocvar_g_balance_minstanex_reload_ammo, autocvar_g_balance_minstanex_reload_time, "weapons/reload.wav"); } + else if (req == WR_SUICIDEMESSAGE) + { + return WEAPON_THINKING_WITH_PORTALS; + } + else if (req == WR_KILLMESSAGE) + { + return WEAPON_MINSTANEX_MURDER; + } return TRUE; } #endif @@ -294,10 +296,6 @@ float w_minstanex(float req) { precache_sound("weapons/neximpact.wav"); } - else if (req == WR_SUICIDEMESSAGE) - w_deathtypestring = _("%s is now thinking with portals"); - else if (req == WR_KILLMESSAGE) - w_deathtypestring = _("%s has been vaporized by %s's minstanex"); return TRUE; } #endif