PrimarySkillType refactor and other refactors

This commit is contained in:
nossr50
2021-04-08 13:21:34 -07:00
parent 5080d86e44
commit eec5feb2bf
59 changed files with 1204 additions and 796 deletions

View File

@@ -72,7 +72,7 @@ public class AcrobaticsManager extends SkillManager {
return false;
}
return skill.shouldProcess(damager);
return mcMMO.p.getSkillTools().canCombatSkillsTrigger(skill, damager);
}
return false;

View File

@@ -48,7 +48,6 @@ public final class Alchemy {
public static final int INGREDIENT_SLOT = 3;
public static int catalysisUnlockLevel = RankUtils.getUnlockLevel(SubSkillType.ALCHEMY_CATALYSIS);
public static int catalysisMaxBonusLevel = mcMMO.p.getAdvancedConfig().getCatalysisMaxBonusLevel();
public static double catalysisMinSpeed = mcMMO.p.getAdvancedConfig().getCatalysisMinSpeed();
public static double catalysisMaxSpeed = mcMMO.p.getAdvancedConfig().getCatalysisMaxSpeed();

View File

@@ -45,11 +45,11 @@ public class AlchemyManager extends SkillManager {
public double calculateBrewSpeed(boolean isLucky) {
int skillLevel = getSkillLevel();
if (skillLevel < Alchemy.catalysisUnlockLevel) {
if (skillLevel < RankUtils.getUnlockLevel(SubSkillType.ALCHEMY_CATALYSIS)) {
return Alchemy.catalysisMinSpeed;
}
return Math.min(Alchemy.catalysisMaxSpeed, Alchemy.catalysisMinSpeed + (Alchemy.catalysisMaxSpeed - Alchemy.catalysisMinSpeed) * (skillLevel - Alchemy.catalysisUnlockLevel) / (Alchemy.catalysisMaxBonusLevel - Alchemy.catalysisUnlockLevel)) * (isLucky ? LUCKY_MODIFIER : 1.0);
return Math.min(Alchemy.catalysisMaxSpeed, Alchemy.catalysisMinSpeed + (Alchemy.catalysisMaxSpeed - Alchemy.catalysisMinSpeed) * (skillLevel - RankUtils.getUnlockLevel(SubSkillType.ALCHEMY_CATALYSIS)) / (Alchemy.catalysisMaxBonusLevel - RankUtils.getUnlockLevel(SubSkillType.ALCHEMY_CATALYSIS))) * (isLucky ? LUCKY_MODIFIER : 1.0);
}
public void handlePotionBrewSuccesses(PotionStage potionStage, int amount) {

View File

@@ -2,6 +2,7 @@ package com.gmail.nossr50.skills.child;
import com.gmail.nossr50.config.AutoUpdateConfigLoader;
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
import com.gmail.nossr50.mcMMO;
import com.gmail.nossr50.util.text.StringUtils;
import org.bukkit.configuration.file.YamlConfiguration;
@@ -20,7 +21,7 @@ public class ChildConfig extends AutoUpdateConfigLoader {
FamilyTree.clearRegistrations(); // when reloading, need to clear statics
for (PrimarySkillType skill : PrimarySkillType.CHILD_SKILLS) {
for (PrimarySkillType skill : mcMMO.p.getSkillTools().CHILD_SKILLS) {
plugin.debug("Finding parents of " + skill.name());
EnumSet<PrimarySkillType> parentSkills = EnumSet.noneOf(PrimarySkillType.class);

View File

@@ -1,6 +1,7 @@
package com.gmail.nossr50.skills.child;
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
import com.gmail.nossr50.mcMMO;
import java.util.Collections;
import java.util.EnumSet;
@@ -40,13 +41,13 @@ public class FamilyTree {
}
protected static void enforceChildSkill(PrimarySkillType skill) {
if (!skill.isChildSkill()) {
if (!mcMMO.p.getSkillTools().isChildSkill(skill)) {
throw new IllegalArgumentException(skill.name() + " is not a child skill!");
}
}
protected static void enforceNotChildSkill(PrimarySkillType skill) {
if (skill.isChildSkill()) {
if (mcMMO.p.getSkillTools().isChildSkill(skill)) {
throw new IllegalArgumentException(skill.name() + " is a child skill!");
}
}

View File

@@ -80,7 +80,7 @@ public class MiningManager extends SkillManager {
return;
}
if (mmoPlayer.getAbilityMode(skill.getAbility())) {
if (mmoPlayer.getAbilityMode(mcMMO.p.getSkillTools().getSuperAbility(skill))) {
SkillUtils.handleDurabilityChange(getPlayer().getInventory().getItemInMainHand(), mcMMO.p.getGeneralConfig().getAbilityToolDamage());
}
@@ -94,7 +94,7 @@ public class MiningManager extends SkillManager {
//TODO: Make this readable
if (RandomChanceUtil.checkRandomChanceExecutionSuccess(getPlayer(), SubSkillType.MINING_DOUBLE_DROPS, true)) {
boolean useTriple = mmoPlayer.getAbilityMode(skill.getAbility()) && mcMMO.p.getAdvancedConfig().getAllowMiningTripleDrops();
boolean useTriple = mmoPlayer.getAbilityMode(mcMMO.p.getSkillTools().getSuperAbility(skill)) && mcMMO.p.getAdvancedConfig().getAllowMiningTripleDrops();
BlockUtils.markDropsAsBonus(blockState, useTriple);
}
}