#!/usr/bin/python  
 | 
# -*- coding: GBK -*-  
 | 
#-------------------------------------------------------------------------------  
 | 
#  
 | 
##@package GameWorldOpenServerCampaign  
 | 
#  
 | 
# @todo:¿ª·þ»î¶¯  
 | 
# @author hxp  
 | 
# @date 2018-03-06  
 | 
# @version 1.0  
 | 
#  
 | 
# ÏêϸÃèÊö: ¿ª·þ»î¶¯  
 | 
#  
 | 
#-------------------------------------------------------------------------------  
 | 
#"""Version = 2018-03-06 11:00"""  
 | 
#-------------------------------------------------------------------------------  
 | 
  
 | 
  
 | 
import GameWorld  
 | 
import ShareDefine  
 | 
  
 | 
  
 | 
def CanGiveCampaignAward(curPlayer, msgList):  
 | 
    ## ¿É·ñÁìÈ¡¿ª·þ»î¶¯°ñµ¥½±Àø  
 | 
      
 | 
    if not curPlayer:  
 | 
        return msgList  
 | 
      
 | 
    campTypeList, isEndMail = msgList  
 | 
      
 | 
    queryResultList = []  
 | 
    for oscType in campTypeList:  
 | 
        queryResultList.append(__GetGiveCampaignAwardInfo(curPlayer, oscType))  
 | 
    msgList.append(queryResultList)  
 | 
      
 | 
    GameWorld.DebugLog("ÇëÇóÁìÈ¡¿ª·þ»î¶¯½±Àø: campTypeList=%s,isEndMail=%s,queryResultList=%s"   
 | 
                       % (campTypeList, isEndMail, queryResultList), curPlayer.GetPlayerID())  
 | 
    return msgList  
 | 
  
 | 
def __GetGiveCampaignAwardInfo(curPlayer, campaignType):  
 | 
    ## »ñÈ¡Áì½±ËùÐèµÄÐÅÏ¢  
 | 
      
 | 
    awardBillboardType = ShareDefine.Def_Campaign_Billboard_Dict.get(campaignType)  
 | 
    if not awardBillboardType:  
 | 
        return 0  
 | 
      
 | 
    billBoard = GameWorld.GetBillboard().FindBillboard(awardBillboardType)  
 | 
    if not billBoard:  
 | 
        return 0  
 | 
      
 | 
    curPlayerID = curPlayer.GetPlayerID()  
 | 
    order = billBoard.IndexOfByID(curPlayerID) + 1  # Íæ¼ÒÔÚÅÅÐаñÖеÄÃû´Î  
 | 
    GameWorld.DebugLog("    ½±Àø°ñ: campaignType=%s,order=%s" % (campaignType, order), curPlayerID)  
 | 
    return order  
 | 
  
 | 
  
 | 
  
 |