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/GM/Commands/SetEquipPartStar.py | 49 +++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 41 insertions(+), 8 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetEquipPartStar.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetEquipPartStar.py
index b44de0e..80f1486 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetEquipPartStar.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetEquipPartStar.py
@@ -14,13 +14,14 @@
# 详细描述: 设置装备部位公共星数
#
#---------------------------------------------------------------------
-import IpyGameDataPY
"""Version = 2019-3-2 17:00"""
#---------------------------------------------------------------------
import PlayerControl
import ChEquip
import GameWorld
-
+import IpyGameDataPY
+import ChConfig
+import IPY_GameWorld
#---------------------------------------------------------------------
#逻辑实现
## GM命令执行入口
@@ -32,26 +33,58 @@
if not cmdList:
__GMHelpAnswer(curPlayer)
return
-
+ if len(cmdList) == 1:
+ starLV = cmdList[0]
+ equipMaxClasslv = IpyGameDataPY.GetFuncCfg('EquipMaxClasslv')
+ for equipPlace in ChConfig.Pack_EquipPart_CanPlusStar.get(IPY_GameWorld.rptEquip, []):
+ for classlv in xrange(1, equipMaxClasslv+1):
+ ipyData = IpyGameDataPY.GetIpyGameData('EquipPlaceIndexMap', classlv, equipPlace)
+ if not ipyData:
+ continue
+ equipPackIndex = ipyData.GetGridIndex()
+ ChEquip.SetEquipPartStar(curPlayer, equipPackIndex, starLV)
+ ChEquip.NotifyEquipPartStar(curPlayer)
+ ChEquip.RefreshPlayerEquipAttribute(curPlayer)
+ playControl = PlayerControl.PlayerControl(curPlayer)
+ playControl.RefreshPlayerAttrState()
+ GameWorld.DebugAnswer(curPlayer, "设置所有部位星数为: %s" % (starLV))
+ elif len(cmdList) == 2:
+ classLV, starLV = cmdList
+ for equipPlace in ChConfig.Pack_EquipPart_CanPlusStar.get(IPY_GameWorld.rptEquip, []):
+
+ ipyData = IpyGameDataPY.GetIpyGameData('EquipPlaceIndexMap', classLV, equipPlace)
+ if not ipyData:
+ continue
+ equipPackIndex = ipyData.GetGridIndex()
+ ChEquip.SetEquipPartStar(curPlayer, equipPackIndex, starLV)
+ ChEquip.NotifyEquipPartStar(curPlayer)
+ ChEquip.RefreshPlayerEquipAttribute(curPlayer, classLV)
+ playControl = PlayerControl.PlayerControl(curPlayer)
+ playControl.RefreshPlayerAttrState()
+ GameWorld.DebugAnswer(curPlayer, "设置%s阶所有部位星数为: %s" % (classLV, starLV))
+
if len(cmdList) != 3:
return
- classlv, equipPlace, starLV = cmdList
- ipyData = IpyGameDataPY.GetIpyGameData('EquipPlaceIndexMap', classlv, equipPlace)
+ classLV, equipPlace, starLV = cmdList
+ ipyData = IpyGameDataPY.GetIpyGameData('EquipPlaceIndexMap', classLV, equipPlace)
if not ipyData:
__GMHelpAnswer(curPlayer)
return
equipPackIndex = ipyData.GetGridIndex()
ChEquip.SetEquipPartStar(curPlayer, equipPackIndex, starLV)
ChEquip.NotifyEquipPartStar(curPlayer, equipPackIndex)
- ChEquip.RefreshPlayerEquipAttribute(curPlayer, classlv)
+ ChEquip.RefreshPlayerEquipAttribute(curPlayer, classLV)
playControl = PlayerControl.PlayerControl(curPlayer)
playControl.RefreshPlayerAttrState()
+ GameWorld.DebugAnswer(curPlayer, "设置%s阶%s部位星数为: %s" % (classLV, equipPlace, starLV))
return
-def __GMHelpAnswer(curPlayer, errorMsg="参数列表 [classlv, equipPlace, starLV]"):
+def __GMHelpAnswer(curPlayer, errorMsg=""):
if errorMsg:
GameWorld.DebugAnswer(curPlayer, "%s" % errorMsg)
-
+ GameWorld.DebugAnswer(curPlayer, "SetEquipPartStar 星数")
+ GameWorld.DebugAnswer(curPlayer, "SetEquipPartStar 阶级 星数")
+ GameWorld.DebugAnswer(curPlayer, "SetEquipPartStar 阶级 部位 星数")
return
--
Gitblit v1.8.0