8 // Menus/Menu Input references
\r
9 void () Menu_EngineerFix_Tesla;
\r
10 void (float inp) Menu_EngineerFix_Tesla_Input;
\r
15 if (self.StatusBarSize == TF_FLARE_LIT)
\r
17 CenterPrint(self, "\n");
\r
21 self.StatusRefreshTime = time + 0.1;
\r
23 self.menu_count = 25;
\r
24 self.current_menu = TF_FLARE_OFF;
\r
27 // This calls the function which displays the menu
\r
28 void () Player_Menu =
\r
30 if ((self.menu_count > 25.000000))
\r
32 self.menu_count = 0.000000;
\r
36 self.menu_count = (self.menu_count + 1.000000);
\r
39 if (self.current_menu == 666)
\r
44 else if ((self.current_menu == 18))
\r
46 Menu_EngineerFix_Tesla ();
\r
50 self.current_menu = TF_FLARE_LIT;
\r
54 void(float menu_no) DisplayMenu =
\r
56 self.current_menu = menu_no;
\r
59 //Menu_Team(); // menu team & menu class are now handled by GUIs (see cl_client.c)
\r
70 // Menu input (user can press 0 - 9)
\r
71 void(float inp) Menu_Input =
\r
73 if ((self.current_menu == 18))
\r
75 Menu_EngineerFix_Tesla_Input (inp);
\r
80 void () Menu_EngineerFix_Tesla =
\r
82 CenterPrint (self, "Tesla Modification Lab: ^16^7 Upgrades Max\n[^11^7] Upgrade Voltage - 1u\n[^12^7] Upgrade Amperage - 1u\n[^13^7] Upgrade Power Supply - 1u\n[^14^7] Make TeslaTurret(tm) - 2u\n[^15^7] Improved Targeting System - 2u\n[^16^7] Add Spy Detector - 4u\n[^17^7] Repair and Recharge \n[^18^7] Dismantle \n[^19^7] Îïôèéîç ");
\r
86 void (float inp) Menu_EngineerFix_Tesla_Input =
\r
89 local float maxcells;
\r
91 if (((self.classname != "player") || (self.building == world)))
\r
98 if ((self.building.ammo_shells >= 3))
\r
100 sprint (self, "You can only upgrade voltage 3 times\n");
\r
104 if ((self.building.currentammo >= 6))
\r
106 sprint (self, "You can only have
\98 upgrades on the gun\n");
\r
110 if ((self.ammo_cells >= 100))
\r
112 self.ammo_cells = (self.ammo_cells - 100);
\r
113 self.building.ammo_shells = (self.building.ammo_shells + 1);
\r
114 self.building.waitmin = ((self.building.ammo_shells + 2) * (self.building.ammo_nails + 2));
\r
115 self.building.currentammo = (self.building.currentammo + 1);
\r
119 sprint (self, "You need more cells to upgrade the tesla\n");
\r
126 if ((self.building.ammo_nails >= 3))
\r
128 sprint (self, "You can only upgrade amperage 3 times\n");
\r
132 if ((self.building.currentammo >= 6))
\r
134 sprint (self, "You can only have
\98 upgrades on the gun\n");
\r
138 if ((self.ammo_cells >= 100))
\r
140 self.ammo_cells = (self.ammo_cells - 100);
\r
141 self.building.ammo_nails = (self.building.ammo_nails + 1);
\r
142 self.building.waitmin = ((self.building.ammo_shells + 2) * (self.building.ammo_nails + 2));
\r
143 self.building.currentammo = (self.building.currentammo + 1);
\r
147 sprint (self, "You need more cells to upgrade the tesla\n");
\r
154 if ((self.building.ammo_rockets >= 3))
\r
156 sprint (self, "You can only upgrade the capacitor 3 times\n");
\r
160 if ((self.building.currentammo >= 6))
\r
162 sprint (self, "You can only have
\98 upgrades on the gun\n");
\r
166 if ((self.ammo_cells >= 100))
\r
168 self.ammo_cells = (self.ammo_cells - 100);
\r
169 self.building.ammo_rockets = (self.building.ammo_rockets + 1);
\r
170 self.building.currentammo = (self.building.currentammo + 1);
\r
171 if ((self.building.ammo_rockets == 1))
\r
173 self.building.max_health = (self.building.max_health + 100);
\r
174 self.building.health = (self.building.health + 100);
\r
175 self.building.ammo_cells = 120;
\r
179 if ((self.building.ammo_rockets == 2))
\r
181 self.building.max_health = (self.building.max_health + 150);
\r
182 self.building.health = (self.building.health + 150);
\r
183 self.building.ammo_cells = 200;
\r
187 if ((self.building.ammo_rockets == 3))
\r
189 self.building.max_health = (self.building.max_health + 150);
\r
190 self.building.health = (self.building.health + 150);
\r
191 self.building.ammo_cells = 300;
\r
198 sprint (self, "You need more cells to upgrade the tesla\n");
\r
205 if ((self.building.tf_items & 2))
\r
207 sprint (self, "It is already a turret!\n");
\r
211 if ((self.building.currentammo > (6 - 2)))
\r
213 sprint (self, "This requires two upgrades, sorry\n");
\r
217 if ((self.ammo_cells >= (2 * 100)))
\r
219 self.ammo_cells = (self.ammo_cells - (2 * 100));
\r
220 if ((self.ammo_cells < 0))
\r
222 self.ammo_cells = 0;
\r
224 self.building.currentammo = (self.building.currentammo + 2);
\r
225 if ((self.building.tf_items & 2))
\r
227 sprint (self, "Gun is already deployed\n");
\r
231 self.building.origin_z = (self.building.origin_z + 15);
\r
234 sprint (self, "You need a clear area to launch\n");
\r
235 self.building.origin_z = (self.building.origin_z - 15);
\r
239 self.building.origin_z = (self.building.origin_z + 25);
\r
240 sprint (self, "You turretize your tesla\n");
\r
241 self.has_turretized_tesla = 1;
\r
242 self.building.angles_z = 180;
\r
243 self.building.flags = (self.building.flags - (self.building.flags & 512));
\r
244 self.building.movetype = 5;
\r
245 self.building.velocity_z = 200;
\r
246 setsize (self.building, '-16.000000 -16.000000 -40.000000', '16.000000 16.000000 -10.000000');
\r
247 self.building.tf_items = (self.building.tf_items | 2);
\r
253 sprint (self, "You need more cells to upgrade the tesla\n");
\r
260 if ((self.building.tf_items & 1))
\r
262 sprint (self, "It already has an improved targeter\n");
\r
266 if ((self.building.currentammo > (6 - 2)))
\r
268 sprint (self, "This requires two upgrades, hence the '2u'...\n");
\r
272 if ((self.ammo_cells >= (2 * 100)))
\r
274 self.ammo_cells = (self.ammo_cells - (2 * 100));
\r
275 if ((self.ammo_cells < 0))
\r
277 self.ammo_cells = 0;
\r
279 self.building.currentammo = (self.building.currentammo + 2);
\r
280 self.building.tf_items = (self.building.tf_items | 1);
\r
284 sprint (self, "You need more cells to upgrade the tesla\n");
\r
291 if ((self.building.tf_items & 1024))
\r
293 sprint (self, "You already built a spy detector\n");
\r
297 if ((self.building.currentammo > (6 - 4)))
\r
299 sprint (self, "Spy detector takes 4 upgrades\n");
\r
303 if ((self.ammo_cells >= (2 * 100)))
\r
305 self.ammo_cells = (self.ammo_cells - (4 * 100));
\r
306 if ((self.ammo_cells < 0))
\r
308 self.ammo_cells = 0;
\r
310 self.building.currentammo = (self.building.currentammo + 4);
\r
311 self.building.tf_items = (self.building.tf_items | 1024);
\r
315 sprint (self, "You need more cells to upgrade the tesla\n");
\r
322 if ((self.building.health < self.building.max_health))
\r
324 cost = (self.building.max_health - self.building.health) / 2;
\r
325 if ((self.ammo_cells >= cost))
\r
327 self.ammo_cells = (self.ammo_cells - cost);
\r
328 self.building.health = self.building.max_health;
\r
331 if ((self.building.ammo_rockets == 0))
\r
337 if ((self.building.ammo_rockets == 1))
\r
343 if ((self.building.ammo_rockets == 2))
\r
349 if ((self.building.ammo_rockets == 3))
\r
356 cost = maxcells - self.building.ammo_cells;
\r
357 if ((cost > self.ammo_cells))
\r
359 cost = self.ammo_cells;
\r
361 self.ammo_cells = (self.ammo_cells - cost);
\r
362 self.building.ammo_cells = (self.building.ammo_cells + cost);
\r
366 sprint (self, "You dismantle the Tesla Gun.\n");
\r
367 self.ammo_cells = (self.ammo_cells + (150 / 2));
\r
368 self.building.real_owner.has_tesla = 0;
\r
369 self.building.real_owner.has_turretized_tesla = 0;
\r
370 if ((self.building.real_owner.team_no != self.team_no))
\r
372 self.real_frags = (self.real_frags + 1);
\r
373 if (!(toggleflags & 128))
\r
375 self.frags = self.real_frags;
\r
378 if ((self.building.real_owner != self))
\r
380 sprint (self.building.real_owner, self.netname);
\r
381 sprint (self.building.real_owner, " dismantled your Tesla Coil.\n");
\r
382 teamsprint (self.building.real_owner.team_no, self.building.real_owner, self.netname);
\r
383 teamsprint (self.building.real_owner.team_no, self.building.real_owner, " dismantled ");
\r
384 teamsprint (self.building.real_owner.team_no, self.building.real_owner, self.building.real_owner.netname);
\r
385 teamsprint (self.building.real_owner.team_no, self.building.real_owner, "'s Tesla Coil.\n");
\r
387 dremove (self.building);
\r
389 if (((inp >= 1) && (inp <= 9)))
\r
393 bound_other_ammo (self);
\r
394 if ((self.armorvalue == 0))
\r
396 self.armortype = 0;
\r
397 self.armorclass = 0;
\r
398 self.items = (self.items - (self.items & ((8192 | 16384) | 32768)));
\r
400 W_SetCurrentAmmo ();
\r