From 356217add7076ac7d6b545214ee531c0d464e26d Mon Sep 17 00:00:00 2001 From: div0 Date: Sat, 16 May 2009 18:38:21 +0000 Subject: [PATCH] print which item you picked up if you pick up jetpack; fallback to fuel if an item jetpack or fuel regen would be useless git-svn-id: svn://svn.icculus.org/nexuiz/trunk@6737 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/qcsrc/server/t_items.qc | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/data/qcsrc/server/t_items.qc b/data/qcsrc/server/t_items.qc index b2f0f0ebe..96ca20a91 100644 --- a/data/qcsrc/server/t_items.qc +++ b/data/qcsrc/server/t_items.qc @@ -141,6 +141,20 @@ float Item_GiveTo(entity item, entity player) if (g_minstagib) { + if (item.ammo_fuel) + if (player.ammo_fuel < g_pickup_fuel_max) + { + pickedup = TRUE; + player.ammo_fuel = min(player.ammo_fuel + item.ammo_fuel, g_pickup_fuel_max); + player.pauserotfuel_finished = max(player.pauserotfuel_finished, time + cvar("g_balance_pause_fuel_rot")); + } + if((it = (item.items - (item.items & player.items)) & IT_PICKUPMASK)) + { + pickedup = TRUE; + player.items |= it; + sprint (player, strcat("You got the ^2", item.netname, "\n")); + } + _switchweapon = TRUE; if (item.ammo_cells) { @@ -189,6 +203,15 @@ float Item_GiveTo(entity item, entity player) // play2(player, "announce/robotic/speed.wav"); player.invincible_finished = max(player.invincible_finished, time) + cvar("g_balance_powerup_strength_time"); } + + if (item.ammo_fuel) + if (player.ammo_fuel < g_pickup_fuel_max) + { + pickedup = TRUE; + player.ammo_fuel = min(player.ammo_fuel + item.ammo_fuel, g_pickup_fuel_max); + player.pauserotfuel_finished = max(player.pauserotfuel_finished, time + cvar("g_balance_pause_fuel_rot")); + } + } else { @@ -266,6 +289,7 @@ float Item_GiveTo(entity item, entity player) { pickedup = TRUE; player.items |= it; + sprint (player, strcat("You got the ^2", item.netname, "\n")); } if (item.strength_finished) @@ -1371,14 +1395,24 @@ void spawnfunc_item_fuel(void) void spawnfunc_item_fuel_regen(void) { + if(start_items & IT_FUEL_REGEN) + { + spawnfunc_item_fuel(); + return; + } StartItem ("models/items/g_fuelregen.md3", "misc/itempickup.wav", g_pickup_respawntime_powerup, g_pickup_respawntimejitter_powerup, "Fuel regenerator", IT_FUEL_REGEN, 0, FL_POWERUP, commodity_pickupevalfunc, BOT_PICKUP_RATING_LOW); } void spawnfunc_item_jetpack(void) { if(g_grappling_hook) - return; // sorry, but these two can't coexist (same button) + return; // sorry, but these two can't coexist (same button); spawn fuel instead if(!self.ammo_fuel) self.ammo_fuel = g_pickup_fuel_jetpack; + if(start_items & IT_JETPACK) + { + spawnfunc_item_fuel(); + return; + } StartItem ("models/items/g_jetpack.md3", "misc/itempickup.wav", g_pickup_respawntime_powerup, g_pickup_respawntimejitter_powerup, "Jet pack", IT_JETPACK, 0, FL_POWERUP, commodity_pickupevalfunc, BOT_PICKUP_RATING_LOW); } -- 2.39.2