diff options
author | Franklin Wei <git@fwei.tk> | 2018-02-11 15:34:30 -0500 |
---|---|---|
committer | Franklin Wei <git@fwei.tk> | 2019-07-19 22:37:40 -0400 |
commit | 5d05b9d3e920a6aa5fcb553758e98ed0da8c91e4 (patch) | |
tree | 84406e21639529a185556a33e5de7f43cffc277b /apps/plugins/sdl/progs/quake/progdefs.q2 | |
parent | b70fecf21ddc21877ec1ae7888d9c18a979e37ad (diff) | |
download | rockbox-5d05b9d3e920a6aa5fcb553758e98ed0da8c91e4.tar.gz rockbox-5d05b9d3e920a6aa5fcb553758e98ed0da8c91e4.zip |
Quake!
This ports id Software's Quake to run on the SDL plugin runtime. The
source code originated from id under the GPLv2 license. I used
https://github.com/ahefner/sdlquake as the base of my port.
Performance is, unsurprisingly, not on par with what you're probably
used to on PC. I average about 10FPS on ipod6g, but it's still
playable.
Sound works well enough, but in-game music is not supported. I've
written ARM assembly routines for the inner sound loop. Make sure you
turn the "brightness" all the way down, or colors will look funky.
To run, extract Quake's data files to /.rockbox/quake. Have fun!
Change-Id: I4285036e967d7f0722802d43cf2096c808ca5799
Diffstat (limited to 'apps/plugins/sdl/progs/quake/progdefs.q2')
-rw-r--r-- | apps/plugins/sdl/progs/quake/progdefs.q2 | 158 |
1 files changed, 158 insertions, 0 deletions
diff --git a/apps/plugins/sdl/progs/quake/progdefs.q2 b/apps/plugins/sdl/progs/quake/progdefs.q2 new file mode 100644 index 0000000000..dc7f3be9bb --- /dev/null +++ b/apps/plugins/sdl/progs/quake/progdefs.q2 | |||
@@ -0,0 +1,158 @@ | |||
1 | |||
2 | /* file generated by qcc, do not modify */ | ||
3 | |||
4 | typedef struct | ||
5 | { int pad[28]; | ||
6 | int self; | ||
7 | int other; | ||
8 | int world; | ||
9 | float time; | ||
10 | float frametime; | ||
11 | float force_retouch; | ||
12 | string_t mapname; | ||
13 | string_t startspot; | ||
14 | float deathmatch; | ||
15 | float coop; | ||
16 | float teamplay; | ||
17 | float serverflags; | ||
18 | float total_secrets; | ||
19 | float total_monsters; | ||
20 | float found_secrets; | ||
21 | float killed_monsters; | ||
22 | float parm1; | ||
23 | float parm2; | ||
24 | float parm3; | ||
25 | float parm4; | ||
26 | float parm5; | ||
27 | float parm6; | ||
28 | float parm7; | ||
29 | float parm8; | ||
30 | float parm9; | ||
31 | float parm10; | ||
32 | float parm11; | ||
33 | float parm12; | ||
34 | float parm13; | ||
35 | float parm14; | ||
36 | float parm15; | ||
37 | float parm16; | ||
38 | vec3_t v_forward; | ||
39 | vec3_t v_up; | ||
40 | vec3_t v_right; | ||
41 | float trace_allsolid; | ||
42 | float trace_startsolid; | ||
43 | float trace_fraction; | ||
44 | vec3_t trace_endpos; | ||
45 | vec3_t trace_plane_normal; | ||
46 | float trace_plane_dist; | ||
47 | int trace_ent; | ||
48 | float trace_inopen; | ||
49 | float trace_inwater; | ||
50 | int msg_entity; | ||
51 | string_t null; | ||
52 | func_t main; | ||
53 | func_t StartFrame; | ||
54 | func_t PlayerPreThink; | ||
55 | func_t PlayerPostThink; | ||
56 | func_t ClientKill; | ||
57 | func_t ClientConnect; | ||
58 | func_t PutClientInServer; | ||
59 | func_t ClientDisconnect; | ||
60 | func_t SetNewParms; | ||
61 | func_t SetChangeParms; | ||
62 | } globalvars_t; | ||
63 | |||
64 | typedef struct | ||
65 | { | ||
66 | float modelindex; | ||
67 | vec3_t absmin; | ||
68 | vec3_t absmax; | ||
69 | float ltime; | ||
70 | float movetype; | ||
71 | float solid; | ||
72 | vec3_t origin; | ||
73 | vec3_t oldorigin; | ||
74 | vec3_t velocity; | ||
75 | vec3_t angles; | ||
76 | vec3_t avelocity; | ||
77 | vec3_t basevelocity; | ||
78 | vec3_t punchangle; | ||
79 | string_t classname; | ||
80 | string_t model; | ||
81 | float frame; | ||
82 | float skin; | ||
83 | float effects; | ||
84 | float drawPercent; | ||
85 | float gravity; | ||
86 | float mass; | ||
87 | float light_level; | ||
88 | vec3_t mins; | ||
89 | vec3_t maxs; | ||
90 | vec3_t size; | ||
91 | func_t touch; | ||
92 | func_t use; | ||
93 | func_t think; | ||
94 | func_t blocked; | ||
95 | float nextthink; | ||
96 | int groundentity; | ||
97 | float health; | ||
98 | float frags; | ||
99 | float weapon; | ||
100 | string_t weaponmodel; | ||
101 | float weaponframe; | ||
102 | float currentammo; | ||
103 | float ammo_shells; | ||
104 | float ammo_nails; | ||
105 | float ammo_rockets; | ||
106 | float ammo_cells; | ||
107 | float items; | ||
108 | float items2; | ||
109 | float takedamage; | ||
110 | int chain; | ||
111 | float deadflag; | ||
112 | vec3_t view_ofs; | ||
113 | float button0; | ||
114 | float button1; | ||
115 | float button2; | ||
116 | float impulse; | ||
117 | float fixangle; | ||
118 | vec3_t v_angle; | ||
119 | float idealpitch; | ||
120 | float pitch_speed; | ||
121 | string_t netname; | ||
122 | int enemy; | ||
123 | float flags; | ||
124 | float colormap; | ||
125 | float team; | ||
126 | float max_health; | ||
127 | float teleport_time; | ||
128 | float armortype; | ||
129 | float armorvalue; | ||
130 | float waterlevel; | ||
131 | float watertype; | ||
132 | float ideal_yaw; | ||
133 | float yaw_speed; | ||
134 | int aiment; | ||
135 | int goalentity; | ||
136 | float spawnflags; | ||
137 | string_t target; | ||
138 | string_t targetname; | ||
139 | float dmg_take; | ||
140 | float dmg_save; | ||
141 | int dmg_inflictor; | ||
142 | int owner; | ||
143 | vec3_t movedir; | ||
144 | string_t message; | ||
145 | float sounds; | ||
146 | string_t noise; | ||
147 | string_t noise1; | ||
148 | string_t noise2; | ||
149 | string_t noise3; | ||
150 | float dmg; | ||
151 | float dmgtime; | ||
152 | float air_finished; | ||
153 | float pain_finished; | ||
154 | float radsuit_finished; | ||
155 | float speed; | ||
156 | } entvars_t; | ||
157 | |||
158 | #define PROGHEADER_CRC 31586 | ||