From f6e25e2baef0d55a0b1c3f307742dfec2e773e55 Mon Sep 17 00:00:00 2001 From: zhangshanxue Date: Mon, 12 Aug 2019 12:03:15 +0800 Subject: [PATCH 1/7] acitvity --- .../java/com/ljsd/jieling/logic/activity/ActivityLogic.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java index f9ce34034..a6128e40d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java @@ -121,6 +121,7 @@ public class ActivityLogic { long now = TimeUtils.now(); ActivityManager activityManager = user.getActivityManager(); Map sGlobalActivityMap = SGlobalActivity.getsGlobalActivityMap(); + Set openNewActivityIds = new HashSet<>(); for (Integer openActivityId : openActivityIds) { SGlobalActivity sGlobalActivity = sGlobalActivityMap.get(openActivityId); @@ -136,10 +137,11 @@ public class ActivityLogic { continue; } abstractActivity.initActivity(user); + //非角色活动开启通知 + openNewActivityIds.add(openActivityId); } Map activityMissionMap = activityManager.getActivityMissionMap(); long userCreateTime = user.getPlayerInfoManager().getCreateTime(); - Set openNewActivityIds = new HashSet<>(); for (SGlobalActivity sGlobalActivity : sGlobalActivityMap.values()) { int activityId = sGlobalActivity.getId(); if (openActivityIds.contains(activityId)) { From c0509d25f273f7459fb7b7c91431629321514361 Mon Sep 17 00:00:00 2001 From: zhangshanxue Date: Mon, 12 Aug 2019 16:00:36 +0800 Subject: [PATCH 2/7] acitvity --- .../com/ljsd/jieling/logic/activity/ExpectRankActivity.java | 4 ++-- .../com/ljsd/jieling/logic/activity/ForceRankActivity.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ExpectRankActivity.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ExpectRankActivity.java index c4a73c351..68cbe0170 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ExpectRankActivity.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ExpectRankActivity.java @@ -87,8 +87,8 @@ class ExpectRankActivity extends AbstractActivity { SActivityRankingReward sActivityRankingReward1 = SActivityRankingReward.getsActivityRankingRewardMap().get(missionId); //sendmail SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id); - String content = SErrorCodeEerverConfig.getI18NMessage("expertrank_activity_title"); - String title = SErrorCodeEerverConfig.getI18NMessage("expertrank_activity_txt", new Object[]{sGlobalActivity.getSesc(), rank++}); + String title = SErrorCodeEerverConfig.getI18NMessage("expertrank_activity_title"); + String content = SErrorCodeEerverConfig.getI18NMessage("expertrank_activity_txt", new Object[]{sGlobalActivity.getSesc(), rank++}); String mailReward = ItemUtil.getMailReward(sActivityRankingReward1.getRankingReward()); MailLogic.getInstance().sendMail(uid, title, content, mailReward, nowTime, Global.MAIL_EFFECTIVE_TIME); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ForceRankActivity.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ForceRankActivity.java index c3f130d62..dd98ae3df 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ForceRankActivity.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ForceRankActivity.java @@ -94,8 +94,8 @@ class ForceRankActivity extends AbstractActivity { continue; } //sendmail - String content = SErrorCodeEerverConfig.getI18NMessage("powerrank_activity_title"); - String title = SErrorCodeEerverConfig.getI18NMessage("powerrank_activity_txt", new Object[]{rank}); + String title = SErrorCodeEerverConfig.getI18NMessage("powerrank_activity_title"); + String content = SErrorCodeEerverConfig.getI18NMessage("powerrank_activity_txt", new Object[]{rank}); String mailReward = ItemUtil.getMailReward(sActivityRewardConfig.getReward()); MailLogic.getInstance().sendMail(uid, title, content, mailReward, nowTime, Global.MAIL_EFFECTIVE_TIME); //暂时不删 From 6924500cd118da6463a56e1d8d81fc8da41a0f3f Mon Sep 17 00:00:00 2001 From: lvxinran Date: Mon, 12 Aug 2019 16:05:43 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E5=85=AC=E4=BC=9A=E6=88=98=E9=80=BB?= =?UTF-8?q?=E8=BE=91=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../family/FamilyDefendInfoHandler.java | 4 ++-- .../ljsd/jieling/logic/family/GuildLogic.java | 20 +++++++++++++++++-- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/family/FamilyDefendInfoHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/family/FamilyDefendInfoHandler.java index 076e52332..cbee9021e 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/family/FamilyDefendInfoHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/family/FamilyDefendInfoHandler.java @@ -17,7 +17,7 @@ public class FamilyDefendInfoHandler extends BaseHandler { @Override public void process(ISession iSession, PacketNetData netData) throws Exception { - byte[] bytes = netData.parseClientProtoNetData(); - GuildLogic.viewDefendInfo(iSession,MessageTypeProto.MessageType.FAMILY_VIEW_DEFEND_RESPONSE); + + GuildLogic.viewDefendInfo(iSession,MessageTypeProto.MessageType.FAMILY_VIEW_DEFEND_RESPONSE); } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java index 770f911d9..b69fc0036 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java @@ -863,7 +863,12 @@ public class GuildLogic { if(guildIds.size()<1){ return; } + RedisUtil redisUtil = RedisUtil.getInstence(); for(Integer gid:guildIds){ + String key = RedisKey.getKey(RedisKey.FAMILY_FIGHT_RANK, gid.toString(), true); + if(!redisUtil.getZset(key,0, redisUtil.getZsetSize(RedisKey.FAMILY_FIGHT_RANK)).contains(gid)){ + redisUtil.zsetAddOne(RedisKey.FAMILY_FIGHT_RANK,gid.toString(),100); + } GuildInfo guildInfo = GuilidManager.guildInfoMap.get(gid); Map defendInfo = guildInfo.getDefendInfo(); if(defendInfo==null||defendInfo.size()<1){ @@ -884,10 +889,17 @@ public class GuildLogic { heroAllAttribute.put(heroInfo.getHeroId(),new FamilyHeroInfo(hero.getTemplateId(),hero.getLevel(),heroAttributeMap)); } fightInfo.setHeroAttribute(heroAllAttribute); - RedisUtil.getInstence().putMapEntry(RedisKey.FAMILY_FIGHT,String.valueOf(guildInfo.getId()),String.valueOf(entry.getKey()),fightInfo); + redisUtil.putMapEntry(RedisKey.FAMILY_FIGHT,String.valueOf(guildInfo.getId()),String.valueOf(entry.getKey()),fightInfo); } } } + + + /** + * 战斗之后数据更新 + * @param userAttack + * @param userDefend + */ public void familyFightResult(User userAttack,User userDefend){ int defendGuildId =userDefend.getPlayerInfoManager().getGuildId(); FamilyFightInfo defendInfo = RedisUtil.getInstence().getMapEntry(RedisKey.FAMILY_FIGHT, String.valueOf(defendGuildId), String.valueOf(userDefend.getId()), FamilyFightInfo.class); @@ -929,8 +941,12 @@ public class GuildLogic { Map attribute = value.getAttribute(); attribute.put(HeroAttributeEnum.CurHP.getPropertyId(),fightResult[index]); value.setAttribute(attribute); - RedisUtil.getInstence().putMapEntry(RedisKey.FAMILY_FIGHT,String.valueOf(defendGuildId),String.valueOf(userDefend.getId()),attribute); index++; } + defendInfo.setHeroAttribute(heroAttribute); + if(fightResult[0]==0){ + defendInfo.setStarCount(defendInfo.getStarCount()-1); + } + RedisUtil.getInstence().putMapEntry(RedisKey.FAMILY_FIGHT,String.valueOf(defendGuildId),String.valueOf(userDefend.getId()),defendInfo); } } From 29c22526b5cd5b823732dfe9943febb2007ba7d7 Mon Sep 17 00:00:00 2001 From: lvxinran Date: Mon, 12 Aug 2019 16:06:06 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0RedisKey?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/ljsd/jieling/db/redis/RedisKey.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/db/redis/RedisKey.java b/serverlogic/src/main/java/com/ljsd/jieling/db/redis/RedisKey.java index 226c93625..110369de8 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/db/redis/RedisKey.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/db/redis/RedisKey.java @@ -114,6 +114,8 @@ public class RedisKey { public static final String FAMILY_ID = "FAMILY_ID"; public static final String FAMILY_FIGHT = "FAMILY_FIGHT" ; + public static final String FAMILY_FIGHT_RANK = "FAMILY_FIGHT_RANK"; + public static final String OPERATE_FAMILY = "OPERATE_FAMILY"; public static final String OPERATE_FAMILY_APPLY = "OPERATE_FAMILY_APPLY"; public static final String OPERATE_FAMILY_APPLY_JOIN = "OPERATE_FAMILY_APPLY_JOIN"; From e27985bab6ef89a91127262c8a9c263137dd4701 Mon Sep 17 00:00:00 2001 From: lvxinran Date: Mon, 12 Aug 2019 17:23:38 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E5=8A=9F=E7=BB=A917=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FinishOptionsDifficultMapProcessor.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/missionProcessor/FinishOptionsDifficultMapProcessor.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/missionProcessor/FinishOptionsDifficultMapProcessor.java index 132292c25..c8f072528 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/missionProcessor/FinishOptionsDifficultMapProcessor.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/missionProcessor/FinishOptionsDifficultMapProcessor.java @@ -12,13 +12,15 @@ public class FinishOptionsDifficultMapProcessor implements BaseMissionProcesor{ public int checkAndUpdateMissionProcessor(User user, SAccomplishmentConfig sAccomplishmentConfig, int eventId, int time, MapMissionType mapMissionType,int missionValue) { MapManager mapManager = user.getMapManager(); SChallengeConfig sChallengeConfig = SChallengeConfig.sChallengeConfigs.get(mapManager.getCurMapId()); - if(sChallengeConfig.getDifficultType()!=sAccomplishmentConfig.getValues()[sAccomplishmentConfig.getValues().length-1][0]){ + int[][] configValues = sAccomplishmentConfig.getValues(); + + if(configValues[configValues.length-1][0]!=0&&sChallengeConfig.getDifficultType()!= configValues[configValues.length-1][0]){ return GlobalsDef.MAP_MISSION_RETURN; } if(missionValue==-1){ return GlobalsDef.MAP_MISSION_RETURN; } - int[][] value = sAccomplishmentConfig.getValues(); + int[][] value = configValues; missionValue = 0-missionValue; for(int i = 0 ; i Date: Mon, 12 Aug 2019 17:31:49 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=E5=85=AC=E4=BC=9A=E6=88=98=E6=9F=A5?= =?UTF-8?q?=E7=9C=8B=E5=AF=B9=E6=88=98=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../family/FamilyFightInfoHandler.java | 21 ++++++++ .../ljsd/jieling/logic/family/GuildLogic.java | 48 +++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 serverlogic/src/main/java/com/ljsd/jieling/handler/family/FamilyFightInfoHandler.java diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/family/FamilyFightInfoHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/family/FamilyFightInfoHandler.java new file mode 100644 index 000000000..90ba47b6a --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/family/FamilyFightInfoHandler.java @@ -0,0 +1,21 @@ +package com.ljsd.jieling.handler.family; + +import com.ljsd.jieling.handler.BaseHandler; +import com.ljsd.jieling.logic.family.GuildLogic; +import com.ljsd.jieling.netty.cocdex.PacketNetData; +import com.ljsd.jieling.network.session.ISession; +import com.ljsd.jieling.protocols.MessageTypeProto; +import org.springframework.stereotype.Component; + +@Component +public class FamilyFightInfoHandler extends BaseHandler { + @Override + public MessageTypeProto.MessageType getMessageCode() { + return MessageTypeProto.MessageType.FAMILY_FIGHT_INFO_REQUEST; + } + + @Override + public void process(ISession iSession, PacketNetData netData) throws Exception { + GuildLogic.viewFightInfo(iSession, MessageTypeProto.MessageType.FAMILY_FIGHT_INFO_RESPONSE); + } +} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java index b69fc0036..289fa8965 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java @@ -854,6 +854,54 @@ public class GuildLogic { } } + /** + * 公会战查看双方对战信息 + * @param session + * @param messageType + * @throws Exception + */ + public static void viewFightInfo(ISession session, MessageTypeProto.MessageType messageType) throws Exception { + User user = UserManager.getUser(session.getUid()); + int guildId = user.getPlayerInfoManager().getGuildId(); + int enemyId = 13; + if(guildId==13){ + enemyId = 14; + } + Family.FamilyFightInfoResponse.Builder builder = Family.FamilyFightInfoResponse.newBuilder(); + builder.addInfo(familyFightDetailInfo(guildId)); + builder.addInfo(familyFightDetailInfo(enemyId)); + MessageUtil.sendMessage(session,1,messageType.getNumber(),builder.build(),true); + + } + private static Family.FamilyFightInfo familyFightDetailInfo(int guildId) throws Exception { + GuildInfo guildInfo = GuilidManager.guildInfoMap.get(guildId); + Map defendInfo = guildInfo.getDefendInfo(); + Family.FamilyFightInfo.Builder fightInfo = Family.FamilyFightInfo.newBuilder(); + fightInfo.setGid(guildId); + for(int i = 0 ; i <3 ;i ++){ + Family.FamilyBuildBuffInfo.Builder buffInfo = Family.FamilyBuildBuffInfo.newBuilder(); + buffInfo.setBuildId(i+1); + buffInfo.setBuffId(i+1); + fightInfo.addBuildBuff(buffInfo); + } + for(Map.Entry entry:defendInfo.entrySet()){ + Family.FamilyFightPlayerInfo.Builder playerInfo = Family.FamilyFightPlayerInfo.newBuilder(); + playerInfo.setBuildId(entry.getValue()); + playerInfo.setBuildId(5); + PlayerManager playerManager = UserManager.getUser(entry.getKey()).getPlayerInfoManager(); + Family.FamilyUserInfo.Builder userInfo =Family.FamilyUserInfo.newBuilder() + .setRoleUid(entry.getKey()) + .setUserName(playerManager.getNickName()) + .setUserLevel(playerManager.getLevel()) + .setPosition(2) + .setSoulForce(HeroLogic.getInstance().calTeamTotalForce(UserManager.getUser(entry.getKey()),501,false)) + .setHead(playerManager.getHead()) + .setFrame(playerManager.getHeadFrame()); + playerInfo.setUserInfo(userInfo); + fightInfo.addUser(playerInfo); + } + return fightInfo.build(); + } /** * 公会战计入缓存 * @throws Exception From f46031890af46c5600aa90f742ed17e6cd9a6beb Mon Sep 17 00:00:00 2001 From: lvxinran Date: Mon, 12 Aug 2019 17:32:06 +0800 Subject: [PATCH 7/7] =?UTF-8?q?=E4=B8=8A=E4=B8=AA=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ljsd/jieling/logic/family/GuildLogic.java | 39 +++++++++---------- 1 file changed, 19 insertions(+), 20 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java index 289fa8965..ba12cbf50 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java @@ -853,26 +853,6 @@ public class GuildLogic { } } } - - /** - * 公会战查看双方对战信息 - * @param session - * @param messageType - * @throws Exception - */ - public static void viewFightInfo(ISession session, MessageTypeProto.MessageType messageType) throws Exception { - User user = UserManager.getUser(session.getUid()); - int guildId = user.getPlayerInfoManager().getGuildId(); - int enemyId = 13; - if(guildId==13){ - enemyId = 14; - } - Family.FamilyFightInfoResponse.Builder builder = Family.FamilyFightInfoResponse.newBuilder(); - builder.addInfo(familyFightDetailInfo(guildId)); - builder.addInfo(familyFightDetailInfo(enemyId)); - MessageUtil.sendMessage(session,1,messageType.getNumber(),builder.build(),true); - - } private static Family.FamilyFightInfo familyFightDetailInfo(int guildId) throws Exception { GuildInfo guildInfo = GuilidManager.guildInfoMap.get(guildId); Map defendInfo = guildInfo.getDefendInfo(); @@ -902,6 +882,25 @@ public class GuildLogic { } return fightInfo.build(); } + /** + * 公会战查看双方对战信息 + * @param session + * @param messageType + * @throws Exception + */ + public static void viewFightInfo(ISession session, MessageTypeProto.MessageType messageType) throws Exception { + User user = UserManager.getUser(session.getUid()); + int guildId = user.getPlayerInfoManager().getGuildId(); + int enemyId = 13; + if(guildId==13){ + enemyId = 14; + } + Family.FamilyFightInfoResponse.Builder builder = Family.FamilyFightInfoResponse.newBuilder(); + builder.addInfo(familyFightDetailInfo(guildId)); + builder.addInfo(familyFightDetailInfo(enemyId)); + MessageUtil.sendMessage(session,1,messageType.getNumber(),builder.build(),true); + + } /** * 公会战计入缓存 * @throws Exception