From 54b3ca452de08e8cf5723a0715cc0c3853c2df3a Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期六, 01 十二月 2018 16:35:48 +0800
Subject: [PATCH] 2549 【BUG】【1.3】玩家登录时过天处理离线期间所获得的助战仙缘币异常
---
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFamily.py | 19 ++++++++++++++-----
1 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFamily.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFamily.py
index 2c00e8b..f93b284 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFamily.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFamily.py
@@ -41,6 +41,7 @@
import PlayerViewCache
import GameWorldBoss
import PlayerTalk
+import PlayerTeam
import copy
import random
@@ -348,7 +349,9 @@
# 玩家战盟名变更处理
__OnFamilyNameChange(jionPlayer.GetPlayerID(), curFamily.GetName())
-
+ #玩家缓存
+ PlayerViewCache.OnPlayerFamilyChange(jionPlayer.GetPlayerID(), curFamily.GetID(), curFamily.GetName())
+ PlayerTeam.OnTeamMemFamilyRefresh(jionPlayer, curFamily.GetID())
#加入仙盟联赛成员
GameWorldFamilyWar.AddFamilyWarMem(jionPlayer.GetPlayerID(), curFamily.GetID())
GameWorldFamilyWar.CheckPlayerJoinFamilyWarInfo(jionPlayer)
@@ -1524,7 +1527,7 @@
# 玩家战盟名变更处理
__OnFamilyNameChange(leavePlayerID, '')
AddFamilyIDToFightPowerChangeList(curFamily.GetID())
- PlayerViewCache.OnPlayerLeaveFamily(leavePlayerID)
+ PlayerViewCache.OnPlayerFamilyChange(leavePlayerID, 0, "")
return
#//////////////////////////////////////////////////////////////
@@ -1802,6 +1805,7 @@
#弹劾信息封包
SendPackClientImpeachMsg(curPlayer, 0, 0)
+ PlayerTeam.OnTeamMemFamilyRefresh(curPlayer, 0)
return
#---------------------------------------------------------------------
@@ -2533,8 +2537,6 @@
# if useMoney > 0:
# #帮会日常维持消耗{%S1%}银两帮会资金
# PlayerControl.FamilyNotify(family.GetID(), 'jiazu_lhs_272921', [useMoney])
- #自动传位
- __AutoChangeLeader(family)
#通知客户端刷新
family.Broadcast_FamilyChange()
@@ -2592,6 +2594,13 @@
return
+def FamilyOnHour():
+ familyManager = GameWorld.GetFamilyManager()
+ for i in xrange(familyManager.GetCount()):
+ family = familyManager.GetAt(i)
+ #自动传位
+ __AutoChangeLeader(family)
+ return
#---------------------------------------------------------------------
##通知地图服务器, 玩家家族属性刷新
# @param curFamily 家族实例
@@ -2743,7 +2752,7 @@
'''自动传位'''
# 获得帮主下线了多久(小时)
leaderOffLineTime = GetLeaderOfflineTime(curFamily)
- GameWorld.DebugLog('帮主下线了%s小时'%leaderOffLineTime)
+ GameWorld.DebugLog('帮主下线了%s小时'%leaderOffLineTime, curFamily.GetID())
if leaderOffLineTime < IpyGameDataPY.GetFuncCfg('AutoChangeLeader'):
return
--
Gitblit v1.8.0