From fdaa1368178da9b8b3f667c2a8294b9cf7ba8bc0 Mon Sep 17 00:00:00 2001 From: hch <305670599@qq.com> Date: 星期六, 27 四月 2019 12:21:47 +0800 Subject: [PATCH] 6603 【后端】【2.0】增加新版的sp和被动技能 -- 印记通知修改 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamily.py | 25 ++++++++++++++++++++----- 1 files changed, 20 insertions(+), 5 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamily.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamily.py index 1c74150..5697e1b 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamily.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamily.py @@ -36,6 +36,7 @@ import GameFuncComm import PlayerTJG import IpyGameDataPY +import cPickle import time import random @@ -107,9 +108,11 @@ EventShell.EventResponse_OnFamilyLVUp(curPlayer) if curPlayer.GetFamilyMemberLV() != refreshPack.GetFamilyMemberLV(): + # 因为仙盟职位没有存DBPlayer,而跨服后又没有Family信息,所以这里做个存储,用于跨服用 + curPlayer.SetReceivedSalary(refreshPack.GetFamilyMemberLV()) curPlayer.SetFamilyMemberLV(refreshPack.GetFamilyMemberLV()) #通知周围玩家家族职位刷新 - curPlayer.Notify_FamilyMemberLVRefresh() + #curPlayer.Notify_FamilyMemberLVRefresh() GameLogic_FamilyWar.DoCheckChampionFamilyTitle(curPlayer) if curPlayer.GetFamilyMoney() != refreshPack.GetFamilyMoney(): @@ -186,7 +189,7 @@ def __OnFamilyLVBuffChange(curPlayer, tick): return # 跨服服务器不处理,防止登录跨服服务器后无战盟导致战力下降 - if GameWorld.IsMergeServer(): + if GameWorld.IsCrossServer(): return familyLVBuffSkillTypeID = ReadChConfig.GetEvalChConfig("FamilyLVBuff") @@ -588,7 +591,7 @@ return #请求记录申请进入家族信息 - sendMsg = str([familyID, curPlayer.GetFightPower()]) + sendMsg = cPickle.dumps([familyID, curPlayer.GetFightPower()], 2) curPlayer.GameServer_QueryPlayerByID(ChConfig.queryType_AddFamilyAction, ShareDefine.Def_ActionType_FamilyAdd, '', sendMsg, len(sendMsg)) @@ -632,6 +635,15 @@ PlayerFamilyTech.Sync_PlayerFamilyTechLV(curPlayer) SyncFamilyActivityInfo(curPlayer) Sync_FamilyDayRewardState(curPlayer) + return + +def FamilyPlayerOnLoginCross(curPlayer): + ## 登录跨服服务器 + crossFamilyMemberLV = curPlayer.GetReceivedSalary() + if crossFamilyMemberLV: + curPlayer.SetFamilyMemberLV(crossFamilyMemberLV) + GameWorld.DebugLog("跨服登录设置仙盟职位等级: %s" % crossFamilyMemberLV, curPlayer.GetPlayerID()) + return @@ -734,7 +746,7 @@ ## 添加家族事件记录 def AddFamilyEventNote(curPlayer, eventType, valueList): ##同步记录到GameServer, eventType默认为value1 - sendMsg = str([eventType] + valueList) + sendMsg = cPickle.dumps([eventType] + valueList, 2) curPlayer.GameServer_QueryPlayerByID(ChConfig.queryType_AddFamilyAction, ShareDefine.Def_ActionType_FamilyEvent, '', sendMsg, len(sendMsg)) GameWorld.DebugLog("AddFamilyEventNote sendMsg=%s" % sendMsg) return @@ -755,6 +767,7 @@ # @param awardIndex # @return None def GetFamilyActivityAward(curPlayer, awardIndex): + return familyActiveList = IpyGameDataPY.GetFuncEvalCfg('FamilyActive') familyActiveAwardList = IpyGameDataPY.GetFuncEvalCfg('FamilyActive', 2) if awardIndex < 0 or awardIndex >= len(familyActiveList): @@ -790,6 +803,7 @@ return def AddFamilyActivity(curPlayer, actionid, addCnt=1): + return ipyData = IpyGameDataPY.GetIpyGameData('FamilyActivity', actionid) if not ipyData: return @@ -817,6 +831,7 @@ return totalPoint def SyncFamilyActivityInfo(curPlayer, syncActionid=-1): + return #通知活跃领取情况 syncActionIDList = ShareDefine.FamilyActiveIDList if syncActionid==-1 else [syncActionid] sendPack = ChPyNetSendPack.tagMCFamilyActivityInfo() @@ -845,7 +860,7 @@ def UpdateFamilyName(index, clientData, tick): curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index) - if GameWorld.IsMergeServer(): + if GameWorld.IsCrossServer(): #itemuse_lzxkoy_0:不可在跨服环境下使用改名功能。 PlayerControl.NotifyCode(curPlayer, "itemuse_lzxkoy_0") return -- Gitblit v1.8.0