1 /*************************************
\r
2 Team:Nexuiz (NexTF) Definitions
\r
3 *************************************/
\r
5 /********************* General ***************************/
\r
6 float TF_FLARE_LIT = 0; // Woes of a decompiler, eh?
\r
7 float TF_FLARE_OFF = 1; ////
\r
9 float (entity e, float healamount, float ignore) T_Heal;
\r
11 // Temporary Defs (till I implement real systems for these)
\r
12 //float joinorder; // menu implemented :)
\r
13 .float undercover_team; // is undercover as team number... Are we gonna use this one, wazat?
\r
14 .float is_undercover; // is just undercover..
\r
29 float illegalclasses/* = 0*/;
\r
30 float illegalclasses1;
\r
31 float illegalclasses2;
\r
32 float illegalclasses3;
\r
33 float illegalclasses4;
\r
34 float civilianteams;
\r
36 // Last Spawn Place of Team
\r
37 entity lastspawn_team1;
\r
38 entity lastspawn_team2;
\r
39 entity lastspawn_team3;
\r
40 entity lastspawn_team4;
\r
42 .float playerclass; // TF's recognition of players. This will be set in accordance to tf playerclasses
\r
45 float TF_CLASS_SCOUT = 1;
\r
46 float TF_CLASS_SNIPER = 2; //not in NexTF
\r
47 float TF_CLASS_SOLDIER = 3;
\r
48 float TF_CLASS_DEMOMAN = 4; //not in NexTF
\r
49 float TF_CLASS_MEDIC = 5;
\r
50 float TF_CLASS_HWGUY = 6; //not in NexTF
\r
51 float TF_CLASS_PYRO = 7;
\r
52 float TF_CLASS_SPY = 8;
\r
53 float TF_CLASS_ENGINEER = 9;
\r
54 float TF_CLASS_RANDOM = 10; // Need fucntions for these 2
\r
55 float TF_CLASS_CIVILIAN = 11; ////
\r
56 .float respawn_as_new_class; // what class the player will respawn as in accordance to tf's .playerclass
\r
58 // Death Message (we should incorporate this into Team:Nexuiz some time)
\r
62 .float has_abbreviated; // for NetQuake's UpdateAbbreviation fucntion
\r
64 .float hasnt_item_from_group;
\r
65 float flagem_checked;
\r
66 .float tp_grenades_1;
\r
67 .float tp_grenades_2;
\r
70 .entity observer_list;
\r
71 float cb_prematch_time;
\r
73 float civilianteams; // Are civilian teams allowed?
\r
75 float parems_decoded; // Have the parameters already been decoded - XavioR
\r
77 //Team Frags (old function -- possibly moot)
\r
83 //FlagExists floats so that a team flag isnt spawned twice by the Q3F conversion code
\r
84 float redflagexists;
\r
85 float blueflagexists;
\r
87 .void() th_die; // wtf is this again..
\r
96 .float clip_crylink;
\r
97 .float clip_rockets;
\r
98 .float clip_pipegrenades;
\r
99 float CLIP_MAX_CRYLINK = 8;
\r
100 float CLIP_MAX_ROCKETS = 4;
\r
101 float CLIP_MAX_PIPEGRENADES = 6;
\r
103 .float is_dead; // temp // player is dead
\r
105 .float immune_to_check; // How long player is immune to cheat check?
\r
106 //// Personally i think I'm jsut gonna implement krimzon's
\r
107 //// ParseClientCommand to check color change cheats. - XavioR
\r
108 .float axhitme; // Goal Item (I think) -- if ax hits then blah
\r
109 // There's no axe in nexuiz tho.... :/
\r
110 .float armor_allowed; //
\r
111 .float maxarmor; ////
\r
112 .float ammo_medikit;
\r
113 .float maxammo_medikit;
\r
114 .float ammo_detpack;
\r
115 .float maxammo_detpack;
\r
116 .float maxammo_shells;
\r
117 .float maxammo_nails;
\r
118 .float maxammo_cells;
\r
119 .float maxammo_rockets;
\r
120 .float last_impulse;
\r
122 .float items_allowed;
\r
123 .float super_time; // no idea(?)
\r
124 .float super_sound; ////
\r
125 .float invisible_finished; // Not a NexTF function(?)
\r
126 .float invisible_time; ////
\r
127 .float radsuit_finished; // BioSuit(?)
\r
128 .float rad_time; ////
\r
129 .float distance; // My guess is that this is whatever TF uses to store entity distances
\r
130 // from each other?
\r
134 .float worldtype; // Not sure
\r
136 .float armorclass; // How will nexTF's armor class work?
\r
137 // It's a good thing to have in anyways I guess.
\r
139 .float weaponmode; // I think only demoman and HWGuy use this, and since they're not in nextf.. poof
\r
142 .float tfstate; // State of the player according to quake TF.
\r
143 // I will try to satisfy it for NexTF after the goal porting is done.
\r
145 .float maxstrafespeed;
\r
146 .float StatusRefreshTime; // The Status Bar
\r
147 .float StatusBarSize; ////
\r
148 .float StatusBarRes; ////
\r
151 .float current_menu;
\r
154 .float heat; // What tf uses for powering up weapons. Could be useful later?
\r
159 .entity trigger_field;
\r
161 .string noise4; // MTF fucntion -- possibly moot.
\r
162 .string deathtype; // "You have the flag"
\r
164 .string team_str_home;
\r
165 .string team_str_moved;
\r
166 .string team_str_carried;
\r
168 void (entity targ, entity inflictor, entity attacker, float damage) T_Damage;
\r
169 void (entity targ, entity inflictor, entity attacker, float damage, float T_flags, float T_AttackType) TF_T_Damage;
\r
170 void (entity Viewer, float pc, float rpc) TeamFortress_PrintClassName;
\r
171 void (float classnum) SetMaxAmmoFor;
\r
173 /*********************************************************/
\r
174 ///////////////////////////////////////////////////////////
\r
175 /******************* Moved from:**************************/
\r
177 .float nextpc; // for qued next player class -- we gonna use this?
\r
178 void (string halias, float himpulse1, float himpulse2) TeamFortress_Alias;
\r
179 string () ChooseRandomClass;
\r
182 .float invincible_time; //Pent effect time
\r
183 .float invincible_sound; //Pent hit sound
\r
184 void (entity inflictor, entity attacker, float damage, entity ignore) T_RadiusDamage;
\r
188 .float tf_items_flags;
\r
192 .float goal_activation;
\r
193 .float goal_effects;
\r
195 .float activate_goal_no;
\r
196 .float inactivate_goal_no;
\r
197 .float if_goal_is_active;
\r
198 .float if_goal_is_inactive;
\r
199 .float if_goal_is_removed;
\r
200 .float if_group_is_active;
\r
201 .float if_group_is_inactive;
\r
202 .float if_group_is_removed;
\r
203 .float remove_goal_no;
\r
204 .float restore_goal_no;
\r
205 .float activate_group_no;
\r
206 .float inactivate_group_no;
\r
207 .float remove_group_no;
\r
208 .float restore_group_no;
\r
209 .float has_item_from_group;
\r
210 .float remove_item_group;
\r
211 .float return_item_no;
\r
215 .entity movetarget;
\r
216 void () SUB_CalcMoveDone;
\r
217 void (vector tdest, float tspeed, void() func) SUB_CalcMove;
\r
218 void (entity ent, vector tdest, float tspeed, void() func) SUB_CalcMoveEnt;
\r
221 .string is_converted_goal; // This is used to identify converted goals (helps me determine spawn in q3f maps)
\r
222 .string groupname; // generally gets set to blueflag or redflag
\r
224 .vector orig_origin;
\r
225 .string activetarget;
\r
226 .string allowteams;
\r
230 void () TeamFortress_PrimeGrenade;
\r
231 void () TeamFortress_ThrowGrenade;
\r
232 void () NormalGrenadeTouch;
\r
233 void () NormalGrenadeExplode;
\r
237 .float dont_do_triggerwork;
\r
238 void (entity Goal, entity AP) DoGroupWork;
\r
239 void (entity Goal, entity AP) DoGoalWork;
\r
240 void () button_wait;
\r
241 void () SUB_Remove;
\r
244 .float super_damage_finished; // turrets can get super charged too!
\r
246 //idea: VorteX, LordHavoc (somebody else?)
\r
247 //DarkPlaces implementation: VorteX
\r
248 //builtin definitions:
\r
249 float(entity ent, string tagname) gettagindex = #451;
\r
250 vector(entity ent, float tagindex) gettaginfo = #452;
\r
252 //gettagindex returns the number of a tag on an entity, this number is the same as set by setattachment (in the .tag_index field), allowing the qc to save a little cpu time by keeping the number around if it wishes (this could already be done by calling setattachment and saving off the tag_index).
\r
253 //gettaginfo returns the origin of the tag in worldspace and sets v_forward, v_right, and v_up to the current orientation of the tag in worldspace, this automatically resolves all dependencies (attachments, including viewmodelforclient), this means you could fire a shot from a tag on a gun entity attached to the view for example.
\r
256 float modelindex_null = 0;
\r
257 .float has_turretized_tesla; // is the player's tesla turretized?
\r
258 float modelindex_eyes = 0;
\r
262 .float impulse_wait; // time when player can next use an impulse
\r
266 .float is_building; // is the player in the middle of building something
\r
267 .float has_dispenser; // player has dispenser
\r
268 .float has_sentry; // player has sentry gun
\r
269 .float has_tesla; // player has tesla coil
\r
270 .float has_teleporter; // player has telepad (2 max)
\r
271 .entity barrel_ent; // sentry gun's barrel entity
\r
272 .entity animation_ent; // an object's entity that controls its animations (dirty, but effective)
\r
273 .float weapons_carried; // used with tesla
\r
274 void () TeamFortress_FinishedBuilding;
\r
275 void () lvl1_sentry_stand;
\r
276 void (float tno, entity ignore, string st) teamsprint;
\r
277 .entity real_owner; // The building's real owner (the one who built it)
\r
279 .float current_weapon;
\r
282 .void(entity attacker, float damage) th_pain; // Function the building calls when it gets hurt
\r
285 /******************* End Moved From Section **************/
\r
286 ///////////////////////////////////////////////////////////
\r
287 /*************** Defs that need functions ****************/
\r
288 .float lives; // Amount of lives
\r
290 .float is_unabletospy; // picking up tfgoal makes the spy unable to go undercover
\r
291 .float owned_by; // Item is owned by team #