1 // Team:Nexuiz Metal Extractor
\r
3 // Idea by: avirox/Wazat
\r
4 // Implementation: avirox
\r
6 void () Extractor_Idle =
\r
8 // add some flashy effects/animations here or something
\r
10 self.ammo_metal = self.ammo_metal + 5;
\r
11 if (self.ammo_metal >= BUILDING_EXTRACTOR_MAXMETAL)
\r
13 self.ammo_metal = BUILDING_EXTRACTOR_MAXMETAL;
\r
14 if (self.ammo_shells != 1)
\r
16 sprint(self.real_owner, "One of your metal extractors is full!\n");
\r
17 self.ammo_shells = 1;
\r
21 if (self.ammo_cells == 0)
\r
22 self.nextthink = time + 8;
\r
23 else if (self.ammo_cells == 1)
\r
24 self.nextthink = time + 6;
\r
25 else if (self.ammo_cells == 2)
\r
26 self.nextthink = time + 4;
\r
29 void () Extractor_Die =
\r
31 if (self.real_owner.has_extractor < 2)
\r
32 sprint (self.real_owner, "Your extractor was destoyed.\n");
\r
34 sprint (self.real_owner, "One of your extractors was destoyed.\n");
\r
35 self.real_owner.has_extractor = self.real_owner.has_extractor - 1;
\r
36 /* ThrowGib ("progs/tgib1.mdl", -70); // use other explosion method?
\r
37 ThrowGib ("progs/tgib2.mdl", -70);
\r
38 ThrowGib ("progs/tgib3.mdl", -70);*/
\r
41 WriteCoord (2, self.origin_x);
\r
42 WriteCoord (2, self.origin_y);
\r
43 WriteCoord (2, self.origin_z);
\r
47 void (entity gun) Engineer_UseExtractor =
\r
49 local entity dist_checker;
\r
51 self.current_menu = MENU_EXTRACTOR;
\r
52 self.menu_count = 25;
\r
53 self.building = gun;
\r
54 dist_checker = spawn ();
\r
55 dist_checker.classname = "timer";
\r
56 dist_checker.owner = self;
\r
57 dist_checker.enemy = gun;
\r
58 dist_checker.think = CheckDistance;
\r
59 dist_checker.nextthink = (time + 0.3);
\r