#!/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