accidentally regen again and block state early work

This commit is contained in:
adman
2026-03-03 09:31:44 +01:00
parent 1b36949316
commit 5dfd8fc499
7 changed files with 33666 additions and 33640 deletions
+10
View File
@@ -66,3 +66,13 @@ func LookupBlockByStateId(version string, stateId int32) (block Block, ok bool)
} }
return return
} }
func LookupBlockByName(version string, stateId int32) (block Block, ok bool) {
for _, b := range BlocksForVersion(version) {
if b.MinStateId <= stateId && stateId <= b.MaxStateId {
block = b
ok = true
}
}
return
}
@@ -0,0 +1,2 @@
go test fuzz v1
[]byte("")
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+11668 -11668
View File
File diff suppressed because it is too large Load Diff
+20 -6
View File
@@ -34,6 +34,7 @@ var StatusResponse = server.StatusResponse{
type Server struct { type Server struct {
*proto.Conn *proto.Conn
*client.Timer *client.Timer
MinCycle, MaxCycle, Current int32
} }
var packet = &v1_21_8.PlayToClientPacketMapChunk{X: 0, Z: 0, Heightmaps: []struct { var packet = &v1_21_8.PlayToClientPacketMapChunk{X: 0, Z: 0, Heightmaps: []struct {
@@ -82,7 +83,7 @@ func (s *Server) OnStart(_ event.OnStart) (err error) {
err = s.Send(&v1_21_8.PlayToClientPacketPosition{ err = s.Send(&v1_21_8.PlayToClientPacketPosition{
TeleportId: 0, TeleportId: 0,
X: 0, X: 0,
Y: 64, Y: -60,
Z: 0, Z: 0,
Dx: 0, Dx: 0,
Dy: 0, Dy: 0,
@@ -123,6 +124,7 @@ func (s *Server) OnStart(_ event.OnStart) (err error) {
return return
} }
s.Timer.Every(time.Second*15, s.SendKeepAlive) s.Timer.Every(time.Second*15, s.SendKeepAlive)
s.Timer.Every(time.Second, s.CycleBlockForTesting)
s.Timer.Active = true s.Timer.Active = true
return return
} }
@@ -132,22 +134,34 @@ func (s *Server) OnTick(_ event.Tick) (err error) {
return return
} }
func (s *Server) CycleBlockForTesting() (err error) {
err = s.Send(&v1_21_8.PlayToClientPacketBlockChange{
Location: v1_21_8.Position{
X: 1,
Z: 1,
Y: -60,
},
Type: s.Current,
})
s.Current++
if s.Current > s.MaxCycle {
s.Current = s.MinCycle
}
return
}
func (s *Server) SendKeepAlive() (err error) { func (s *Server) SendKeepAlive() (err error) {
err = s.Send(&v1_21_8.PlayToClientPacketKeepAlive{KeepAliveId: rand.Int64()}) err = s.Send(&v1_21_8.PlayToClientPacketKeepAlive{KeepAliveId: rand.Int64()})
if err != nil { if err != nil {
return return
} }
err = s.Send(&v1_21_8.PlayToClientPacketBlockChange{
Location: v1_21_8.Position{},
Type: 0,
})
return return
} }
func main() { func main() {
slog.SetLogLoggerLevel(slog.LevelDebug) slog.SetLogLoggerLevel(slog.LevelDebug)
err := server.StartServerWithFactory(":25565", func(c *proto.Conn) (h any, err error) { err := server.StartServerWithFactory(":25565", func(c *proto.Conn) (h any, err error) {
s := &Server{Conn: c} s := &Server{Conn: c, MinCycle: 2938, MaxCycle: 3017, Current: 2938}
s.Timer = &client.Timer{} s.Timer = &client.Timer{}
h = s h = s
return return