- case RES_SHELLS: SetResource(this, wpn.ammo_type, cvar("g_pickup_shells_weapon")); break;
- case RES_BULLETS: SetResource(this, wpn.ammo_type, cvar("g_pickup_nails_weapon")); break;
- case RES_ROCKETS: SetResource(this, wpn.ammo_type, cvar("g_pickup_rockets_weapon")); break;
- case RES_CELLS: SetResource(this, wpn.ammo_type, cvar("g_pickup_cells_weapon")); break;
- case RES_PLASMA: SetResource(this, wpn.ammo_type, cvar("g_pickup_plasma_weapon")); break;
- case RES_FUEL: SetResource(this, wpn.ammo_type, cvar("g_pickup_fuel_weapon")); break;
+ switch (wpn.netname)
+ {
+ case "arc": ammo = cvar("g_balance_arc_beam_ammo"); break;
+ case "devastator": ammo = cvar("g_balance_devastator_ammo"); break;
+ case "machinegun": ammo = cvar("g_balance_machinegun_sustained_ammo"); break;
+ case "minelayer": ammo = cvar("g_balance_minelayer_ammo"); break;
+ case "seeker": ammo = cvar("g_balance_seeker_tag_ammo"); break;
+ default: ammo = cvar(strcat("g_balance_", wpn.netname, "_primary_ammo"));
+ }
+
+ ammo *= this.count;