diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapLogic.java index 108e8e75a..6cef2ddb8 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapLogic.java @@ -2564,18 +2564,18 @@ public class MapLogic { if(trialInfo.getAddHpCount()>=healing[1]){ throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE); } - boolean itemCost = ItemUtil.itemCost(user, new int[][]{{healing[0],1}}, BIReason.TRIAL_ADD_HP_CONSUME, 1); - if(!itemCost){ - throw new ErrorCodeException(ErrorCode.ITEM_NOT_ENOUGH); - } Map propertyMap = heroInfo.get(heroId).getProperty(); int curHp = propertyMap.get(HeroAttributeEnum.CurHP.getPropertyId()); if(curHp==0){ throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE); }else{ + boolean itemCost = ItemUtil.itemCost(user, new int[][]{{healing[0],1}}, BIReason.TRIAL_ADD_HP_CONSUME, 1); + if(!itemCost){ + throw new ErrorCodeException(ErrorCode.ITEM_NOT_ENOUGH); + } //todo 加血逻辑 int maxHp = propertyMap.get(HeroAttributeEnum.Hp.getPropertyId()); - int resultHp = Math.min(curHp+maxHp*5000/10000,maxHp); + int resultHp = Math.min(curHp+maxHp/2,maxHp); propertyMap.put(HeroAttributeEnum.CurHP.getPropertyId(),resultHp); trialInfo.getHeroInfo().get(heroId).setProperty(propertyMap); mapManager.updateTrialAddHpCount(1);