diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildChallengeLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildChallengeLogic.java index 66ed142b5..973adb798 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildChallengeLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildChallengeLogic.java @@ -327,13 +327,17 @@ public class GuildChallengeLogic { if(sendUid==uid){ continue; } - ISession isession = OnlineUserManager.getSessionByUid(sendUid); + User userByRpc = PlayerLogic.getInstance().getUserByRpc(sendUid); + if (userByRpc == null){ + continue; + } Family.GuildChallengeIndication.Builder otherIndication = Family.GuildChallengeIndication.newBuilder() .setBlood(remainHp) .setCurBoss(guildInfo.getCurrBossId()); - if(kill==1&&!PlayerLogic.getInstance().getUserByRpc(sendUid).getGuildMyInfo().getRefreshedBoss().contains(bossId)&&guildInfo.getBossHpRemain()!=-1){ + if(kill == 1 && !userByRpc.getGuildMyInfo().getRefreshedBoss().contains(bossId) && guildInfo.getBossHpRemain()!=-1){ otherIndication.setIsRefresh(1);//需要前端刷新次数 } + ISession isession = OnlineUserManager.getSessionByUid(sendUid); if(isession!=null){ LOGGER.info("向{}发送indication",sendUid); MessageUtil.sendIndicationMessage(isession,1,MessageTypeProto.MessageType.GUILD_CHALLENGE_INDICATION_VALUE,otherIndication.build(),true);