#!/usr/bin/python # -*- coding: GBK -*- #--------------------------------------------------------------------- # #--------------------------------------------------------------------- ##@package test_OnHour # @todo: GMÃüÁî, OnHour # # @author: panwei # @date 2011-01-09 # @version 1.1 # # @change: "2012-05-16 14:30" jiang C++½Ó¿ÚÐÞ¸ÄMapServer_QueryPlayerResultºÍMapServer_QueryPlayerÐÞ¸Ä #--------------------------------------------------------------------- """Version = 2012-05-16 14:30""" #--------------------------------------------------------------------- import GameWorldProcess import GameWorld #--------------------------------------------------------------------- #È«¾Ö±äÁ¿ #--------------------------------------------------------------------- Def_MaxHour = 24 #--------------------------------------------------------------------- ## Ö´ÐÐÂß¼­ Ö´Ðиø¶¨²ÎÊý´ÎonHour # @param curPlayer µ±Ç°Íæ¼Ò # @param cmdList ´«Èë²ÎÊý # @return None # @remarks Ö´Ðиø¶¨²ÎÊý´ÎonHour def OnExec(curPlayer, cmdList): timeStr = GameWorld.GetCurrentDataTimeStr() tick = GameWorld.GetGameWorld().GetTick() #֪ͨµØÍ¼·þÎñÆ÷Íæ¼ÒË¢ÐÂÐÅÏ¢ DoLogic_GM_OnHour(timeStr, tick) if len(cmdList) == 0: count = 1 else: count = min(Def_MaxHour, cmdList[0]) for i in range(count): GameWorldProcess.OnHour(timeStr, tick) return ## ÊÀ½ç·þÎñÆ÷Ö´ÐÐ test_OnHour Ò»´Î ²¢Í¨ÖªÔÚÏßËùÓÐÍæ¼Ò # @param timeStr ʱ¼ä´Á # @param tick µ±Ç°tick # @return ÎÞ·µ»ØÖµ # @remarks ÊÀ½ç·þÎñÆ÷Ö´ÐÐ test_OnHour Ò»´Î def DoLogic_GM_OnHour(timeStr, tick): playerManager = GameWorld.GetPlayerManager() for i in range(0, playerManager.GetPlayerCount()): curPlayer = playerManager.GetPlayerByIndex(i) if not curPlayer or curPlayer.IsEmpty(): continue mapID = GameWorld.GetQueryPlayerMapID(curPlayer) if not mapID: continue playerManager.MapServer_QueryPlayer(0, 0, curPlayer.GetID(), mapID, 'GMDateTime', 'GMOnHour', len("GMOnHour")) return