#!/usr/bin/python  
 | 
# -*- coding: GBK -*-  
 | 
#-------------------------------------------------------------------------------  
 | 
#  
 | 
##@package GM.Commands.Arena  
 | 
#  
 | 
# @todo:¾º¼¼³¡  
 | 
# @author hxp  
 | 
# @date 2021-08-20  
 | 
# @version 1.0  
 | 
#  
 | 
# ÏêϸÃèÊö: ¾º¼¼³¡  
 | 
#  
 | 
#-------------------------------------------------------------------------------  
 | 
#"""Version = 2021-08-20 17:00"""  
 | 
#-------------------------------------------------------------------------------  
 | 
  
 | 
import GameWorld  
 | 
import GameWorldArena  
 | 
import ShareDefine  
 | 
  
 | 
#---------------------------------------------------------------------  
 | 
#È«¾Ö±äÁ¿  
 | 
#---------------------------------------------------------------------  
 | 
  
 | 
#---------------------------------------------------------------------  
 | 
#Â߼ʵÏÖ  
 | 
## Ö´ÐÐÂß¼  
 | 
#  @param curPlayer µ±Ç°Íæ¼Ò  
 | 
#  @param gmList [cmdIndex gmAccID msg]  
 | 
#  @return None  
 | 
#  @remarks º¯ÊýÏêϸ˵Ã÷.  
 | 
def OnExec(curPlayer, msgList):  
 | 
      
 | 
    playerID = curPlayer.GetPlayerID()  
 | 
      
 | 
    value1 = msgList[0]  
 | 
    if len(msgList) == 1 and value1 > 0:  
 | 
        updScore = value1  
 | 
        __UpdArenaScore(curPlayer, playerID, updScore)  
 | 
          
 | 
    elif len(msgList) >= 3 and value1 == 2:  
 | 
        tagPlayerID, updScore = msgList[1], msgList[2]  
 | 
        __UpdArenaScore(curPlayer, tagPlayerID, updScore)  
 | 
          
 | 
    return  
 | 
  
 | 
def __UpdArenaScore(curPlayer, playerID, updScore):  
 | 
      
 | 
    # ¸üаñµ¥  
 | 
    billBoard = GameWorld.GetBillboard().FindBillboard(ShareDefine.Def_BT_Arena)  
 | 
    if billBoard:  
 | 
        billBoardData = billBoard.FindByID(playerID)  
 | 
        if billBoardData:  
 | 
            billBoardData.SetCmpValue(updScore)  
 | 
            billBoard.Sort()  
 | 
            GameWorld.DebugAnswer(curPlayer, "¸üаñµ¥»ý·ÖplayerID=%s,»ý·Ö=%s" % (playerID, updScore))  
 | 
        else:  
 | 
            GameWorld.DebugAnswer(curPlayer, "δÉϰñ²»ÐèÒª¸üлý·Ö!")  
 | 
              
 | 
    # ¸üжÔÕ½¼Ç¼  
 | 
    battleRecList = GameWorldArena.GetPlayerArenaBattleRecList(playerID)  
 | 
    if len(battleRecList) > 0:  
 | 
        tagBattleRec = battleRecList[-1]  
 | 
        tagBattleRec.updScore = updScore  
 | 
        GameWorld.DebugAnswer(curPlayer, "¶ÔÕ½¼Ç¼»ý·Ö¸üÐÂplayerID=%s,»ý·Ö=%s" % (playerID, updScore))  
 | 
    else:  
 | 
        GameWorld.DebugAnswer(curPlayer, "ÎÞ¶ÔÕ½¼Ç¼²»ÐèÒª¸üлý·Ö!")  
 | 
          
 | 
    return  
 | 
  
 | 
  
 | 
  
 |