1 /*
2  * Globals.cpp
3  * Copyright (C) 2007 by Bryan Duff <duff0097@gmail.com>
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
18  * USA
19  */
20 #include "Globals.h"
21 #include "Quaternions.h"
22 #include "Constants.h"
23 #include "Models.h"
24 #include "Person.h"
25 #include "Decals.h"
26 #include "Font.h"
27 
28 float sinefluct;
29 float sinefluctprog;
30 
31 double multiplier = 0;
32 
33 unsigned int gSourceID[100];    // hundred source IDs
34 unsigned int gSampleSet[100];   // hundred sample set ID numbers
35 
36 float soundscalefactor;
37 int slomo;
38 
39 Animation animation[30];
40 Model skeletonmodels[10];
41 Model gunmodels[11];
42 Costume costume[10];
43 Sprites sprites;
44 Decals decals;
45 Camera camera;
46 Skeleton testskeleton;
47 Config config;
48 Environment environment;
49 Font font;
50 
51 Fog fog;
52 
53 bool blood;
54 
55 float d;
56 float a1, a2, a3;
57 float total, denom, mu;
58 XYZ n, pa1, pa2, pa3;
59 
60 float u0, u1, u2;
61 float v0, v1, v2;
62 float a, b;
63 float max;
64 int i, j; //wha?
65 bool bInter;
66 float pointv[3];
67 float p1v[3];
68 float p2v[3];
69 float p3v[3];
70 float normalv[3];
71 
72 //skeletal animation
73 XYZ vel;
74 XYZ midp;
75 XYZ newpoint1, newpoint2;
76 float oldlength;
77 float relaxlength;
78 
79 //physics
80 float friction;
81 int numrepeats;
82 float groundlevel;
83 float offset;
84 XYZ impact;
85 XYZ overpoint;
86 XYZ underpoint;
87 int whichtri;
88 XYZ normalrotated;
89 bool groundish;
90