From affca29e7500fc8e2e65cf15d19496a370f6329e Mon Sep 17 00:00:00 2001 From: hch <305670599@qq.com> Date: 星期四, 27 十二月 2018 16:22:58 +0800 Subject: [PATCH] 860312 机器人 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGoldInvest.py | 38 ++++++++++++++++++++++++++++++++++++++ 1 files changed, 38 insertions(+), 0 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGoldInvest.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGoldInvest.py index 31d6ff3..af78b81 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGoldInvest.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGoldInvest.py @@ -55,6 +55,7 @@ # @param curPlayer 玩家 # @return def OnLogin(curPlayer): + __CheckOldInvest(curPlayer) for iType in ChConfig.GoldInvestTypeList: Sync_GoldInvestInfo(curPlayer, iType) return @@ -64,6 +65,7 @@ # @param curPlayer 玩家 # @return def OnDay(curPlayer): + __CheckOldInvest(curPlayer) #vip投资过了整个周期则重置 __CheckInvestReset(curPlayer) @@ -91,7 +93,43 @@ __SetPDictValue(curPlayer, ChConfig.Def_PDict_GoldInvest_GotRewardValue % (investType, i), 0) Sync_GoldInvestInfo(curPlayer, investType, isForce=True) return + +def __CheckOldInvest(curPlayer): + #旧版本投资补偿 + investType = ChConfig.GoldInvestType_VIP + investGoldRecord = __GetPDictValue(curPlayer, ChConfig.Def_PDict_GoldInvest_Gold % investType) + if investGoldRecord != 300: + return + maxDay = 28 + curDay = __GetInvestCurDay(curPlayer, investType) + if curDay > maxDay: + return + if __GetPDictValue(curPlayer, ChConfig.Def_PDict_GoldInvest_GotRewardValue % (investType, curDay)): + sendDayList = range(curDay+1,maxDay+1) + else: + sendDayList = range(curDay, maxDay+1) + if sendDayList: + sendItemDict = {} + for day in sendDayList: + index = day%7 + if index == 0: + index = 7 + ipyData = IpyGameDataPY.GetIpyGameData('Invest', investType*100+index) + if not ipyData: + continue + itemList = ipyData.GetReward()['1'] + for itemID, itemCnt, isBind in itemList: + sendItemDict[itemID] = sendItemDict.get(itemID, 0) + itemCnt + sendItemList = [(itemID, itemCnt, 1) for itemID, itemCnt in sendItemDict.items()] + PlayerControl.SendMailByKey('VIPInvest', [curPlayer.GetID()], sendItemList, [len(sendDayList)]) + GameWorld.Log(' 旧版本投资补偿 sendDay=%s, sendItemList=%s'%(len(sendDayList), sendItemList), curPlayer.GetID()) + + __SetPDictValue(curPlayer, ChConfig.Def_PDict_GoldInvest_Time % investType, 0) + __SetPDictValue(curPlayer, ChConfig.Def_PDict_GoldInvest_Gold % investType, 0) + for i in xrange(1, maxDay+1): + __SetPDictValue(curPlayer, ChConfig.Def_PDict_GoldInvest_GotRewardValue % (investType, i), 0) + return #// A5 40 投资理财 #tagCMGoldInvest # #struct tagCMGoldInvest -- Gitblit v1.8.0