From 442b6a0d554d8382060571da060a50f299261109 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 21 六月 2019 12:08:49 +0800
Subject: [PATCH] 7394 【2.0】【后端】雷罚BOSS(删除诛仙装备)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianBoss.py | 3
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStone.py | 11
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py | 5
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py | 2
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py | 48 --
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py | 192 --------
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py | 112 ----
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossPlayerData.py | 2
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyGameData.py | 2
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py | 192 --------
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py | 112 ----
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py | 3
/dev/null | 475 --------------------
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini | 20
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py | 51 -
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py | 9
ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py | 48 --
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py | 4
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py | 33 -
19 files changed, 26 insertions(+), 1,298 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
index 82e2247..84eae5a 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
@@ -6599,62 +6599,6 @@
#------------------------------------------------------
-# A3 30 装备诛仙装备 #tagCMEquipZhuXianItem
-
-class tagCMEquipZhuXianItem(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("EquipIndex", c_ubyte), #装备在诛仙装备背包中的索引
- ("ItemIndex", c_ubyte), #装备在诛仙物品背包中的索引
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA3
- self.SubCmd = 0x30
- return
-
- def ReadData(self, stringData, _pos=0, _len=0):
- self.Clear()
- memmove(addressof(self), stringData[_pos:], self.GetLength())
- return _pos + self.GetLength()
-
- def Clear(self):
- self.Cmd = 0xA3
- self.SubCmd = 0x30
- self.EquipIndex = 0
- self.ItemIndex = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMEquipZhuXianItem)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A3 30 装备诛仙装备 //tagCMEquipZhuXianItem:
- Cmd:%s,
- SubCmd:%s,
- EquipIndex:%d,
- ItemIndex:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.EquipIndex,
- self.ItemIndex
- )
- return DumpString
-
-
-m_NAtagCMEquipZhuXianItem=tagCMEquipZhuXianItem()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMEquipZhuXianItem.Cmd,m_NAtagCMEquipZhuXianItem.SubCmd))] = m_NAtagCMEquipZhuXianItem
-
-
-#------------------------------------------------------
# A3 12 守护拾取物品 #tagCMGuardPickupItem
class tagCMGuardPickupItem(Structure):
@@ -7295,58 +7239,6 @@
#------------------------------------------------------
-# A3 31 卸下诛仙装备 #tagCMUnEquipZhuXianItem
-
-class tagCMUnEquipZhuXianItem(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("EquipIndex", c_ubyte), #装备在诛仙装备背包中的索引
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA3
- self.SubCmd = 0x31
- return
-
- def ReadData(self, stringData, _pos=0, _len=0):
- self.Clear()
- memmove(addressof(self), stringData[_pos:], self.GetLength())
- return _pos + self.GetLength()
-
- def Clear(self):
- self.Cmd = 0xA3
- self.SubCmd = 0x31
- self.EquipIndex = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMUnEquipZhuXianItem)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A3 31 卸下诛仙装备 //tagCMUnEquipZhuXianItem:
- Cmd:%s,
- SubCmd:%s,
- EquipIndex:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.EquipIndex
- )
- return DumpString
-
-
-m_NAtagCMUnEquipZhuXianItem=tagCMUnEquipZhuXianItem()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMUnEquipZhuXianItem.Cmd,m_NAtagCMUnEquipZhuXianItem.SubCmd))] = m_NAtagCMUnEquipZhuXianItem
-
-
-#------------------------------------------------------
# A3 2B 一键使用属性果实 #tagCMUseAllAttrFruit
class tagCMUseAllAttrFruit(Structure):
@@ -7523,90 +7415,6 @@
m_NAtagCMWingUp=tagCMWingUp()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMWingUp.Head.Cmd,m_NAtagCMWingUp.Head.SubCmd))] = m_NAtagCMWingUp
-
-
-#------------------------------------------------------
-# A3 32 诛仙装备分解 #tagCMZhuXianEquipDecompose
-
-class tagCMZhuXianEquipDecompose(Structure):
- Head = tagHead()
- Count = 0 #(BYTE Count)//材料所在背包索引的数量
- IndexList = list() #(vector<WORD> IndexList)//材料所在背包索引列表
- ItemIDList = list() #(vector<DWORD> ItemIDList)//材料所在背包物品ID列表
- IsAuto = 0 #(BYTE IsAuto)//是否自动分解
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xA3
- self.Head.SubCmd = 0x32
- return
-
- def ReadData(self, _lpData, _pos=0, _Len=0):
- self.Clear()
- _pos = self.Head.ReadData(_lpData, _pos)
- self.Count,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- for i in range(self.Count):
- value,_pos=CommFunc.ReadWORD(_lpData,_pos)
- self.IndexList.append(value)
- for i in range(self.Count):
- value,_pos=CommFunc.ReadDWORD(_lpData,_pos)
- self.ItemIDList.append(value)
- self.IsAuto,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xA3
- self.Head.SubCmd = 0x32
- self.Count = 0
- self.IndexList = list()
- self.ItemIDList = list()
- self.IsAuto = 0
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 1
- length += 2 * self.Count
- length += 4 * self.Count
- length += 1
-
- return length
-
- def GetBuffer(self):
- data = ''
- data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteBYTE(data, self.Count)
- for i in range(self.Count):
- data = CommFunc.WriteWORD(data, self.IndexList[i])
- for i in range(self.Count):
- data = CommFunc.WriteDWORD(data, self.ItemIDList[i])
- data = CommFunc.WriteBYTE(data, self.IsAuto)
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- Count:%d,
- IndexList:%s,
- ItemIDList:%s,
- IsAuto:%d
- '''\
- %(
- self.Head.OutputString(),
- self.Count,
- "...",
- "...",
- self.IsAuto
- )
- return DumpString
-
-
-m_NAtagCMZhuXianEquipDecompose=tagCMZhuXianEquipDecompose()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMZhuXianEquipDecompose.Head.Cmd,m_NAtagCMZhuXianEquipDecompose.Head.SubCmd))] = m_NAtagCMZhuXianEquipDecompose
#------------------------------------------------------
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
index 35f29ee..8b60580 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -22122,118 +22122,6 @@
#------------------------------------------------------
-# A8 15 诛仙装备分解结果通知 #tagMCZhuXianDecomposeResult
-
-class tagMCZhuXianDecomposeItem(Structure):
- _pack_ = 1
- _fields_ = [
- ("ItemID", c_int), #物品ID
- ("ItemCnt", c_ubyte), #物品数量
- ("IsBind", c_ubyte), #是否绑定
- ]
-
- def __init__(self):
- self.Clear()
- return
-
- def ReadData(self, stringData, _pos=0, _len=0):
- self.Clear()
- memmove(addressof(self), stringData[_pos:], self.GetLength())
- return _pos + self.GetLength()
-
- def Clear(self):
- self.ItemID = 0
- self.ItemCnt = 0
- self.IsBind = 0
- return
-
- def GetLength(self):
- return sizeof(tagMCZhuXianDecomposeItem)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A8 15 诛仙装备分解结果通知 //tagMCZhuXianDecomposeResult:
- ItemID:%d,
- ItemCnt:%d,
- IsBind:%d
- '''\
- %(
- self.ItemID,
- self.ItemCnt,
- self.IsBind
- )
- return DumpString
-
-
-class tagMCZhuXianDecomposeResult(Structure):
- Head = tagHead()
- Cnt = 0 #(BYTE Cnt)//数量
- ItemList = list() #(vector<tagMCZhuXianDecomposeItem> ItemList)
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xA8
- self.Head.SubCmd = 0x15
- return
-
- def ReadData(self, _lpData, _pos=0, _Len=0):
- self.Clear()
- _pos = self.Head.ReadData(_lpData, _pos)
- self.Cnt,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- for i in range(self.Cnt):
- temItemList = tagMCZhuXianDecomposeItem()
- _pos = temItemList.ReadData(_lpData, _pos)
- self.ItemList.append(temItemList)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xA8
- self.Head.SubCmd = 0x15
- self.Cnt = 0
- self.ItemList = list()
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 1
- for i in range(self.Cnt):
- length += self.ItemList[i].GetLength()
-
- return length
-
- def GetBuffer(self):
- data = ''
- data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteBYTE(data, self.Cnt)
- for i in range(self.Cnt):
- data = CommFunc.WriteString(data, self.ItemList[i].GetLength(), self.ItemList[i].GetBuffer())
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- Cnt:%d,
- ItemList:%s
- '''\
- %(
- self.Head.OutputString(),
- self.Cnt,
- "..."
- )
- return DumpString
-
-
-m_NAtagMCZhuXianDecomposeResult=tagMCZhuXianDecomposeResult()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCZhuXianDecomposeResult.Head.Cmd,m_NAtagMCZhuXianDecomposeResult.Head.SubCmd))] = m_NAtagMCZhuXianDecomposeResult
-
-
-#------------------------------------------------------
# AA 0C 登录奖励活动信息 #tagMCActLoginAwardInfo
class tagMCActLoginAwardAction(Structure):
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
index 78e8124..7bdf2ab 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
@@ -507,34 +507,6 @@
Def_Effect_JobBAtkReducePer = 94 # 法师攻击伤害减免
Def_Effect_JobCAtkReducePer = 95 # 弓箭攻击伤害减免
-Def_Effect_ZXCloakAttrPer = 96 # 诛仙披风属性加成百分比
-Def_Effect_ZXMaskAttrPer = 97 # 诛仙面具属性加成百分比
-Def_Effect_ZXGloveAttrPer = 98 # 诛仙手套属性加成百分比
-Def_Effect_ZXRuyiAttrPer = 99 # 诛仙如意属性加成百分比
-Def_Effect_ZXPendantAttrPer = 100 # 诛仙吊坠属性加成百分比
-Def_Effect_ZXRingAttrPer = 101 # 诛仙戒指属性加成百分比
-
-Def_Effect_SkillAddPer1 = 102 # 技能伤害增强1
-Def_Effect_SkillAddPer2 = 103 # 技能伤害增强2
-Def_Effect_SkillAddPer3 = 104 # 技能伤害增强3
-Def_Effect_SkillAddPer4 = 105 # 技能伤害增强4
-Def_Effect_SkillAddPer5 = 106 # 技能伤害增强5
-Def_Effect_SkillAddPer6 = 107 # 技能伤害增强6
-Def_Effect_SkillAddPer7 = 108 # 技能伤害增强7
-
-Def_Effect_SkillReducePer1 = 109 # 受到技能伤害减少1
-Def_Effect_SkillReducePer2 = 110 # 受到技能伤害减少2
-Def_Effect_SkillReducePer3 = 111 # 受到技能伤害减少3
-Def_Effect_SkillReducePer4 = 112 # 受到技能伤害减少4
-Def_Effect_SkillReducePer5 = 113 # 受到技能伤害减少5
-Def_Effect_SkillReducePer6 = 114 # 受到技能伤害减少6
-Def_Effect_SkillReducePer7 = 115 # 受到技能伤害减少7
-
-Def_Effect_ZXWeaponAttrPer = 116 # 诛仙剑1属性加成百分比
-Def_Effect_LXWeaponAttrPer = 117 # 诛仙剑2属性加成百分比
-Def_Effect_XXWeaponAttrPer = 118 # 诛仙剑3属性加成百分比
-Def_Effect_JXWeaponAttrPer = 119 # 诛仙剑4属性加成百分比
-
Def_Effect_Luck = 120 # 气运
Def_Effect_LuckPer = 133 # 气运百分率
@@ -998,10 +970,8 @@
rptPet, # 宠物背包(用物品存储宠物的数据) 31
rptDogzItem, # 神兽物品背包 32
rptDogzEquip, # 神兽装备背包 33
-rptZhuXianItem, # 诛仙物品背包 34
-rptZhuXianEquip, # 诛仙装备背包 35
rptMax, # 最大背包类型数量,放在最后一个
-) = range(28, 28 + 9) #C++定义的枚举到27
+) = range(28, 28 + 7) #C++定义的枚举到27
#虚拟背包类型, 从255递减
Def_VPack_TypeList = (
@@ -1699,22 +1669,6 @@
dogzetClaw, # 神兽兽爪
dogzetScute, # 神兽鳞甲
) = range(101, 101 + 5)
-
-# 诛仙装备位定义
-ZhuXianEquipPlace = (
- zxetCloak, # 诛仙披风 121
- zxetMask, # 诛仙面具 122
- zxetGlove, # 诛仙手套 123
- zxetGlove2, # 诛仙手套 124
- zxetRuyi, # 诛仙如意 125
- zxetPendant, # 诛仙吊坠 126
- zxetRing, # 诛仙戒指 127
- zxetRing2, # 诛仙戒指 128
- zxetWeapon1, # 诛仙剑1 129
- zxetWeapon2, # 诛仙剑2 130
- zxetWeapon3, # 诛仙剑3 131
- zxetWeapon4, # 诛仙剑4 132
-) = range(121, 121 + 12)
# 共享通用装备位,可装备同一类型装备
ShareEquipPlace = [
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini
index d00e85e..af60936 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini
@@ -1267,26 +1267,6 @@
PacketSubCMD_5=0xC4
PacketCallFunc_5=OnDogzEquipPlus
-;诛仙装备
-[EquipZhuXian]
-ScriptName = Item\EquipZhuXian.py
-Writer = hxp
-Releaser = hxp
-RegType = 0
-RegisterPackCount = 3
-
-PacketCMD_1=0xA3
-PacketSubCMD_1=0x30
-PacketCallFunc_1=OnEquipZhuXianItem
-
-PacketCMD_2=0xA3
-PacketSubCMD_2=0x31
-PacketCallFunc_2=OnUnEquipZhuXianItem
-
-PacketCMD_3=0xA3
-PacketSubCMD_3=0x32
-PacketCallFunc_3=OnZhuXianEquipDecompose
-
;个推
[PlayerGeTui]
ScriptName = Player\PlayerGeTui.py
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py
index 0e5666c..b8acfad 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py
@@ -57,7 +57,6 @@
import ChPyNetSendPack
import NetPackCommon
import FamilyRobBoss
-#import EquipZhuXian
import FBCommon
import ChNPC
@@ -1472,10 +1471,8 @@
addPer = 0
reducePer = 0
- #addPer += EquipZhuXian.GetZhuXianEquipSkillAddPer(atkObj.GetPlayerID(), skillTypeID)
if defObj.GetGameObjType() == IPY_GameWorld.gotPlayer:
- #reducePer = EquipZhuXian.GetZhuXianEquipSkillReducePer(defObj.GetPlayerID(), skillTypeID)
#根据防守方职业 计算攻击方伤害加成
if defObj.GetJob() in [ShareDefine.PlayerJob_Warrior, ShareDefine.PlayerJob_Knight]:
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index 7274299..15f1530 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -361,20 +361,7 @@
Def_ItemType_DogzEquipScute = 123 # 神兽鳞甲
Def_ItemType_AddCrossRealmPKCnt = 127 #增加跨服PK次数
-Def_ItemType_ZXCloak = 128 # 诛仙披风
-Def_ItemType_ZXMask = 129 # 诛仙面具
-Def_ItemType_ZXGlove = 130 # 诛仙手套
-Def_ItemType_ZXRuyi = 131 # 诛仙如意
-Def_ItemType_ZXPendant = 132 # 诛仙吊坠
-Def_ItemType_ZXRing = 133 # 诛仙戒指
-Def_ItemType_ZXWeapon1 = 134 # 诛仙剑1
-Def_ItemType_ZXWeapon2 = 135 # 诛仙剑2
-Def_ItemType_ZXWeapon3 = 136 # 诛仙剑3
-Def_ItemType_ZXWeapon4 = 137 # 诛仙剑4
-Def_ItemType_ZhuXianStuff = 138 # 诛仙材料
-
Def_ItemType_DogzStuff = 139 # 神兽材料
-Def_ItemType_ZhuXianStone = 140 # 诛仙宝石
#以下定义物品类型下次删除
Def_Item_Type_Horse = 1000036 #坐骑
@@ -782,13 +769,10 @@
Def_EquipItemType_TJGAutoEat = xrange(Def_ItemType_retWeapon, Def_ItemType_retShoes + 1)
#装备类型
-Def_EquipItemType = range(Def_ItemType_retWeapon, Def_ItemType_DogzEquipScute + 1) + range(Def_ItemType_ZXCloak, Def_ItemType_ZXWeapon4 + 1)
+Def_EquipItemType = range(Def_ItemType_retWeapon, Def_ItemType_DogzEquipScute + 1)
#神兽装备类型
Def_DogzEquiipType = xrange(Def_ItemType_DogzEquipHorn, Def_ItemType_DogzEquipScute + 1)
-
-#诛仙装备类型
-Def_ZhuXianEquiipType = xrange(Def_ItemType_ZXCloak, Def_ItemType_ZXWeapon4 + 1)
# 技能造成实质性伤害的类型
Def_RealAttack_Type = [
@@ -849,10 +833,6 @@
Def_PackCnt_DogzItem = 100
#初始化神兽装备格子数
Def_PackCnt_DogzEquip = 100
-#初始化诛仙背包格子数
-Def_PackCnt_ZhuXianItem = 100
-#初始化诛仙装备格子数
-Def_PackCnt_ZhuXianEquip = 12
#初始化装备栏2
Def_PackCnt_Equip2 = 0
#初始化回收站
@@ -1096,8 +1076,6 @@
ShareDefine.rptPet,
ShareDefine.rptDogzItem,
ShareDefine.rptDogzEquip,
- ShareDefine.rptZhuXianItem,
- ShareDefine.rptZhuXianEquip,
]
#装备可强化背包列表
@@ -1453,7 +1431,7 @@
#自动恢复计算间隔
Def_HPRestoreInterval = 5000
#允许重置的背包索引
-Def_CanItemResetPack = [IPY_GameWorld.rptItem, IPY_GameWorld.rptWarehouse, ShareDefine.rptTreasure, ShareDefine.rptZhuXianItem]
+Def_CanItemResetPack = [IPY_GameWorld.rptItem, IPY_GameWorld.rptWarehouse, ShareDefine.rptTreasure]
#仓库分页个数
Def_ItemReset_WarehousePageCnt = 56
#玩家捡起物品的距离 8
@@ -3610,10 +3588,6 @@
#试炼之塔
Def_Player_Dict_TrialTower_PassLV = "TrialTower_PassLV" # 试炼之塔通关层数
Def_Player_Dict_TrialTower_LastDayPassLV = "Tower_LastDayPassLV" # 试炼之塔昨日通关层数
-#诛仙塔
-Def_Player_Dict_ZhuXianTowerPassLV = "ZhuXianTowerPassLV" # 诛仙塔已通关层数
-Def_Player_Dict_ZhuXianTowerLastFloor = "ZhuXianTowerLastFloor" # 诛仙塔上次挑战层数
-Def_Player_Dict_ZhuXianTowerCostTime = "ZhuXianTowerCostTime" # 诛仙塔通关时间
#天星塔
Def_Player_Dict_SkyTowerFloor = "SkyTowerFloor" # 天星塔已通关层数
@@ -4868,7 +4842,7 @@
ItemDel_ChatBubbleBox, # 激活聊天气泡框
ItemDel_GatherSoul, # 聚魂分解
ItemDel_CoatDecompose, # 时装分解
-ItemDel_ZhuXianDecompose, # 诛仙装备分解
+ItemDel_2037,
ItemDel_EquipStarUp, # 装备升星
ItemDel_EquipPlusEvolve, # 装备强化进化
) = range(2000, 2000 + 40)
@@ -4912,7 +4886,6 @@
ItemDel_ChatBubbleBox:"ChatBubbleBox",
ItemDel_GatherSoul:"GatherSoul",
ItemDel_CoatDecompose:"CoatDecompose",
- ItemDel_ZhuXianDecompose:"ZhuXianDecompose",
ItemDel_EquipStarUp:"EquipStarUp",
ItemDel_EquipPlusEvolve:"EquipPlusEvolve",
}
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
index 82e2247..84eae5a 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
@@ -6599,62 +6599,6 @@
#------------------------------------------------------
-# A3 30 装备诛仙装备 #tagCMEquipZhuXianItem
-
-class tagCMEquipZhuXianItem(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("EquipIndex", c_ubyte), #装备在诛仙装备背包中的索引
- ("ItemIndex", c_ubyte), #装备在诛仙物品背包中的索引
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA3
- self.SubCmd = 0x30
- return
-
- def ReadData(self, stringData, _pos=0, _len=0):
- self.Clear()
- memmove(addressof(self), stringData[_pos:], self.GetLength())
- return _pos + self.GetLength()
-
- def Clear(self):
- self.Cmd = 0xA3
- self.SubCmd = 0x30
- self.EquipIndex = 0
- self.ItemIndex = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMEquipZhuXianItem)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A3 30 装备诛仙装备 //tagCMEquipZhuXianItem:
- Cmd:%s,
- SubCmd:%s,
- EquipIndex:%d,
- ItemIndex:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.EquipIndex,
- self.ItemIndex
- )
- return DumpString
-
-
-m_NAtagCMEquipZhuXianItem=tagCMEquipZhuXianItem()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMEquipZhuXianItem.Cmd,m_NAtagCMEquipZhuXianItem.SubCmd))] = m_NAtagCMEquipZhuXianItem
-
-
-#------------------------------------------------------
# A3 12 守护拾取物品 #tagCMGuardPickupItem
class tagCMGuardPickupItem(Structure):
@@ -7295,58 +7239,6 @@
#------------------------------------------------------
-# A3 31 卸下诛仙装备 #tagCMUnEquipZhuXianItem
-
-class tagCMUnEquipZhuXianItem(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("EquipIndex", c_ubyte), #装备在诛仙装备背包中的索引
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA3
- self.SubCmd = 0x31
- return
-
- def ReadData(self, stringData, _pos=0, _len=0):
- self.Clear()
- memmove(addressof(self), stringData[_pos:], self.GetLength())
- return _pos + self.GetLength()
-
- def Clear(self):
- self.Cmd = 0xA3
- self.SubCmd = 0x31
- self.EquipIndex = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMUnEquipZhuXianItem)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A3 31 卸下诛仙装备 //tagCMUnEquipZhuXianItem:
- Cmd:%s,
- SubCmd:%s,
- EquipIndex:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.EquipIndex
- )
- return DumpString
-
-
-m_NAtagCMUnEquipZhuXianItem=tagCMUnEquipZhuXianItem()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMUnEquipZhuXianItem.Cmd,m_NAtagCMUnEquipZhuXianItem.SubCmd))] = m_NAtagCMUnEquipZhuXianItem
-
-
-#------------------------------------------------------
# A3 2B 一键使用属性果实 #tagCMUseAllAttrFruit
class tagCMUseAllAttrFruit(Structure):
@@ -7523,90 +7415,6 @@
m_NAtagCMWingUp=tagCMWingUp()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMWingUp.Head.Cmd,m_NAtagCMWingUp.Head.SubCmd))] = m_NAtagCMWingUp
-
-
-#------------------------------------------------------
-# A3 32 诛仙装备分解 #tagCMZhuXianEquipDecompose
-
-class tagCMZhuXianEquipDecompose(Structure):
- Head = tagHead()
- Count = 0 #(BYTE Count)//材料所在背包索引的数量
- IndexList = list() #(vector<WORD> IndexList)//材料所在背包索引列表
- ItemIDList = list() #(vector<DWORD> ItemIDList)//材料所在背包物品ID列表
- IsAuto = 0 #(BYTE IsAuto)//是否自动分解
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xA3
- self.Head.SubCmd = 0x32
- return
-
- def ReadData(self, _lpData, _pos=0, _Len=0):
- self.Clear()
- _pos = self.Head.ReadData(_lpData, _pos)
- self.Count,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- for i in range(self.Count):
- value,_pos=CommFunc.ReadWORD(_lpData,_pos)
- self.IndexList.append(value)
- for i in range(self.Count):
- value,_pos=CommFunc.ReadDWORD(_lpData,_pos)
- self.ItemIDList.append(value)
- self.IsAuto,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xA3
- self.Head.SubCmd = 0x32
- self.Count = 0
- self.IndexList = list()
- self.ItemIDList = list()
- self.IsAuto = 0
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 1
- length += 2 * self.Count
- length += 4 * self.Count
- length += 1
-
- return length
-
- def GetBuffer(self):
- data = ''
- data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteBYTE(data, self.Count)
- for i in range(self.Count):
- data = CommFunc.WriteWORD(data, self.IndexList[i])
- for i in range(self.Count):
- data = CommFunc.WriteDWORD(data, self.ItemIDList[i])
- data = CommFunc.WriteBYTE(data, self.IsAuto)
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- Count:%d,
- IndexList:%s,
- ItemIDList:%s,
- IsAuto:%d
- '''\
- %(
- self.Head.OutputString(),
- self.Count,
- "...",
- "...",
- self.IsAuto
- )
- return DumpString
-
-
-m_NAtagCMZhuXianEquipDecompose=tagCMZhuXianEquipDecompose()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMZhuXianEquipDecompose.Head.Cmd,m_NAtagCMZhuXianEquipDecompose.Head.SubCmd))] = m_NAtagCMZhuXianEquipDecompose
#------------------------------------------------------
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
index 35f29ee..8b60580 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -22122,118 +22122,6 @@
#------------------------------------------------------
-# A8 15 诛仙装备分解结果通知 #tagMCZhuXianDecomposeResult
-
-class tagMCZhuXianDecomposeItem(Structure):
- _pack_ = 1
- _fields_ = [
- ("ItemID", c_int), #物品ID
- ("ItemCnt", c_ubyte), #物品数量
- ("IsBind", c_ubyte), #是否绑定
- ]
-
- def __init__(self):
- self.Clear()
- return
-
- def ReadData(self, stringData, _pos=0, _len=0):
- self.Clear()
- memmove(addressof(self), stringData[_pos:], self.GetLength())
- return _pos + self.GetLength()
-
- def Clear(self):
- self.ItemID = 0
- self.ItemCnt = 0
- self.IsBind = 0
- return
-
- def GetLength(self):
- return sizeof(tagMCZhuXianDecomposeItem)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A8 15 诛仙装备分解结果通知 //tagMCZhuXianDecomposeResult:
- ItemID:%d,
- ItemCnt:%d,
- IsBind:%d
- '''\
- %(
- self.ItemID,
- self.ItemCnt,
- self.IsBind
- )
- return DumpString
-
-
-class tagMCZhuXianDecomposeResult(Structure):
- Head = tagHead()
- Cnt = 0 #(BYTE Cnt)//数量
- ItemList = list() #(vector<tagMCZhuXianDecomposeItem> ItemList)
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xA8
- self.Head.SubCmd = 0x15
- return
-
- def ReadData(self, _lpData, _pos=0, _Len=0):
- self.Clear()
- _pos = self.Head.ReadData(_lpData, _pos)
- self.Cnt,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- for i in range(self.Cnt):
- temItemList = tagMCZhuXianDecomposeItem()
- _pos = temItemList.ReadData(_lpData, _pos)
- self.ItemList.append(temItemList)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xA8
- self.Head.SubCmd = 0x15
- self.Cnt = 0
- self.ItemList = list()
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 1
- for i in range(self.Cnt):
- length += self.ItemList[i].GetLength()
-
- return length
-
- def GetBuffer(self):
- data = ''
- data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteBYTE(data, self.Cnt)
- for i in range(self.Cnt):
- data = CommFunc.WriteString(data, self.ItemList[i].GetLength(), self.ItemList[i].GetBuffer())
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- Cnt:%d,
- ItemList:%s
- '''\
- %(
- self.Head.OutputString(),
- self.Cnt,
- "..."
- )
- return DumpString
-
-
-m_NAtagMCZhuXianDecomposeResult=tagMCZhuXianDecomposeResult()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCZhuXianDecomposeResult.Head.Cmd,m_NAtagMCZhuXianDecomposeResult.Head.SubCmd))] = m_NAtagMCZhuXianDecomposeResult
-
-
-#------------------------------------------------------
# AA 0C 登录奖励活动信息 #tagMCActLoginAwardInfo
class tagMCActLoginAwardAction(Structure):
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStone.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStone.py
index e6cff6f..eb04bb9 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStone.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStone.py
@@ -32,8 +32,6 @@
import ShareDefine
import EventShell
-# import EquipZhuXian
-
g_stoneCanPlaceList = [] # 可镶嵌的位置
@@ -132,12 +130,7 @@
def GetPackTypeByEquipPlace(equipPlace):
- ##目前支持镶嵌普通装备、诛仙装备
- # if equipPlace in ShareDefine.ZhuXianEquipPlace:
- # equipPackType = ShareDefine.rptZhuXianEquip
- # stonePackType = ShareDefine.rptZhuXianItem
- # placeIndex = EquipZhuXian.GetZhuXianEquipIndexByPlace(equipPlace)
- # else:
+ ##目前支持镶嵌普通装备
equipPackType = IPY_GameWorld.rptEquip
stonePackType = IPY_GameWorld.rptItem
placeIndex = equipPlace
@@ -554,8 +547,6 @@
# 刷新所有属性
playControl = PlayerControl.PlayerControl(curPlayer)
playControl.RefreshPlayerAttrState()
- # elif packType == ShareDefine.rptZhuXianEquip:
- # EquipZhuXian.RefreshZhuXianAttr(curPlayer)
return
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/PrintZXEquipSkill.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/PrintZXEquipSkill.py
deleted file mode 100644
index e98f977..0000000
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/PrintZXEquipSkill.py
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/usr/bin/python
-# -*- coding: GBK -*-
-#-------------------------------------------------------------------------------
-#
-##@package GM.Commands.PrintZXEquipSkill
-#
-# @todo:输出诛仙装备技能相关信息
-# @author hxp
-# @date 2019-01-23
-# @version 1.0
-#
-# 详细描述: 输出诛仙装备技能相关信息
-#
-#-------------------------------------------------------------------------------
-#"""Version = 2019-01-23 15:00"""
-#-------------------------------------------------------------------------------
-
-import GameWorld
-import PyGameData
-import PlayerControl
-import IpyGameDataPY
-import ShareDefine
-
-## GM命令执行入口
-# @param curPlayer 当前玩家
-# @param cmdList 参数列表 [开启格数]
-# @return None
-# @remarks 函数详细说明.
-def OnExec(curPlayer, cmdList):
-
- playerID = curPlayer.GetPlayerID()
- gameData = GameWorld.GetGameData()
- GameWorld.DebugAnswer(curPlayer, "诛仙装备技能效果")
-
- addPerDict = PyGameData.g_zhuXianSkillAddPerDict.get(playerID, {})
- reducePerDict = PyGameData.g_zhuXianSkillReducePerDict.get(playerID, {})
- attrIDSkillPlusDict = IpyGameDataPY.GetFuncEvalCfg("SkillPlusAttrID", 1, {})
- addAttrIDList = range(ShareDefine.Def_Effect_SkillAddPer1, ShareDefine.Def_Effect_SkillAddPer7 + 1)
- reduceAttrIDList = range(ShareDefine.Def_Effect_SkillReducePer1, ShareDefine.Def_Effect_SkillReducePer7 + 1)
- for attrID, skillIDList in attrIDSkillPlusDict.items():
- addSkillInfo = ""
- reduceSkillInfo = ""
- for i, skillID in enumerate(skillIDList):
- curSkill = gameData.GetSkillBySkillID(skillID)
- if curSkill == None:
- continue
-
- if attrID in addAttrIDList:
- addSkillInfo += "%s " % (curSkill.GetSkillName())
- if i == len(skillIDList) - 1:
- addPerValue = addPerDict.get(skillID, 0)
- addSkillInfo += " +%s" % addPerValue
-
- elif attrID in reduceAttrIDList:
- reduceSkillInfo += "%s " % (curSkill.GetSkillName())
- if i == len(skillIDList) - 1:
- reducePerValue = reducePerDict.get(skillID, 0)
- reduceSkillInfo += " +%s" % reducePerValue
-
- if addSkillInfo:
- GameWorld.DebugAnswer(curPlayer, "增伤%s: %s" % (attrID, addSkillInfo))
- if reduceSkillInfo:
- GameWorld.DebugAnswer(curPlayer, "减伤%s: %s" % (attrID, reduceSkillInfo))
-
- GameWorld.DebugAnswer(curPlayer, "职业增伤: [%s, %s, %s]"
- % (PlayerControl.GetJobAHurtAddPer(curPlayer),
- PlayerControl.GetJobBHurtAddPer(curPlayer),
- PlayerControl.GetJobCHurtAddPer(curPlayer)))
-
- GameWorld.DebugAnswer(curPlayer, "职业减伤: [%s, %s, %s]"
- % (PlayerControl.GetJobAAtkReducePer(curPlayer),
- PlayerControl.GetJobBAtkReducePer(curPlayer),
- PlayerControl.GetJobCAtkReducePer(curPlayer)))
-
- return
-
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianBoss.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianBoss.py
index 7192746..6363986 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianBoss.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianBoss.py
@@ -71,9 +71,6 @@
if curPlayer.GetOfficialRank() < ipyData.GetRealmLV():
return
-# #诛仙总评分
-# if ItemCommon.GetZhuXianEquipTotalGS(curPlayer) < ipyData.GetZhuXianScore():
-# return
enterCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_EnterFbCntDay % ChConfig.Def_FBMapID_ZhuXianBoss)
if enterCnt >= FBCommon.GetEnterFBMaxCnt(curPlayer, ChConfig.Def_FBMapID_ZhuXianBoss):
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/EquipZhuXian.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/EquipZhuXian.py
deleted file mode 100644
index 41696ec..0000000
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/EquipZhuXian.py
+++ /dev/null
@@ -1,475 +0,0 @@
-#!/usr/bin/python
-# -*- coding: GBK -*-
-#-------------------------------------------------------------------------------
-#
-##@package EquipZhuXian
-#
-# @todo:诛仙装备
-# @author hxp
-# @date 2019-01-22
-# @version 1.0
-#
-# 详细描述: 诛仙装备
-#
-#-------------------------------------------------------------------------------
-#"""Version = 2019-01-22 15:30"""
-#-------------------------------------------------------------------------------
-
-import GameWorld
-import ItemCommon
-import ShareDefine
-import PlayerControl
-import DataRecordPack
-import IPY_GameWorld
-import ItemControler
-import IpyGameDataPY
-import NetPackCommon
-import ChPyNetSendPack
-import SkillCommon
-import PyGameData
-import ChConfig
-import ChEquip
-
-import random
-
-
-def GetZhuXianEquipIndexByPlace(equipPlace):
- ## 获取诛仙装备位对应的索引
- return equipPlace - 1 - 120
-
-
-def GetZhuXianEquipPlaceByIndex(equipIndex):
- ## 获取诛仙装备索引对应装备位
- return equipIndex + 1 + 120
-
-
-def GetZhuXianEquipPlaceIndexIsUnlock(curPlayer, equipPlaceIndex):
- ## 获取诛仙装备位是否解锁
- # @param equipPlaceIndex: 注意传入的参数是装备位索引
- equipPlace = GetZhuXianEquipPlaceByIndex(equipPlaceIndex)
- placeUnlockDict = IpyGameDataPY.GetConfigEx("EquipZhuXianUnlock") # 诛仙装备位对应解锁所需诛仙塔层数 {"装备位":诛仙塔层数, ...} 没配的默认解锁
- if not placeUnlockDict:
- placeUnlockDict = {}
- ipyDataMgr = IpyGameDataPY.IPY_Data()
- for index in xrange(ipyDataMgr.GetZhuXianTowerCount()):
- ipyData = ipyDataMgr.GetZhuXianTowerByIndex(index)
- unlockEquipPlace = ipyData.GetUnLockEquipPlace()
- if not unlockEquipPlace:
- continue
- towerID = ipyData.GetID()
- placeUnlockDict[unlockEquipPlace] = towerID
- IpyGameDataPY.SetConfigEx("EquipZhuXianUnlock", placeUnlockDict)
- GameWorld.DebugLog("加载诛仙塔解锁装备位: placeUnlockDict=%s" % placeUnlockDict)
- if equipPlace not in placeUnlockDict:
- return True
- needTowerLV = placeUnlockDict[equipPlace]
- curTowerLV = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_ZhuXianTowerPassLV) # 已过关的诛仙塔层数
- return curTowerLV >= needTowerLV
-
-
-def CheckLearnZhuXianSkill(curPlayer, skillID):
- ## 检查诛仙装备位装备阶数
-
- zhuxianSkillCondition = IpyGameDataPY.GetFuncEvalCfg("EquipZhuXian", 3, {})
- if str(skillID) not in zhuxianSkillCondition:
- return True
- classLVPlaceListDict = zhuxianSkillCondition[str(skillID)]
- zhuXianEquipPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptZhuXianEquip)
- for classLV, placeList in classLVPlaceListDict.items():
- needClassLV = int(classLV)
- for equipPlace in placeList:
- placeIndex = GetZhuXianEquipIndexByPlace(equipPlace)
- if placeIndex < 0 or placeIndex >= zhuXianEquipPack.GetCount():
- return
- curEquip = zhuXianEquipPack.GetAt(placeIndex)
- if curEquip.IsEmpty():
- GameWorld.DebugLog("诛仙装备位无装备,无法激活神技! equipPlace=%s" % equipPlace)
- return
- curClassLV = ItemCommon.GetItemClassLV(curEquip)
- if curClassLV < needClassLV:
- GameWorld.DebugLog("诛仙装备位装备阶级不足,无法激活神技! equipPlace=%s,curClassLV=%s < needClassLV=%s" % (equipPlace, curClassLV, needClassLV))
- return
-
- return True
-
-
-#// A3 30 装备诛仙装备 #tagCMEquipZhuXianItem
-#
-#struct tagCMEquipZhuXianItem
-#{
-# tagHead Head;
-# BYTE EquipIndex; //装备在诛仙装备背包中的索引
-# BYTE ItemIndex; //装备在诛仙物品背包中的索引
-#};
-def OnEquipZhuXianItem(index, clientData, tick):
- curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
- playerID = curPlayer.GetPlayerID()
- reqEquipPlaceIndex = clientData.EquipIndex
- itemIndex = clientData.ItemIndex
-
- GameWorld.DebugLog("穿戴诛仙装备: EquipIndex=%s,ItemIndex=%s" % (reqEquipPlaceIndex, itemIndex), playerID)
-
- zhuXianItemPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptZhuXianItem)
- curEquip = zhuXianItemPack.GetAt(itemIndex)
- if not ItemCommon.CheckItemCanUse(curEquip) or ItemControler.GetIsAuctionItem(curEquip):
- GameWorld.DebugLog("物品为空或不可用: itemIndex=%s" % itemIndex, playerID)
- return
- if not ItemCommon.GetIsZhuXianEquip(curEquip):
- GameWorld.DebugLog("非诛仙装备: itemIndex=%s" % itemIndex, playerID)
- return
-
- equipPlace = curEquip.GetEquipPlace()
- equipPlaceIndex = GetZhuXianEquipIndexByPlace(equipPlace)
- if reqEquipPlaceIndex != equipPlaceIndex:
- reqEquipPlace = GetZhuXianEquipPlaceByIndex(reqEquipPlaceIndex)
- canPlace = False
- for sharePlaceList in ShareDefine.ShareEquipPlace:
- if reqEquipPlace in sharePlaceList and equipPlace in sharePlaceList:
- canPlace = True
- break
- if not canPlace:
- GameWorld.DebugLog("该装备位不可装备该物品!equipPlace=%s,equipPlaceIndex=%s != reqEquipPlaceIndex=%s" % (equipPlace, equipPlaceIndex, reqEquipPlaceIndex), playerID)
- return
-
- zhuXianEquipPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptZhuXianEquip)
- if reqEquipPlaceIndex < 0 or reqEquipPlaceIndex >= zhuXianEquipPack.GetCount():
- GameWorld.ErrLog("诛仙装备背包索引异常: EquipIndex=%s" % (reqEquipPlaceIndex), playerID)
- return
-
- if not GetZhuXianEquipPlaceIndexIsUnlock(curPlayer, reqEquipPlaceIndex):
- GameWorld.DebugLog("诛仙装备位未解锁: equipPlace=%s,EquipIndex=%s" % (equipPlace, reqEquipPlaceIndex))
- return
-
- destEquip = zhuXianEquipPack.GetAt(reqEquipPlaceIndex)
- desItemID, desUserData = [0, ''] if destEquip.IsEmpty() else [destEquip.GetItemTypeID(), destEquip.GetUserData()]
- srcItemID, srcUserData = curEquip.GetItemTypeID(), curEquip.GetUserData()
- if not ItemCommon.DoLogicSwitchItem(curPlayer, destEquip, curEquip, ShareDefine.rptZhuXianEquip):
- return
- dataDict = {'dotype':'EquipZhuXianItem', 'desItemID':desItemID, 'desUserData':desUserData, 'srcItemID':srcItemID, 'srcUserData':srcUserData}
- DataRecordPack.Cache_FightPowerChangeInfo(curPlayer, ChConfig.PowerDownType_EquipChange, dataDict)
-
- RefreshZhuXianAttr(curPlayer)
- return
-
-
-#// A3 31 卸下诛仙装备 #tagCMUnEquipZhuXianItem
-#
-#struct tagCMUnEquipZhuXianItem
-#{
-# tagHead Head;
-# BYTE EquipIndex; //装备在诛仙装备背包中的索引
-#};
-def OnUnEquipZhuXianItem(index, clientData, tick):
- curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
- playerID = curPlayer.GetPlayerID()
- EquipIndex = clientData.EquipIndex
-
- GameWorld.DebugLog("卸下诛仙装备: EquipIndex=%s" % (EquipIndex), playerID)
-
- zhuXianEquipPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptZhuXianEquip)
- if EquipIndex < 0 or EquipIndex >= zhuXianEquipPack.GetCount():
- GameWorld.ErrLog("诛仙装备背包索引异常: EquipIndex=%s" % (EquipIndex), playerID)
- return
- curEquip = zhuXianEquipPack.GetAt(EquipIndex)
- if not ItemCommon.CheckItemCanUse(curEquip):
- GameWorld.DebugLog("诛仙装备为空或不可用: EquipIndex=%s" % EquipIndex, playerID)
- return
-
- emptyIndex = ItemCommon.GetEmptyIndexInPack(curPlayer, ShareDefine.rptZhuXianItem)
- if not ItemCommon.DoLogicSwitchItemEx(curPlayer, ShareDefine.rptZhuXianEquip, ShareDefine.rptZhuXianItem, EquipIndex, emptyIndex):
- GameWorld.DebugLog("诛仙卸下装备失败: EquipIndex=%s" % (EquipIndex), playerID)
- return
- RefreshZhuXianAttr(curPlayer)
- return
-
-
-def RefreshZhuXianAttr(curPlayer):
- #CalcZhuXianAttr(curPlayer)
- #PlayerControl.PlayerControl(curPlayer).RefreshPlayerAttrState()
- return
-
-
-def CalcZhuXianAttr(curPlayer):
- return
- ## 刷新诛仙属性
- playerID = curPlayer.GetPlayerID()
- PyGameData.g_zhuXianSkillAddPerDict.pop(playerID, None)
- PyGameData.g_zhuXianSkillReducePerDict.pop(playerID, None)
-
- allAttrList = [{} for _ in range(4)]
- allAttrListZXSuit = [{} for _ in range(4)]
- allAttrListZXStone = [{} for _ in range(4)]
- equipScoreTotal = 0 #为解决装备评分、战力不一致的情况,装备战力改为由评分作为参数计算战力
- equipPlaceClassLVDict = {} #装备位对应装备阶 {装备位:阶, ...}
- equipPlaceBaseAttrDict = {} #装备位对应基础属性字典 {装备位:{属性ID:value, ...}, ...}
- equipPlaceStoneLVDict = {} #装备位对应宝石等级 {装备位:[宝石等级,..], ...}
- attrIDSkillPlusDict = IpyGameDataPY.GetFuncEvalCfg("SkillPlusAttrID", 1, {}) # 属性ID对应影响的技能TypeID列表 {属性ID:[技能TypeID列表, ...], ...}
- addAttrIDList = range(ShareDefine.Def_Effect_SkillAddPer1, ShareDefine.Def_Effect_SkillAddPer7 + 1)
- reduceAttrIDList = range(ShareDefine.Def_Effect_SkillReducePer1, ShareDefine.Def_Effect_SkillReducePer7 + 1)
- zxSkillPlusAttrDict = {} # 玩家诛仙装备影响技能TypeID属性字典 {属性ID:值, ...}
-
- zhuXianEquipPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptZhuXianEquip)
- equipPackCount = zhuXianEquipPack.GetCount()
-
- for equipIndex in range(len(ShareDefine.ZhuXianEquipPlace)):
- if equipIndex < 0 or equipIndex >= equipPackCount:
- break
- curEquip = zhuXianEquipPack.GetAt(equipIndex)
- if curEquip.IsEmpty():
- continue
- equipScoreTotal += ItemCommon.GetEquipGearScore(curEquip)
- equipPlace = GetZhuXianEquipPlaceByIndex(equipIndex)
- equipPlaceClassLVDict[equipPlace] = ItemCommon.GetItemClassLV(curEquip)
-
- # 基础属性
- baseAttrDict = {}
- for effIndex in xrange(curEquip.GetEffectCount()):
- curEffect = curEquip.GetEffectByIndex(effIndex)
- if not curEffect or not curEffect.GetEffectID():
- break
- effID = curEffect.GetEffectID()
- if not effID:
- continue
- effValue = curEffect.GetEffectValue(0)
- PlayerControl.CalcAttrDict_Type(effID, effValue, allAttrList)
- baseAttrDict[effID] = baseAttrDict.get(effID, 0) + effValue
- equipPlaceBaseAttrDict[equipPlace] = baseAttrDict
-
- # 传奇属性
- if curEquip.GetUserAttrCount(ShareDefine.Def_IudetLegendAttrID) == curEquip.GetUserAttrCount(ShareDefine.Def_IudetLegendAttrValue):
- for i in xrange(curEquip.GetUserAttrCount(ShareDefine.Def_IudetLegendAttrID)):
- legendAttrID = curEquip.GetUserAttrByIndex(ShareDefine.Def_IudetLegendAttrID, i)
- legendAttrValue = curEquip.GetUserAttrByIndex(ShareDefine.Def_IudetLegendAttrValue, i)
- if legendAttrID in attrIDSkillPlusDict:
- zxSkillPlusAttrDict[legendAttrID] = zxSkillPlusAttrDict.get(legendAttrID, 0) + legendAttrValue
- else:
- PlayerControl.CalcAttrDict_Type(legendAttrID, legendAttrValue, allAttrList)
- #宝石属性
- gemlvList = ChEquip.CalcEquipStone_Effect(curPlayer, equipPlace, allAttrListZXStone)
- equipPlaceStoneLVDict[equipPlace] = gemlvList
-
-
-# GameWorld.DebugLog("诛仙装备属性: allAttrList=%s" % (allAttrList))
-# GameWorld.DebugLog(" zxSkillPlusAttrDict=%s" % (zxSkillPlusAttrDict))
-# GameWorld.DebugLog(" equipPlaceClassLVDict=%s" % (equipPlaceClassLVDict))
-
- # 缓存技能增强比例,目前暂写死对指定技能伤害百分比提升
- for attrID, plusValue in zxSkillPlusAttrDict.items():
- if attrID not in attrIDSkillPlusDict:
- continue
- skillTypeIDList = attrIDSkillPlusDict[attrID]
- for skillTypeID in skillTypeIDList:
- if attrID in addAttrIDList:
- skillAddPerDict = PyGameData.g_zhuXianSkillAddPerDict.get(playerID, {})
- skillAddPerDict[skillTypeID] = plusValue
- PyGameData.g_zhuXianSkillAddPerDict[playerID] = skillAddPerDict
- elif attrID in reduceAttrIDList:
- skillReducePerDict = PyGameData.g_zhuXianSkillReducePerDict.get(playerID, {})
- skillReducePerDict[skillTypeID] = plusValue
- PyGameData.g_zhuXianSkillReducePerDict[playerID] = skillReducePerDict
-
-# GameWorld.DebugLog(" PyGameData.g_zhuXianSkillAddPerDict=%s" % PyGameData.g_zhuXianSkillAddPerDict)
-# GameWorld.DebugLog(" PyGameData.g_zhuXianSkillReducePerDict=%s" % PyGameData.g_zhuXianSkillReducePerDict)
-
- # 计算套装,目前暂写死对诛仙装备部位基础属性提升
- suitAttrIDPlusPlaceDict = {
- ShareDefine.Def_Effect_ZXCloakAttrPer:ShareDefine.zxetCloak,
- ShareDefine.Def_Effect_ZXMaskAttrPer:ShareDefine.zxetMask,
- ShareDefine.Def_Effect_ZXGloveAttrPer:ShareDefine.zxetGlove,
- ShareDefine.Def_Effect_ZXRuyiAttrPer:ShareDefine.zxetRuyi,
- ShareDefine.Def_Effect_ZXPendantAttrPer:ShareDefine.zxetPendant,
- ShareDefine.Def_Effect_ZXRingAttrPer:ShareDefine.zxetRing,
- ShareDefine.Def_Effect_ZXWeaponAttrPer:ShareDefine.zxetWeapon1,
- ShareDefine.Def_Effect_LXWeaponAttrPer:ShareDefine.zxetWeapon2,
- ShareDefine.Def_Effect_XXWeaponAttrPer:ShareDefine.zxetWeapon3,
- ShareDefine.Def_Effect_JXWeaponAttrPer:ShareDefine.zxetWeapon4,
- }
- suitPlaceGroupDict = IpyGameDataPY.GetFuncEvalCfg("EquipZhuXian", 2, {})
- for suitType, placeGroupList in suitPlaceGroupDict.items():
- suitType = int(suitType)
- suitLV = 0
- isSuit = True
- for place in placeGroupList:
- if place not in equipPlaceClassLVDict:
- isSuit = False
- #GameWorld.DebugLog(" 未穿戴装备,无法激活诛仙套装! suitType=%s,placeGroupList=%s,place=%s" % (suitType, placeGroupList, place))
- break
- if not suitLV:
- suitLV = equipPlaceClassLVDict[place]
- else:
- suitLV = min(suitLV, equipPlaceClassLVDict[place])
-
- if not isSuit or not suitLV:
- continue
-
- GameWorld.DebugLog(" 激活诛仙套装: suitType=%s, suitLV=%s" % (suitType, suitLV))
- suitAttrIpyData = IpyGameDataPY.GetIpyGameData("ZhuXianSuitAttr", suitType, suitLV)
- if not suitAttrIpyData:
- continue
- suitAttrIDList = suitAttrIpyData.GetSuitAttrIDList()
- suitAttrValueList = suitAttrIpyData.GetSuitAttrValueList()
- if len(suitAttrIDList) != len(suitAttrValueList):
- continue
- for i, suitEffID in enumerate(suitAttrIDList):
- suitEffValue = suitAttrValueList[i]
- #GameWorld.DebugLog(" suitEffID=%s,suitEffValue=%s" % (suitEffID, suitEffValue))
- if suitEffID in suitAttrIDPlusPlaceDict:
- plusPlace = suitAttrIDPlusPlaceDict[suitEffID]
- if plusPlace not in equipPlaceBaseAttrDict:
- continue
- plusEffDict = equipPlaceBaseAttrDict[plusPlace]
- #GameWorld.DebugLog(" plusPlace=%s,plusEffDict=%s" % (plusPlace, plusEffDict))
- for plusEffID, plusEffValue in plusEffDict.items():
- addValue = int(plusEffValue * (10000 + suitEffValue) / 10000.0)
- #GameWorld.DebugLog(" plusEffID=%s,plusEffValue=%s,addValue=%s" % (plusEffID, plusEffValue, addValue))
- PlayerControl.CalcAttrDict_Type(plusEffID, addValue, allAttrListZXSuit)
- else:
- PlayerControl.CalcAttrDict_Type(suitEffID, suitEffValue, allAttrListZXSuit)
- #宝石共鸣属性
- #GameWorld.DebugLog('equipPlaceStoneLVDict=%s'%equipPlaceStoneLVDict)
- needStoneCnt = IpyGameDataPY.GetFuncCfg('GemResonance')
- for suitType, placeGroupList in suitPlaceGroupDict.items():
- suitType = int(suitType)
- groupStoneLVList = []
- for place in placeGroupList:
- groupStoneLVList += equipPlaceStoneLVDict.get(place, [])
-
- if len(groupStoneLVList) < needStoneCnt:
- continue
- groupStoneLVList.sort(reverse=True)
- shareStoneLV = min(groupStoneLVList[:needStoneCnt])
- GameWorld.DebugLog(" 激活诛仙宝石共鸣: suitType=%s, shareStoneLV=%s" % (suitType, shareStoneLV))
- stoneAttrIpyData = IpyGameDataPY.GetIpyGameData("ZhuXianStoneAttr", suitType, shareStoneLV)
- if not stoneAttrIpyData:
- continue
- attrIDList = stoneAttrIpyData.GetAttrIDList()
- attrValueList = stoneAttrIpyData.GetAttrValueList()
- if len(attrIDList) != len(attrValueList):
- continue
- for i, effID in enumerate(attrIDList):
- effValue = attrValueList[i]
- if effID in suitAttrIDPlusPlaceDict:
- plusPlace = suitAttrIDPlusPlaceDict[effID]
- if plusPlace not in equipPlaceBaseAttrDict:
- continue
- plusEffDict = equipPlaceBaseAttrDict[plusPlace]
- #GameWorld.DebugLog(" plusPlace=%s,plusEffDict=%s" % (plusPlace, plusEffDict))
- for plusEffID, plusEffValue in plusEffDict.items():
- addValue = int(plusEffValue * (10000 + effValue) / 10000.0)
- #GameWorld.DebugLog(" plusEffID=%s,plusEffValue=%s,addValue=%s" % (plusEffID, plusEffValue, addValue))
- PlayerControl.CalcAttrDict_Type(plusEffID, addValue, allAttrListZXStone)
- else:
- PlayerControl.CalcAttrDict_Type(effID, effValue, allAttrListZXStone)
-
- # 保存计算值
- #PlayerControl.SetCalcAttrListValue(curPlayer, ChConfig.Def_CalcAttrFunc_ZXEquip, allAttrList)
- #PlayerControl.SetCalcAttrListValue(curPlayer, ChConfig.Def_CalcAttrFunc_ZXEquipSuit, allAttrListZXSuit)
- #PlayerControl.SetCalcAttrListValue(curPlayer, ChConfig.Def_CalcAttrFunc_ZXEquipStone, allAttrListZXStone)
-
- #计算装备基础属性附加战力 (目前组成: 评分战力 + ...)
- equipFightPowerEx = eval(IpyGameDataPY.GetFuncCompileCfg("FightpowerFormula", 2))
- GameWorld.DebugLog("诛仙装备评分战力: equipScoreTotal=%s,equipFightPowerEx=%s" % (equipScoreTotal, equipFightPowerEx))
- #curPlayer.SetDict(ChConfig.Def_PlayerKey_MFPEx % ShareDefine.Def_MFPType_ZhuXian, equipFightPowerEx)
- return
-
-
-def GetZhuXianEquipSkillAddPer(playerID, skillTypeID):
- ## 获取诛仙装备伤害百分比提升值
- if playerID not in PyGameData.g_zhuXianSkillAddPerDict:
- return 0
- skillAddPerDict = PyGameData.g_zhuXianSkillAddPerDict[playerID]
- if skillTypeID not in skillAddPerDict:
- return 0
- return skillAddPerDict[skillTypeID]
-
-
-def GetZhuXianEquipSkillReducePer(playerID, skillTypeID):
- ## 获取诛仙装备减伤百分比提升值
- if playerID not in PyGameData.g_zhuXianSkillReducePerDict:
- return 0
- skillReducePerDict = PyGameData.g_zhuXianSkillReducePerDict[playerID]
- if skillTypeID not in skillReducePerDict:
- return 0
- return skillReducePerDict[skillTypeID]
-
-
-#// A3 32 诛仙装备分解 #tagCMZhuXianEquipDecompose
-#
-#struct tagCMZhuXianEquipDecompose
-#{
-# tagHead Head;
-# BYTE Count; //材料所在背包索引的数量
-# WORD IndexList[Count]; //材料所在背包索引列表
-# DWORD ItemIDList[Count]; //材料所在背包物品ID列表
-# BYTE IsAuto; //是否自动分解
-#};
-## 诛仙装备分解
-# @param playerIndex 玩家索引
-# @param clientData 客户端封包
-# @param tick 时间
-# @return None
-def OnZhuXianEquipDecompose(index, clientData, tick):
- curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
- if not clientData.Count:
- return
- playerID = curPlayer.GetID()
- eatIndexList = clientData.IndexList
- eatItemIDList = clientData.ItemIDList
- isAuto = clientData.IsAuto
- giveItemDict = {} #分解得到物品
-
- itemPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptZhuXianItem)
- for i, index in enumerate(eatIndexList):
- eatItem = itemPack.GetAt(index)
- if not eatItem or eatItem.IsEmpty():
- continue
- eatItemID = eatItem.GetItemTypeID()
- if eatItemID != eatItemIDList[i]:
- GameWorld.Log('诛仙装备分解 发的物品ID不对应index=%s eatItemID=%s,ItemIDList[i]=%s' % (index, eatItemID, eatItemIDList[i]), playerID)
- continue
- if eatItem.GetType() not in ChConfig.Def_ZhuXianEquiipType:
- GameWorld.Log('诛仙装备分解 发的物品不是诛仙装备 eatItemID=%s' % eatItemID, playerID)
- continue
-
- itemClassLV = ItemCommon.GetItemClassLV(eatItem)
- ipyData = IpyGameDataPY.GetIpyGameData('ZhuXianEquipDecompose', itemClassLV)
- if not ipyData:
- GameWorld.DebugLog('ZhuXianEquipDecompose 未配置该阶级分解itemClassLV=%s' % itemClassLV, playerID)
- continue
- decomposeInfoDict = ipyData.GetDecomposeInfo()
- getItemDict = {}
- for itemIDList, rateList in decomposeInfoDict.items():
- giveitemCnt = GameWorld.GetResultByRandomList(rateList, 0)
- if not giveitemCnt:
- continue
- if isinstance(itemIDList, tuple):
- itemID = random.choice(itemIDList)
- else:
- itemID = itemIDList
- giveItemDict[itemID] = giveItemDict.get(itemID, 0) + giveitemCnt
- getItemDict[itemID] = getItemDict.get(itemID, 0) + giveitemCnt
- saveDataDict = {'getItemDict':getItemDict, 'isAuto':isAuto}
- ItemCommon.DelItem(curPlayer, eatItem, 1, True, ChConfig.ItemDel_ZhuXianDecompose, saveDataDict)
- if giveItemDict:
- needSpace = len(giveItemDict)
- packSpace = ItemCommon.GetItemPackSpace(curPlayer, IPY_GameWorld.rptItem, needSpace)
- if packSpace < needSpace:
- prizeItemList = [[giveItemID, itemCnt, 1] for giveItemID, itemCnt in giveItemDict.items()]
- PlayerControl.SendMailByKey("DefaultLackSpace", [curPlayer.GetPlayerID()], prizeItemList)
- else:
- for giveItemID, itemCnt in giveItemDict.items():
- ItemControler.GivePlayerItem(curPlayer, giveItemID, itemCnt, 0, [IPY_GameWorld.rptItem])
-
- #通知结果
- packData = ChPyNetSendPack.tagMCZhuXianDecomposeResult()
- packData.Clear()
- packData.ItemList = []
- for itemID, itemCnt in giveItemDict.items():
- itemInfo = ChPyNetSendPack.tagMCZhuXianDecomposeItem()
- itemInfo.ItemID = itemID
- itemInfo.ItemCnt = itemCnt
- itemInfo.IsBind = 1
- packData.ItemList.append(itemInfo)
- packData.Cnt = len(packData.ItemList)
- NetPackCommon.SendFakePack(curPlayer, packData)
- return
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
index a6c99c1..b238772 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
@@ -1041,7 +1041,7 @@
def __CrossServerPutInItem(self, packIndex, tagItem, event=["", False, {}]):
## 跨服获得物品
- if packIndex not in [IPY_GameWorld.rptItem, ShareDefine.rptDogzItem, ShareDefine.rptZhuXianItem]:
+ if packIndex not in [IPY_GameWorld.rptItem, ShareDefine.rptDogzItem]:
#GameWorld.DebugLog("跨服获得物品不同步, packIndex=%s" % (packIndex))
return
curPlayer = self.__Player
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
index a3d0fdb..c85f74e 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
@@ -459,20 +459,20 @@
SkillAtkRateReduce = 0#attrDict.get(ShareDefine.Def_Effect_SkillAtkRateReduce, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAtkRateReduceC())
Hit = attrDict.get(ShareDefine.Def_Effect_Hit, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetHitC())
Miss = attrDict.get(ShareDefine.Def_Effect_Miss, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetMissC())
- SkillAddPerA = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer1, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer1C())
- SkillAddPerB = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer2, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer2C())
- SkillAddPerC = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer3, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer3C())
- SkillAddPerD = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer4, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer4C())
- SkillAddPerE = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer5, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer5C())
- SkillAddPerF = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer6, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer6C())
- SkillAddPerG = 0#attrDict.get(ShareDefine.Def_Effect_SkillAddPer7, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillAddPer7C())
- SkillReducePerA = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer1, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer1C())
- SkillReducePerB = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer2, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer2C())
- SkillReducePerC = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer3, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer3C())
- SkillReducePerD = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer4, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer4C())
- SkillReducePerE = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer5, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer5C())
- SkillReducePerF = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer6, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer6C())
- SkillReducePerG = 0#attrDict.get(ShareDefine.Def_Effect_SkillReducePer7, 0) * (1 if not gsParamIpyData else gsParamIpyData.GetSkillReducePer7C())
+ SkillAddPerA = 0
+ SkillAddPerB = 0
+ SkillAddPerC = 0
+ SkillAddPerD = 0
+ SkillAddPerE = 0
+ SkillAddPerF = 0
+ SkillAddPerG = 0
+ SkillReducePerA = 0
+ SkillReducePerB = 0
+ SkillReducePerC = 0
+ SkillReducePerD = 0
+ SkillReducePerE = 0
+ SkillReducePerF = 0
+ SkillReducePerG = 0
# 攻速不默认乘,仅作为参数提供策划使用
AtkSpeed = 0#attrDict.get(ShareDefine.Def_Effect_AtkSpeed, 0)
@@ -488,17 +488,6 @@
value = eval(FormulaControl.GetCompileFormula("EquipGSFormula", IpyGameDataPY.GetFuncCfg("EquipGSFormula")))
value += gsValueEx
return value
-
-def GetZhuXianEquipTotalGS(curPlayer):
- ##诛仙装备总评分
- equipScoreTotal = 0
- zhuXianEquipPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptZhuXianEquip)
- for equipIndex in xrange(zhuXianEquipPack.GetCount()):
- curEquip = zhuXianEquipPack.GetAt(equipIndex)
- if curEquip.IsEmpty():
- continue
- equipScoreTotal += GetEquipGearScore(curEquip)
- return equipScoreTotal
#---------------------------------------------------------------------
## 通过效果ID,检查是否为指定物品
@@ -1595,11 +1584,11 @@
# @remarks 函数详细说明.
def SwitchItem(curPlayer, curItem, switchItem, putInPackIndex):
##物品绑定字段判定 -> 装备绑定
- if putInPackIndex in [IPY_GameWorld.rptEquip, ShareDefine.rptZhuXianEquip]:
+ if putInPackIndex in [IPY_GameWorld.rptEquip]:
DoLogic_ItemBindType(curPlayer, switchItem, ChConfig.Def_BindType_DoEquipBind)
# 装备技能书、坐骑装备绑定
- if putInPackIndex in [IPY_GameWorld.rptHorseEquip, ShareDefine.rptZhuXianEquip]:
+ if putInPackIndex in [IPY_GameWorld.rptHorseEquip]:
DoLogic_ItemBindType(curPlayer, curItem, ChConfig.Def_BindType_DoEquipBind)
#交换装备
@@ -1620,11 +1609,11 @@
return
##物品绑定字段判定 -> 装备绑定
- if putInPackIndex in [IPY_GameWorld.rptEquip, ShareDefine.rptZhuXianEquip]:
+ if putInPackIndex in [IPY_GameWorld.rptEquip]:
DoLogic_ItemBindType(curPlayer, switchItem, ChConfig.Def_BindType_DoEquipBind)
# 装备技能书、坐骑装备绑定
- if putInPackIndex in [IPY_GameWorld.rptHorseEquip, ShareDefine.rptZhuXianEquip]:
+ if putInPackIndex in [IPY_GameWorld.rptHorseEquip]:
DoLogic_ItemBindType(curPlayer, emptyItem, ChConfig.Def_BindType_DoEquipBind)
if switchItem.GetGameWorldItemType() == IPY_GameWorld.gwitRoleItem:
@@ -1646,10 +1635,6 @@
def GetIsDogzEquip(curItem):
## 返回是否神兽装备
return curItem.GetType() in ChConfig.Def_DogzEquiipType
-
-def GetIsZhuXianEquip(curItem):
- ## 返回是否诛仙装备
- return curItem.GetType() in ChConfig.Def_ZhuXianEquiipType
#---------------------------------------------------------------------
##遍历数据库查找合适的物品, 通过 效果ID + 效果A值确定物品
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
index 0d561bb..6cb5ca9 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
@@ -1269,15 +1269,6 @@
curPack.SetCount(ChConfig.Def_PackCnt_DogzEquip)
curPack.Sync_PackCanUseCount()
- #初始化诛仙物品背包
- curPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptZhuXianItem)
- curPack.SetCount(ChConfig.Def_PackCnt_ZhuXianItem)
- curPack.Sync_PackCanUseCount()
- #初始化诛仙装备背包
- curPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptZhuXianEquip)
- curPack.SetCount(ChConfig.Def_PackCnt_ZhuXianEquip)
- curPack.Sync_PackCanUseCount()
-
#初始化临时交换背包
curPack = itemManager.GetPack(ShareDefine.rptTempSwap)
curPack.SetCount(ChConfig.Def_PackCnt_TempSwap)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossPlayerData.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossPlayerData.py
index e0ae076..91f317a 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossPlayerData.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossPlayerData.py
@@ -262,7 +262,7 @@
itemsDict = {}
# 影响战力的物品,新功能注意添加,下次需要加上诛仙塔
- packList = [IPY_GameWorld.rptEquip, ShareDefine.rptPet, ShareDefine.rptDogzEquip, ShareDefine.rptZhuXianEquip]
+ packList = [IPY_GameWorld.rptEquip, ShareDefine.rptPet, ShareDefine.rptDogzEquip]
for packIndex in packList:
curPack = curPlayer.GetItemManager().GetPack(packIndex)
for i in range(curPack.GetCount()):
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 a34383f..3f0eebf 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
@@ -88,7 +88,6 @@
import CrossRealmPlayer
import CrossPlayerData
import ChNetSendPack
-#import EquipZhuXian
import PlayerCoat
import PlayerState
import QuestCommon
@@ -1238,8 +1237,6 @@
CrossPlayerData.ClearCrossSyncDataCache(curPlayer)
PyGameData.g_fbBuyBuffTimeDict.pop(playerID, None)
#清除地图玩家缓存
- PyGameData.g_zhuXianSkillAddPerDict.pop(playerID, None)
- PyGameData.g_zhuXianSkillReducePerDict.pop(playerID, None)
PyGameData.g_playerFuncAttrDict.pop(playerID, None)
PyGameData.g_playerEquipPartAttrDict.pop(playerID, None)
PyGameData.g_equipChangeClassLVInfo.pop(playerID, None)
@@ -4277,7 +4274,6 @@
PlayerFamilyTech.CalcFamilyTechAttr(curPlayer)
PlayerEquipDecompose.RefreshEDAttr(curPlayer)
PlayerDogz.RefreshDogzAttr(curPlayer)
- #EquipZhuXian.CalcZhuXianAttr(curPlayer)
PlayerGatherSoul.RefreshGatherSoulAttr(curPlayer)
PlayerCoat.CalcClothesCoatSkinAttr(curPlayer)
self.RefreshAllState(isForce=True)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyGameData.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyGameData.py
index db2f13f..5e5ad3d 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyGameData.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyGameData.py
@@ -93,8 +93,6 @@
g_crossPlayerSkillsChangeInfo = {} #跨服玩家技能变化信息 {playerID:[技能ID], ...}
g_ZhuXianBossPlayerHurtDict = {} #诛仙BOSS玩家伤害排行信息
-g_zhuXianSkillAddPerDict = {} # 诛仙装备对技能增强缓存 {playerID:{技能TypeID:数值, ...}, ...}
-g_zhuXianSkillReducePerDict = {} # 诛仙装备对技能减伤缓存 {playerID:{技能TypeID:数值, ...}, ...}
g_Qudao_DoubleBill = {} # 渠道删档充值返利
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
index 78e8124..7bdf2ab 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
@@ -507,34 +507,6 @@
Def_Effect_JobBAtkReducePer = 94 # 法师攻击伤害减免
Def_Effect_JobCAtkReducePer = 95 # 弓箭攻击伤害减免
-Def_Effect_ZXCloakAttrPer = 96 # 诛仙披风属性加成百分比
-Def_Effect_ZXMaskAttrPer = 97 # 诛仙面具属性加成百分比
-Def_Effect_ZXGloveAttrPer = 98 # 诛仙手套属性加成百分比
-Def_Effect_ZXRuyiAttrPer = 99 # 诛仙如意属性加成百分比
-Def_Effect_ZXPendantAttrPer = 100 # 诛仙吊坠属性加成百分比
-Def_Effect_ZXRingAttrPer = 101 # 诛仙戒指属性加成百分比
-
-Def_Effect_SkillAddPer1 = 102 # 技能伤害增强1
-Def_Effect_SkillAddPer2 = 103 # 技能伤害增强2
-Def_Effect_SkillAddPer3 = 104 # 技能伤害增强3
-Def_Effect_SkillAddPer4 = 105 # 技能伤害增强4
-Def_Effect_SkillAddPer5 = 106 # 技能伤害增强5
-Def_Effect_SkillAddPer6 = 107 # 技能伤害增强6
-Def_Effect_SkillAddPer7 = 108 # 技能伤害增强7
-
-Def_Effect_SkillReducePer1 = 109 # 受到技能伤害减少1
-Def_Effect_SkillReducePer2 = 110 # 受到技能伤害减少2
-Def_Effect_SkillReducePer3 = 111 # 受到技能伤害减少3
-Def_Effect_SkillReducePer4 = 112 # 受到技能伤害减少4
-Def_Effect_SkillReducePer5 = 113 # 受到技能伤害减少5
-Def_Effect_SkillReducePer6 = 114 # 受到技能伤害减少6
-Def_Effect_SkillReducePer7 = 115 # 受到技能伤害减少7
-
-Def_Effect_ZXWeaponAttrPer = 116 # 诛仙剑1属性加成百分比
-Def_Effect_LXWeaponAttrPer = 117 # 诛仙剑2属性加成百分比
-Def_Effect_XXWeaponAttrPer = 118 # 诛仙剑3属性加成百分比
-Def_Effect_JXWeaponAttrPer = 119 # 诛仙剑4属性加成百分比
-
Def_Effect_Luck = 120 # 气运
Def_Effect_LuckPer = 133 # 气运百分率
@@ -998,10 +970,8 @@
rptPet, # 宠物背包(用物品存储宠物的数据) 31
rptDogzItem, # 神兽物品背包 32
rptDogzEquip, # 神兽装备背包 33
-rptZhuXianItem, # 诛仙物品背包 34
-rptZhuXianEquip, # 诛仙装备背包 35
rptMax, # 最大背包类型数量,放在最后一个
-) = range(28, 28 + 9) #C++定义的枚举到27
+) = range(28, 28 + 7) #C++定义的枚举到27
#虚拟背包类型, 从255递减
Def_VPack_TypeList = (
@@ -1699,22 +1669,6 @@
dogzetClaw, # 神兽兽爪
dogzetScute, # 神兽鳞甲
) = range(101, 101 + 5)
-
-# 诛仙装备位定义
-ZhuXianEquipPlace = (
- zxetCloak, # 诛仙披风 121
- zxetMask, # 诛仙面具 122
- zxetGlove, # 诛仙手套 123
- zxetGlove2, # 诛仙手套 124
- zxetRuyi, # 诛仙如意 125
- zxetPendant, # 诛仙吊坠 126
- zxetRing, # 诛仙戒指 127
- zxetRing2, # 诛仙戒指 128
- zxetWeapon1, # 诛仙剑1 129
- zxetWeapon2, # 诛仙剑2 130
- zxetWeapon3, # 诛仙剑3 131
- zxetWeapon4, # 诛仙剑4 132
-) = range(121, 121 + 12)
# 共享通用装备位,可装备同一类型装备
ShareEquipPlace = [
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
index d707b68..b4a96fb 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
@@ -47,7 +47,6 @@
import IpyGameDataPY
import PyGameData
import EventShell
-#import EquipZhuXian
#---------------------------------------------------------------------
GameWorld.ImportAll("Script\\Skill\\" , "GameSkills")
GameWorld.ImportAll("Script\\Skill\\" , "GameBuffs")
@@ -1917,10 +1916,6 @@
if upSkill.GetFuncType() == ChConfig.Def_SkillFuncType_GiftSkill:
if not PlayerGreatMaster.GetGreatMasterFreeSkillPoint(curPlayer):
return False
- #诛仙技能学习判断
- #if upSkill.GetFuncType() == ChConfig.Def_SkillFuncType_ZhuXian:
- # if not EquipZhuXian.CheckLearnZhuXianSkill(curPlayer, curSkillTypeID):
- # return False
#经验检测
skillLvUpNeedExp = upSkill.GetLVUpCostExp()
--
Gitblit v1.8.0