| | |
| | |
|
| | | fbPropertyID = GameWorld.GetGameWorld().GetPropertyID()
|
| | | # 定时占领资源积分奖励
|
| | | awardScorePerSecond = IpyGameDataPY.GetFuncCfg("CrossBattlefieldCrystal", 3)
|
| | | awardScorePerSecondDict = IpyGameDataPY.GetFuncEvalCfg("CrossBattlefieldCrystal", 3)
|
| | | worldObj = GetBattleWorld()
|
| | | for npcID, ownerFaction in worldObj.crystalFactionInfo.items():
|
| | | if npcID not in awardScorePerSecondDict:
|
| | | continue
|
| | | awardScorePerSecond = awardScorePerSecondDict[npcID]
|
| | | lastAwardTick = worldObj.crystalAwardTick.get(npcID, tick)
|
| | | awardSeconds = (tick - lastAwardTick) / 1000.0
|
| | | awardFactionScore = int(awardScorePerSecond * round(awardSeconds))
|
| | |
| | | else:
|
| | | factionObj.crystalScorePlusRate = 0
|
| | | factionObj.crystalScorePlusEndTick = 0
|
| | | GameWorld.DebugLog("定时资源积分: npcID=%s,ownerFaction=%s,awardSeconds=%s,awardFactionScore=%s" |
| | | % (npcID, ownerFaction, awardSeconds, awardFactionScore), fbPropertyID)
|
| | | GameWorld.DebugLog("定时资源积分: npcID=%s,ownerFaction=%s,awardScorePerSecond=%s,awardSeconds=%s,awardFactionScore=%s" |
| | | % (npcID, ownerFaction, awardScorePerSecond, awardSeconds, awardFactionScore), fbPropertyID)
|
| | | factionObj.addFactionScore(awardFactionScore, False)
|
| | |
|
| | | # 参与玩家处理
|