-
Notifications
You must be signed in to change notification settings - Fork 97
/
game_rules_changed.go
31 lines (26 loc) · 1 KB
/
game_rules_changed.go
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
package packet
import (
"github.com/sandertv/gophertunnel/minecraft/protocol"
)
// GameRulesChanged is sent by the server to the client to update client-side game rules, such as game rules
// like the 'showCoordinates' game rule.
type GameRulesChanged struct {
// GameRules defines game rules changed with their respective values. The value of these game rules may be
// either 'bool', 'int32' or 'float32'.
// Note that some game rules are server side only, and don't necessarily need to be sent to the client.
// Only changed game rules need to be sent in this packet. Game rules that were not changed do not need to
// be sent if the client is already updated on them.
GameRules []protocol.GameRule
}
// ID ...
func (*GameRulesChanged) ID() uint32 {
return IDGameRulesChanged
}
// Marshal ...
func (pk *GameRulesChanged) Marshal(w *protocol.Writer) {
protocol.WriteGameRules(w, &pk.GameRules)
}
// Unmarshal ...
func (pk *GameRulesChanged) Unmarshal(r *protocol.Reader) {
protocol.GameRules(r, &pk.GameRules)
}