From 43c7b485c4b0e471870dcd35fb7e406af98768dd Mon Sep 17 00:00:00 2001 From: Tnze Date: Wed, 23 Nov 2022 01:25:50 +0800 Subject: [PATCH] add generator tag --- level/block/block.go | 1 + level/block/generator/blocks/main.go | 1 + level/block/generator/properties/main.go | 1 + level/block/properties.go | 2 ++ server/login.go | 16 ++++++++++++---- 5 files changed, 17 insertions(+), 4 deletions(-) diff --git a/level/block/block.go b/level/block/block.go index e8d786b..4cc2d16 100644 --- a/level/block/block.go +++ b/level/block/block.go @@ -16,6 +16,7 @@ type Block interface { // This file stores all possible block states into a TAG_List with gzip compressed. // +//go:generate go run ./generator/blocks/main.go //go:embed block_states.nbt var blockStates []byte diff --git a/level/block/generator/blocks/main.go b/level/block/generator/blocks/main.go index 4cd18c6..2e55ae0 100644 --- a/level/block/generator/blocks/main.go +++ b/level/block/generator/blocks/main.go @@ -74,6 +74,7 @@ func genSourceFile(states []State) { if err != nil { panic(err) } + log.Print("Generated blocks.go") } var typeMaps = map[string]string{ diff --git a/level/block/generator/properties/main.go b/level/block/generator/properties/main.go index 116289a..4fe2499 100644 --- a/level/block/generator/properties/main.go +++ b/level/block/generator/properties/main.go @@ -82,6 +82,7 @@ func main() { if err != nil { log.Panic(err) } + log.Print("Generated properties_enum.go") } func UpperTheFirst(word string) string { diff --git a/level/block/properties.go b/level/block/properties.go index 469a58b..e9f6d56 100644 --- a/level/block/properties.go +++ b/level/block/properties.go @@ -2,6 +2,8 @@ package block import "strconv" +//go:generate go run ./generator/properties/main.go + type Boolean bool func (b Boolean) MarshalText() (text []byte, err error) { diff --git a/server/login.go b/server/login.go index 135aa89..d79d4b6 100644 --- a/server/login.go +++ b/server/login.go @@ -62,15 +62,23 @@ func (d *MojangLoginHandler) AcceptLogin(conn *net.Conn, protocol int32) (name s return } - var hasPubKey pk.Boolean - var pubKey auth.PublicKey + var ( + hasPubKey pk.Boolean + pubKey auth.PublicKey + hasUUID pk.Boolean + profileUUID pk.UUID // ignored + ) err = p.Scan( - (*pk.String)(&name), + (*pk.String)(&name), //decode username as pk.String &hasPubKey, pk.Opt{ Has: &hasPubKey, Field: &pubKey, }, - ) //decode username as pk.String + &hasUUID, pk.Opt{ + Has: &hasUUID, + Field: &profileUUID, + }, + ) if err != nil { return }