summaryrefslogtreecommitdiff
path: root/classic/ext_block_definitions.go
blob: a4f996cbc2d28aa0e55449e9343b77ee18052315 (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
package classic

const (
	WalkThrough = iota
	SwimThrough
	Solid
	PartiallySlippery
	FullySlippery
	Water
	Lava
	Rope
)

const (
	NoSound = iota
	WoodSound
	GravelSound
	GrassSound
	StoneSound
	MetalSound
	GlassSound
	WoolSound
	SandSound
	SnowSound
)

const (
	Opaque = iota
	TransparentGlass
	TransparentLeaves
	Translucent
	Invisible
)

type DefineBlock struct {
	BlockId byte
	Name String
	Solidity byte
	MovementSpeed byte
	TopTextureId byte
	SideTextureId byte
	BottomTextureId byte
	TransmitsLight byte
	WalkSound byte
	FullBright byte
	Shape byte
	BlockDraw byte
	FogDensity byte
	FogColor [3]byte
}
func (p *DefineBlock) PacketId() byte {
	return 0x23
}

type RemoveBlockDefinition struct {
	BlockId byte
}
func (p *RemoveBlockDefinition) PacketId() byte {
	return 0x24
}

type DefineBlockExt struct {
	BlockId byte
	Name String
	Solidity byte
	MovementSpeed byte
	TopTextureId byte
	LeftTextureId byte
	RightTextureId byte
	FrontTextureId byte
	BackTextureId byte
	BottomTextureId byte
	TransmitsLight byte
	WalkSound byte
	FullBright byte
	Min [3]byte
	Max [3]byte
	BlockDraw byte
	FogDensity byte
	FogColor [3]byte
}
func (p *DefineBlockExt) PacketId() byte {
	return 0x25
}