#!/usr/bin/python
|
# -*- coding: GBK -*-
|
#
|
##@package
|
#
|
# @todo: Êä³öÍæ¼Ò¼¼ÄÜ
|
#
|
# @author: Alee
|
# @date 2019-5-9 ÏÂÎç02:54:09
|
# @version 1.0
|
#
|
# @note:
|
#
|
#---------------------------------------------------------------------
|
import GameWorld
|
import PassiveBuffEffMng
|
import PlayerPet
|
import IpyGameDataPY
|
import SkillCommon
|
|
## GMÃüÁîÖ´ÐÐÈë¿Ú
|
# @param curPlayer µ±Ç°Íæ¼Ò
|
# @param list ²ÎÊýÁбí [npcID]
|
# @return None
|
# @remarks º¯ÊýÏêϸ˵Ã÷.
|
def OnExec(curPlayer, cmdList):
|
GameWorld.DebugAnswer(curPlayer, "----¿ªÊ¼´òÓ¡Íæ¼Ò¼¼ÄÜ, ´ø²ÎÊý1Êä³ö±»¶¯¼¼ÄÜ")
|
GameWorld.DebugAnswer(curPlayer, "PrintSkill ÊÇ·ñÏÔʾ¼¼ÄÜÃû")
|
skillDict = {}
|
|
showSkillName = cmdList[0] if len(cmdList) > 0 else 0
|
skillManager = curPlayer.GetSkillManager()
|
for i in range(0 , skillManager.GetSkillCount()):
|
curSkill = skillManager.GetSkillByIndex(i)
|
if not curSkill:
|
continue
|
|
funcType = curSkill.GetFuncType()
|
if funcType not in skillDict:
|
skillDict[funcType] = {}
|
skillInfo = skillDict[funcType]
|
skillInfo[curSkill.GetSkillID()] = curSkill.GetSkillName()
|
|
showDict = {
|
0 : "ËæÒâ",
|
1 : "ÈË×å·¨±¦",
|
2 : "ħ×å·¨±¦",
|
3 : "·¨±¦×¨¾«",
|
4 : "Ì츳",
|
5 : "×øÆï¼¼ÄÜ",
|
6 : "Áé³è¼¼ÄÜ",
|
7 : "ÈË×å·¨±¦",
|
8 : "ÆÕ¹¥",
|
9 : "ÎÞ",
|
10 : "ͨÓ÷¹ö",
|
11 : "NPC¾³½ç",
|
12 : "ÉñÊÞ¼¼ÄÜ",
|
13 : "ÖïÏɼ¼ÄÜ",
|
14 : "Ì××°¼¼ÄÜ",
|
15 : "¿ÉÓÐר¾«µÄ±»¶¯¼¼ÄÜ",
|
16 : "Áé³èÖ÷È˼¼ÄÜ",
|
17 : "³ÆºÅ¼¼ÄÜ",
|
18 : "×°±¸±»¶¯¼¼ÄÜ",
|
19 : "Á¶Ìå¼¼ÄÜ",
|
20 : "Éñͨ¼¼ÄÜ",
|
21 : "¾«¹Ö¼¼ÄÜ",
|
22 : "¾Û»ê¼¼ÄÜ",
|
}
|
|
for funcType, skillInfo in skillDict.items():
|
skillIDList = skillInfo.keys()
|
skillIDList.sort()
|
GameWorld.DebugAnswer(curPlayer, "%s : %s" % (showDict.get(funcType, funcType), skillIDList))
|
if showSkillName:
|
for skillID in skillIDList:
|
GameWorld.DebugAnswer(curPlayer, " %s : %s" % (skillID, skillInfo[skillID]))
|
|
## ´òÓ¡¼¼ÄÜÔö¼õÉËÐÅÏ¢
|
plusSkillTypeIDList = []
|
skillPlusAttrIDDict = IpyGameDataPY.GetFuncEvalCfg("SkillPlusAttrID", 2, {})
|
for skillTypeIDList in skillPlusAttrIDDict.values():
|
for skillTypeID in skillTypeIDList:
|
if skillTypeID in plusSkillTypeIDList:
|
continue
|
skillData = GameWorld.GetGameData().GetSkillBySkillID(skillTypeID)
|
if not SkillCommon.CheckSkillJob(curPlayer, skillData):
|
continue
|
plusSkillTypeIDList.append(skillTypeID)
|
addPer = SkillCommon.GetSkillAddPerByID(curPlayer, skillTypeID)
|
reducePer = SkillCommon.GetSkillReducePerByID(curPlayer, skillTypeID)
|
if addPer or reducePer:
|
GameWorld.DebugAnswer(curPlayer, "%s ÔöÉË+%s ¼õÉË+%s" % (skillData.GetSkillName(), addPer, reducePer))
|
|
if not cmdList:
|
return
|
|
passiveEff = PassiveBuffEffMng.GetPassiveEffManager().GetPassiveEff(curPlayer)
|
if not passiveEff:
|
return
|
|
GameWorld.DebugAnswer(curPlayer, "---------Êä³ö±»¶¯Ð§¹û")
|
|
GameWorld.DebugAnswer(curPlayer, "±»¶¯Ð§¹û £º%s" % passiveEff.AffectSkillDict)
|
|
GameWorld.DebugAnswer(curPlayer, "Ñ¡Öеı»¶¯¼¼ÄÜЧ¹û £º%s" % passiveEff.AffectPassiveSkillSetDict)
|
|
GameWorld.DebugAnswer(curPlayer, "±»¶¯BUFFЧ¹û £º%s" % passiveEff.AffectBuffDict)
|
|
GameWorld.DebugAnswer(curPlayer, "ÉñÊÞ±»¶¯Ð§¹û £º%s" % passiveEff.AffectDogzSkillDict)
|
|
|
|
fightPet = curPlayer.GetPetMgr().GetFightPet()
|
if fightPet:
|
GameWorld.DebugAnswer(curPlayer, "³öÕ½³èÎï¼¼ÄÜ%s-%s" % PlayerPet.GetPetLearnSkill(curPlayer))
|
passiveEff = PassiveBuffEffMng.GetPassiveEffManager().GetPassiveEff(fightPet)
|
if not passiveEff:
|
return
|
GameWorld.DebugAnswer(curPlayer, "³èÎï±»¶¯Ð§¹û £º%s" % passiveEff.AffectSkillDict)
|
|
GameWorld.DebugAnswer(curPlayer, "³èÎï±»¶¯BUFFЧ¹û £º%s" % passiveEff.AffectBuffDict)
|
|
#===============================================================================
|
# (Def_SkillFuncType_Common, #0ΪͨÓü¼ÄÜ
|
# Def_SkillFuncType_FbSkill, #1Ϊ·¨±¦¹¦ÄÜ»ñµÃµÄÖ÷¶¯¼¼ÄÜ
|
# Def_SkillFuncType_FbPassiveSkill, #2Ϊ·¨±¦¹¦ÄÜ»ñµÃµÄ±»¶¯¼¼ÄÜ
|
# Def_SkillFuncType_FbSPSkill, #3Ϊ·¨±¦¹¦ÄÜ»ñµÃµÄSP¼¼ÄÜ
|
# Def_SkillFuncType_GiftSkill, #4ΪÌ츳¼¼ÄÜ
|
# Def_SkillFuncType_HorseSkill, #5Îª×øÆï¼¼ÄÜ
|
# Def_SkillFuncType_PetSkill, #6Ϊ³èÎï¼¼ÄÜ
|
# Def_SkillFuncType_GWSkill, #7ΪÉñ±ø¼¼ÄÜ
|
# Def_SkillFuncType_NormalAttack, #8ΪÆÕ¹¥
|
# Def_SkillFuncType_SP15, #9ΪSP15¼¶ ·þÎñ¶ËδÓõ½
|
# Def_SkillFuncType_SkillRoll, #10Ϊ·¹ö ·þÎñ¶ËδÓõ½
|
# Def_SkillFuncType_RealmSuppress, #11Ϊ¾³½çÑ¹ÖÆ ĿǰÊÇNPCÔÚÓÃ
|
# Def_SkillFuncType_Dogz, #12 ÉñÊÞ¼¼ÄÜ
|
# Def_SkillFuncType_ZhuXian, #13 ÖïÏɼ¼ÄÜ
|
#===============================================================================
|