]> git.lizzy.rs Git - mt.git/blob - tiledef.go
Add high-level protocol (de)serialization
[mt.git] / tiledef.go
1 package mt
2
3 type AlignType uint8
4
5 const (
6         NoAlign AlignType = iota
7         WorldAlign
8         UserAlign
9 )
10
11 type TileFlags uint16
12
13 const (
14         TileBackfaceCull TileFlags = 1 << iota
15         TileAbleH
16         TileAbleV
17         TileColor
18         TileScale
19         TileAlign
20 )
21
22 type TileDef struct {
23         //mt:const uint8(6)
24
25         Texture
26         Anim  TileAnim
27         Flags TileFlags
28
29         //mt:if %s.Flags&TileColor != 0
30         R, G, B uint8
31         //mt:end
32
33         //mt:if %s.Flags&TileScale != 0
34         Scale uint8
35         //mt:end
36
37         //mt:if %s.Flags&TileAlign != 0
38         Align AlignType
39         //mt:end
40 }