From af061eb963b3d4c97f3d71424f42f89f4ff3b498 Mon Sep 17 00:00:00 2001 From: hch <305670599@qq.com> Date: 星期一, 08 十月 2018 14:03:28 +0800 Subject: [PATCH] 2091 【主干】【1.0.18】神兽背包满情况下拾取错误导致内存泄露 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerTJG.py | 28 ++++++++++++++++++---------- 1 files changed, 18 insertions(+), 10 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerTJG.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerTJG.py index 20f77dd..6454c29 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerTJG.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerTJG.py @@ -179,7 +179,7 @@ # 脱机玩家过多,需要隐身一部分 if curPlayer.GetLV() < 190: - if random.randint(0, 5) != 2: + if random.randint(0, 2) != 1: curPlayer.SetVisible(False) return @@ -455,7 +455,10 @@ # 击杀特定NPC成就 PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_KillSpecificNPC, killCnt, [npcID]) - + # 日常活动 + if not curPlayer.NomalDictGetProperty(ChConfig.Def_PDictType_TJGOnDayEx): + if npcData.GetLV()>=curPlayer.GetLV() - IpyGameDataPY.GetFuncCfg('DailyQuestKillMonster'): + PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_KillNPC, killCnt) # 击杀任务怪, 杀怪日常已经没有了,暂时屏蔽 #for _ in xrange(killCnt): # EventShell.Event_OnKillByID(curPlayer, npcID) @@ -659,7 +662,8 @@ if curPlayer.GetIP() == "127.0.0.1": LoginFixTJG(curPlayer, True) return - + PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDictType_TJGOnDayEx, 0) + # 脱机挂没有运作情况下 弥补收益 LoginFixTJG(curPlayer) @@ -781,12 +785,16 @@ # 过天清理 -def TJGOnDay(curPlayer): - times = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TJGDeadPayTime) - if times == 0: - return - - ResetTJGDeadInfo(curPlayer) +def TJGOnDay(curPlayer, onEventType): + if onEventType == ShareDefine.Def_OnEventType: + times = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TJGDeadPayTime) + if times == 0: + return + + ResetTJGDeadInfo(curPlayer) + elif onEventType == ShareDefine.Def_OnEventTypeEx: + if GetIsTJG(curPlayer): + PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDictType_TJGOnDayEx, 1) return def ResetTJGDeadInfo(curPlayer): @@ -914,7 +922,7 @@ # 此时由服务端重新找一次挂机NPC PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PlayerKey_TJGNPC, npcID) - GameWorld.DebugLog("弥补脱机----npcid %s-%s-%s"%( + GameWorld.DebugLog("弥补脱机----playerID:%s ,npcid %s-%s-%s"%(curPlayer.GetID(), curPlayer.NomalDictGetProperty(ChConfig.Def_PlayerKey_TJGNPC), times, curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_TotalExpRate))) -- Gitblit v1.8.0