From 9a2fd2a8b061b3c876be62d397b939daccaeb69a Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 26 三月 2019 11:51:30 +0800
Subject: [PATCH] 3138 【主干】【BUG】拍卖行获得仙玉数值错误(最少收税1) 其他bug: 1. 修复一组拍品个数大于1时无法竞价、一口价的bug 2. 修复竞价后短时间内无法再竞价的bug,会提示有人正在竞价中(正常会提示该情况的一般只有两个人同时点击竞价的时候有可能出现)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py | 79 ++++++++++++++++++++-------------------
1 files changed, 40 insertions(+), 39 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py
index 867f8b1..00d8e46 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py
@@ -54,7 +54,7 @@
import PlayerSuccess
import CrossPlayerData
import PassiveBuffEffMng
-import PlayerFamilyRedPacket
+import FunctionNPCCommon
import FormulaControl
import PlayerGoldGift
import PlayerFlashSale
@@ -138,10 +138,8 @@
SkillShell.AttackFailNotify(curPlayer, useSkillData)
GameWorld.DebugLog("----攻击失败 可能是技能CD %s"%skillTypeID)
# 根据策划需求 以客户端动作为标准,不可攻击状态也进入CD
- playerSkill = curPlayer.GetSkillManager().FindSkillBySkillTypeID(useSkillData.GetSkillTypeID())
- if playerSkill and playerSkill.GetRemainTime() == 0:
- SkillCommon.SetSkillRemainTime(playerSkill, PlayerControl.GetReduceSkillCDPer(curPlayer), tick, curPlayer)
-
+ BaseAttack.Sync_AttackResult(curPlayer, useSkillData)
+
if useSkillData and useSkillData.GetSkillID() != ChConfig.Def_SkillID_Somersault:
# 跟随玩家同频率攻击
PetControl.PetFight(curPlayer, tick)
@@ -1081,36 +1079,38 @@
# @return 布尔值
# @remarks 处理耐久计算方式为:现实时间刷新方式的物品
def ProcessTimeEquip(curPlayer, tick):
- itemManager = curPlayer.GetItemManager()
- hasItemClear = False
-
- curPack = itemManager.GetPack(IPY_GameWorld.rptEquip)
- for i in range(0, curPack.GetCount()):
- curItem = curPack.GetAt(i)
-
- #异常物品
- if not ItemCommon.CheckItemCanUse(curItem):
- continue
-
- if curItem.GetEndureReduceType() not in [ChConfig.Def_EquipReduceType_RTimeItem,
- ChConfig.Def_EquipReduceType_Time]:
- continue
-
- #处理现实时间物品逻辑
- if __DoLogic_ProcessTimeEquip(curPlayer, curItem, i):
- hasItemClear = True
-
-
- if hasItemClear:
- #装备重刷属性
- PlayerWing.CalcWingAttr(curPlayer)
- ChEquip.RefreshPlayerEquipAttribute(curPlayer)
-
-
- # 进行更新时效道具刷新时间
- curPlayer.SetDict(ChConfig.Def_PlayerKey_EquipTime, tick)
-
- return hasItemClear
+ return
+#境界装备修改,暂屏蔽,待优化
+# itemManager = curPlayer.GetItemManager()
+# hasItemClear = False
+#
+# curPack = itemManager.GetPack(IPY_GameWorld.rptEquip)
+# for i in range(0, curPack.GetCount()):
+# curItem = curPack.GetAt(i)
+#
+# #异常物品
+# if not ItemCommon.CheckItemCanUse(curItem):
+# continue
+#
+# if curItem.GetEndureReduceType() not in [ChConfig.Def_EquipReduceType_RTimeItem,
+# ChConfig.Def_EquipReduceType_Time]:
+# continue
+#
+# #处理现实时间物品逻辑
+# if __DoLogic_ProcessTimeEquip(curPlayer, curItem, i):
+# hasItemClear = True
+#
+#
+# if hasItemClear:
+# #装备重刷属性
+# PlayerWing.CalcWingAttr(curPlayer)
+# ChEquip.RefreshPlayerEquipAttribute(curPlayer)
+#
+#
+# # 进行更新时效道具刷新时间
+# curPlayer.SetDict(ChConfig.Def_PlayerKey_EquipTime, tick)
+#
+# return hasItemClear
#---------------------------------------------------------------------
## 装备有效时间到了需要脱下,有效时间物品改成不消失,但是无使用效果 可出售和续费
def __DoLogic_ProcessTimeEquip(curPlayer, curItem, equipIndex):
@@ -1134,7 +1134,7 @@
return True
equipID = result[0]
equipPlace = result[1]
- if equipPlace == ShareDefine.retGuard:
+ if equipPlace in [ShareDefine.retGuard1, ShareDefine.retGuard2]:
PlayerControl.NotifyCode(curPlayer, 'Guardian_Timeout', [equipID, spaceIndex])
elif equipPlace == ShareDefine.retWing:
PlayerControl.NotifyCode(curPlayer, 'WingTiyan_Timeout')
@@ -1147,9 +1147,6 @@
PlayerControl.NotifyCode(curPlayer, 'FirstGoldWPOver')
PlayerGoldGift.FirstGoldTryItemOutTime(curPlayer)
- # 广播卸装
- if equipIndex in ChConfig.Def_SyncEquipStateByIndex:
- curPlayer.Sync_UnEquipItem(equipID, equipPlace)
return True
#---------------------------------------------------------------------
##全局定时器调用, 刷新玩家状态
@@ -1278,6 +1275,8 @@
PlayerFlashSale.ProcessFlashSaleMail(curPlayer, tick)
#地图经验
ProcessAreaExp(curPlayer, tick)
+ #神秘商店刷新
+ FunctionNPCCommon.CheckMysticalShopRefresh(curPlayer, tick)
#跨服数据同步,放最后
CrossPlayerData.ProcessCrossPlayer(curPlayer, tick)
return
@@ -1559,6 +1558,8 @@
##给场景经验
if GameWorld.IsCrossServer():
return
+ if curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_ClientCustomScene):
+ return
crossMapID = PlayerControl.GetCrossMapID(curPlayer)
mapID = crossMapID if crossMapID else GameWorld.GetMap().GetMapID()
neutralMapExpAwardDict = IpyGameDataPY.GetFuncEvalCfg('NeutralMapExpAward', 1, {})
--
Gitblit v1.8.0