mirror of
https://gitlab.com/phoenix-dvpmt/mmocore.git
synced 2024-11-23 00:05:52 +01:00
Add skill trees in class config
This commit is contained in:
parent
0e1772d6d6
commit
60859fa503
@ -33,6 +33,7 @@ import net.Indyuce.mmocore.skill.RegisteredSkill;
|
|||||||
import net.Indyuce.mmocore.skill.cast.KeyCombo;
|
import net.Indyuce.mmocore.skill.cast.KeyCombo;
|
||||||
import net.Indyuce.mmocore.skill.cast.PlayerKey;
|
import net.Indyuce.mmocore.skill.cast.PlayerKey;
|
||||||
import net.Indyuce.mmocore.experience.ExperienceObject;
|
import net.Indyuce.mmocore.experience.ExperienceObject;
|
||||||
|
import net.Indyuce.mmocore.tree.skilltree.SkillTree;
|
||||||
import net.md_5.bungee.api.ChatColor;
|
import net.md_5.bungee.api.ChatColor;
|
||||||
import org.apache.commons.lang.Validate;
|
import org.apache.commons.lang.Validate;
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
@ -55,7 +56,6 @@ public class PlayerClass extends PostLoadObject implements ExperienceObject {
|
|||||||
private final ItemStack icon;
|
private final ItemStack icon;
|
||||||
private final Map<ClassOption, Boolean> options = new HashMap<>();
|
private final Map<ClassOption, Boolean> options = new HashMap<>();
|
||||||
private final int maxLevel, displayOrder;
|
private final int maxLevel, displayOrder;
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
private final ManaDisplayOptions manaDisplay;
|
private final ManaDisplayOptions manaDisplay;
|
||||||
|
|
||||||
@ -69,6 +69,8 @@ public class PlayerClass extends PostLoadObject implements ExperienceObject {
|
|||||||
private final CastingParticle castParticle;
|
private final CastingParticle castParticle;
|
||||||
|
|
||||||
private final int maxBoundActiveSkills, maxBoundPassiveSkills;
|
private final int maxBoundActiveSkills, maxBoundPassiveSkills;
|
||||||
|
|
||||||
|
private final List<SkillTree> skillTrees = new ArrayList<>();
|
||||||
private final List<PassiveSkill> classScripts = new LinkedList();
|
private final List<PassiveSkill> classScripts = new LinkedList();
|
||||||
private final Map<String, LinearValue> stats = new HashMap<>();
|
private final Map<String, LinearValue> stats = new HashMap<>();
|
||||||
private final Map<String, ClassSkill> skills = new LinkedHashMap<>();
|
private final Map<String, ClassSkill> skills = new LinkedHashMap<>();
|
||||||
@ -77,7 +79,7 @@ public class PlayerClass extends PostLoadObject implements ExperienceObject {
|
|||||||
// If the class redefines its own key combos.
|
// If the class redefines its own key combos.
|
||||||
private final Map<KeyCombo, Integer> combos = new HashMap<>();
|
private final Map<KeyCombo, Integer> combos = new HashMap<>();
|
||||||
|
|
||||||
private final Set<PlayerKey> firstComboKeys= new HashSet<>();
|
private final Set<PlayerKey> firstComboKeys = new HashSet<>();
|
||||||
|
|
||||||
|
|
||||||
private int longestCombo;
|
private int longestCombo;
|
||||||
@ -133,6 +135,8 @@ public class PlayerClass extends PostLoadObject implements ExperienceObject {
|
|||||||
MMOCore.plugin.getLogger().log(Level.WARNING, "Could not load exp table from class '" + id + "': " + exception.getMessage());
|
MMOCore.plugin.getLogger().log(Level.WARNING, "Could not load exp table from class '" + id + "': " + exception.getMessage());
|
||||||
}
|
}
|
||||||
this.expTable = expTable;
|
this.expTable = expTable;
|
||||||
|
if (config.contains("skill-trees"))
|
||||||
|
config.getStringList("skill-trees").forEach(str-> skillTrees.add(MMOCore.plugin.skillTreeManager.get(str)));
|
||||||
|
|
||||||
if (config.contains("scripts"))
|
if (config.contains("scripts"))
|
||||||
for (String key : config.getConfigurationSection("scripts").getKeys(false))
|
for (String key : config.getConfigurationSection("scripts").getKeys(false))
|
||||||
@ -260,7 +264,7 @@ public class PlayerClass extends PostLoadObject implements ExperienceObject {
|
|||||||
setOption(ClassOption.DISPLAY, false);
|
setOption(ClassOption.DISPLAY, false);
|
||||||
setOption(ClassOption.DEFAULT, false);
|
setOption(ClassOption.DEFAULT, false);
|
||||||
maxBoundActiveSkills = 6;
|
maxBoundActiveSkills = 6;
|
||||||
maxBoundPassiveSkills=3;
|
maxBoundPassiveSkills = 3;
|
||||||
for (PlayerResource resource : PlayerResource.values())
|
for (PlayerResource resource : PlayerResource.values())
|
||||||
resourceHandlers.put(resource, new ResourceRegeneration(resource));
|
resourceHandlers.put(resource, new ResourceRegeneration(resource));
|
||||||
}
|
}
|
||||||
@ -319,6 +323,7 @@ public class PlayerClass extends PostLoadObject implements ExperienceObject {
|
|||||||
public int getMaxBoundActiveSkills() {
|
public int getMaxBoundActiveSkills() {
|
||||||
return maxBoundActiveSkills;
|
return maxBoundActiveSkills;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getMaxBoundPassiveSkills() {
|
public int getMaxBoundPassiveSkills() {
|
||||||
return maxBoundPassiveSkills;
|
return maxBoundPassiveSkills;
|
||||||
}
|
}
|
||||||
@ -429,6 +434,10 @@ public class PlayerClass extends PostLoadObject implements ExperienceObject {
|
|||||||
return skills.containsKey(id);
|
return skills.containsKey(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<SkillTree> getSkillTrees() {
|
||||||
|
return skillTrees;
|
||||||
|
}
|
||||||
|
|
||||||
public ClassSkill getSkill(RegisteredSkill skill) {
|
public ClassSkill getSkill(RegisteredSkill skill) {
|
||||||
return getSkill(skill.getHandler().getId());
|
return getSkill(skill.getHandler().getId());
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user