#!/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.todayHelpCountDict))
|
GameWorld.DebugAnswer(curPlayer, "½ÓÊÜÀñºÐÊý: %s" % (helpBattlePlayer.getThanksGiftCountDict))
|
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
|
addFakeIDList.append(fakeID)
|
|
GameWorld.DebugAnswer(curPlayer, "Ìí¼Ó¼ÙÖúÕ½µÇ¼Ç %s" % addFakeIDList)
|
return
|
|