From 4826882bcda56586e4b7374128371365be65ccda Mon Sep 17 00:00:00 2001 From: wish Date: Wed, 19 Jul 2023 21:42:54 +1000 Subject: [PATCH] correctly parse SexChanger --- network/mhfpacket/msg_mhf_sex_changer.go | 14 ++++++++++---- server/channelserver/handlers_character.go | 2 +- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/network/mhfpacket/msg_mhf_sex_changer.go b/network/mhfpacket/msg_mhf_sex_changer.go index 74186d84b..a8754feca 100644 --- a/network/mhfpacket/msg_mhf_sex_changer.go +++ b/network/mhfpacket/msg_mhf_sex_changer.go @@ -1,17 +1,20 @@ package mhfpacket -import ( - "errors" +import ( + "errors" - "erupe-ce/network/clientctx" - "erupe-ce/network" "erupe-ce/common/byteframe" + "erupe-ce/network" + "erupe-ce/network/clientctx" ) // MsgMhfSexChanger represents the MSG_MHF_SEX_CHANGER type MsgMhfSexChanger struct { AckHandle uint32 Gender uint8 + Unk0 uint8 + Unk1 uint8 + Unk2 uint8 } // Opcode returns the ID associated with this packet type. @@ -23,6 +26,9 @@ func (m *MsgMhfSexChanger) Opcode() network.PacketID { func (m *MsgMhfSexChanger) Parse(bf *byteframe.ByteFrame, ctx *clientctx.ClientContext) error { m.AckHandle = bf.ReadUint32() m.Gender = bf.ReadUint8() + m.Unk0 = bf.ReadUint8() + m.Unk1 = bf.ReadUint8() + m.Unk2 = bf.ReadUint8() return nil } diff --git a/server/channelserver/handlers_character.go b/server/channelserver/handlers_character.go index 7a4c164fd..9541e1d30 100644 --- a/server/channelserver/handlers_character.go +++ b/server/channelserver/handlers_character.go @@ -203,5 +203,5 @@ func (save *CharacterSaveData) updateStructWithSaveData() { func handleMsgMhfSexChanger(s *Session, p mhfpacket.MHFPacket) { pkt := p.(*mhfpacket.MsgMhfSexChanger) - doAckSimpleSucceed(s, pkt.AckHandle, []byte{0x00, 0x00, 0x00, 0x00}) + doAckSimpleSucceed(s, pkt.AckHandle, make([]byte, 4)) }