diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java index 981c143b2..b143de3bf 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java @@ -1270,8 +1270,20 @@ public class PlayerLogic { } EquipManager equipManager = userInMem.getEquipManager(); Map equipMap = equipManager.getEquipMap(); - for(String equipId : hero.getJewelInfo()){ - CommonProto.Equip.Builder toBuilder = CBean2Proto.getEquipProto(equipMap.get(equipId),userInMem).toBuilder(); + // 宝器 + for(String equipId : hero.getJewelInfo()){ + PropertyItem propertyItem = equipMap.get(equipId); + Jewel jewel = null; + if (propertyItem instanceof Jewel){ + jewel = (Jewel) propertyItem; + }else { + jewel = equipManager.getJewelMap().get(equipId); + if (jewel == null){ + LOGGER.error("查看英雄信息,法宝找不到:{}",equipId); + continue; + } + } + CommonProto.Equip.Builder toBuilder = CBean2Proto.getEquipProto(jewel,userInMem).toBuilder(); builder.addEquip(toBuilder); } for(int equipId : hero.getEquipByHongmengPositionMap(userInMem.getHeroManager()).values()){