Files
Erupe/network/mhfpacket/msg_mhf_present_box.go
2024-07-31 15:42:29 +01:00

55 lines
1.5 KiB
Go

package mhfpacket
import (
"errors"
"fmt"
"erupe-ce/common/byteframe"
"erupe-ce/network"
"erupe-ce/network/clientctx"
)
// MsgMhfPresentBox represents the MSG_MHF_PRESENT_BOX
type MsgMhfPresentBox struct {
AckHandle uint32
Unk0 uint32
Operation uint32
PresentCount uint32
Unk3 uint32
Unk4 uint32
Unk5 uint32
Unk6 uint32
PresentType []uint32
}
// Opcode returns the ID associated with this packet type.
func (m *MsgMhfPresentBox) Opcode() network.PacketID {
return network.MSG_MHF_PRESENT_BOX
}
// Parse parses the packet from binary
func (m *MsgMhfPresentBox) Parse(bf *byteframe.ByteFrame, ctx *clientctx.ClientContext) error {
m.AckHandle = bf.ReadUint32()
m.Unk0 = bf.ReadUint32()
m.Operation = bf.ReadUint32()
m.PresentCount = bf.ReadUint32()
m.Unk3 = bf.ReadUint32()
m.Unk4 = bf.ReadUint32()
m.Unk5 = bf.ReadUint32()
m.Unk6 = bf.ReadUint32()
for i := uint32(0); i < m.PresentCount; i++ {
m.PresentType = append(m.PresentType, bf.ReadUint32())
}
fmt.Printf("MsgMhfPresentBox: Unk0:[%d] Unk1:[%d] Unk2:[%d] Unk3:[%d] Unk4:[%d] Unk5:[%d] Unk6:[%d] \n\n", m.Unk0, m.Operation, m.PresentCount, m.Unk3, m.Unk4, m.Unk5, m.Unk6)
for _, mdata := range m.PresentType {
fmt.Printf("MsgMhfPresentBox: PresentType: [%d] \n", mdata)
}
return nil
}
// Build builds a binary packet from the current data.
func (m *MsgMhfPresentBox) Build(bf *byteframe.ByteFrame, ctx *clientctx.ClientContext) error {
return errors.New("NOT IMPLEMENTED")
}