| | |
| | | GameWorld.DebugLog("beSureCountDict=%s" % beSureCountDict, playerID)
|
| | | GameWorld.DebugLog("ensureCount=%s, %s" % (ensureCount, ensureRateList), playerID)
|
| | | notifyGridNumList = setIpyData.GetNotifyGridNumList() # 额外需要广播的格子,幸运必出、次数必出可不配置
|
| | | notifyKey = setIpyData.GetNotifyKey()
|
| | | notifyKeyDict = setIpyData.GetNotifyKeyDict()
|
| | | gridNumMaxLimitInfo = setIpyData.GetGridNumMaxLimitInfo() # {"格子":最大可产出次数, ...}
|
| | | gridNumCountInfo = {} # 有限制产出次数的格子已经产出数
|
| | | for gridNumStr in gridNumMaxLimitInfo.keys():
|
| | |
| | | itemObj = ItemControler.GetOutPutItemObj(itemID, itemCount, isBind, curPlayer=curPlayer)
|
| | | mailItemDict = ItemCommon.GetMailItemDict(itemObj)
|
| | |
|
| | | if int(gridNum) in notifyGridNumList and notifyKey:
|
| | | if int(gridNum) in notifyGridNumList and notifyKeyDict:
|
| | | notifyKey = notifyKeyDict.get(int(gridNum), notifyKeyDict.get(0, ""))
|
| | | if treasureType in TreasureType_HeroCallList:
|
| | | if PlayerHero.GetHeroActivite(curPlayer, itemID):
|
| | | notifyKey = ""
|
| | | GameWorld.DebugLog("招募武将非首次获得的不广播了! itemID=%s" % itemID, playerID)
|
| | | else:
|
| | | elif notifyKey:
|
| | | heroIpyData = IpyGameDataPY.GetIpyGameData("Hero", itemID)
|
| | | if heroIpyData:
|
| | | heroQuality = heroIpyData.GetQuality()
|
| | | PlayerControl.WorldNotify(0, notifyKey, [curPlayer.GetPlayerName(), heroQuality, itemID])
|
| | | else:
|
| | | elif notifyKey:
|
| | | PlayerControl.WorldNotify(0, notifyKey, [curPlayer.GetPlayerName(), itemID, itemObj.GetUserData(), itemCount])
|
| | |
|
| | | if mailItemList or not itemControl.PutInItem(packType, itemObj, event=[ChConfig.ItemGive_Treasure, False, {}]):
|