Store chunk header when unpacking
This commit is contained in:
parent
7c4a3be31c
commit
db550ce86f
|
@ -9,7 +9,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
type ClStartInfo struct {
|
type ClStartInfo struct {
|
||||||
header *chunk7.ChunkHeader
|
ChunkHeader *chunk7.ChunkHeader
|
||||||
|
|
||||||
Name string
|
Name string
|
||||||
Clan string
|
Clan string
|
||||||
|
@ -101,9 +101,9 @@ func (info *ClStartInfo) Unpack(u *packer.Unpacker) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *ClStartInfo) Header() *chunk7.ChunkHeader {
|
func (msg *ClStartInfo) Header() *chunk7.ChunkHeader {
|
||||||
return msg.header
|
return msg.ChunkHeader
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *ClStartInfo) SetHeader(header *chunk7.ChunkHeader) {
|
func (msg *ClStartInfo) SetHeader(header *chunk7.ChunkHeader) {
|
||||||
msg.header = header
|
msg.ChunkHeader = header
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
type EnterGame struct {
|
type EnterGame struct {
|
||||||
header *chunk7.ChunkHeader
|
ChunkHeader *chunk7.ChunkHeader
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg EnterGame) MsgId() int {
|
func (msg EnterGame) MsgId() int {
|
||||||
|
@ -34,9 +34,9 @@ func (msg *EnterGame) Unpack(u *packer.Unpacker) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *EnterGame) Header() *chunk7.ChunkHeader {
|
func (msg *EnterGame) Header() *chunk7.ChunkHeader {
|
||||||
return msg.header
|
return msg.ChunkHeader
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *EnterGame) SetHeader(header *chunk7.ChunkHeader) {
|
func (msg *EnterGame) SetHeader(header *chunk7.ChunkHeader) {
|
||||||
msg.header = header
|
msg.ChunkHeader = header
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
type Info struct {
|
type Info struct {
|
||||||
header *chunk7.ChunkHeader
|
ChunkHeader *chunk7.ChunkHeader
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg Info) MsgId() int {
|
func (msg Info) MsgId() int {
|
||||||
|
@ -41,9 +41,9 @@ func (msg *Info) Unpack(u *packer.Unpacker) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *Info) Header() *chunk7.ChunkHeader {
|
func (msg *Info) Header() *chunk7.ChunkHeader {
|
||||||
return msg.header
|
return msg.ChunkHeader
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *Info) SetHeader(header *chunk7.ChunkHeader) {
|
func (msg *Info) SetHeader(header *chunk7.ChunkHeader) {
|
||||||
msg.header = header
|
msg.ChunkHeader = header
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,5 +15,5 @@ type NetMessage interface {
|
||||||
Unpack(u *packer.Unpacker)
|
Unpack(u *packer.Unpacker)
|
||||||
|
|
||||||
Header() *chunk7.ChunkHeader
|
Header() *chunk7.ChunkHeader
|
||||||
SetHeader(chunkHeader *chunk7.ChunkHeader)
|
SetHeader(header *chunk7.ChunkHeader)
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
type Ready struct {
|
type Ready struct {
|
||||||
header *chunk7.ChunkHeader
|
ChunkHeader *chunk7.ChunkHeader
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg Ready) MsgId() int {
|
func (msg Ready) MsgId() int {
|
||||||
|
@ -34,9 +34,9 @@ func (msg *Ready) Unpack(u *packer.Unpacker) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *Ready) Header() *chunk7.ChunkHeader {
|
func (msg *Ready) Header() *chunk7.ChunkHeader {
|
||||||
return msg.header
|
return msg.ChunkHeader
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *Ready) SetHeader(header *chunk7.ChunkHeader) {
|
func (msg *Ready) SetHeader(header *chunk7.ChunkHeader) {
|
||||||
msg.header = header
|
msg.ChunkHeader = header
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
type ReadyToEnter struct {
|
type ReadyToEnter struct {
|
||||||
header *chunk7.ChunkHeader
|
ChunkHeader *chunk7.ChunkHeader
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg ReadyToEnter) MsgId() int {
|
func (msg ReadyToEnter) MsgId() int {
|
||||||
|
@ -34,9 +34,9 @@ func (msg *ReadyToEnter) Unpack(u *packer.Unpacker) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *ReadyToEnter) Header() *chunk7.ChunkHeader {
|
func (msg *ReadyToEnter) Header() *chunk7.ChunkHeader {
|
||||||
return msg.header
|
return msg.ChunkHeader
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *ReadyToEnter) SetHeader(header *chunk7.ChunkHeader) {
|
func (msg *ReadyToEnter) SetHeader(header *chunk7.ChunkHeader) {
|
||||||
msg.header = header
|
msg.ChunkHeader = header
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,7 +9,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
type SvChat struct {
|
type SvChat struct {
|
||||||
header *chunk7.ChunkHeader
|
ChunkHeader *chunk7.ChunkHeader
|
||||||
|
|
||||||
Mode int
|
Mode int
|
||||||
ClientId int
|
ClientId int
|
||||||
|
@ -50,9 +50,9 @@ func (msg *SvChat) Unpack(u *packer.Unpacker) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *SvChat) Header() *chunk7.ChunkHeader {
|
func (msg *SvChat) Header() *chunk7.ChunkHeader {
|
||||||
return msg.header
|
return msg.ChunkHeader
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *SvChat) SetHeader(header *chunk7.ChunkHeader) {
|
func (msg *SvChat) SetHeader(header *chunk7.ChunkHeader) {
|
||||||
msg.header = header
|
msg.ChunkHeader = header
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
type SvClientInfo struct {
|
type SvClientInfo struct {
|
||||||
header *chunk7.ChunkHeader
|
ChunkHeader *chunk7.ChunkHeader
|
||||||
|
|
||||||
ClientId int
|
ClientId int
|
||||||
Local bool
|
Local bool
|
||||||
|
@ -79,9 +79,9 @@ func (info *SvClientInfo) Unpack(u *packer.Unpacker) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *SvClientInfo) Header() *chunk7.ChunkHeader {
|
func (msg *SvClientInfo) Header() *chunk7.ChunkHeader {
|
||||||
return msg.header
|
return msg.ChunkHeader
|
||||||
}
|
}
|
||||||
|
|
||||||
func (msg *SvClientInfo) SetHeader(header *chunk7.ChunkHeader) {
|
func (msg *SvClientInfo) SetHeader(header *chunk7.ChunkHeader) {
|
||||||
msg.header = header
|
msg.ChunkHeader = header
|
||||||
}
|
}
|
||||||
|
|
|
@ -123,7 +123,7 @@ func (client *Connection) OnMotd(motd string) {
|
||||||
func (client *Connection) OnGameMsg(msg int, chunk chunk7.Chunk, u *packer.Unpacker, result *PacketResult) {
|
func (client *Connection) OnGameMsg(msg int, chunk chunk7.Chunk, u *packer.Unpacker, result *PacketResult) {
|
||||||
if msg == network7.MsgGameReadyToEnter {
|
if msg == network7.MsgGameReadyToEnter {
|
||||||
fmt.Println("got ready to enter")
|
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{})
|
result.Response.Messages = append(result.Response.Messages, &messages7.EnterGame{})
|
||||||
} else if msg == network7.MsgGameSvMotd {
|
} else if msg == network7.MsgGameSvMotd {
|
||||||
motd := u.GetString()
|
motd := u.GetString()
|
||||||
|
@ -131,7 +131,7 @@ func (client *Connection) OnGameMsg(msg int, chunk chunk7.Chunk, u *packer.Unpac
|
||||||
client.OnMotd(motd)
|
client.OnMotd(motd)
|
||||||
}
|
}
|
||||||
} else if msg == network7.MsgGameSvChat {
|
} else if msg == network7.MsgGameSvChat {
|
||||||
chat := &messages7.SvChat{}
|
chat := &messages7.SvChat{ChunkHeader: &chunk.Header}
|
||||||
chat.Unpack(u)
|
chat.Unpack(u)
|
||||||
client.OnChatMessage(chat)
|
client.OnChatMessage(chat)
|
||||||
result.Packet.Messages = append(result.Packet.Messages, chat)
|
result.Packet.Messages = append(result.Packet.Messages, chat)
|
||||||
|
|
Loading…
Reference in a new issue