critical semaphore bug fix

This commit is contained in:
wish
2022-08-02 01:19:02 +10:00
parent 967fb8f15e
commit a020ad88d0
2 changed files with 7 additions and 11 deletions

View File

@@ -22,10 +22,10 @@ const (
// MSG_SYS_CAST[ED]_BINARY broadcast types enum
const (
BroadcastTypeTargeted = 0x01
BroadcastTypeStage = 0x03
BroadcastTypeSemaphore = 0x06
BroadcastTypeWorld = 0x0a
BroadcastTypeTargeted = 0x01
BroadcastTypeStage = 0x03
BroadcastTypeServer = 0x06
BroadcastTypeWorld = 0x0a
)
func sendServerChatMessage(s *Session, message string) {
@@ -125,7 +125,7 @@ func handleMsgSysCastBinary(s *Session, p mhfpacket.MHFPacket) {
} else {
s.stage.BroadcastMHF(resp, s)
}
case BroadcastTypeSemaphore:
case BroadcastTypeServer:
if pkt.MessageType == 1 {
raviSema := getRaviSemaphore(s)
if raviSema != "" {
@@ -133,11 +133,7 @@ func handleMsgSysCastBinary(s *Session, p mhfpacket.MHFPacket) {
(*sema).BroadcastMHF(resp, s)
}
} else {
s.Lock()
if s.stage != nil {
s.stage.BroadcastMHF(resp, s)
}
s.Unlock()
s.server.BroadcastMHF(resp, s)
}
case BroadcastTypeTargeted:
for _, targetID := range (*msgBinTargeted).TargetCharIDs {

View File

@@ -355,7 +355,7 @@ func (s *Server) BroadcastRaviente(ip uint32, port uint16, stage []byte, _type u
bf.WriteBytes(make([]byte, 17))
s.WorldcastMHF(&mhfpacket.MsgSysCastedBinary{
CharID: 0x00000000,
BroadcastType: BroadcastTypeSemaphore,
BroadcastType: BroadcastTypeServer,
MessageType: BinaryMessageTypeChat,
RawDataPayload: bf.Data(),
}, nil)