#!/usr/bin/python
|
# -*- coding: GBK -*-
|
#-------------------------------------------------------------------------------
|
#
|
##@package GM.Commands.LianTi
|
#
|
# @todo:Á¶Ìå
|
# @author hxp
|
# @date 2022-22-23
|
# @version 1.0
|
#
|
# ÏêϸÃèÊö: Á¶Ìå
|
#
|
#-------------------------------------------------------------------------------
|
#"""Version = 2022-22-23 15:30"""
|
#-------------------------------------------------------------------------------
|
|
import ChConfig
|
import GameWorld
|
import PlayerControl
|
import PlayerLianTi
|
import IpyGameDataPY
|
import SkillCommon
|
|
#---------------------------------------------------------------------
|
#Â߼ʵÏÖ
|
|
## GMÃüÁîÖ´ÐÐÈë¿Ú
|
# @param curPlayer µ±Ç°Íæ¼Ò
|
# @param msgList ²ÎÊýÁбí
|
# @return None
|
# @remarks º¯ÊýÏêϸ˵Ã÷.
|
def OnExec(curPlayer, msgList):
|
|
if not msgList:
|
GameWorld.DebugAnswer(curPlayer, "ÖØÖÃÁ¶Ìå: LianTi 0")
|
GameWorld.DebugAnswer(curPlayer, "ÉèÖÃÁ¶Ìå: LianTi µÈ¼¶ ±¾¼¶ÒѳԵ¤Êý")
|
return
|
|
if len(msgList) == 1:
|
if msgList[0] == 0:
|
if curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_LianTiLV):
|
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_LianTiLV, 1)
|
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_LianTiEatItemCount, 0)
|
|
elif len(msgList) == 2:
|
lv, eatItemCount = msgList
|
if lv < 1:
|
GameWorld.DebugAnswer(curPlayer, "µÈ¼¶²»ÄÜСÓÚ1")
|
return
|
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_LianTiLV, lv)
|
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_LianTiEatItemCount, eatItemCount)
|
|
skillIDList = []
|
ipyDataMgr = IpyGameDataPY.IPY_Data()
|
for index in xrange(ipyDataMgr.GetLianTiCount()):
|
lvupIpyData = ipyDataMgr.GetLianTiByIndex(index)
|
dataLV = lvupIpyData.GetLianTiLV()
|
if dataLV > lv:
|
break
|
activateSkillID = lvupIpyData.GetActivateSkillID()
|
if activateSkillID:
|
skillIDList.append(activateSkillID)
|
|
if skillIDList:
|
SkillCommon.GivePlayerSkillByJobSkill(curPlayer, skillIDList)
|
|
else:
|
return
|
|
PlayerLianTi.RefreshLianTiAttr(curPlayer)
|
PlayerLianTi.SyncLianTiInfo(curPlayer)
|
return
|
|
|