Alchemy.java 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. package com.gmail.nossr50.skills.alchemy;
  2. import com.gmail.nossr50.datatypes.skills.SubSkillType;
  3. import com.gmail.nossr50.mcMMO;
  4. import com.gmail.nossr50.runnables.skills.AlchemyBrewTask;
  5. import com.gmail.nossr50.util.skills.RankUtils;
  6. import org.bukkit.Location;
  7. import java.util.ArrayList;
  8. import java.util.HashMap;
  9. import java.util.List;
  10. import java.util.Map;
  11. public final class Alchemy {
  12. /*public enum Tier {
  13. EIGHT(8),
  14. SEVEN(7),
  15. SIX(6),
  16. FIVE(5),
  17. FOUR(4),
  18. THREE(3),
  19. TWO(2),
  20. ONE(1);
  21. int numerical;
  22. private Tier(int numerical) {
  23. this.numerical = numerical;
  24. }
  25. public int toNumerical() {
  26. return numerical;
  27. }
  28. public static Tier fromNumerical(int numerical) {
  29. for (Tier tier : Tier.values()) {
  30. if (tier.toNumerical() == numerical) {
  31. return tier;
  32. }
  33. }
  34. return null;
  35. }
  36. protected int getLevel() {
  37. return AdvancedConfig.getInstance().getConcoctionsTierLevel(this);
  38. }
  39. }*/
  40. public static final int INGREDIENT_SLOT = 3;
  41. public static int catalysisUnlockLevel = RankUtils.getUnlockLevel(SubSkillType.ALCHEMY_CATALYSIS);
  42. public static int catalysisMaxBonusLevel = AdvancedConfig.getInstance().getCatalysisMaxBonusLevel();
  43. public static double catalysisMinSpeed = AdvancedConfig.getInstance().getCatalysisMinSpeed();
  44. public static double catalysisMaxSpeed = AdvancedConfig.getInstance().getCatalysisMaxSpeed();
  45. public static Map<Location, AlchemyBrewTask> brewingStandMap = new HashMap<Location, AlchemyBrewTask>();
  46. private Alchemy() {}
  47. /**
  48. * Finish all active brews. Used upon Disable to prevent vanilla potions from being brewed upon next Enable.
  49. */
  50. public static void finishAllBrews() {
  51. mcMMO.p.debug("Completing " + brewingStandMap.size() + " unfinished Alchemy brews.");
  52. List<AlchemyBrewTask> toFinish = new ArrayList<AlchemyBrewTask>();
  53. toFinish.addAll(brewingStandMap.values());
  54. for (AlchemyBrewTask alchemyBrewTask : toFinish) {
  55. alchemyBrewTask.finishImmediately();
  56. }
  57. }
  58. }