#!/usr/bin/python # -*- coding: GBK -*- #------------------------------------------------------------------------------- # ##@package GM.Commands.MineArea # # @todo:¸£µØ # @author hxp # @date 2024-03-07 # @version 1.0 # # ÏêϸÃèÊö: ¸£µØ # #------------------------------------------------------------------------------- #"""Version = 2024-03-07 19:30""" #------------------------------------------------------------------------------- import GameWorld import PlayerControl import PlayerMineArea import ChConfig import time ## GMÃüÁîÖ´ÐÐÈë¿Ú # @param curPlayer µ±Ç°Íæ¼Ò # @param msgList ²ÎÊýÁбí [addSkillID] # @return None # @remarks º¯ÊýÏêϸ˵Ã÷. def OnExec(curPlayer, msgList): # @return: ÊÇ·ñ·¢Ë͵½GameServer if not msgList: GameWorld.DebugAnswer(curPlayer, "---------- ¸£µØÃüÁî ----------") GameWorld.DebugAnswer(curPlayer, "ÖØÖø£µØÍæ¼Ò: MineArea 0") GameWorld.DebugAnswer(curPlayer, "ÉèÖÃÒÑÓþ«Á¦: MineArea e ¾«Á¦") GameWorld.DebugAnswer(curPlayer, "ÉèÖù¤ÈËÊýÁ¿: MineArea w ÊýÁ¿") GameWorld.DebugAnswer(curPlayer, "¹Ü¼Òµ½ÆÚʱ¼ä: MineArea k Ê£Óàʱ³¤·ÖÖÓ") GameWorld.DebugAnswer(curPlayer, "ÉèÖÃˢдÎÊý: MineArea r ´ÎÊý Ë¢ÐÂÀàÐÍ") GameWorld.DebugAnswer(curPlayer, "ÉèÖþ۱¦½ø¶È: MineArea t ÀàÐÍ ½ø¶ÈÖµ") GameWorld.DebugAnswer(curPlayer, "ÉèÖðïÖú´ÎÊý: MineArea h ´ÎÊý") GameWorld.DebugAnswer(curPlayer, "Ë¢ÐÂÀàÐÍ:0-×Ô¼ºÎïÆ·,1-×Ô¼º³¬¼¶,2-ÖÜÎ§Íæ¼Ò") return True value1 = msgList[0] if value1 == 0: PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineWorkerCount, 0) PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineWorkerEnergyUsed, 0) PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineHousekeeperEndTime, 0) PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineHelpAwardCount, 0) for refreshType in PlayerMineArea.RefreshTypeList: PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineRefreshCount % refreshType, 0) PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineTreasureState, 0) PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineTreasureAward, 0) for treasureType in range(10): PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineTreasureProgess % treasureType, 0) GameWorld.DebugAnswer(curPlayer, "ÖØÖø£µØÍæ¼Ò") elif value1 == "e": energyUsed = msgList[1] if len(msgList) > 1 else 0 PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineWorkerEnergyUsed, energyUsed) GameWorld.DebugAnswer(curPlayer, "ÉèÖÃÒÑÓþ«Á¦: %s" % energyUsed) elif value1 == "w": workerCount = msgList[1] if len(msgList) > 1 else 0 PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineWorkerCount, workerCount) GameWorld.DebugAnswer(curPlayer, "ÉèÖù¤ÈËÊýÁ¿: %s" % workerCount) elif value1 == "k": remainMinutes = msgList[1] if len(msgList) > 1 else 0 if remainMinutes > 0: endTime = int(time.time()) + remainMinutes * 60 PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineHousekeeperEndTime, endTime) GameWorld.DebugAnswer(curPlayer, "ÉèÖùܼҵ½ÆÚʱ¼ä: %s" % GameWorld.ChangeTimeNumToStr(endTime)) else: PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineHousekeeperEndTime, 0) GameWorld.DebugAnswer(curPlayer, "ÖØÖùܼҵ½ÆÚʱ¼ä: 0") elif value1 == "r": refreshCount = msgList[1] if len(msgList) > 1 else 0 refreshType = msgList[2] if len(msgList) > 2 else 0 PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineRefreshCount % refreshType, refreshCount) GameWorld.DebugAnswer(curPlayer, "ÉèÖÃˢдÎÊý: %s, Type:%s" % (refreshCount, refreshType)) elif value1 == "t": treasureType = msgList[1] if len(msgList) > 1 else 0 setProgress = msgList[2] if len(msgList) > 2 else 0 setProgress = min(setProgress, PlayerMineArea.MineTreasureProgressMax) PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineTreasureProgess % treasureType, setProgress) GameWorld.DebugAnswer(curPlayer, "ÉèÖþ۱¦½ø¶È: Type:%s,½ø¶È=%s" % (treasureType, setProgress)) elif value1 == "h": helpAwardCount = msgList[1] if len(msgList) > 1 else 0 PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MineHelpAwardCount, helpAwardCount) GameWorld.DebugAnswer(curPlayer, "ÉèÖðïÖú´ÎÊý: %s" % helpAwardCount) else: return True PlayerMineArea.SyncPlayerMineAreaInfo(curPlayer) return