#!/usr/bin/python # -*- coding: GBK -*- #------------------------------------------------------------------------------- # ##@package GM.Commands.SetSignDay # # @todo:ÉèÖÃÇ©µ½ # @author hxp # @date 2018-03-29 # @version 1.0 # # ÏêϸÃèÊö: ÉèÖÃÇ©µ½ # #------------------------------------------------------------------------------- #"""Version = 2018-03-29 11:00""" #------------------------------------------------------------------------------- import PlayerControl import PlayerSignDay import PlayerMagicWeapon import GameWorld import ChConfig import datetime import time #--------------------------------------------------------------------- ## ÉèÖÃÿÈÕÇ©µ½ # @param curPlayer Íæ¼ÒʵÀý # @param cmdList ²ÎÊýÁбí # @return None # @remarks def OnExec(curPlayer, cmdList): if len(cmdList) == 1 and cmdList[0] == 0: PlayerSignDay.ResetDaySign(curPlayer) PlayerSignDay.Sync_SignDayInfo(curPlayer) startTime = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_DayLoginSignStartTime) # ¿ªÊ¼Ê±¼ä GameWorld.DebugAnswer(curPlayer, "ÖØÖÃÇ©µ½OK!%s" % GameWorld.ChangeTimeNumToStr(startTime)) PlayerMagicWeapon.CalcMagicWeaponAttr(curPlayer) PlayerControl.PlayerControl(curPlayer).RefreshPlayerAttrState() return if not cmdList: GameWorld.DebugAnswer(curPlayer, "ÉèÖÃ:SetSignDay ÒÑÇ©´ÎÊý ¿É²¹´ÎÊý ÊÇ·ñ´ÎÔ ÀÛ¼ÆÇ©µ½´ÎÊý") GameWorld.DebugAnswer(curPlayer, "ÖØÖÃ:SetSignDay 0") return signNum = cmdList[0] canAddSignNum = cmdList[1] if len(cmdList) > 1 else 0 isMulti = cmdList[2] if len(cmdList) > 2 else 0 totalSignNum = cmdList[3] if len(cmdList) > 3 else signNum curTime = int(time.time()) curDateTime = GameWorld.ChangeTimeNumToDatetime(curTime) startDateTime = curDateTime - datetime.timedelta(days=(signNum + canAddSignNum)) startTimeStr = str(startDateTime) startTime = GameWorld.ChangeTimeStrToNum(startTimeStr) PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_DayLoginSignState, 0) # ĬÈϵ±Ç°Î´Ç©µ½ PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_DayLoginSignNum, signNum) PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_TotalSignNum, totalSignNum) PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_DayLoginSignIsMulti, isMulti) PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_DayLoginSignStartTime, startTime) PlayerSignDay.Sync_SignDayInfo(curPlayer) PlayerMagicWeapon.CalcMagicWeaponAttr(curPlayer) PlayerControl.PlayerControl(curPlayer).RefreshPlayerAttrState() GameWorld.DebugAnswer(curPlayer, "ÉèÖÃÒÑÇ©´ÎÊý:%s,¿É²¹´ÎÊý:%s,ÊÇ·ñ´ÎÔÂ:%s" % (signNum, canAddSignNum, isMulti)) GameWorld.DebugAnswer(curPlayer, "±¾ÂÖ¿ªÊ¼Ç©µ½Ê±¼ä:%s" % (startTimeStr)) return