Stage/objects test

This commit is contained in:
Andrew Gutekanst
2020-01-23 19:29:19 -05:00
parent 10c80322af
commit 28e0dafd54
8 changed files with 174 additions and 28 deletions

View File

@@ -20,5 +20,6 @@ func (m *MsgSysCleanupObject) Parse(bf *byteframe.ByteFrame) error {
// Build builds a binary packet from the current data.
func (m *MsgSysCleanupObject) Build(bf *byteframe.ByteFrame) error {
panic("Not implemented")
}
// This packet has no data.
return nil
}

View File

@@ -6,7 +6,12 @@ import (
)
// MsgSysDuplicateObject represents the MSG_SYS_DUPLICATE_OBJECT
type MsgSysDuplicateObject struct{}
type MsgSysDuplicateObject struct {
ObjID uint32
X, Y, Z float32
Unk0 uint32
OwnerCharID uint32
}
// Opcode returns the ID associated with this packet type.
func (m *MsgSysDuplicateObject) Opcode() network.PacketID {
@@ -20,5 +25,11 @@ func (m *MsgSysDuplicateObject) Parse(bf *byteframe.ByteFrame) error {
// Build builds a binary packet from the current data.
func (m *MsgSysDuplicateObject) Build(bf *byteframe.ByteFrame) error {
panic("Not implemented")
}
bf.WriteUint32(m.ObjID)
bf.WriteFloat32(m.X)
bf.WriteFloat32(m.Y)
bf.WriteFloat32(m.Z)
bf.WriteUint32(m.Unk0)
bf.WriteUint32(m.OwnerCharID)
return nil
}

View File

@@ -10,7 +10,7 @@ type MsgSysEnterStage struct {
AckHandle uint32
UnkBool uint8
StageIDLength uint8
StageID []byte
StageID string
}
// Opcode returns the ID associated with this packet type.
@@ -23,7 +23,7 @@ func (m *MsgSysEnterStage) Parse(bf *byteframe.ByteFrame) error {
m.AckHandle = bf.ReadUint32()
m.UnkBool = bf.ReadUint8()
m.StageIDLength = bf.ReadUint8()
m.StageID = bf.ReadBytes(uint(m.StageIDLength))
m.StageID = string(bf.ReadBytes(uint(m.StageIDLength)))
return nil
}

View File

@@ -6,7 +6,13 @@ import (
)
// MsgSysEnumerateClient represents the MSG_SYS_ENUMERATE_CLIENT
type MsgSysEnumerateClient struct{}
type MsgSysEnumerateClient struct {
AckHandle uint32
Unk0 uint8 // Hardcoded 1 in the client
Unk1 uint8
StageIDLength uint8
StageID string
}
// Opcode returns the ID associated with this packet type.
func (m *MsgSysEnumerateClient) Opcode() network.PacketID {
@@ -15,10 +21,15 @@ func (m *MsgSysEnumerateClient) Opcode() network.PacketID {
// Parse parses the packet from binary
func (m *MsgSysEnumerateClient) Parse(bf *byteframe.ByteFrame) error {
panic("Not implemented")
m.AckHandle = bf.ReadUint32()
m.Unk0 = bf.ReadUint8()
m.Unk1 = bf.ReadUint8()
m.StageIDLength = bf.ReadUint8()
m.StageID = string(bf.ReadBytes(uint(m.StageIDLength)))
return nil
}
// Build builds a binary packet from the current data.
func (m *MsgSysEnumerateClient) Build(bf *byteframe.ByteFrame) error {
panic("Not implemented")
}
}