2 Copyright (C) 2003, 2010 - Wolfire Games
4 This file is part of Lugaru.
6 Lugaru is free software; you can redistribute it and/or
7 modify it under the terms of the GNU General Public License
8 as published by the Free Software Foundation; either version 2
9 of the License, or (at your option) any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15 See the GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program; if not, write to the Free Software
19 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25 /**> HEADER FILES <**/
28 #include "Quaternions.h"
31 #include "Constants.h"
41 #define attacktypecutoff 4
42 #define playercontrolled 5
44 #define getweapontype 7
45 #define pathfindtype 8
65 int oldcurrentanimation;
66 int oldtargetanimation;
70 float parriedrecently;
74 int lastattack,lastattack2,lastattack3;
76 XYZ currentoffset,targetoffset,offset;
94 float unconscioustime;
112 bool rabbitkickenabled;
121 float damagetolerance;
123 float permanentdamage;
124 float superpermanentdamage; float lastcollide;
142 float texupdatedelay;
144 float headrotation,headrotation2;
145 float targetheadrotation,targetheadrotation2;
156 float normalsupdatedelay;
161 bool forwardstogglekeydown;
166 bool jumptogglekeydown;
168 bool crouchtogglekeydown;
170 bool drawtogglekeydown;
172 bool throwtogglekeydown;
178 float crouchkeydowntime;
179 float jumpkeydowntime;
188 float losupdatedelay;
196 float whichdirectiondelay;
197 bool avoidsomething; XYZ avoidwhere;
198 float blooddimamount;
205 float lefthandmorphness;
206 float righthandmorphness;
208 float chestmorphness;
210 float targetlefthandmorphness;
211 float targetrighthandmorphness;
212 float targetheadmorphness;
213 float targetchestmorphness;
214 float targettailmorphness;
215 int lefthandmorphstart,lefthandmorphend;
216 int righthandmorphstart,righthandmorphend;
217 int headmorphstart,headmorphend;
218 int chestmorphstart,chestmorphend;
219 int tailmorphstart,tailmorphend;
221 float weaponmissdelay;
222 float highreversaldelay;
223 float lowreversaldelay;
224 float nocollidedelay;
237 float protectionhead;
238 float protectionhigh;
248 char clothes[10][256];
249 float clothestintr[10];
250 float clothestintg[10];
251 float clothestintb[10];
257 float onfiredelay; float burnt;
261 float updatestuffdelay;
269 int weaponstuckwhere;
274 int waypointtype[90];
276 bool hastempwaypoint;
282 XYZ finalfinaltarget;
284 int finalpathfindpoint;
285 int targetpathfindpoint;
286 int lastpathfindpoint;
287 int lastpathfindpoint2;
288 int lastpathfindpoint3;
289 int lastpathfindpoint4;
300 float runninghowlong; int lastoccluded;
305 float neckspurtdelay;
306 float neckspurtparticledelay;
307 float neckspurtamount;
310 bool rabbitkickragdoll;
315 Animation tempanimation;
321 void DoBlood(float howmuch, int which);
322 void DoBloodBig(float howmuch, int which);
323 bool DoBloodBigWhere(float howmuch, int which, XYZ where);
364 void DoDamage(float howmuch);
366 void DoMipmaps(int howmanylevels, float startx, float endx, float starty, float endy);
367 int SphereCheck(XYZ *p1,float radius, XYZ *p, XYZ *move, float *rotate, Model *model);
369 void Puff(int whichlabel);
370 void FootLand(int which, float opacity);
373 void RagDoll(bool checkcollision);
376 extern Person player[maxplayers];