| | |
| | | PlayerControl.WorldNotify(0, 'Party_TopPlayer', [topHeroName])
|
| | |
|
| | | #给参与奖励
|
| | | joinReward = IpyGameDataPY.GetFuncEvalCfg('PartyReward')
|
| | | answerRWItemReward = IpyGameDataPY.GetFuncEvalCfg('PartyReward2', 1)
|
| | | for playerID, ansRightCount in PyGameData.g_partyheroAnswerDict.items():
|
| | | if answerRWItemReward and len(answerRWItemReward) == 2:
|
| | | ansTotalCount = len(PyGameData.g_familyAnswerPlayerIDDict.get(playerID, []))
|
| | | ansWrongCount = max(0, ansTotalCount - ansRightCount)
|
| | | isAuctionItem = False
|
| | | rightRewardEx, wrongRewardEx = [], []
|
| | | rightItemID, wrongItemID = answerRWItemReward
|
| | | if rightItemID and ansRightCount:
|
| | | rightRewardEx = [(rightItemID, ansRightCount, isAuctionItem)]
|
| | | if wrongItemID and ansWrongCount:
|
| | | wrongRewardEx = [(wrongItemID, ansWrongCount, isAuctionItem)]
|
| | | curJoinReward = joinReward + rightRewardEx + wrongRewardEx
|
| | | else:
|
| | | curJoinReward = joinReward
|
| | | joinPlayerIDList = PyGameData.g_partyheroAnswerDict.keys()
|
| | | if joinPlayerIDList:
|
| | | joinReward = IpyGameDataPY.GetFuncEvalCfg('PartyReward')
|
| | | if joinReward:
|
| | | PlayerCompensation.SendMailByKey('FamilyParty', [playerID], curJoinReward)
|
| | | PlayerCompensation.SendMailByKey('FamilyParty', joinPlayerIDList, joinReward)
|
| | | |
| | | #修改为答完题直接给每题奖励
|
| | | # joinReward = IpyGameDataPY.GetFuncEvalCfg('PartyReward')
|
| | | # answerRWItemReward = IpyGameDataPY.GetFuncEvalCfg('PartyReward2', 1)
|
| | | # for playerID, ansRightCount in PyGameData.g_partyheroAnswerDict.items():
|
| | | # if answerRWItemReward and len(answerRWItemReward) == 2:
|
| | | # ansTotalCount = len(PyGameData.g_familyAnswerPlayerIDDict.get(playerID, []))
|
| | | # ansWrongCount = max(0, ansTotalCount - ansRightCount)
|
| | | # isAuctionItem = False
|
| | | # rightRewardEx, wrongRewardEx = [], []
|
| | | # rightItemID, wrongItemID = answerRWItemReward
|
| | | # if rightItemID and ansRightCount:
|
| | | # rightRewardEx = [(rightItemID, ansRightCount, isAuctionItem)]
|
| | | # if wrongItemID and ansWrongCount:
|
| | | # wrongRewardEx = [(wrongItemID, ansWrongCount, isAuctionItem)]
|
| | | # curJoinReward = joinReward + rightRewardEx + wrongRewardEx
|
| | | # else:
|
| | | # curJoinReward = joinReward
|
| | | # if joinReward:
|
| | | # PlayerCompensation.SendMailByKey('FamilyParty', [playerID], curJoinReward)
|
| | |
|
| | | return
|
| | |
|
| | |
| | | answer = answer.replace('[', '')
|
| | | answer = answer.replace(']', '')
|
| | | PlayerControl.FamilyNotify(familyID, 'Party_Correct', [maxSecond, GameWorld.GbkToCode(answer)])
|
| | | |
| | | for index in xrange(family.GetCount()):
|
| | | member = family.GetAt(index)
|
| | | memPlayer = member.GetPlayer()
|
| | | if memPlayer and memPlayer.GetMapID() == ChConfig.Def_FBMapID_FamilyParty:
|
| | | rightPlayerID = 0
|
| | | answerInfo = str([rightPlayerID])
|
| | | memPlayer.MapServer_QueryPlayerResult(0, 0, "FamilyPartyAnswer", answerInfo, len(answerInfo))
|
| | | break
|
| | | else:
|
| | | continue
|
| | | answerTick = gameWorld.GetDictByKey(FamilyPartyFB_AnswerTick % familyID)
|
| | |
| | | PyGameData.g_familyPartyTopInfo = [playerID, playerName]
|
| | | msgList = [__GetFamilyAnswerRankList(), PyGameData.g_familyPartyTopInfo[1], PyGameData.g_partyheroAnswerDict[PyGameData.g_familyPartyTopInfo[0]]]
|
| | | GameWorld.SendMapServerMsgEx(ShareDefine.Def_Notify_WorldKey_FamilyPartyInfo, msgList)
|
| | | #通知玩家可获得贡献
|
| | | curPlayer.MapServer_QueryPlayerResult(0, 0, "FamilyPartyAnswer", '', 0)
|
| | | #通知答题结果
|
| | | answerInfo = str([playerID])
|
| | | curPlayer.MapServer_QueryPlayerResult(0, 0, "FamilyPartyAnswer", answerInfo, len(answerInfo))
|
| | |
|
| | | return
|