From 30c61f868fd87e85869209b9e20da365507763cf Mon Sep 17 00:00:00 2001 From: wangyuan Date: Tue, 22 Oct 2019 10:38:32 +0800 Subject: [PATCH 1/2] just one hero in team when init user --- .../main/java/com/ljsd/jieling/logic/dao/UserManager.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/UserManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/UserManager.java index 1206a4aea..5126b92c2 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/UserManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/UserManager.java @@ -17,6 +17,8 @@ import config.SPlayerLevelConfig; import manager.STableManager; import util.TimeUtils; +import java.util.ArrayList; +import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; @@ -83,7 +85,9 @@ public class UserManager { HeroManager heroManager = user.getHeroManager(); Map heroMap = heroManager.getHeroMap(); TeamPosManager teamPosManager = user.getTeamPosManager(); - teamPosManager.addTeamOfInitPlayer(heroMap.values()); + List teamHeros = new ArrayList<>(1); + teamHeros.add(heroMap.values().iterator().next()); + teamPosManager.addTeamOfInitPlayer(teamHeros); int force = HeroLogic.getInstance().calTeamTotalForce(user, 1, true); playerManager.setMaxForce(force); PlayerLogic.getInstance().vipflushEveryDay(user,null); From 8a761ab982839f078db280648fe6ebdef8b3d62d Mon Sep 17 00:00:00 2001 From: lvxinran Date: Tue, 22 Oct 2019 21:45:06 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=85=AC=E4=BC=9A=E6=88=98=E6=9D=A1?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/logic/family/GuildFightLogic.java | 36 ++++++++++--------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildFightLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildFightLogic.java index ccc62adee..4287f30e7 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildFightLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildFightLogic.java @@ -354,15 +354,15 @@ public class GuildFightLogic { RedisUtil redisUtil = RedisUtil.getInstence(); Set guildIds = GuilidManager.guildInfoMap.keySet(); for (Integer gid : guildIds) { - GuildInfo guildInfo = GuilidManager.guildInfoMap.get(gid); - int enemyFamily = getEnemyFamily(guildInfo.getId()); + int enemyFamily = getEnemyFamily(gid); if (enemyFamily == -1) { continue; } + GuildInfo guildInfo = GuilidManager.guildInfoMap.get(gid); GuildCache enemyInfo = RedisUtil.getInstence().getMapEntry(RedisKey.FAMILY_INFO, "", String.valueOf(enemyFamily), GuildCache.class); // GuildInfo enemyInfo = GuilidManager.guildInfoMap.get(enemyFamily); Family.EnemyFamily familyInfo = Family.EnemyFamily.newBuilder().setId(enemyFamily) - .setLevel(enemyInfo.getLevel()) + .setLevel(enemyInfo.getLevel()) .setName(enemyInfo.getName()) .setPictureId(enemyInfo.getIcon()) .setTotalStar(redisUtil.getMapEntry(RedisKey.FAMILY_FIGHT_TOTAL_STAR,"",String.valueOf(enemyFamily),Integer.class)) @@ -562,12 +562,12 @@ public class GuildFightLogic { .setRoundEndTime(roundEndTime) .setAttackCount(attackCount) .setJoinType(1); - if(guildId==0){ - response.setType(-1); - response.setRoundEndTime((int) (TimeUtils.getAppointTime(sGuildSetting.getSettleTime()[1][0], sGuildSetting.getSettleTime()[1][1]) / 1000)); - MessageUtil.sendMessage(session, 1, messageType.getNumber(), response.build(), true); - return; - } +// if(guildId==0){ +// response.setType(-1); +// response.setRoundEndTime((int) (TimeUtils.getAppointTime(sGuildSetting.getSettleTime()[1][0], sGuildSetting.getSettleTime()[1][1]) / 1000)); +// MessageUtil.sendMessage(session, 1, messageType.getNumber(), response.build(), true); +// return; +// } if (enemyFamily != -1) { GuildCache enemyInfo = RedisUtil.getInstence().getMapEntry(RedisKey.FAMILY_INFO, "", String.valueOf(enemyFamily), GuildCache.class); // GuildInfo guildInfo = GuilidManager.guildInfoMap.get(enemyFamily); @@ -583,19 +583,21 @@ public class GuildFightLogic { response.setEnemy(familyInfo); } }else{ - if(status!=0&&status!=1){ - if(!startMatching){ + if(status!=0){ + if(!startMatching&&status!=1){ response.setType(-1); response.setRoundEndTime((int) (TimeUtils.getAppointTime(sGuildSetting.getSettleTime()[1][0], sGuildSetting.getSettleTime()[1][1]) / 1000)); } + //todo 人数限制 + if(guildId!=0){ + Map configMap = STableManager.getConfig(SGuildLevelConfig.class); + if(GuilidManager.guildInfoMap.get(guildId).getDefendInfo().size() configMap = STableManager.getConfig(SGuildLevelConfig.class); - if(GuilidManager.guildInfoMap.get(guildId).getDefendInfo().size()roundStartTime&&createTime/1000