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
90 local float maxcells;
\r
92 if (((self.classname != "player") || (self.building == world)))
\r
99 if ((self.building.ammo_shells >= 3))
\r
101 sprint (self, "You can only upgrade voltage 3 times\n");
\r
105 if ((self.building.currentammo >= 6))
\r
107 sprint (self, "You can only have
\98 upgrades on the gun\n");
\r
111 if ((self.ammo_cells >= 100))
\r
113 self.ammo_cells = (self.ammo_cells - 100);
\r
114 self.building.ammo_shells = (self.building.ammo_shells + 1);
\r
115 self.building.waitmin = ((self.building.ammo_shells + 2) * (self.building.ammo_nails + 2));
\r
116 self.building.currentammo = (self.building.currentammo + 1);
\r
120 sprint (self, "You need more cells to upgrade the tesla\n");
\r
127 if ((self.building.ammo_nails >= 3))
\r
129 sprint (self, "You can only upgrade amperage 3 times\n");
\r
133 if ((self.building.currentammo >= 6))
\r
135 sprint (self, "You can only have
\98 upgrades on the gun\n");
\r
139 if ((self.ammo_cells >= 100))
\r
141 self.ammo_cells = (self.ammo_cells - 100);
\r
142 self.building.ammo_nails = (self.building.ammo_nails + 1);
\r
143 self.building.waitmin = ((self.building.ammo_shells + 2) * (self.building.ammo_nails + 2));
\r
144 self.building.currentammo = (self.building.currentammo + 1);
\r
148 sprint (self, "You need more cells to upgrade the tesla\n");
\r
155 if ((self.building.ammo_rockets >= 3))
\r
157 sprint (self, "You can only upgrade the capacitor 3 times\n");
\r
161 if ((self.building.currentammo >= 6))
\r
163 sprint (self, "You can only have
\98 upgrades on the gun\n");
\r
167 if ((self.ammo_cells >= 100))
\r
169 self.ammo_cells = (self.ammo_cells - 100);
\r
170 self.building.ammo_rockets = (self.building.ammo_rockets + 1);
\r
171 self.building.currentammo = (self.building.currentammo + 1);
\r
172 if ((self.building.ammo_rockets == 1))
\r
174 self.building.max_health = (self.building.max_health + 100);
\r
175 self.building.health = (self.building.health + 100);
\r
176 self.building.ammo_cells = 120;
\r
180 if ((self.building.ammo_rockets == 2))
\r
182 self.building.max_health = (self.building.max_health + 150);
\r
183 self.building.health = (self.building.health + 150);
\r
184 self.building.ammo_cells = 200;
\r
188 if ((self.building.ammo_rockets == 3))
\r
190 self.building.max_health = (self.building.max_health + 150);
\r
191 self.building.health = (self.building.health + 150);
\r
192 self.building.ammo_cells = 300;
\r
199 sprint (self, "You need more cells to upgrade the tesla\n");
\r
206 if ((self.building.tf_items & 2))
\r
208 sprint (self, "It is already a turret!\n");
\r
212 if ((self.building.currentammo > (6 - 2)))
\r
214 sprint (self, "This requires two upgrades, sorry\n");
\r
218 if ((self.ammo_cells >= (2 * 100)))
\r
220 self.ammo_cells = (self.ammo_cells - (2 * 100));
\r
221 if ((self.ammo_cells < 0))
\r
223 self.ammo_cells = 0;
\r
225 self.building.currentammo = (self.building.currentammo + 2);
\r
226 if ((self.building.tf_items & 2))
\r
228 sprint (self, "Gun is already deployed\n");
\r
232 self.building.origin_z = (self.building.origin_z + 15);
\r
235 sprint (self, "You need a clear area to launch\n");
\r
236 self.building.origin_z = (self.building.origin_z - 15);
\r
240 self.building.origin_z = (self.building.origin_z + 25);
\r
241 sprint (self, "You turretize your tesla\n");
\r
242 self.has_turretized_tesla = 1;
\r
243 self.building.angles_z = 180;
\r
244 self.building.flags = (self.building.flags - (self.building.flags & 512));
\r
245 self.building.movetype = 5;
\r
246 self.building.velocity_z = 200;
\r
247 setsize (self.building, '-16.000000 -16.000000 -40.000000', '16.000000 16.000000 -10.000000');
\r
248 self.building.tf_items = (self.building.tf_items | 2);
\r
254 sprint (self, "You need more cells to upgrade the tesla\n");
\r
261 if ((self.building.tf_items & 1))
\r
263 sprint (self, "It already has an improved targeter\n");
\r
267 if ((self.building.currentammo > (6 - 2)))
\r
269 sprint (self, "This requires two upgrades, hence the '2u'...\n");
\r
273 if ((self.ammo_cells >= (2 * 100)))
\r
275 self.ammo_cells = (self.ammo_cells - (2 * 100));
\r
276 if ((self.ammo_cells < 0))
\r
278 self.ammo_cells = 0;
\r
280 self.building.currentammo = (self.building.currentammo + 2);
\r
281 self.building.tf_items = (self.building.tf_items | 1);
\r
285 sprint (self, "You need more cells to upgrade the tesla\n");
\r
292 if ((self.building.tf_items & 1024))
\r
294 sprint (self, "You already built a spy detector\n");
\r
298 if ((self.building.currentammo > (6 - 4)))
\r
300 sprint (self, "Spy detector takes 4 upgrades\n");
\r
304 if ((self.ammo_cells >= (2 * 100)))
\r
306 self.ammo_cells = (self.ammo_cells - (4 * 100));
\r
307 if ((self.ammo_cells < 0))
\r
309 self.ammo_cells = 0;
\r
311 self.building.currentammo = (self.building.currentammo + 4);
\r
312 self.building.tf_items = (self.building.tf_items | 1024);
\r
316 sprint (self, "You need more cells to upgrade the tesla\n");
\r
323 if ((self.building.health < self.building.max_health))
\r
325 cost = (self.building.max_health - self.building.health) / 2;
\r
326 if ((self.ammo_cells >= cost))
\r
328 self.ammo_cells = (self.ammo_cells - cost);
\r
329 self.building.health = self.building.max_health;
\r
332 if ((self.building.ammo_rockets == 0))
\r
338 if ((self.building.ammo_rockets == 1))
\r
344 if ((self.building.ammo_rockets == 2))
\r
350 if ((self.building.ammo_rockets == 3))
\r
357 cost = maxcells - self.building.ammo_cells;
\r
358 if ((cost > self.ammo_cells))
\r
360 cost = self.ammo_cells;
\r
362 self.ammo_cells = (self.ammo_cells - cost);
\r
363 self.building.ammo_cells = (self.building.ammo_cells + cost);
\r
367 sprint (self, "You dismantle the Tesla Gun.\n");
\r
368 self.ammo_cells = (self.ammo_cells + (150 / 2));
\r
369 self.building.real_owner.has_tesla = 0;
\r
370 self.building.real_owner.has_turretized_tesla = 0;
\r
371 if ((self.building.real_owner.team_no != self.team_no))
\r
373 self.real_frags = (self.real_frags + 1);
\r
374 if (!(toggleflags & 128))
\r
376 self.frags = self.real_frags;
\r
379 if ((self.building.real_owner != self))
\r
381 sprint (self.building.real_owner, self.netname);
\r
382 sprint (self.building.real_owner, " dismantled your Tesla Coil.\n");
\r
383 teamsprint (self.building.real_owner.team_no, self.building.real_owner, self.netname);
\r
384 teamsprint (self.building.real_owner.team_no, self.building.real_owner, " dismantled ");
\r
385 teamsprint (self.building.real_owner.team_no, self.building.real_owner, self.building.real_owner.netname);
\r
386 teamsprint (self.building.real_owner.team_no, self.building.real_owner, "'s Tesla Coil.\n");
\r
388 dremove (self.building);
\r
390 if (((inp >= 1) && (inp <= 9)))
\r
394 bound_other_ammo (self);
\r
395 if ((self.armorvalue == 0))
\r
397 self.armortype = 0;
\r
398 self.armorclass = 0;
\r
399 self.items = (self.items - (self.items & ((8192 | 16384) | 32768)));
\r
401 W_SetCurrentAmmo ();
\r