about summary refs log tree commit diff
path: root/datasrc/client.dts
blob: 9378664685ac1a266d3e3a7532b705af0f7a168f (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
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 spriteptr {
	ptr:sprite psprite = @0
}

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 data_container {
	array:image images = images.*
	array:spriteset spritesets = sprites.*
	array:sprite sprites = sprites.*.*
	array:weapon weapons = weapons.*

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

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 powerup = powerups.*