From 5f335130c9e1687a75ff134d661f4f37ce931d14 Mon Sep 17 00:00:00 2001 From: lvxinran Date: Wed, 31 Mar 2021 09:13:49 +0800 Subject: [PATCH] merge --- .../activity/RemoveEventHeroHandler.java | 4 ++- .../logic/family/GuildChallengeLogic.java | 26 +++++++++++++++++-- .../jieling/logic/store/BuyGoodsLogic.java | 2 ++ 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/RemoveEventHeroHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/RemoveEventHeroHandler.java index 47319f3eb..127735ec5 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/RemoveEventHeroHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/RemoveEventHeroHandler.java @@ -27,7 +27,9 @@ public class RemoveEventHeroHandler implements IEventHandler{ } Hero hero = userInMem.getHeroManager().getHeroMap().get(heroId); Map equipMap = userInMem.getEquipManager().getEquipMap(); - hero.getEquipByPositionMap().values().forEach(equip->equipMap.get(equip).setHeroId("")); + hero.getEquipByPositionMap().values().forEach(equip-> { + equipMap.get(String.valueOf(equip)).setHeroId(""); + }); Map endlessHeroInfo = userInMem.getMapManager().getEndlessMapInfo().getEndlessHeroInfo(); if(endlessHeroInfo!=null && endlessHeroInfo.containsKey(heroId)){ endlessHeroInfo.remove(heroId); 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 fc4a3f955..af0334e8f 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 @@ -322,9 +322,28 @@ public class GuildChallengeLogic { } Family.GuildChallengeIndication.Builder indication = Family.GuildChallengeIndication.newBuilder() .setBlood(remainHp) - .setCurBoss(guildInfo.getCurrBossId()); - GuildLogic.sendIndicationToMemberWithoutUser(guildInfo, MessageTypeProto.MessageType.GUILD_CHALLENGE_INDICATION,indication.build(),uid); +// GuildLogic.sendIndicationToMemberWithoutUser(guildInfo, MessageTypeProto.MessageType.GUILD_CHALLENGE_INDICATION,indication.build(),uid); + Map> members = guildInfo.getMembers(); + for(Set items : members.values()){ + for(Integer sendUid : items){ + //把自己跳过,自己的特殊处理 + if(sendUid==uid){ + continue; + } + ISession isession = OnlineUserManager.getSessionByUid(sendUid); + Family.GuildChallengeIndication.Builder otherIndication = Family.GuildChallengeIndication.newBuilder() + .setBlood(remainHp) + .setCurBoss(guildInfo.getCurrBossId()); + if(kill==1&&!UserManager.getUser(sendUid).getGuildMyInfo().getRefreshedBoss().contains(bossId)&&guildInfo.getBossHpRemain()!=-1){ + otherIndication.setIsRefresh(1);//需要前端刷新次数 + } + if(isession!=null){ +// LOGGER.info("向{}发送indication",sendUid); + MessageUtil.sendIndicationMessage(isession,1,MessageTypeProto.MessageType.GUILD_CHALLENGE_INDICATION_VALUE,otherIndication.build(),true); + } + } + } indication.setIsKill(kill); //伤害排行 @@ -350,6 +369,9 @@ public class GuildChallengeLogic { PlayerLogic.getInstance().checkAndUpdate(user,config.getPrivilege()[0],1); MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true); + if(kill==1&&!UserManager.getUser(uid).getGuildMyInfo().getRefreshedBoss().contains(bossId)&&guildInfo.getBossHpRemain()!=-1){ + indication.setIsRefresh(1);//需要前端刷新次数 + } MessageUtil.sendIndicationMessage(session,1,MessageTypeProto.MessageType.GUILD_CHALLENGE_INDICATION_VALUE,indication.build(),true); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsLogic.java index abd389485..e1af070bf 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsLogic.java @@ -278,7 +278,9 @@ public class BuyGoodsLogic { // if(rechargeInfo.getIsFirst()==0 && firstInvest == 1){ // ActivityLogic.getInstance().updateActivityMissionProgress(user, ActivityType.FirstRecharge,sRechargeCommodityConfig.getPrice()); // SActivityRewardConfig sActivityRewardConfig = SActivityRewardConfig.getsActivityRewardConfigByActivityId(4).get(0); + if(sRechargeCommodityConfig.getPrice()!=0&&price!=0){ rechargeInfo.setFirst(1); + } // String title = SErrorCodeEerverConfig.getI18NMessage("recharge_first_title"); // String content = SErrorCodeEerverConfig.getI18NMessage("recharge_first_txt"); // MailLogic.getInstance().sendMail(user.getId(),title,content,ItemUtil.getMailReward(sActivityRewardConfig.getReward()),nowTime, Global.MAIL_EFFECTIVE_TIME);