#!/usr/bin/python
|
# -*- coding: GBK -*-
|
#-------------------------------------------------------------------------------
|
#
|
##@package GM.Commands.ClearFuncSysPrivilege
|
#
|
# @todo:ÖØÖù¦ÄÜÏµÍ³ÌØÈ¨
|
# @author hxp
|
# @date 2021-04-13
|
# @version 1.0
|
#
|
# ÏêϸÃèÊö: ÖØÖù¦ÄÜÏµÍ³ÌØÈ¨
|
#
|
#-------------------------------------------------------------------------------
|
#"""Version = 2021-04-13 16:00"""
|
#-------------------------------------------------------------------------------
|
|
import ChConfig
|
import PlayerControl
|
import PlayerFuncSysPrivilege
|
import IpyGameDataPY
|
import GameWorld
|
|
#---------------------------------------------------------------------
|
#È«¾Ö±äÁ¿
|
#---------------------------------------------------------------------
|
|
#---------------------------------------------------------------------
|
#Â߼ʵÏÖ
|
## GMÃüÁîÖ´ÐÐÈë¿Ú
|
# @param curPlayer µ±Ç°Íæ¼Ò
|
# @param list ²ÎÊýÁбí [npcID]
|
# @return None
|
# @remarks º¯ÊýÏêϸ˵Ã÷.
|
def OnExec(curPlayer, paramList):
|
|
if not paramList:
|
GameWorld.DebugAnswer(curPlayer, "ÖØÖÃËùÓÐ: ClearFuncSysPrivilege 0")
|
GameWorld.DebugAnswer(curPlayer, "ÖØÖÃÖ¸¶¨: ClearFuncSysPrivilege ¹¦ÄÜϵͳID")
|
return
|
|
ipyDataMgr = IpyGameDataPY.IPY_Data()
|
lastIpyData = ipyDataMgr.GetFuncSysPrivilegeByIndex(ipyDataMgr.GetFuncSysPrivilegeCount() - 1)
|
maxFuncID = lastIpyData.GetFuncSysID()
|
|
resetID = paramList[0]
|
if resetID == 0:
|
resetIDList = range(1, maxFuncID + 1)
|
elif resetID > maxFuncID:
|
GameWorld.DebugAnswer(curPlayer, "¸Ã¹¦ÄÜϵͳID²»´æÔÚ!")
|
return
|
else:
|
resetIDList = [resetID]
|
|
for funcSysID in resetIDList:
|
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_FuncSysPrivilegeActTime % funcSysID, 0)
|
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_FuncSysPrivilegeAward % funcSysID, 0)
|
|
GameWorld.DebugAnswer(curPlayer, "ÖØÖù¦ÄÜÏµÍ³ÌØÈ¨OK!%s" % resetIDList)
|
PlayerFuncSysPrivilege.Sync_FuncSysPrivilege(curPlayer, resetIDList)
|
return
|
|