From d9820f9f7f09c14d270b4cbbe649369c043be7e4 Mon Sep 17 00:00:00 2001 From: hch <305670599@qq.com> Date: 星期二, 16 四月 2019 20:14:45 +0800 Subject: [PATCH] 860312 关闭渠道返利 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamily.py | 40 ++++++++++++++++++++++++++++++---------- 1 files changed, 30 insertions(+), 10 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 f67865b..5697e1b 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamily.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerFamily.py @@ -28,6 +28,7 @@ import GameLogic_FamilyWar import ChMapToGamePyPack import PlayerFamilyTech +import PlayerFamilyRedPacket import SkillCommon import BuffSkill import ItemCommon @@ -35,6 +36,7 @@ import GameFuncComm import PlayerTJG import IpyGameDataPY +import cPickle import time import random @@ -106,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(): @@ -152,6 +156,7 @@ PlayerFamilyTech.Sync_PlayerFamilyTechLV(curPlayer) DelAddFamilyRecord(curPlayer) GameLogic_FamilyWar.DoCheckChampionFamilyTitle(curPlayer) + PlayerFamilyRedPacket.CreatCacheRedPacktet(curPlayer) return ## 退出家族触发事件 @@ -184,7 +189,7 @@ def __OnFamilyLVBuffChange(curPlayer, tick): return # 跨服服务器不处理,防止登录跨服服务器后无战盟导致战力下降 - if GameWorld.IsMergeServer(): + if GameWorld.IsCrossServer(): return familyLVBuffSkillTypeID = ReadChConfig.GetEvalChConfig("FamilyLVBuff") @@ -323,6 +328,8 @@ #curPlayer.GameServer_AddFamilyDetail(addFamilyHornor, addFamilyMoney, addFamilyActiveValue) #改为PY包 + if not curPlayer.GetFamilyID(): + return sendPack = ChMapToGamePyPack.tagMGAddFamilyDetail() sendPack.PlayerID = curPlayer.GetPlayerID() sendPack.AddFamilyHornor = addFamilyHornor @@ -584,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)) @@ -628,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 @@ -674,20 +690,21 @@ if item.GetType() != ChConfig.Def_ItemType_FamilyBossFood: continue addActiveValue = item.GetEffectByIndex(0).GetEffectValue(0) - if not addActiveValue: - continue +# if not addActiveValue: +# continue itemCnt = item.GetCount() totalAddActiveValue += addActiveValue * itemCnt - delItemList.append(item, itemCnt) + delItemList.append([item, itemCnt]) totalCnt += itemCnt - if not totalAddActiveValue: + if not totalCnt: GameWorld.DebugLog('背包里没有可捐献的物品') return for eatItem, delCnt in delItemList: ItemCommon.DelItem(curPlayer, eatItem, delCnt, False) #累加个人活跃度/贡献度 - AddPlayerFamilyActiveValue(curPlayer, totalAddActiveValue, True, ShareDefine.Def_AddFAVReason_FamilyDonateItem) + if totalAddActiveValue: + AddPlayerFamilyActiveValue(curPlayer, totalAddActiveValue, True, ShareDefine.Def_AddFAVReason_FamilyDonateItem) AddFamilyBossFood(curPlayer, totalCnt, ShareDefine.Def_AddFAVReason_FamilyDonateItem) GameWorld.DebugLog(' 捐献仙盟兽粮 totalCnt=%s,totalAddActiveValue=%s'%(totalCnt,totalAddActiveValue)) return @@ -729,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 @@ -750,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): @@ -785,6 +803,7 @@ return def AddFamilyActivity(curPlayer, actionid, addCnt=1): + return ipyData = IpyGameDataPY.GetIpyGameData('FamilyActivity', actionid) if not ipyData: return @@ -812,6 +831,7 @@ return totalPoint def SyncFamilyActivityInfo(curPlayer, syncActionid=-1): + return #通知活跃领取情况 syncActionIDList = ShareDefine.FamilyActiveIDList if syncActionid==-1 else [syncActionid] sendPack = ChPyNetSendPack.tagMCFamilyActivityInfo() @@ -840,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