]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/warpzonelib/util_server.qc
Merge branch 'master' into Mario/qc_physics_prehax
[xonotic/xonotic-data.pk3dir.git] / qcsrc / warpzonelib / util_server.qc
1 #if defined(CSQC)
2 #elif defined(MENUQC)
3 #elif defined(SVQC)
4         #include "../dpdefs/progsdefs.qh"
5     #include "../dpdefs/dpextensions.qh"
6     #include "util_server.qh"
7     #include "../csqcmodellib/sv_model.qh"
8 #endif
9 #include "common.qh"
10
11 void WarpZoneLib_ExactTrigger_Init()
12 {
13         vector mi, ma;
14         if (self.movedir == '0 0 0')
15         if (self.angles != '0 0 0')
16         {
17                 makevectors (self.angles);
18                 self.movedir = v_forward;
19         }
20         if(self.model == "")
21         {
22                 // It's a box! No need to match with exacttriggers.
23                 self.warpzone_isboxy = 1;
24         }
25         else
26         {
27                 mi = self.mins;
28                 ma = self.maxs;
29                 precache_model(self.model);
30                 setmodel(self, self.model);
31                 // let mapper-set mins/maxs override the model's bounds if set
32                 if(mi != '0 0 0' || ma != '0 0 0')
33                 {
34                         // It's a box! No need to match with exacttriggers.
35                         self.mins = mi;
36                         self.maxs = ma;
37                         self.warpzone_isboxy = 1;
38                 }
39         }
40         setorigin(self, self.origin);
41         if(self.scale)
42                 setsize(self, self.mins * self.scale, self.maxs * self.scale);
43         else
44                 setsize(self, self.mins, self.maxs);
45         self.movetype = MOVETYPE_NONE;
46         self.solid = SOLID_TRIGGER;
47         self.model = "";
48 }