Store chunk header when unpacking

This commit is contained in:
ChillerDragon 2024-06-21 09:50:46 +08:00
parent 7c4a3be31c
commit db550ce86f
9 changed files with 24 additions and 24 deletions

View file

@ -9,7 +9,7 @@ import (
)
type ClStartInfo struct {
header *chunk7.ChunkHeader
ChunkHeader *chunk7.ChunkHeader
Name string
Clan string
@ -101,9 +101,9 @@ func (info *ClStartInfo) Unpack(u *packer.Unpacker) {
}
func (msg *ClStartInfo) Header() *chunk7.ChunkHeader {
return msg.header
return msg.ChunkHeader
}
func (msg *ClStartInfo) SetHeader(header *chunk7.ChunkHeader) {
msg.header = header
msg.ChunkHeader = header
}

View file

@ -7,7 +7,7 @@ import (
)
type EnterGame struct {
header *chunk7.ChunkHeader
ChunkHeader *chunk7.ChunkHeader
}
func (msg EnterGame) MsgId() int {
@ -34,9 +34,9 @@ func (msg *EnterGame) Unpack(u *packer.Unpacker) {
}
func (msg *EnterGame) Header() *chunk7.ChunkHeader {
return msg.header
return msg.ChunkHeader
}
func (msg *EnterGame) SetHeader(header *chunk7.ChunkHeader) {
msg.header = header
msg.ChunkHeader = header
}

View file

@ -7,7 +7,7 @@ import (
)
type Info struct {
header *chunk7.ChunkHeader
ChunkHeader *chunk7.ChunkHeader
}
func (msg Info) MsgId() int {
@ -41,9 +41,9 @@ func (msg *Info) Unpack(u *packer.Unpacker) {
}
func (msg *Info) Header() *chunk7.ChunkHeader {
return msg.header
return msg.ChunkHeader
}
func (msg *Info) SetHeader(header *chunk7.ChunkHeader) {
msg.header = header
msg.ChunkHeader = header
}

View file

@ -15,5 +15,5 @@ type NetMessage interface {
Unpack(u *packer.Unpacker)
Header() *chunk7.ChunkHeader
SetHeader(chunkHeader *chunk7.ChunkHeader)
SetHeader(header *chunk7.ChunkHeader)
}

View file

@ -7,7 +7,7 @@ import (
)
type Ready struct {
header *chunk7.ChunkHeader
ChunkHeader *chunk7.ChunkHeader
}
func (msg Ready) MsgId() int {
@ -34,9 +34,9 @@ func (msg *Ready) Unpack(u *packer.Unpacker) {
}
func (msg *Ready) Header() *chunk7.ChunkHeader {
return msg.header
return msg.ChunkHeader
}
func (msg *Ready) SetHeader(header *chunk7.ChunkHeader) {
msg.header = header
msg.ChunkHeader = header
}

View file

@ -7,7 +7,7 @@ import (
)
type ReadyToEnter struct {
header *chunk7.ChunkHeader
ChunkHeader *chunk7.ChunkHeader
}
func (msg ReadyToEnter) MsgId() int {
@ -34,9 +34,9 @@ func (msg *ReadyToEnter) Unpack(u *packer.Unpacker) {
}
func (msg *ReadyToEnter) Header() *chunk7.ChunkHeader {
return msg.header
return msg.ChunkHeader
}
func (msg *ReadyToEnter) SetHeader(header *chunk7.ChunkHeader) {
msg.header = header
msg.ChunkHeader = header
}

View file

@ -9,7 +9,7 @@ import (
)
type SvChat struct {
header *chunk7.ChunkHeader
ChunkHeader *chunk7.ChunkHeader
Mode int
ClientId int
@ -50,9 +50,9 @@ func (msg *SvChat) Unpack(u *packer.Unpacker) {
}
func (msg *SvChat) Header() *chunk7.ChunkHeader {
return msg.header
return msg.ChunkHeader
}
func (msg *SvChat) SetHeader(header *chunk7.ChunkHeader) {
msg.header = header
msg.ChunkHeader = header
}

View file

@ -7,7 +7,7 @@ import (
)
type SvClientInfo struct {
header *chunk7.ChunkHeader
ChunkHeader *chunk7.ChunkHeader
ClientId int
Local bool
@ -79,9 +79,9 @@ func (info *SvClientInfo) Unpack(u *packer.Unpacker) {
}
func (msg *SvClientInfo) Header() *chunk7.ChunkHeader {
return msg.header
return msg.ChunkHeader
}
func (msg *SvClientInfo) SetHeader(header *chunk7.ChunkHeader) {
msg.header = header
msg.ChunkHeader = header
}

View file

@ -123,7 +123,7 @@ func (client *Connection) OnMotd(motd string) {
func (client *Connection) OnGameMsg(msg int, chunk chunk7.Chunk, u *packer.Unpacker, result *PacketResult) {
if msg == network7.MsgGameReadyToEnter {
fmt.Println("got ready to enter")
result.Packet.Messages = append(result.Packet.Messages, &messages7.Ready{})
result.Packet.Messages = append(result.Packet.Messages, &messages7.Ready{ChunkHeader: &chunk.Header})
result.Response.Messages = append(result.Response.Messages, &messages7.EnterGame{})
} else if msg == network7.MsgGameSvMotd {
motd := u.GetString()
@ -131,7 +131,7 @@ func (client *Connection) OnGameMsg(msg int, chunk chunk7.Chunk, u *packer.Unpac
client.OnMotd(motd)
}
} else if msg == network7.MsgGameSvChat {
chat := &messages7.SvChat{}
chat := &messages7.SvChat{ChunkHeader: &chunk.Header}
chat.Unpack(u)
client.OnChatMessage(chat)
result.Packet.Messages = append(result.Packet.Messages, chat)