#!/usr/bin/python  
 | 
# -*- coding: GBK -*-  
 | 
#-------------------------------------------------------------------------------  
 | 
#  
 | 
##@package GM.Commands.SetQQUser  
 | 
#  
 | 
# @todo:ÉèÖÃQQÍæ¼ÒÐÅÏ¢  
 | 
# @author hxp  
 | 
# @date 2016-09-12  
 | 
# @version 1.0  
 | 
#  
 | 
# ÏêϸÃèÊö: ÉèÖÃQQÍæ¼ÒÐÅÏ¢  
 | 
#  
 | 
#-------------------------------------------------------------------------------  
 | 
#"""Version = 2016-09-12 12:00"""  
 | 
#-------------------------------------------------------------------------------  
 | 
import PlayerBillboard  
 | 
import PlayerQQ  
 | 
import ChConfig  
 | 
import PlayerControl  
 | 
import GameWorld  
 | 
#---------------------------------------------------------------------  
 | 
#Â߼ʵÏÖ  
 | 
## GMÃüÁîÖ´ÐÐÈë¿Ú  
 | 
#  @param curPlayer µ±Ç°Íæ¼Ò  
 | 
#  @param paramList ²ÎÊýÁÐ±í  
 | 
#  @return None  
 | 
#  @remarks º¯ÊýÏêϸ˵Ã÷.  
 | 
def OnExec(curPlayer, paramList):  
 | 
      
 | 
    if not paramList:  
 | 
        __AnswerHelp(curPlayer)  
 | 
        return  
 | 
      
 | 
    if len(paramList) == 1 and paramList[0] == 0:  
 | 
        curPlayer.SetOperateInfo(0)  
 | 
        PlayerBillboard.UpdatePlayerBillboardOnLeaveServer(curPlayer)  
 | 
        GameWorld.DebugAnswer(curPlayer, "ÖØÖÃqq»áÔ±ÐÅÏ¢³É¹¦!")  
 | 
        return  
 | 
    if len(paramList) == 2 and paramList[0] == "pf":  
 | 
        pf = paramList[1]  
 | 
        pfValue = 0  
 | 
        if pf in ChConfig.Def_Tencent_PF_List:  
 | 
            pfValue = ChConfig.Def_Tencent_PF_List.index(pf) + 1  
 | 
        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_TencentPF, pfValue)  
 | 
        GameWorld.DebugAnswer(curPlayer, "ÉèÖÃÌÚѶÀ´Ô´pf: %s, pfValue=%s" % (pf, pfValue))  
 | 
        return  
 | 
      
 | 
    qquserTypeDict = {1:"»Æ×ê", 2:"À¶×ê"}  
 | 
    userType = PlayerQQ.GetQQPlatVIPType(curPlayer)  
 | 
    if userType not in qquserTypeDict:  
 | 
        GameWorld.DebugAnswer(curPlayer, "µ±Ç°Æ½Ì¨·ÇQQƽ̨, ÎÞ·¨ÉèÖÃ! ")  
 | 
        return  
 | 
      
 | 
    ybVIPLV = min(paramList[0], 8) # ×êµÈ¼¶  
 | 
    isYBHighVIP = 0 if len(paramList) <= 1 else paramList[1] # ºÀ»ª  
 | 
    isYBYearVIP = 0 if len(paramList) <= 2 else paramList[2] # Äê·Ñ  
 | 
      
 | 
    # ÊÇ·ñ×ê¹ó×å  
 | 
    if len(paramList) <= 3:  
 | 
        isYBVIP = 1 if ybVIPLV > 0 else 0 # Ã»ÉèÖõÄÇé¿öÏ£¬ÓÐ×êµÈ¼¶Ä¬ÈÏΪ×ê¹ó×å  
 | 
    else:  
 | 
        isYBVIP = paramList[3]  
 | 
          
 | 
    platVIPData = int("%02d%s%s%s" % (ybVIPLV, isYBHighVIP, isYBYearVIP, isYBVIP))  
 | 
    curPlayer.SetOperateInfo(platVIPData)  
 | 
    PlayerBillboard.UpdatePlayerBillboardOnLeaveServer(curPlayer)  
 | 
      
 | 
    GameWorld.DebugAnswer(curPlayer, "ÉèÖóɹ¦µ±Ç°Îª %s %s%s%s%s%s" % (platVIPData, "ºÀ»ª°æ" if isYBHighVIP else "",  
 | 
                                                "Äê·Ñ" if isYBYearVIP else "",  
 | 
                                                qquserTypeDict.get(userType),  
 | 
                                                "%s¼¶" % ybVIPLV,  
 | 
                                                "" if isYBVIP else "(ÒѹýÆÚ)",  
 | 
                                                ))  
 | 
    return  
 | 
  
 | 
def __AnswerHelp(curPlayer):  
 | 
    GameWorld.DebugAnswer(curPlayer, "SetQQUser ×êµÈ¼¶, ÊÇ·ñºÀ»ª°æ, ÊÇ·ñ°üÄê, ÊÇ·ñ¹ó×å")  
 | 
    GameWorld.DebugAnswer(curPlayer, "SetQQUser 0 Çå³ýqq»áÔ±ÐÅÏ¢")  
 | 
    GameWorld.DebugAnswer(curPlayer, "SetQQUser pf À´Ô´pf%s" % ChConfig.Def_Tencent_PF_List)  
 | 
    return  
 | 
  
 | 
  
 |