about summary refs log tree commit diff
path: root/datasrc/client.dts
blob: 7b2cec9957e5afde829d76f2e2158989cb007c80 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
struct image {
	int id = 0
	string filename = filename@1
}

struct spriteset {
	ptr:image img = @1
	int gridx = @2
	int gridy = @3
}

struct sprite {
	ptr:spriteset set = parent
	int x = @1
	int y = @2
	int w = @3
	int h = @4
}

struct sound {
	int id = 0
	string filename = @0
}

struct soundset {
	int last = 0
	array:sound sounds = *
}

struct particleinfo {
	ptr:sprite spr = sprite@1
	float color_r = color@1
	float color_g = color@2
	float color_b = color@3
	float color_a = color@4
	int lifemod = life@1
}

struct spriteptr {
	ptr:sprite psprite = @0
}

struct projectileparticles {
	int particlespersecond = particlespersecond@1
	float particlesize = particlesize@1
	float particlelife = particlelife@1
}

struct weapon {
	ptr:sprite sprite_body = sprite_body@1
	ptr:sprite sprite_cursor = sprite_cursor@1
	ptr:sprite sprite_proj = sprite_proj@1
	array:spriteptr sprite_muzzle = sprite_muzzles.*
	
	int nummuzzlesprites = nummuzzlesprites@1
	int recoil = recoil@1
	int visual_size = visual_size@1
	int muzzleduration = muzzleduration@1
	float offsetx = offsetx@1
	float offsety = offsety@1
	float muzzleoffsetx = muzzleoffsetx@1
	float muzzleoffsety = muzzleoffsety@1
}

struct keyframe {
	float time =  @0
	float x = @1
	float y = @2
	float angle = @3
}

struct sequence {
	array:keyframe frames = *
}

struct animation {
	instance:sequence body = body
	instance:sequence back_foot = back_foot
	instance:sequence front_foot = front_foot
	instance:sequence attach = attach
}

struct gui_box {
	int x = @1
	int y = @2
	int w = @3
	int h = @4
}

struct gui_compositebox {
	instance:gui_box rect = rect
	instance:gui_box center = center
}

struct gui_widgets {
	array:gui_compositebox boxes = boxes.*
	array:gui_box misc = misc.*
}

const array:int gui_box = gui.boxes.*
const array:int gui_misc = gui.misc.*

struct data_container {
	array:image images = images.*
	array:spriteset spritesets = sprites.*
	array:sprite sprites = sprites.*.*
	array:weapon weapons = weapons.*
	array:particleinfo particles = particles.*
	array:projectileparticles projectileinfo = projectileparticles.*

	array:soundset sounds = sounds.*
	array:animation animations = animations.*

	instance:gui_widgets gui = gui
}

const array:int weapon = weapons.*
const array:int sound = sounds.*
const array:int image = images.*
const array:int sprite = sprites.*.*
const array:int anim = animations.*
const array:int gametype = playerstats.*
const array:int powerup = powerups.*