From 9cd33fdc6c0158edf12a1e89d5a657977d9e2bf9 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 31 八月 2018 15:47:04 +0800
Subject: [PATCH] Fix: 修复活动线非1线时连续开活动无法刷出活动boss的bug;
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py | 17 +++++++++++++----
1 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
index d8a9525..de758cd 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
@@ -86,6 +86,7 @@
import ChNetSendPack
import PlayerState
import QuestCommon
+import PlayerDogz
import GMShell
import random
@@ -115,6 +116,7 @@
#时间相差过大,可能因网络引起,拉回
GameWorld.DebugLog("PlayerMoveCheckClientWorldTick -- 服务器tick %s-客户端%s时间相差过大,可能因网络引起,拉回" % (
gameWorldTick, clientWorldTick), curPlayer.GetID())
+ curPlayer.Sync_ClientTick()
return False
if gameWorldTick - curPlayer.GetDictByKey("CheckTick") > 60000:
@@ -2008,7 +2010,7 @@
# @param canLock 是否可以锁定玩家(传送点不可锁定, 因为要跨地图寻路)
# @return 返回值无意义
# @remarks 玩家切换地图
-def PlayerResetWorldPos(curPlayer, mapID, posX, posY, takeTruck, lineID= -1, msg='', canLock=True, exData1=0):
+def PlayerResetWorldPos(curPlayer, mapID, posX, posY, takeTruck, lineID=-1, msg='', canLock=True, exData1=0):
#更改: 死亡允许切换地图, 在副本中被怪打死, 副本时间到, 回收副本
# if curPlayer.GetHP() <= 0 :
# GameWorld.Log("死亡无法切换地图")
@@ -2081,6 +2083,10 @@
GameWorld.DebugLog("分流boss, bossID=%s,bossShuntLineID=%s" % (bossID, bossShuntLineID), playerID)
NPCCommon.AddBossShuntRelatedPlayer(curPlayer, tagMapID, bossShuntLineID, bossID, tick)
return bossShuntLineID
+ return tagLineID
+
+ if curMapID == tagMapID:
+ GameWorld.DebugLog("同地图切换坐标不处理分流!", playerID)
return tagLineID
# 可以用来常规分流的线路人数字典信息, 并不是所有线路都可以用来做人数分流的,比如中立地图有多条线用来分流boss,但是只有1条线可用来做常规的人数分流
@@ -3954,11 +3960,13 @@
PlayerPet.CalcPetItemAddPlayerAttr(curPlayer)
PlayerRune.RefreshRuneAttr(curPlayer)
PlayerMagicWeapon.CalcMagicWeaponAttr(curPlayer)
+ PlayerMagicWeapon.CalcMagicWeaponSoulAttr(curPlayer)
PlayerSuccess.CalcSuccessAttr(curPlayer)
PlayerVip.CalcVIPAttr(curPlayer)
PlayerRefineStove.CalcStoveAttr(curPlayer)
PlayerFamilyTech.CalcFamilyTechAttr(curPlayer)
PlayerEquipDecompose.RefreshEDAttr(curPlayer)
+ PlayerDogz.RefreshDogzAttr(curPlayer)
self.RefreshAllState(isForce=True)
GameWorld.DebugLog("End ReCalcAllState!!!")
return
@@ -6113,9 +6121,6 @@
curPlayer.SendPropertyRefresh(ShareDefine.CDBPlayerRefresh_IgnoreDefRateReduce, value, False)
#---特殊伤害概率---
-## 富甲一击概率
-def GetFujiaHitRate(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_FujiaHitRate)
-def SetFujiaHitRate(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_FujiaHitRate, value)
## 富豪一击概率
def GetFuhaoHitRate(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_FuhaoHitRate)
def SetFuhaoHitRate(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_FuhaoHitRate, value)
@@ -6126,6 +6131,10 @@
curPlayer.SetDict(ChConfig.Def_PlayerKey_BleedDamage, value)
curPlayer.SendPropertyRefresh(ShareDefine.CDBPlayerRefresh_BleedDamage, value, False)
+## 最终伤害百分比
+def GetFinalHurtPer(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_FinalHurtPer)
+def SetFinalHurtPer(curPlayer, value): curPlayer.SetDict(ChConfig.Def_PlayerKey_FinalHurtPer, value)
+
## 最终固定伤害增加
def GetFinalHurt(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_FinalHurt)
def SetFinalHurt(curPlayer, value):
--
Gitblit v1.8.0