diff --git a/Erupe/server/channelserver/handlers.go b/Erupe/server/channelserver/handlers.go index 6af92cfe0..99a644230 100644 --- a/Erupe/server/channelserver/handlers.go +++ b/Erupe/server/channelserver/handlers.go @@ -412,8 +412,6 @@ func handleMsgMhfGetExtraInfo(s *Session, p mhfpacket.MHFPacket) {} func handleMsgMhfAcquireTitle(s *Session, p mhfpacket.MHFPacket) {} -func handleMsgMhfEnumerateTitle(s *Session, p mhfpacket.MHFPacket) {} - func handleMsgMhfEnumerateUnionItem(s *Session, p mhfpacket.MHFPacket) { pkt := p.(*mhfpacket.MsgMhfEnumerateUnionItem) var boxContents []byte diff --git a/Erupe/server/channelserver/handlers_house.go b/Erupe/server/channelserver/handlers_house.go index af74fd70e..e18e3ebc3 100644 --- a/Erupe/server/channelserver/handlers_house.go +++ b/Erupe/server/channelserver/handlers_house.go @@ -126,6 +126,21 @@ func handleMsgMhfSaveDecoMyset(s *Session, p mhfpacket.MHFPacket) { doAckSimpleSucceed(s, pkt.AckHandle, []byte{0x00, 0x00, 0x00, 0x00}) } +func handleMsgMhfEnumerateTitle(s *Session, p mhfpacket.MHFPacket) { + pkt := p.(*mhfpacket.MsgMhfEnumerateTitle) + bf := byteframe.NewByteFrame() + titleCount := 114 // all titles unlocked + bf.WriteUint16(uint16(titleCount)) // title count + bf.WriteUint16(0) // unk + for i := 0; i < titleCount; i++ { + bf.WriteUint16(uint16(i)) + bf.WriteUint16(0) // unk + bf.WriteUint32(0) // timestamp acquired + bf.WriteUint32(0) // timestamp updated + } + doAckBufSucceed(s, pkt.AckHandle, bf.Data()) +} + func handleMsgMhfOperateWarehouse(s *Session, p mhfpacket.MHFPacket) {} func handleMsgMhfEnumerateWarehouse(s *Session, p mhfpacket.MHFPacket) {}