]> de.git.xonotic.org Git - voretournament/voretournament.git/blob - data/qcsrc/server/pathlib/debug.qc
Initial checkout of Vore Tournament 0.1.alpha.
[voretournament/voretournament.git] / data / qcsrc / server / pathlib / debug.qc
1 \r
2 void mark_error(vector where,float lifetime);\r
3 void mark_info(vector where,float lifetime);\r
4 entity mark_misc(vector where,float lifetime);\r
5 \r
6 \r
7 void pathlib_showpath(entity start)\r
8 {\r
9     entity e;\r
10     e = start;\r
11     while(e.path_next)\r
12     {\r
13         te_lightning1(e,e.origin,e.path_next.origin);\r
14         e = e.path_next;\r
15     }\r
16 }\r
17 \r
18 void path_dbg_think()\r
19 {\r
20     pathlib_showpath(self);\r
21     self.nextthink = time + 1;\r
22 }\r
23 \r
24 void __showpath2_think()\r
25 {\r
26     mark_info(self.origin,1);\r
27     if(self.path_next)\r
28     {\r
29         self.path_next.think     = __showpath2_think;\r
30         self.path_next.nextthink = time + 0.15;\r
31     }\r
32     else\r
33     {\r
34         self.owner.think     = __showpath2_think;\r
35         self.owner.nextthink = time + 0.15;\r
36     }\r
37 }\r
38 \r
39 void pathlib_showpath2(entity path)\r
40 {\r
41     path.think     = __showpath2_think;\r
42     path.nextthink = time;\r
43 }\r
44 \r
45 \r
46 void pathlib_showsquare2(entity node ,vector ncolor,float align)\r
47 {\r
48 \r
49     node.alpha     = 0.25;\r
50     node.scale     = pathlib_gridsize / 512.001;\r
51     node.solid     = SOLID_NOT;\r
52 \r
53     setmodel(node,"models/pathlib/square.md3");\r
54     setorigin(node,node.origin);\r
55     node.colormod = ncolor;\r
56 \r
57     if(align)\r
58     {\r
59         traceline(node.origin + '0 0 32',node.origin - '0 0 128',MOVE_WORLDONLY,node);\r
60         node.angles = vectoangles(trace_plane_normal);\r
61         node.angles_x -= 90;\r
62     }\r
63 }\r
64 \r
65 void pathlib_showsquare(vector where,float goodsquare,float lifetime)\r
66 {\r
67     entity s;\r
68 \r
69     if(!lifetime)\r
70         lifetime = time + 30;\r
71     else\r
72         lifetime += time;\r
73 \r
74     s           = spawn();\r
75     s.alpha     = 0.25;\r
76     s.think     = SUB_Remove;\r
77     s.nextthink = lifetime;\r
78     s.scale     = pathlib_gridsize / 512.001;\r
79     s.solid     = SOLID_NOT;\r
80 \r
81     if(goodsquare)\r
82         setmodel(s,"models/pathlib/goodsquare.md3");\r
83     else\r
84         setmodel(s,"models/pathlib/badsquare.md3");\r
85 \r
86 \r
87 \r
88     traceline(where + '0 0 32',where - '0 0 128',MOVE_WORLDONLY,s);\r
89 \r
90     s.angles = vectoangles(trace_plane_normal);\r
91     s.angles_x -= 90;\r
92     setorigin(s,where);\r
93 }\r
94 \r
95 void pathlib_showedge(vector where,float lifetime,float rot)\r
96 {\r
97     entity e;\r
98 \r
99     if(!lifetime)\r
100         lifetime = time + 30;\r
101     else\r
102         lifetime += time;\r
103 \r
104     e           = spawn();\r
105     e.alpha     = 0.25;\r
106     e.think     = SUB_Remove;\r
107     e.nextthink = lifetime;\r
108     e.scale     = pathlib_gridsize / 512;\r
109     e.solid     = SOLID_NOT;\r
110     setorigin(e,where);\r
111     setmodel(e,"models/pathlib/edge.md3");\r
112     //traceline(where + '0 0 32',where - '0 0 128',MOVE_WORLDONLY,e);\r
113     //e.angles = vectoangles(trace_plane_normal);\r
114     e.angles_y = rot;\r
115     //e.angles_x += 90;\r
116 \r
117 }\r