From 0e44a8795f0bb50fddd73aabae1670ce62e5eaca Mon Sep 17 00:00:00 2001 From: wangyuan Date: Wed, 9 Oct 2019 14:13:23 +0800 Subject: [PATCH] fix fastreward & fix especialEquip misison --- .../ljsd/jieling/logic/fight/CombatLogic.java | 23 +++++++++++-------- .../ljsd/jieling/logic/item/ItemLogic.java | 2 +- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/CombatLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/CombatLogic.java index f75b65dd9..64f32bab3 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/CombatLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/CombatLogic.java @@ -309,17 +309,22 @@ public class CombatLogic { Map randomRandomMap = new HashMap<>(); CommonProto.Drop.Builder baseBuilder = CommonProto.Drop.newBuilder(); CommonProto.Drop.Builder randomBuilder = CommonProto.Drop.newBuilder(); - - if(mainLevelManager.getState()!=-1){ - int fightId = mainLevelManager.getFightId(); - SMainLevelConfig sMainLevelConfig = SMainLevelConfig.config.get(fightId); - int[] randomRewardMin = sMainLevelConfig.getRandomRewardMin(); - ItemUtil.combineReward(user,randomRewardMin, times,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap); - int timesTemp =times; - while (timesTemp-->0){ - ItemUtil.combineReward(user,sMainLevelConfig.getRandomReward(), 1f,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap); + int fightId = mainLevelManager.getFightId(); + SMainLevelConfig targetMainLevelConfig = SMainLevelConfig.config.get(fightId); + if(mainLevelManager.getState()==-1){ + for( SMainLevelConfig sMainLevelConfig : SMainLevelConfig.config.values() ){ + if(sMainLevelConfig.getNextLevel() == mainLevelManager.getFightId()){ + targetMainLevelConfig = sMainLevelConfig; + break; + } } } + int[] randomRewardMin = targetMainLevelConfig.getRandomRewardMin(); + ItemUtil.combineReward(user,randomRewardMin, times,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap); + int timesTemp =times; + while (timesTemp-->0){ + ItemUtil.combineReward(user,targetMainLevelConfig.getRandomReward(), 1f,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap); + } ItemUtil.drop(user,baseBuilder,baseItemMap,baseCardMap,baseEquipMap,baseRandomMap,BIReason.ADVENTURE_BASE_REWARD); ItemUtil.drop(user,randomBuilder,randomItemMap,randomCardMap,randomEquipMap,randomRandomMap,BIReason.ADVENTURE_RANDOM_REWARDD); Map result = new HashMap<>(2); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java index b294605f8..6ff26809b 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java @@ -496,7 +496,7 @@ public class ItemLogic { } user.getEquipManager().upStarEspecialEquip(equipId); Poster.getPoster().dispatchEvent(new EspecialEquipUpEvent(user.getId(),0, user.getEquipManager().getEspecialEquipMap().get(equipId).getStar())); - user.getUserMissionManager().onGameEvent(user, GameEvent.ESPECIAL_EQUIP,especialEquip.getStar()+1); + user.getUserMissionManager().onGameEvent(user, GameEvent.ESPECIAL_EQUIP,especialEquip.getStar()); MessageUtil.sendMessage(session,1,MessageTypeProto.MessageType.UP_HERO_STAR_RESPONSE_VALUE,null,true); if(especialEquip.getStar()>=SSpecialConfig.getIntegerValue(SSpecialConfig.lamp_rankup_equiptalisman_content_parm)){ SItem sItem = SItem.getsItemMap().get(especialEquip.getEquipId());