miduo_server/tablemanager/src/main/java/config/SMainLevelConfig.java

134 lines
3.1 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package config;
import manager.STableManager;
import manager.Table;
import java.util.HashMap;
import java.util.Map;
@Table(name ="MainLevelConfig")
public class SMainLevelConfig implements BaseConfig {
private int id;
private int nextLevel;
private int levelLimit;
private int monsterGroup;
private int[] reward;
private int[] randomRewardMin;
private int[] randomReward;
private int recommendFightAbility;
private int rankTime;
private int[][] invasionBoss;
private int[][] invasionBossReward;
private int invasionBossTime;
private int invasionBossRefresh;
private int invasionBossHolding;
private int difficulty;
private int virtureId; //虚拟id关卡是自增的。
public static Map<Integer, SMainLevelConfig> config;
public static Map<Integer, SMainLevelConfig> sMainLevelConfigByVirtureIdMap;
public static Map<Integer,SMainLevelConfig> fightPreMap;
@Override
public void init() throws Exception {
Map<Integer, SMainLevelConfig> configTmp = STableManager.getConfig(SMainLevelConfig.class);
Map<Integer, SMainLevelConfig> SMainLevelConfigByVirtureIdMapTmp =new HashMap<>();
Map<Integer, SMainLevelConfig> fightPreMapTmp =new HashMap<>();
for(SMainLevelConfig sMainLevelConfig : configTmp.values()){
int id = sMainLevelConfig.getId();
sMainLevelConfig.setVirtureId(10_000_000*(id%10) + id);
SMainLevelConfigByVirtureIdMapTmp.put(sMainLevelConfig.getVirtureId(),sMainLevelConfig);
fightPreMapTmp.put(sMainLevelConfig.getNextLevel(),sMainLevelConfig);
}
config=configTmp;
sMainLevelConfigByVirtureIdMap=SMainLevelConfigByVirtureIdMapTmp;
fightPreMap=fightPreMapTmp;
}
public static boolean biggerThanFight(int soureFight,int targetFight){
if(targetFight==0){return true;}
SMainLevelConfig mineLevelConfig = SMainLevelConfig.config.get(soureFight);
SMainLevelConfig otherLevelConfig = SMainLevelConfig.config.get(targetFight);
return mineLevelConfig.getVirtureId()>=otherLevelConfig.getVirtureId();
}
public int getId() {
return id;
}
public int getLevelLimit() {
return levelLimit;
}
public int getMonsterGroup() {
return monsterGroup;
}
public int[] getReward() {
return reward;
}
public int[] getRandomRewardMin() {
return randomRewardMin;
}
public int[] getRandomReward() {
return randomReward;
}
public int getRankTime() {
return rankTime;
}
public int[][] getInvasionBoss() {
return invasionBoss;
}
public int[][] getInvasionBossReward() {
return invasionBossReward;
}
public int getInvasionBossTime() {
return invasionBossTime;
}
public int getInvasionBossHolding() {
return invasionBossHolding;
}
public int getNextLevel() {
return nextLevel;
}
public int getDifficulty() {
return difficulty;
}
public int getVirtureId() {
return virtureId;
}
public void setVirtureId(int virtureId) {
this.virtureId = virtureId;
}
}