#!/usr/bin/python  
 | 
# -*- coding: GBK -*-  
 | 
#-------------------------------------------------------------------------------  
 | 
#  
 | 
##@package GM.Commands.HelpCheckInInfo  
 | 
#  
 | 
# @todo:¸±±¾ÖúÕ½µÇ¼ÇÍæ¼ÒÐÅÏ¢  
 | 
# @author hxp  
 | 
# @date 2018-11-27  
 | 
# @version 1.0  
 | 
#  
 | 
# ÏêϸÃèÊö: ¸±±¾ÖúÕ½µÇ¼ÇÍæ¼ÒÐÅÏ¢  
 | 
#  
 | 
#-------------------------------------------------------------------------------  
 | 
#"""Version = 2018-11-27 21:30"""  
 | 
#-------------------------------------------------------------------------------  
 | 
  
 | 
import GameWorld  
 | 
import PyGameData  
 | 
import PlayerFBHelpBattle  
 | 
import ShareDefine  
 | 
  
 | 
import random  
 | 
import time  
 | 
  
 | 
## Ö´ÐÐÂß¼  
 | 
#  @param curPlayer µ±Ç°Íæ¼Ò  
 | 
#  @param gmList []  
 | 
#  @return None  
 | 
def OnExec(curPlayer, gmList):  
 | 
      
 | 
    playerID = curPlayer.GetPlayerID()  
 | 
    if playerID not in PyGameData.g_fbHelpBattleCheckInPlayerDict:  
 | 
        GameWorld.DebugAnswer(curPlayer, "Íæ¼ÒδµÇ¼Ç»òµÇ¼ÇÒѳ¬Ê±£¡")  
 | 
        return  
 | 
    helpBattlePlayer = PyGameData.g_fbHelpBattleCheckInPlayerDict[playerID]  
 | 
      
 | 
    if not gmList or len(gmList) < 2:  
 | 
        if len(gmList) == 1:  
 | 
            __AddFakeHelpPlayer(curPlayer, gmList[0])  
 | 
            return  
 | 
        GameWorld.DebugAnswer(curPlayer, "-------------------------------")  
 | 
        GameWorld.DebugAnswer(curPlayer, "²é¿´µÇ¼ÇÐÅÏ¢: HelpCheckInInfo")  
 | 
        GameWorld.DebugAnswer(curPlayer, "Ìí¼ÓɽկµÇ¼Ç: HelpCheckInInfo É½Õ¯Êý")  
 | 
        GameWorld.DebugAnswer(curPlayer, "Çå³ýɽկµÇ¼Ç: HelpCheckInInfo 0")  
 | 
        GameWorld.DebugAnswer(curPlayer, "ÉèÖýñÈÕÖúÕ½Êý: HelpCheckInInfo µØÍ¼ Ïß· ´ÎÊý")  
 | 
          
 | 
        __PrintCheckInInfo(curPlayer, helpBattlePlayer)  
 | 
        return  
 | 
      
 | 
    if len(gmList) == 3:  
 | 
        mapID, lineID, helpCount = gmList  
 | 
        helpBattlePlayer.todayHelpCountDict[(mapID, lineID)] = helpCount  
 | 
        GameWorld.DebugAnswer(curPlayer, "ÉèÖýñÈÕÖúÕ½Êý: %s" % helpBattlePlayer.todayHelpCountDict)  
 | 
    else:  
 | 
        GameWorld.DebugAnswer(curPlayer, "GMÃüÁî´íÎó£¡")  
 | 
        return  
 | 
      
 | 
    __PrintCheckInInfo(curPlayer, helpBattlePlayer)  
 | 
    return  
 | 
  
 | 
def __PrintCheckInInfo(curPlayer, helpBattlePlayer):  
 | 
    GameWorld.DebugAnswer(curPlayer, "µÈ¼¶: %s, ¾³½ç: %s,  VIP%s" % (helpBattlePlayer.playerLV, helpBattlePlayer.realmLV, helpBattlePlayer.vipLV))  
 | 
    GameWorld.DebugAnswer(curPlayer, "Õ½Á¦: %s, ÏÉÃË: %s" % (helpBattlePlayer.fightPower, helpBattlePlayer.familyID))  
 | 
    GameWorld.DebugAnswer(curPlayer, "µÇ¼Çʱ¼ä: %s,  ´ÎÊý: %s" % (GameWorld.ChangeTimeNumToStr(helpBattlePlayer.checkInTime), helpBattlePlayer.checkInCount))  
 | 
    GameWorld.DebugAnswer(curPlayer, "½ñÈÕÏÉÔµ±Ò: %s" % (helpBattlePlayer.todayXianyuanCoin))  
 | 
    GameWorld.DebugAnswer(curPlayer, "½ñÌìÖúÕ½Êý: %s" % (helpBattlePlayer.todayHelpCountDict))  
 | 
    return  
 | 
  
 | 
def __AddFakeHelpPlayer(curPlayer, addCount):  
 | 
    ## Ìí¼Ó¼ÙµÄÖúÕ½µÇ¼Ç  
 | 
    if addCount <= 0:  
 | 
        clearFakeIDList = []  
 | 
        for playerID in PyGameData.g_fbHelpBattleCheckInPlayerDict.keys():  
 | 
            if playerID < 10000:  
 | 
                PyGameData.g_fbHelpBattleCheckInPlayerDict.pop(playerID)  
 | 
                clearFakeIDList.append(playerID)  
 | 
        GameWorld.DebugAnswer(curPlayer, "Çå³ý¼ÙÖúÕ½µÇ¼Ç %s" % clearFakeIDList)  
 | 
        return  
 | 
      
 | 
    addFakeIDList = []  
 | 
    curTime = int(time.time())  
 | 
    nowCheckInCount = len(PyGameData.g_fbHelpBattleCheckInPlayerDict)  
 | 
    fakeIDStart = 1000 + nowCheckInCount + 1  
 | 
    for fakeID in xrange(fakeIDStart, fakeIDStart + addCount + 1):  
 | 
        if fakeID >= 10000:  
 | 
            break  
 | 
        helpBattlePlayer = PlayerFBHelpBattle.HelpBattlePlayer(fakeID)  
 | 
        PyGameData.g_fbHelpBattleCheckInPlayerDict[fakeID] = helpBattlePlayer  
 | 
        playerName = "Íæ¼Ò%d" % fakeID  
 | 
        helpBattlePlayer.playerName = playerName.decode(ShareDefine.Def_Game_Character_Encoding).encode(GameWorld.GetCharacterEncoding())  
 | 
        helpBattlePlayer.playerLV = curPlayer.GetLV()  
 | 
        helpBattlePlayer.job = random.randint(1, 2)  
 | 
        helpBattlePlayer.realmLV = random.randint(1, 20)  
 | 
        helpBattlePlayer.fightPower = 2000000 + fakeID  
 | 
        helpBattlePlayer.familyID = 0  
 | 
        helpBattlePlayer.vipLV = random.randint(0, 10)  
 | 
        helpBattlePlayer.checkInCount = 100  
 | 
        helpBattlePlayer.checkInTime = curTime  
 | 
        helpBattlePlayer.todayXianyuanCoin = 0  
 | 
        addFakeIDList.append(fakeID)  
 | 
          
 | 
    GameWorld.DebugAnswer(curPlayer, "Ìí¼Ó¼ÙÖúÕ½µÇ¼Ç %s" % addFakeIDList)   
 | 
    return  
 | 
  
 |