1#ifndef CONTENT_TYPES_HEADER
2#define CONTENT_TYPES_HEADER
3#include <engine/graphics.h>
4struct CDataSound
5{
6 int m_Id;
7 const char* m_pFilename;
8};
9struct CDataSoundset
10{
11 const char* m_pName;
12 int m_NumSounds;
13 CDataSound *m_aSounds;
14 int m_Last;
15};
16struct CDataImage
17{
18 const char* m_pName;
19 const char* m_pFilename;
20 int m_Flag;
21 IGraphics::CTextureHandle m_Id;
22};
23struct CDataSpriteset
24{
25 CDataImage* m_pImage;
26 int m_Gridx;
27 int m_Gridy;
28};
29struct CDataSprite
30{
31 const char* m_pName;
32 CDataSpriteset* m_pSet;
33 int m_X;
34 int m_Y;
35 int m_W;
36 int m_H;
37};
38struct CDataPickupspec
39{
40 const char* m_pName;
41 int m_Respawntime;
42 int m_Spawndelay;
43};
44struct CAnimKeyframe
45{
46 float m_Time;
47 float m_X;
48 float m_Y;
49 float m_Angle;
50};
51struct CAnimSequence
52{
53 int m_NumFrames;
54 CAnimKeyframe *m_aFrames;
55};
56struct CAnimation
57{
58 const char* m_pName;
59 CAnimSequence m_Body;
60 CAnimSequence m_BackFoot;
61 CAnimSequence m_FrontFoot;
62 CAnimSequence m_Attach;
63};
64struct CDataWeaponspec
65{
66 const char* m_pName;
67 CDataSprite* m_pSpriteBody;
68 CDataSprite* m_pSpriteCursor;
69 CDataSprite* m_pSpriteProj;
70 int m_NumSpriteMuzzles;
71 CDataSprite* *m_aSpriteMuzzles;
72 int m_VisualSize;
73 int m_Firedelay;
74 int m_Maxammo;
75 int m_Ammoregentime;
76 int m_Damage;
77 float m_Offsetx;
78 float m_Offsety;
79 float m_Muzzleoffsetx;
80 float m_Muzzleoffsety;
81 float m_Muzzleduration;
82};
83struct CDataWeaponspecHammer
84{
85 CDataWeaponspec* m_pBase;
86};
87struct CDataWeaponspecGun
88{
89 CDataWeaponspec* m_pBase;
90 float m_Curvature;
91 float m_Speed;
92 float m_Lifetime;
93};
94struct CDataWeaponspecShotgun
95{
96 CDataWeaponspec* m_pBase;
97 float m_Curvature;
98 float m_Speed;
99 float m_Speeddiff;
100 float m_Lifetime;
101};
102struct CDataWeaponspecGrenade
103{
104 CDataWeaponspec* m_pBase;
105 float m_Curvature;
106 float m_Speed;
107 float m_Lifetime;
108};
109struct CDataWeaponspecLaser
110{
111 CDataWeaponspec* m_pBase;
112 float m_Reach;
113 int m_BounceDelay;
114 int m_BounceNum;
115 float m_BounceCost;
116};
117struct CDataWeaponspecNinja
118{
119 CDataWeaponspec* m_pBase;
120 int m_Duration;
121 int m_Movetime;
122 int m_Velocity;
123};
124struct CDataWeaponspecs
125{
126 CDataWeaponspecHammer m_Hammer;
127 CDataWeaponspecGun m_Gun;
128 CDataWeaponspecShotgun m_Shotgun;
129 CDataWeaponspecGrenade m_Grenade;
130 CDataWeaponspecLaser m_Laser;
131 CDataWeaponspecNinja m_Ninja;
132 int m_NumId;
133 CDataWeaponspec *m_aId;
134};
135struct CDataContainer
136{
137 int m_NumSounds;
138 CDataSoundset *m_aSounds;
139 int m_NumImages;
140 CDataImage *m_aImages;
141 int m_NumPickups;
142 CDataPickupspec *m_aPickups;
143 int m_NumSpritesets;
144 CDataSpriteset *m_aSpritesets;
145 int m_NumSprites;
146 CDataSprite *m_aSprites;
147 int m_NumAnimations;
148 CAnimation *m_aAnimations;
149 CDataWeaponspecs m_Weapons;
150};
151#endif
152