From fe4f9c64e594cd7878395e8d0360c0cb7d3f93da Mon Sep 17 00:00:00 2001 From: wangyuan Date: Wed, 15 Jan 2020 10:23:18 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E4=BC=9Aboss=E5=A5=96=E5=8A=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/config/SGuildBossRewardConfig.java | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/tablemanager/src/main/java/config/SGuildBossRewardConfig.java b/tablemanager/src/main/java/config/SGuildBossRewardConfig.java index 45b755af9..08f71b8d2 100644 --- a/tablemanager/src/main/java/config/SGuildBossRewardConfig.java +++ b/tablemanager/src/main/java/config/SGuildBossRewardConfig.java @@ -17,12 +17,39 @@ public class SGuildBossRewardConfig implements BaseConfig { private int[][] randomReward; + private int[][][] randomRewardAllGroup; + + private static TreeMap sGuildBossHurtRewardConfig; @Override public void init() throws Exception { Map config = STableManager.getConfig(SGuildBossRewardConfig.class); + for(SGuildBossRewardConfig sGuildBossRewardConfig : config.values()){ + int[] reward = sGuildBossRewardConfig.getReward(); + int prelength=0; + int[] preReward=null; + int[][][] randomRewardAllGroupTmpPre=null; + if(sGuildBossRewardConfig.getId()!=1){ + SGuildBossRewardConfig sGuildBossRewardConfigPre = config.get(sGuildBossRewardConfig.getId() - 1); + preReward=sGuildBossRewardConfigPre.getReward(); + randomRewardAllGroupTmpPre=sGuildBossRewardConfigPre.getRandomRewardAllGroup(); + prelength = preReward.length; + } + int rewardFinl[] = new int[reward.length+prelength]; + System.arraycopy(reward,0,rewardFinl,0,reward.length); + sGuildBossRewardConfig.setReward(rewardFinl); + int[][][] randomRewardAllGroupTmp = new int[sGuildBossRewardConfig.getId()][][]; + randomRewardAllGroupTmp[0] =sGuildBossRewardConfig.getRandomReward(); + if(prelength>0){ + System.arraycopy(preReward,0,rewardFinl,reward.length,preReward.length); + System.arraycopy(randomRewardAllGroupTmpPre,0,randomRewardAllGroupTmp,1,preReward.length); + } + sGuildBossRewardConfig.setRandomRewardAllGroup(randomRewardAllGroupTmp); + + + } TreeMap sGuildBossHurtRewardConfigTmp = new TreeMap<>(); config.values().forEach(item ->sGuildBossHurtRewardConfigTmp.put(item.getDamage(),item)); sGuildBossHurtRewardConfig = sGuildBossHurtRewardConfigTmp; @@ -48,4 +75,20 @@ public class SGuildBossRewardConfig implements BaseConfig { public int[][] getRandomReward() { return randomReward; } + + public void setReward(int[] reward) { + this.reward = reward; + } + + public void setRandomReward(int[][] randomReward) { + this.randomReward = randomReward; + } + + public int[][][] getRandomRewardAllGroup() { + return randomRewardAllGroup; + } + + public void setRandomRewardAllGroup(int[][][] randomRewardAllGroup) { + this.randomRewardAllGroup = randomRewardAllGroup; + } } \ No newline at end of file