| | |
| | | if not playerMap:
|
| | | return
|
| | | if playerMap.GetMapFBType() != ChConfig.fbtNull:
|
| | | playerLineID = curPlayer.GetFBID()
|
| | | if mapID == ChConfig.Def_FBMapID_SealDemon:
|
| | | playerLineID = PlayerControl.GetFBFuncLineID(curPlayer)
|
| | | else:
|
| | | playerLineID = curPlayer.GetFBID()
|
| | | if playerMapID != mapID or playerLineID != lineID:
|
| | | #副本中无法协助
|
| | | PlayerControl.NotifyCode(curPlayer, "AssistFBLimit")
|
| | |
| | | if assistObj in playerAssistList:
|
| | | playerAssistList.remove(assistObj)
|
| | |
|
| | | SyncFamilyClearAssist(familyID, assistGUID)
|
| | | |
| | | # 取消boss协助
|
| | | if assistType == AssistType_Boss:
|
| | |
|
| | |
| | | # 暂不需要处理
|
| | | pass
|
| | |
|
| | | # 放最后 |
| | | SyncFamilyClearAssist(familyID, assistGUID)
|
| | | return
|
| | |
|
| | | def OnCancelPlayerAssist(cancelPlayer, cancelPlayerID, assistObj, reason, isGameServer, isNotify=True):
|
| | |
| | | assistObj.AssistPlayerIDList.remove(cancelPlayerID)
|
| | |
|
| | | if cancelPlayer:
|
| | | isTagPlayerReason = reason.startswith("RequestPlayerCancel_")
|
| | | PlayerControl.SetAssistTagPlayerID(cancelPlayer, 0)
|
| | | overPack = ChPyNetSendPack.tagGCAssistOver()
|
| | | overPack.IsTagPlayerReason = isTagPlayerReason
|
| | | overPack.Reason = reason[len("RequestPlayerCancel_"):] if isTagPlayerReason else reason |
| | | overPack.ReasonLen = len(overPack.Reason)
|
| | | overPack.AssistGUID = assistGUID
|
| | | NetPackCommon.SendFakePack(cancelPlayer, overPack)
|
| | |
|
| | | # 取消boss协助
|
| | | if assistObj.AssistType == AssistType_Boss:
|