From 0461f0bb6c710ee89856ffa4d1f75c868c69295f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 12 八月 2025 17:56:46 +0800
Subject: [PATCH] 16 卡牌服务端(删除大师天赋)
---
/dev/null | 366 ---------------------------------
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py | 11
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini | 16 -
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py | 222 --------------------
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py | 4
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SkillReset.py | 3
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/GameFuncComm.py | 2
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py | 5
8 files changed, 5 insertions(+), 624 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini
index f0009f9..2b52d46 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/PyNetPack.ini
@@ -936,22 +936,6 @@
PacketSubCMD_4=0x46
PacketCallFunc_4=OnBuyTongTianLing
-;大师天赋
-[PlayerGreatMaster]
-ScriptName = Player\PlayerGreatMaster.py
-Writer = hxp
-Releaser = hxp
-RegType = 0
-RegisterPackCount = 2
-
-PacketCMD_1=0xA5
-PacketSubCMD_1=0x49
-PacketCallFunc_1=OnAddMasterSkillPoint
-
-PacketCMD_2=0xA5
-PacketSubCMD_2=0x50
-PacketCallFunc_2=OnResetMasterSkill
-
;装备洗练
[EquipWash]
ScriptName = Event\EventSrc\Operate_EquipWash.py
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index feca7c7..7e191b0 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -4145,11 +4145,6 @@
Def_PDict_TTL_TaskAwardRecord = "TTL_TaskAwardRecord_%s" # 通天任务领奖记录,参数(key编号),按索引位存储0-未领,1-已领
Def_PDict_TTL_DailyTaskPointToday = "TTL_DailyTaskPointToday" # 每日通天任务每日可获得积分点上限
-# 大师 Def_PDictType_GreatMaster
-Def_PDict_Master_Exp = "Master_Exp" # 当前大师经验
-Def_PDict_Master_ExpPoint = "Master_ExpPoint" # 当前大师经验点
-Def_PDict_Master_FreeSkillPoint = "Master_FreeSkillPoint" # 当前剩余大师技能点
-
# 跨服竞技场
Def_PDict_CrossPK_TotalScore = "CrossPK_TotalScore" # 当前总积分
Def_PDict_CrossPK_DanLV = "CrossPK_DanLV" # 当前段位
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
index 83efc50..59ee95e 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
@@ -5474,124 +5474,6 @@
#------------------------------------------------------
-# A5 49 大师天赋技能加点 #tagCMAddMasterSkillPoint
-
-class tagCMMasterSkillPoint(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("SkillID", c_int), # 天赋技能ID
- ("AddPoint", c_ubyte), # 加的点数
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA5
- self.SubCmd = 0x49
- 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 = 0xA5
- self.SubCmd = 0x49
- self.SkillID = 0
- self.AddPoint = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMMasterSkillPoint)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A5 49 大师天赋技能加点 //tagCMAddMasterSkillPoint:
- Cmd:%s,
- SubCmd:%s,
- SkillID:%d,
- AddPoint:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.SkillID,
- self.AddPoint
- )
- return DumpString
-
-
-class tagCMAddMasterSkillPoint(Structure):
- Head = tagHead()
- SkillCnt = 0 #(BYTE SkillCnt)// 变更技能个数
- AddSkillPointList = list() #(vector<tagCMMasterSkillPoint> AddSkillPointList)// 加的技能点数列表
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xA5
- self.Head.SubCmd = 0x49
- return
-
- def ReadData(self, _lpData, _pos=0, _Len=0):
- self.Clear()
- _pos = self.Head.ReadData(_lpData, _pos)
- self.SkillCnt,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- for i in range(self.SkillCnt):
- temAddSkillPointList = tagCMMasterSkillPoint()
- _pos = temAddSkillPointList.ReadData(_lpData, _pos)
- self.AddSkillPointList.append(temAddSkillPointList)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xA5
- self.Head.SubCmd = 0x49
- self.SkillCnt = 0
- self.AddSkillPointList = list()
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 1
- for i in range(self.SkillCnt):
- length += self.AddSkillPointList[i].GetLength()
-
- return length
-
- def GetBuffer(self):
- data = ''
- data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteBYTE(data, self.SkillCnt)
- for i in range(self.SkillCnt):
- data = CommFunc.WriteString(data, self.AddSkillPointList[i].GetLength(), self.AddSkillPointList[i].GetBuffer())
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- SkillCnt:%d,
- AddSkillPointList:%s
- '''\
- %(
- self.Head.OutputString(),
- self.SkillCnt,
- "..."
- )
- return DumpString
-
-
-m_NAtagCMAddMasterSkillPoint=tagCMAddMasterSkillPoint()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMAddMasterSkillPoint.Head.Cmd,m_NAtagCMAddMasterSkillPoint.Head.SubCmd))] = m_NAtagCMAddMasterSkillPoint
-
-
-#------------------------------------------------------
#A5 05 玩家开始副本扫荡 #tagCMBeginFBWipeOut
class tagCMBeginFBWipeOut(Structure):
@@ -7172,62 +7054,6 @@
m_NAtagCMEquipPartSuiteActivate=tagCMEquipPartSuiteActivate()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMEquipPartSuiteActivate.Cmd,m_NAtagCMEquipPartSuiteActivate.SubCmd))] = m_NAtagCMEquipPartSuiteActivate
-
-
-#------------------------------------------------------
-# A5 48 兑换大师等级经验 #tagCMExchangeMasterEXP
-
-class tagCMExchangeMasterEXP(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("Multiples", c_ubyte), # 20亿经验倍数
- ("ExtraExp", c_int), # 额外附加经验(不超过20亿)
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA5
- self.SubCmd = 0x48
- 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 = 0xA5
- self.SubCmd = 0x48
- self.Multiples = 0
- self.ExtraExp = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMExchangeMasterEXP)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A5 48 兑换大师等级经验 //tagCMExchangeMasterEXP:
- Cmd:%s,
- SubCmd:%s,
- Multiples:%d,
- ExtraExp:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.Multiples,
- self.ExtraExp
- )
- return DumpString
-
-
-m_NAtagCMExchangeMasterEXP=tagCMExchangeMasterEXP()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMExchangeMasterEXP.Cmd,m_NAtagCMExchangeMasterEXP.SubCmd))] = m_NAtagCMExchangeMasterEXP
#------------------------------------------------------
@@ -9232,54 +9058,6 @@
m_NAtagCMResetFBJoinCnt=tagCMResetFBJoinCnt()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMResetFBJoinCnt.Cmd,m_NAtagCMResetFBJoinCnt.SubCmd))] = m_NAtagCMResetFBJoinCnt
-
-
-#------------------------------------------------------
-# A5 50 重置大师天赋技能 #tagCMResetMasterSkill
-
-class tagCMResetMasterSkill(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA5
- self.SubCmd = 0x50
- 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 = 0xA5
- self.SubCmd = 0x50
- return
-
- def GetLength(self):
- return sizeof(tagCMResetMasterSkill)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A5 50 重置大师天赋技能 //tagCMResetMasterSkill:
- Cmd:%s,
- SubCmd:%s
- '''\
- %(
- self.Cmd,
- self.SubCmd
- )
- return DumpString
-
-
-m_NAtagCMResetMasterSkill=tagCMResetMasterSkill()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMResetMasterSkill.Cmd,m_NAtagCMResetMasterSkill.SubCmd))] = m_NAtagCMResetMasterSkill
#------------------------------------------------------
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/ReGreatMaster.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/ReGreatMaster.py
deleted file mode 100644
index 21e1ee4..0000000
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/ReGreatMaster.py
+++ /dev/null
@@ -1,46 +0,0 @@
-#!/usr/bin/python
-# -*- coding: GBK -*-
-#-------------------------------------------------------------------------------
-#
-#-------------------------------------------------------------------------------
-#
-##@package GM.Commands.ReGreatMaster
-#
-# @todo:重置大师
-# @author hxp
-# @date 2015-2-27
-# @version 1.0
-#
-# 详细描述: 重置大师
-#
-#---------------------------------------------------------------------
-"""Version = 2015-2-27 21:00"""
-
-import PlayerGreatMaster
-import GameWorld
-#---------------------------------------------------------------------
-#全局变量
-#---------------------------------------------------------------------
-
-#---------------------------------------------------------------------
-#逻辑实现
-## GM命令执行入口
-# @param curPlayer 当前玩家
-# @param list 参数列表 [npcID]
-# @return None
-# @remarks 函数详细说明.
-def OnExec(curPlayer, list):
-
- curPlayer.SetLV2(0)
-
- PlayerGreatMaster.DoResetMasterSkillPoint(curPlayer)
-
-
- PlayerGreatMaster.SetGreatMasterFreeSkillPoint(curPlayer, 0)
-
-
- PlayerGreatMaster.Sync_GreatMasterFreeSkillPoint(curPlayer)
-
- GameWorld.DebugAnswer(curPlayer, "重置天赋OK!")
- return
-
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetGreatMasterPoint.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetGreatMasterPoint.py
deleted file mode 100644
index 06fff0b..0000000
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetGreatMasterPoint.py
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/usr/bin/python
-# -*- coding: GBK -*-
-#-------------------------------------------------------------------------------
-#
-#-------------------------------------------------------------------------------
-#
-##@package GM.Commands.SetGreatMasterPoint
-#
-# @todo:设置大师天赋点
-# @author hxp
-# @date 2015-2-27
-# @version 1.0
-#
-# 详细描述: 设置大师天赋点
-#
-#---------------------------------------------------------------------
-"""Version = 2015-2-27 21:00"""
-
-import PlayerGreatMaster
-import GameWorld
-#---------------------------------------------------------------------
-#全局变量
-#---------------------------------------------------------------------
-
-#---------------------------------------------------------------------
-#逻辑实现
-## GM命令执行入口
-# @param curPlayer 当前玩家
-# @param list 参数列表 [npcID]
-# @return None
-# @remarks 函数详细说明.
-def OnExec(curPlayer, list):
- if len(list) <= 0:
- GameWorld.DebugAnswer(curPlayer, "参数错误: SetGreatMasterPoint 可用天赋点")
- return
-
- freePoint = list[0]
- PlayerGreatMaster.SetGreatMasterFreeSkillPoint(curPlayer, freePoint)
- PlayerGreatMaster.Sync_GreatMasterFreeSkillPoint(curPlayer)
- GameWorld.DebugAnswer(curPlayer, "设置大师天赋点[%s]OK!" % freePoint)
- return
-
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SkillReset.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SkillReset.py
index f5af84c..cbb0b58 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SkillReset.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SkillReset.py
@@ -16,7 +16,6 @@
#---------------------------------------------------------------------
#"""Version = 2016-03-24 17:00"""
-import PlayerGreatMaster
import PlayerControl
#import GameWorld
#import Lang
@@ -33,8 +32,6 @@
# GameWorld.DebugAnswer(curPlayer, Lang.GBText("命令参数不正确"))
# return
#===========================================================================
- # 先重置大师技能,归还大师天赋点
- PlayerGreatMaster.DoResetMasterSkillPoint(curPlayer)
skillManager=curPlayer.GetSkillManager()
#===========================================================================
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 e026c22..a88b907 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
@@ -61,7 +61,6 @@
import PlayerRecover
import GameLogic_SkyTower
import PlayerEquipDecompose
-import PlayerGreatMaster
import PlayerGatherSoul
import PlayerGatherTheSoul
import PlayerFairyDomain
@@ -556,9 +555,6 @@
#PK模式
SyncPKModel(curPlayer)
-
- #大师
- PlayerGreatMaster.MasterOnLogin(curPlayer)
#通知VIP
PlayerVip.DoOnLogin(curPlayer, tick)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/GameFuncComm.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/GameFuncComm.py
index 3d91259..606e970 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/GameFuncComm.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/GameFuncComm.py
@@ -41,7 +41,6 @@
import PlayerCrossChampionship
import PlayerFreeGoods
import FunctionNPCCommon
-import PlayerGreatMaster
import PlayerActBuyCountGift
import PlayerActLoginNew
import PlayerActTask
@@ -70,7 +69,6 @@
ShareDefine.GameFuncID_FreeGoods:lambda curObj:PlayerFreeGoods.DoFreeGoodsOpen(curObj),
ShareDefine.GameFuncID_OSSail:lambda curObj:FunctionNPCCommon.OSSaleOpenMail(curObj),
ShareDefine.GameFuncID_AddPoint:lambda curObj:PlayerControl.DoAddPointOpen(curObj),
- ShareDefine.GameFuncID_Talent:lambda curObj:PlayerGreatMaster.DoTalentOpen(curObj),
ShareDefine.GameFuncID_Arena:lambda curObj:PlayerArena.DoArenaOpen(curObj),
ShareDefine.GameFuncID_FaQi:lambda curObj:PlayerFaQi.DoFaQiOpen(curObj),
ShareDefine.GameFuncID_LianTi:lambda curObj:PlayerLianTi.DoLianTiOpen(curObj),
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGreatMaster.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGreatMaster.py
deleted file mode 100644
index 7342acf..0000000
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerGreatMaster.py
+++ /dev/null
@@ -1,366 +0,0 @@
-#!/usr/bin/python
-# -*- coding: GBK -*-
-#-------------------------------------------------------------------------------
-#
-#-------------------------------------------------------------------------------
-#
-##@package Player.PlayerGreatMaster
-#
-# @todo:天赋系统
-# @author xdh
-# @date 2018-9-26
-# @version 1.0
-#
-#
-# 详细描述: 天赋系统
-#
-#---------------------------------------------------------------------
-#"""Version = 2018-9-26 20:00"""
-
-import GameWorld
-import PlayerControl
-import IPY_GameWorld
-import DataRecordPack
-import SkillCommon
-import ShareDefine
-import ChConfig
-import GameFuncComm
-import IpyGameDataPY
-import ItemCommon
-import PassiveBuffEffMng
-
-## 大师功能是否开启
-# @param curPlayer
-# @return
-def IsGreatMasterOpen(curPlayer):
- if not GameFuncComm.GetFuncCanUse(curPlayer, ShareDefine.GameFuncID_Talent):
- return False
- return True
-
-def DoTalentOpen(curPlayer):
- '''天赋功能开启处理天赋点 '''
- curLV = curPlayer.GetLV()
- openLV = GameFuncComm.GetFuncLimitLV(ShareDefine.GameFuncID_Talent)
- setTalentPoint = 0
- for lv in xrange(openLV, curLV+1):
- lvIpyData = None #PlayerControl.GetPlayerLVIpyData(lv)
- addTalentPoint = lvIpyData.GetTalentPoint() if lvIpyData else 0
- setTalentPoint += addTalentPoint
- curFreeSkillPoint = GetGreatMasterFreeSkillPoint(curPlayer)
- if setTalentPoint != curFreeSkillPoint:
- SetGreatMasterFreeSkillPoint(curPlayer, setTalentPoint)
- Sync_GreatMasterFreeSkillPoint(curPlayer)
- GameWorld.Log(' 天赋功能开启处理天赋点 beforeTalentPoint=%s,setTalentPoint=%s, curLV=%s'%(curFreeSkillPoint, setTalentPoint, curLV), curPlayer.GetID())
- return
-
-## 登录处理
-# @param curPlayer
-# @return
-def MasterOnLogin(curPlayer):
- if not IsGreatMasterOpen(curPlayer):
- return
-
- Sync_GreatMasterFreeSkillPoint(curPlayer)
- return
-
-
-## 增加大师天赋点
-# @param curPlayer
-# @return
-def AddGreatMasterSkillPointByLV(curPlayer, addPoint):
- if not addPoint:
- return
- curFreeSkillPoint = GetGreatMasterFreeSkillPoint(curPlayer)
- GameWorld.DebugLog("大师天赋点!curFreeSkillPoint = %s"%curFreeSkillPoint)
- SetGreatMasterFreeSkillPoint(curPlayer, curFreeSkillPoint + addPoint)
- Sync_GreatMasterFreeSkillPoint(curPlayer)
- return
-
-
-## 获取当前剩余大师技能点
-def GetGreatMasterFreeSkillPoint(curPlayer):
- return curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_Master_FreeSkillPoint, 0, ChConfig.Def_PDictType_GreatMaster)
-
-## 设置当前剩余大师技能点
-def SetGreatMasterFreeSkillPoint(curPlayer, value):
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_Master_FreeSkillPoint, value, ChConfig.Def_PDictType_GreatMaster)
- return
-
-
-## 同步大师剩余天赋点
-# @param curPlayer
-# @return
-def Sync_GreatMasterFreeSkillPoint(curPlayer):
- PlayerControl.SendPropertyRefresh(curPlayer, ShareDefine.CDBPlayerRefresh_TalentPoint, GetGreatMasterFreeSkillPoint(curPlayer))
- return
-
-
-#// A5 49 大师天赋技能加点 #tagCMAddMasterSkillPoint
-#
-#struct tagCMMasterSkillPoint
-#{
-# tagHead Head;
-# DWORD SkillID; // 天赋技能ID
-# BYTE AddPoint; // 加的点数
-#};
-#
-#struct tagCMAddMasterSkillPoint
-#{
-# tagHead Head;
-# BYTE SkillCnt; // 变更技能个数
-# tagCMMasterSkillPoint AddSkillPointList[SkillCnt]; // 加的技能点数列表
-#};
-## 大师天赋技能加点
-# @param index: 玩家索引
-# @param clientData: 封包结构体
-# @param tick: 时间戳
-# @return: None
-def OnAddMasterSkillPoint(index, clientData, tick):
- return #现版本加点方式不同 使用03 04 玩家学习技能#tagCAddSkillPoint,此处先屏蔽
-# curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
-#
-# needAddSkillPointList = clientData.AddSkillPointList
-#
-# if not needAddSkillPointList:
-# return
-#
-# reqTotalPointSkillDict = ReadChConfig.GetEvalChConfig("ReqTotalPointSkill")
-# greatMasterSkillDict = ReadChConfig.GetEvalChConfig("GreatMasterSkill")
-# jobType = ChConfig.JOB_TYPE_DICT[curPlayer.GetJob()]
-#
-# if jobType not in greatMasterSkillDict:
-# return
-#
-# jobMasterSkillDict = greatMasterSkillDict[jobType] # 本职业天赋系对应技能
-# reqTotalPointSkillList = reqTotalPointSkillDict.get(jobType, []) # 本职业需求总天赋点技能
-#
-# skillTypeSeriesDict = {} # 技能对应天赋系
-# skillTypeLVDict = {} # 技能对应等级
-# seriesTotalPointDict = {} # 天赋系对应总技能点
-# allSeriesTotalPoint = 0 # 所有天赋系总点数
-#
-# # 汇总天赋技能所属天赋系
-# for seriesType, skillTypeIDList in jobMasterSkillDict.items():
-# for sTypeID in skillTypeIDList:
-# skillTypeSeriesDict[sTypeID] = seriesType
-#
-# skillManager = curPlayer.GetSkillManager()
-#
-# # 获取玩家目前所有技能
-# for i in range(skillManager.GetSkillCount()):
-# playerSkill = skillManager.GetSkillByIndex(i)
-# if playerSkill == None:
-# continue
-#
-# playerSkillTypeID = playerSkill.GetSkillTypeID()
-#
-# for seriesType, skillTypeIDList in jobMasterSkillDict.items():
-# if playerSkillTypeID not in skillTypeIDList:
-# continue
-#
-# skillLV = playerSkill.GetSkillLV()
-# skillTypeLVDict[playerSkillTypeID] = skillLV
-# seriesTotalPointDict[seriesType] = seriesTotalPointDict.get(seriesType, 0) + skillLV
-# allSeriesTotalPoint += skillLV
-# break
-#
-# isAddSkill = True
-# isRefreshAttr = False
-# buffType = IPY_GameWorld.btPassiveBuf
-# addPointDict = {} # 请求加点技能已执行加点数
-#
-# GameWorld.DebugLog("【天赋加点】jobType=%s,技能对应等级=%s,天赋系对应总技能点=%s,总点数=%s"
-# % (jobType, skillTypeLVDict, seriesTotalPointDict, allSeriesTotalPoint))
-#
-# while isAddSkill:
-# # 每次循环重置状态,直到无法再加技能才跳出
-# isAddSkill = False
-#
-# for addSkill in needAddSkillPointList:
-# skillTypeID = addSkill.SkillID
-# totalAddPoint = addSkill.AddPoint
-#
-# freeSkillPoint = GetGreatMasterFreeSkillPoint(curPlayer)
-# if freeSkillPoint <= 0:
-# GameWorld.DebugLog(" 当前无剩余天赋点!")
-# break
-#
-# if skillTypeID not in skillTypeSeriesDict:
-# GameWorld.ErrLog("技能不在合法天赋系里!skillTypeID=%s" % skillTypeID)
-# continue
-#
-# curSeriesType = skillTypeSeriesDict[skillTypeID]
-#
-# addPoint = addPointDict.get(skillTypeID, 0) # 该技能已执行加点数
-#
-# # 已经达到请求加的点数,不再处理
-# if addPoint >= totalAddPoint:
-# #GameWorld.DebugLog(" 已经加到请求加的点数,不再处理!skillTypeID=%s,addPoint=%s" % (skillTypeID, addPoint))
-# continue
-#
-# curSkill = skillManager.FindSkillBySkillTypeID(skillTypeID)
-#
-# # 未学习
-# if not curSkill:
-# learnSkillLV = 1
-# # 已学习
-# else:
-# curSkillLV = curSkill.GetSkillLV()
-# curSkillMaxLV = curSkill.GetSkillMaxLV()
-# if curSkillLV >= curSkillMaxLV:
-# GameWorld.DebugLog(" 技能已满级!skillTypeID=%s" % (skillTypeID))
-# continue
-#
-# learnSkillLV = curSkillLV + 1
-#
-# learnSkillData = GameWorld.GetGameData().FindSkillByType(skillTypeID, learnSkillLV)
-#
-# if not learnSkillData:
-# GameWorld.ErrLog("找不到学习技能数据:skillTypeID=%s,skillLV=%s" % (skillTypeID, learnSkillLV))
-# continue
-#
-# learnSkillID = learnSkillData.GetSkillID()
-# skillLearnReq = learnSkillData.GetLearnSkillReq()
-# skillLearnReqLV = learnSkillData.GetLearnSkillLV()
-# skillLearnSeriesPointReq = learnSkillData.GetLearnSkillPointReq()
-#
-# # 前置技能点数需求
-# reqSkillLV = skillTypeLVDict.get(skillLearnReq, 0)
-# if skillLearnReq > 0 and skillTypeLVDict.get(skillLearnReq, 0) < skillLearnReqLV:
-# #GameWorld.DebugLog(" 前置技能加点未满足!learnSkillID=%s,[前置技能%s 当前%s点 需%s点]"
-# # % (learnSkillID, skillLearnReq, reqSkillLV, skillLearnReqLV))
-# continue
-#
-# # 天赋系点数需求
-# if skillLearnSeriesPointReq > 0:
-# isReqAllPoint = skillTypeID in reqTotalPointSkillList # 是否需求所有系总点数
-#
-# # 已加总天赋点数不足
-# if isReqAllPoint and allSeriesTotalPoint < skillLearnSeriesPointReq:
-# #GameWorld.DebugLog(" 总天赋点数不足!learnSkillID=%s,curPoint=%s,reqPoint=%s"
-# # % (learnSkillID, allSeriesTotalPoint, skillLearnSeriesPointReq))
-# continue
-#
-# # 已加本系天赋点数不足
-# curSeriesTotalPoint = seriesTotalPointDict.get(curSeriesType, 0)
-# if not isReqAllPoint and curSeriesTotalPoint < skillLearnSeriesPointReq:
-# #GameWorld.DebugLog(" 本系天赋点数不足!learnSkillID=%s,curSeriesType=%s,curPoint=%s,reqPoint=%s"
-# # % (learnSkillID, curSeriesType, curSeriesTotalPoint, skillLearnSeriesPointReq))
-# continue
-#
-# # 可加点, 下面执行该技能加点
-# skillManager.LVUpSkillBySkillTypeID(skillTypeID)
-# DataRecordPack.DR_LearnORUPSkill(curPlayer, skillTypeID, learnSkillLV)
-#
-# # 是被动技能要重刷属性
-# #if SkillCommon.isPassiveBuffSkill(learnSkillData):
-# # BuffSkill.AddBuffNoRefreshState(curPlayer, buffType, learnSkillData, tick, [], curPlayer)
-# # isRefreshAttr = True
-#
-# isAddSkill = True
-#
-# addPointDict[skillTypeID] = addPoint + 1
-# skillTypeLVDict[skillTypeID] = learnSkillLV
-# seriesTotalPointDict[curSeriesType] = seriesTotalPointDict.get(curSeriesType, 0) + 1
-# allSeriesTotalPoint += 1
-# SetGreatMasterFreeSkillPoint(curPlayer, freeSkillPoint - 1)
-# # 成就
-# #successKey = ChConfig.Def_PDict_Success_CntValue%(ShareDefine.SuccType_TalentPoint, 0)
-# #curSuccess = PlayerSuccess.GetPDictValue(curPlayer, successKey)
-# #if curSuccess < allSeriesTotalPoint:
-# # PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_TalentPoint, 1)
-#
-# #GameWorld.DebugLog(" 加天赋技能 learnSkillID=%s,skillTypeID=%s,skillLV=%s,doCnt=%s,needCnt=%s"
-# # % (learnSkillID, skillTypeID, learnSkillLV, addPoint + 1, totalAddPoint))
-#
-# #GameWorld.DebugLog(" isAddSkill=%s" % isAddSkill)
-#
-# if isRefreshAttr:
-# curControl = PlayerControl.PlayerControl(curPlayer)
-# #curControl.CalcPassiveBuffAttr()
-# curControl.RefreshPlayerAttrByBuff()
-#
-# PlayerControl.NotifyCode(curPlayer, "GeRen_liubo_224510")
-# Sync_GreatMasterFreeSkillPoint(curPlayer)
-# return
-
-
-#// A5 50 重置大师天赋技能 #tagCMResetMasterSkill
-#
-#struct tagCMResetMasterSkill
-#{
-# tagHead Head;
-#};
-## 重置大师天赋技能
-# @param index: 玩家索引
-# @param clientData: 封包结构体
-# @param tick: 时间戳
-# @return: None
-def OnResetMasterSkill(index, clientData, tick):
- curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
- needItemID = IpyGameDataPY.GetFuncCfg('TalentResetBook')
- costMoney = IpyGameDataPY.GetFuncCfg('TalentResetBook', 2)
- moneyType = IPY_GameWorld.TYPE_Price_Gold_Money
- itemPack = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptItem)
- hasEnough, itemList = ItemCommon.GetItem_FromPack_ByID(needItemID, itemPack, 1)
- if not hasEnough:
- #道具不足,扣钱
- if not PlayerControl.HaveMoney(curPlayer, moneyType, costMoney):
- return
-
- if not DoResetMasterSkillPoint(curPlayer):
- return
- if hasEnough:
- ItemCommon.ReduceItem(curPlayer, itemPack, itemList, 1, False)
- else:
- PlayerControl.PayMoney(curPlayer, moneyType, costMoney, ChConfig.Def_Cost_ResetGreatMasterSkill)
- return
-
-## 重置大师天赋技能
-# @param curPlayer
-# @return: 是否成功
-def DoResetMasterSkillPoint(curPlayer):
- freeSkillPoint = GetGreatMasterFreeSkillPoint(curPlayer)
- resetPoint = 0
-
- skillManager = curPlayer.GetSkillManager()
-
- isRefreshAttr = False
- delCnt = 0
- for i in range(0, skillManager.GetSkillCount()):
- dataIndex = i-delCnt
- skill = skillManager.GetSkillByIndex(dataIndex)
- if skill == None:
- continue
- skillTypeID = skill.GetSkillTypeID()
- if not IpyGameDataPY.GetIpyGameDataNotLog('TalentSkill', skillTypeID):
- continue
- curSkillLV = skill.GetSkillLV()
- # 被动技能刷属性
- if SkillCommon.isPassiveSkill(skill):
- isRefreshAttr = True
-
- resetPoint += curSkillLV
- skillManager.DeleteSkillBySkillTypeID(skillTypeID)
- delCnt +=1
-
- if resetPoint <= 0:
- GameWorld.DebugLog("不需要重置技能天赋!")
- return False
-
- SetGreatMasterFreeSkillPoint(curPlayer, freeSkillPoint + resetPoint)
- Sync_GreatMasterFreeSkillPoint(curPlayer)
-
- # 重新刷新被动技能
- passiveEff = PassiveBuffEffMng.GetPassiveEffManager().InitObjPassiveEff(curPlayer)
- passiveEff.RefreshPassiveSkill()
- DataRecordPack.Cache_FightPowerChangeInfo(curPlayer, ChConfig.PowerDownType_ResetTalent, {'resetPoint':resetPoint})
- if isRefreshAttr:
- # 重刷被动技能
- PassiveBuffEffMng.GetPassiveEffManager().RegistPassiveEff(curPlayer)
- # 重刷技能战力
- curControl = PlayerControl.PlayerControl(curPlayer)
- curControl.RefreshAllSkill()
- curControl.RefreshPlayerAttrState()
- return True
-
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 fd10975..9560250 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
@@ -32,7 +32,6 @@
import DataRecordPack
#import ChItem
import ShareDefine
-import PlayerGreatMaster
import PlayerHorse
import GameObj
import random
@@ -1891,9 +1890,9 @@
# if not PlayerHorse.CheckLearnHorseSkill(curPlayer, curSkillTypeID):
# return False
#天赋技学习点数判断
- if upSkill.GetFuncType() == ChConfig.Def_SkillFuncType_GiftSkill:
- if not PlayerGreatMaster.GetGreatMasterFreeSkillPoint(curPlayer):
- return False
+ #if upSkill.GetFuncType() == ChConfig.Def_SkillFuncType_GiftSkill:
+ # if not PlayerGreatMaster.GetGreatMasterFreeSkillPoint(curPlayer):
+ # return False
#经验检测
skillLvUpNeedExp = upSkill.GetLVUpCostExp()
@@ -1958,8 +1957,8 @@
#GeRen_jin_474794 <n color="255,255,0" BKCOLOR="0,0,0">您消耗了经验值:</n><n color="0,190,255" BKCOLOR="0,0,0">{%S1%}</n>
PlayerControl.NotifyCode(curPlayer, "GeRen_jin_474794", [skillLvUpNeedExp])
- if upSkill.GetFuncType() == ChConfig.Def_SkillFuncType_GiftSkill:
- PlayerGreatMaster.AddGreatMasterSkillPointByLV(curPlayer, -1)
+ #if upSkill.GetFuncType() == ChConfig.Def_SkillFuncType_GiftSkill:
+ # PlayerGreatMaster.AddGreatMasterSkillPointByLV(curPlayer, -1)
return True
#---------------------------------------------------------------------
##检测学习技能需求条件
--
Gitblit v1.8.0