From 6d9404d85f8c48a2b07fed99e2c042f55c3cb573 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 27 十一月 2023 14:20:25 +0800
Subject: [PATCH] 8716 【主干】【后端】【BT2】H.活动-节日祈愿(节日游历封包AA47修改);
---
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerLove.py | 18 ++++++++++++++++++
1 files changed, 18 insertions(+), 0 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerLove.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerLove.py
index bb25a91..6105118 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerLove.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerLove.py
@@ -159,12 +159,18 @@
syncCoupleInfo = {}
if syncPlayerIDList == None:
syncPlayerIDList = self.coupleIDDict.keys()
+ # 分批同步,子服长度不能超过 65535,每批暂定最大同步1000个
for playerID in syncPlayerIDList:
couple = self.GetCouple(playerID)
if not couple:
syncCoupleInfo[playerID] = []
else:
syncCoupleInfo[playerID] = couple.GetSendMapServerCoupleInfo(playerID)
+ if len(syncCoupleInfo) >= 1000:
+ GameWorld.SendMapServerMsgEx(ShareDefine.Def_Notify_WorldKey_CoupleInfo, syncCoupleInfo)
+ syncCoupleInfo = {}
+ if not syncCoupleInfo:
+ return
GameWorld.SendMapServerMsgEx(ShareDefine.Def_Notify_WorldKey_CoupleInfo, syncCoupleInfo)
return
@@ -778,6 +784,10 @@
tagPlayerID = dataMsg[0]
playerID = curPlayer.GetPlayerID()
+ if not PlayerControl.GetDBPlayerAccIDByID(tagPlayerID):
+ PlayerControl.NotifyCode(curPlayer, "NoInDBPlayer")
+ return
+
# 黑名单检查
if PyDataManager.GetBlacklistManager().CheckBlacklistBoth(playerID, tagPlayerID, curPlayer):
return
@@ -857,6 +867,10 @@
playerID = curPlayer.GetPlayerID()
+ if not PlayerControl.GetDBPlayerAccIDByID(tagPlayerID):
+ PlayerControl.NotifyCode(curPlayer, "NoInDBPlayer")
+ return
+
# 黑名单检查
if PyDataManager.GetBlacklistManager().CheckBlacklistBoth(playerID, tagPlayerID, curPlayer):
return
@@ -910,6 +924,10 @@
GameWorld.Log("已成亲伴侣ID不一致,无法提亲! tagPlayerID(%s) != coupleID(%s)" % (tagPlayerID, coupleID), playerID)
return
+ if couple.GetBreakRequestID():
+ PlayerControl.NotifyCode(curPlayer, "LimitByMarryBroke") # 和离中无法操作
+ return
+
ipyData = IpyGameDataPY.GetIpyGameData("Marry", bridePriceID)
if not ipyData:
return
--
Gitblit v1.8.0