mirror of
https://github.com/StarWishsama/Slimefun4.git
synced 2024-09-20 03:35:51 +00:00
@poma123 for the rescue
This commit is contained in:
parent
655b429f0d
commit
b32dc0b727
@ -50,7 +50,7 @@ public enum MinecraftVersion {
|
||||
*/
|
||||
UNIT_TEST("Unit Test Environment");
|
||||
|
||||
public static final MinecraftVersion[] values = values();
|
||||
public static final MinecraftVersion[] valuesCache = values();
|
||||
|
||||
private final String name;
|
||||
private final String prefix;
|
||||
|
@ -28,13 +28,14 @@ import io.github.thebusybiscuit.slimefun4.implementation.listeners.BackpackListe
|
||||
*/
|
||||
public class PlayerBackpack {
|
||||
|
||||
private static final String CONFIG_PREFIX = "backpacks.";
|
||||
|
||||
private final PlayerProfile profile;
|
||||
private final int id;
|
||||
private final Config cfg;
|
||||
|
||||
private Inventory inventory;
|
||||
private int size;
|
||||
private static final String CONFIG_PREFIX = "backpacks.";
|
||||
|
||||
/**
|
||||
* This constructor loads an existing Backpack
|
||||
|
@ -31,6 +31,6 @@ public enum SlimefunGuideLayout {
|
||||
*/
|
||||
CHEAT_SHEET;
|
||||
|
||||
public static final SlimefunGuideLayout[] values = values();
|
||||
public static final SlimefunGuideLayout[] valuesCache = values();
|
||||
|
||||
}
|
||||
|
@ -101,7 +101,7 @@ class GuideLayoutOption implements SlimefunGuideOption<SlimefunGuideLayout> {
|
||||
|
||||
@Override
|
||||
public Optional<SlimefunGuideLayout> getSelectedOption(Player p, ItemStack guide) {
|
||||
for (SlimefunGuideLayout layout : SlimefunGuideLayout.values) {
|
||||
for (SlimefunGuideLayout layout : SlimefunGuideLayout.valuesCache) {
|
||||
if (SlimefunUtils.isItemSimilar(guide, SlimefunGuide.getItem(layout), true, false)) {
|
||||
return Optional.of(layout);
|
||||
}
|
||||
|
@ -85,7 +85,7 @@ public abstract class SlimefunLocalization extends Localization implements Keyed
|
||||
protected abstract void addLanguage(@Nonnull String id, @Nonnull String texture);
|
||||
|
||||
protected void loadEmbeddedLanguages() {
|
||||
for (SupportedLanguage lang : SupportedLanguage.values) {
|
||||
for (SupportedLanguage lang : SupportedLanguage.valuesCache) {
|
||||
if (lang.isReadyForRelease() || SlimefunPlugin.getUpdater().getBranch() != SlimefunBranch.STABLE) {
|
||||
addLanguage(lang.getLanguageId(), lang.getTexture());
|
||||
}
|
||||
|
@ -58,7 +58,7 @@ enum SupportedLanguage {
|
||||
MACEDONIAN("mk", false, "a0e0b0b5d87a855466980a101a757bcdb5f77d9f7287889f3efa998ee0472fc0"),
|
||||
TAGALOG("tl", true, "9306c0c1ce6a9c61bb42a572c49e6d0ed20e0e6b3d122cc64c339cbf78e9e937");
|
||||
|
||||
public static final SupportedLanguage[] values = values();
|
||||
public static final SupportedLanguage[] valuesCache = values();
|
||||
|
||||
private final String id;
|
||||
private final boolean releaseReady;
|
||||
|
@ -31,7 +31,7 @@ public enum PerformanceRating implements Predicate<Float> {
|
||||
HURTFUL(ChatColor.DARK_RED, 500),
|
||||
BAD(ChatColor.DARK_RED, Float.MAX_VALUE);
|
||||
|
||||
public static final PerformanceRating[] values = values();
|
||||
public static final PerformanceRating[] valuesCache = values();
|
||||
|
||||
private final ChatColor color;
|
||||
private final float threshold;
|
||||
|
@ -297,7 +297,7 @@ public class SlimefunProfiler {
|
||||
public PerformanceRating getPerformance() {
|
||||
float percentage = getPercentageOfTick();
|
||||
|
||||
for (PerformanceRating rating : PerformanceRating.values) {
|
||||
for (PerformanceRating rating : PerformanceRating.valuesCache) {
|
||||
if (rating.test(percentage)) {
|
||||
return rating;
|
||||
}
|
||||
|
@ -318,7 +318,7 @@ public final class SlimefunPlugin extends JavaPlugin implements SlimefunAddon {
|
||||
String currentVersion = ReflectionUtils.getVersion();
|
||||
|
||||
if (currentVersion.startsWith("v")) {
|
||||
for (MinecraftVersion version : MinecraftVersion.values) {
|
||||
for (MinecraftVersion version : MinecraftVersion.valuesCache) {
|
||||
if (version.matches(currentVersion)) {
|
||||
minecraftVersion = version;
|
||||
return false;
|
||||
@ -345,7 +345,7 @@ public final class SlimefunPlugin extends JavaPlugin implements SlimefunAddon {
|
||||
private Collection<String> getSupportedVersions() {
|
||||
List<String> list = new ArrayList<>();
|
||||
|
||||
for (MinecraftVersion version : MinecraftVersion.values) {
|
||||
for (MinecraftVersion version : MinecraftVersion.valuesCache) {
|
||||
if (version != MinecraftVersion.UNKNOWN) {
|
||||
list.add(version.getName());
|
||||
}
|
||||
@ -498,7 +498,7 @@ public final class SlimefunPlugin extends JavaPlugin implements SlimefunAddon {
|
||||
}
|
||||
|
||||
private void loadTags() {
|
||||
for (SlimefunTag tag : SlimefunTag.values) {
|
||||
for (SlimefunTag tag : SlimefunTag.valuesCache) {
|
||||
try {
|
||||
tag.reload();
|
||||
}
|
||||
|
@ -146,10 +146,10 @@ enum Instruction {
|
||||
});
|
||||
|
||||
private static final Map<String, Instruction> nameLookup = new HashMap<>();
|
||||
public static final Instruction[] values = values();
|
||||
public static final Instruction[] valuesCache = values();
|
||||
|
||||
static {
|
||||
for (Instruction instruction : values) {
|
||||
for (Instruction instruction : valuesCache) {
|
||||
nameLookup.put(instruction.name(), instruction);
|
||||
}
|
||||
}
|
||||
|
@ -502,7 +502,7 @@ public class ProgrammableAndroid extends SlimefunItem implements InventoryBlock,
|
||||
protected List<Instruction> getValidScriptInstructions() {
|
||||
List<Instruction> list = new ArrayList<>();
|
||||
|
||||
for (Instruction part : Instruction.values) {
|
||||
for (Instruction part : Instruction.valuesCache) {
|
||||
if (part == Instruction.START || part == Instruction.REPEAT) {
|
||||
continue;
|
||||
}
|
||||
|
@ -109,7 +109,7 @@ public enum HeadTexture {
|
||||
IRON_GOLEM("89091d79ea0f59ef7ef94d7bba6e5f17f2f7d4572c44f90f76c4819a714"),
|
||||
PIGLIN_HEAD("2882af1294a74023e6919a31d1a027310f2e142afb4667d230d155e7f21dbb41");
|
||||
|
||||
public static final HeadTexture[] values = values();
|
||||
public static final HeadTexture[] valuesCache = values();
|
||||
|
||||
private final String texture;
|
||||
|
||||
@ -123,6 +123,7 @@ public enum HeadTexture {
|
||||
*
|
||||
* @return The associated texture hash
|
||||
*/
|
||||
@Nonnull
|
||||
public String getTexture() {
|
||||
return texture;
|
||||
}
|
||||
@ -132,6 +133,7 @@ public enum HeadTexture {
|
||||
*
|
||||
* @return A custom head {@link ItemStack}
|
||||
*/
|
||||
@Nonnull
|
||||
public ItemStack getAsItemStack() {
|
||||
return SlimefunUtils.getCustomHead(getTexture());
|
||||
}
|
||||
|
@ -177,10 +177,10 @@ public enum SlimefunTag implements Tag<Material> {
|
||||
CAVEMAN_TALISMAN_TRIGGERS;
|
||||
|
||||
private static final Map<String, SlimefunTag> nameLookup = new HashMap<>();
|
||||
public static final SlimefunTag[] values = values();
|
||||
public static final SlimefunTag[] valuesCache = values();
|
||||
|
||||
static {
|
||||
for (SlimefunTag tag : values) {
|
||||
for (SlimefunTag tag : valuesCache) {
|
||||
nameLookup.put(tag.name(), tag);
|
||||
}
|
||||
}
|
||||
@ -214,6 +214,12 @@ public enum SlimefunTag implements Tag<Material> {
|
||||
});
|
||||
}
|
||||
|
||||
public static void reloadAll() throws TagMisconfigurationException {
|
||||
for (SlimefunTag tag : valuesCache) {
|
||||
tag.reload();
|
||||
}
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
@Override
|
||||
public NamespacedKey getKey() {
|
||||
|
@ -55,15 +55,6 @@ class TestClimbingPick implements SlimefunItemTest<ClimbingPick> {
|
||||
|
||||
@Override
|
||||
public ClimbingPick registerSlimefunItem(SlimefunPlugin plugin, String id) {
|
||||
try {
|
||||
TestUtilities.registerDefaultTags(server);
|
||||
SlimefunTag.CLIMBING_PICK_WEAK_SURFACES.reload();
|
||||
SlimefunTag.CLIMBING_PICK_STRONG_SURFACES.reload();
|
||||
}
|
||||
catch (TagMisconfigurationException e) {
|
||||
Assertions.fail(e);
|
||||
}
|
||||
|
||||
SlimefunItemStack item = new SlimefunItemStack(id, Material.IRON_PICKAXE, "&5Test Pick", id);
|
||||
ClimbingPick pick = new ClimbingPick(TestUtilities.getCategory(plugin, "climbing_pick"), item, RecipeType.NULL, new ItemStack[9]) {
|
||||
|
||||
@ -93,7 +84,7 @@ class TestClimbingPick implements SlimefunItemTest<ClimbingPick> {
|
||||
|
||||
private static Stream<Arguments> getStrongSurfaces() throws TagMisconfigurationException {
|
||||
TestUtilities.registerDefaultTags(server);
|
||||
SlimefunTag.CLIMBING_PICK_STRONG_SURFACES.reload();
|
||||
SlimefunTag.reloadAll();
|
||||
return SlimefunTag.CLIMBING_PICK_STRONG_SURFACES.getValues().stream().map(Arguments::of);
|
||||
}
|
||||
|
||||
@ -111,7 +102,7 @@ class TestClimbingPick implements SlimefunItemTest<ClimbingPick> {
|
||||
|
||||
private static Stream<Arguments> getWeakSurfaces() throws TagMisconfigurationException {
|
||||
TestUtilities.registerDefaultTags(server);
|
||||
SlimefunTag.CLIMBING_PICK_WEAK_SURFACES.reload();
|
||||
SlimefunTag.reloadAll();
|
||||
return SlimefunTag.CLIMBING_PICK_WEAK_SURFACES.getValues().stream().map(Arguments::of);
|
||||
}
|
||||
|
||||
|
@ -55,10 +55,7 @@ class TestBackpackListener {
|
||||
server = MockBukkit.mock();
|
||||
TestUtilities.registerDefaultTags(server);
|
||||
plugin = MockBukkit.load(SlimefunPlugin.class);
|
||||
|
||||
for (SlimefunTag tag : SlimefunTag.values) {
|
||||
tag.reload();
|
||||
}
|
||||
SlimefunTag.reloadAll();
|
||||
|
||||
listener = new BackpackListener();
|
||||
listener.register(plugin);
|
||||
|
@ -46,9 +46,7 @@ class TestSlimefunTags {
|
||||
@Test
|
||||
@DisplayName("Test for infinite loops with Slimefun Tags")
|
||||
void testForInfiniteLoops() throws TagMisconfigurationException {
|
||||
for (SlimefunTag tag : SlimefunTag.values()) {
|
||||
tag.reload();
|
||||
}
|
||||
SlimefunTag.reloadAll();
|
||||
|
||||
for (SlimefunTag tag : SlimefunTag.values()) {
|
||||
assertNotCyclic(tag);
|
||||
@ -58,9 +56,7 @@ class TestSlimefunTags {
|
||||
@Test
|
||||
@DisplayName("Test SlimefunTag#isTagged()")
|
||||
void testIsTagged() throws TagMisconfigurationException {
|
||||
for (SlimefunTag tag : SlimefunTag.values()) {
|
||||
tag.reload();
|
||||
}
|
||||
SlimefunTag.reloadAll();
|
||||
|
||||
// Direct inclusion
|
||||
Assertions.assertTrue(SlimefunTag.SENSITIVE_MATERIALS.isTagged(Material.CAKE));
|
||||
@ -75,9 +71,7 @@ class TestSlimefunTags {
|
||||
@Test
|
||||
@DisplayName("Test SlimefunTag#toArray()")
|
||||
void testToArray() throws TagMisconfigurationException {
|
||||
for (SlimefunTag tag : SlimefunTag.values()) {
|
||||
tag.reload();
|
||||
}
|
||||
SlimefunTag.reloadAll();
|
||||
|
||||
for (SlimefunTag tag : SlimefunTag.values()) {
|
||||
Set<Material> values = tag.getValues();
|
||||
@ -88,9 +82,7 @@ class TestSlimefunTags {
|
||||
@Test
|
||||
@DisplayName("Test SlimefunTag#getValues()")
|
||||
void testGetValues() throws TagMisconfigurationException {
|
||||
for (SlimefunTag tag : SlimefunTag.values()) {
|
||||
tag.reload();
|
||||
}
|
||||
SlimefunTag.reloadAll();
|
||||
|
||||
for (SlimefunTag tag : SlimefunTag.values()) {
|
||||
Set<Material> values = tag.getValues();
|
||||
@ -119,8 +111,6 @@ class TestSlimefunTags {
|
||||
Assertions.assertEquals(SlimefunTag.SHULKER_BOXES, SlimefunTag.getTag("SHULKER_BOXES"));
|
||||
Assertions.assertNull(SlimefunTag.getTag("hello"));
|
||||
Assertions.assertThrows(IllegalArgumentException.class, () -> SlimefunTag.getTag(null));
|
||||
|
||||
Assertions.assertArrayEquals(SlimefunTag.values(), SlimefunTag.values);
|
||||
}
|
||||
|
||||
private void assertNotCyclic(@Nonnull SlimefunTag tag) {
|
||||
|
@ -16,7 +16,7 @@ class TestHeadTextures {
|
||||
void testForDuplicates() {
|
||||
Set<String> textures = new HashSet<>();
|
||||
|
||||
for (HeadTexture head : HeadTexture.values) {
|
||||
for (HeadTexture head : HeadTexture.valuesCache) {
|
||||
String texture = head.getTexture();
|
||||
Assertions.assertNotNull(texture);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user