#!/usr/bin/python
|
# -*- coding: GBK -*-
|
|
##@package ClearBuff
|
# ½â³ýbuf
|
#
|
# @author Mark
|
# @date 2010-4-21
|
# @version 1.2
|
#
|
# ÐÞ¸Äʱ¼ä ÐÞ¸ÄÈË ÐÞ¸ÄÄÚÈÝ
|
# @change: "2010-12-07 12:00" Alee Çå¿ÕÐÐΪBUFF
|
# @change: "2010-12-31 17:00" Alee Ìí¼ÓйÜÀíÆ÷ÐÞ¸ÄÂß¼
|
#
|
# Ä£¿éÏêϸ˵Ã÷
|
|
"""Version = 2010-12-31 17:00"""
|
|
import GameWorld
|
import PlayerControl
|
import SkillCommon
|
import IPY_GameWorld
|
import NPCCommon
|
import GMCommon
|
|
|
## Êä³öbuff״̬
|
# @param curPlayer µ±Ç°Íæ¼Ò
|
# @param buffState buffÐÅÏ¢
|
# @return None
|
# @remarks º¯ÊýÏêϸ˵Ã÷.
|
def PrintBuffState(curPlayer, tagObj, buffType):
|
GameWorld.DebugAnswer(curPlayer, "---------" + GMCommon.BuffNameList[buffType])
|
buffTuple = SkillCommon.GetBuffManagerByBuffType(tagObj, buffType)
|
|
if buffTuple == ():
|
return
|
buffState = buffTuple[0]
|
|
GameWorld.DebugAnswer(curPlayer, "%d"%buffState.GetBuffCount())
|
buffState.Clear()
|
|
## GMÃüÁîÖ´ÐÐÈë¿Ú
|
# @param curPlayer µ±Ç°Íæ¼Ò
|
# @param list ²ÎÊýÁбí [NPCID]
|
# @return None
|
# @remarks º¯ÊýÏêϸ˵Ã÷.
|
def OnExec(curPlayer, list):
|
PlayerControl.ClearPKValue(curPlayer)
|
|
GameWorld.DebugAnswer(curPlayer, "¿ªÊ¼Çå¿ÕbuffÁбí,ÈçÎÞ´òÓ¡,¼ÈÎÞBuff")
|
for buffType in range(IPY_GameWorld.bfBuff, IPY_GameWorld.btBufMax):
|
PrintBuffState(curPlayer, curPlayer, buffType)
|
|
curControl = PlayerControl.PlayerControl(curPlayer)
|
#Ë¢ÐÂËùÓÐÊôÐÔ
|
curControl.RefreshAllState()
|
|
if len(list) == 0:
|
return
|
|
#Êä³öNPCBuff
|
curNPC = GameWorld.GetNPCManager().FindNPCByID(list[0])
|
|
if curNPC == None:
|
GameWorld.DebugAnswer(curPlayer, "NPCID ÕÒ²»µ½£¬¶ÔÓ¦NPC")
|
return
|
|
curNPC = GameWorld.GetObjDetail(curNPC)
|
GameWorld.DebugAnswer(curPlayer, "NPCÐÅÏ¢ %s %s"%(curNPC.GetName(), curNPC.GetID()))
|
|
for buffType in GMCommon.GetNPCBuffTypeList(curNPC):
|
PrintBuffState(curPlayer, curNPC, buffType)
|
|
npcControl = NPCCommon.NPCControl(curNPC)
|
npcControl.RefreshNPCState()
|
|
|