mirror of
https://github.com/StarWishsama/Slimefun4.git
synced 2024-09-19 19:25:48 +00:00
[Ci skip] Fixed javadocs and improved documentation
This commit is contained in:
parent
bc8d72b9ab
commit
3f5fb7c7a7
2
pom.xml
2
pom.xml
@ -336,7 +336,7 @@
|
||||
<dependency>
|
||||
<groupId>com.github.TheBusyBiscuit</groupId>
|
||||
<artifactId>CS-CoreLib2</artifactId>
|
||||
<version>0.29</version>
|
||||
<version>0.29.1</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
|
@ -16,7 +16,7 @@ import org.bukkit.event.player.PlayerInteractEvent;
|
||||
import org.bukkit.inventory.EquipmentSlot;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import io.github.thebusybiscuit.cscorelib2.data.ComputedOptional;
|
||||
import io.github.thebusybiscuit.cscorelib2.data.TriStateOptional;
|
||||
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
|
||||
import me.mrCookieSlime.Slimefun.api.BlockStorage;
|
||||
|
||||
@ -46,8 +46,8 @@ public class PlayerRightClickEvent extends PlayerEvent {
|
||||
private final EquipmentSlot hand;
|
||||
private final BlockFace face;
|
||||
|
||||
private ComputedOptional<SlimefunItem> slimefunItem = ComputedOptional.createNew();
|
||||
private ComputedOptional<SlimefunItem> slimefunBlock = ComputedOptional.createNew();
|
||||
private TriStateOptional<SlimefunItem> slimefunItem = TriStateOptional.createNew();
|
||||
private TriStateOptional<SlimefunItem> slimefunBlock = TriStateOptional.createNew();
|
||||
|
||||
private Result itemResult;
|
||||
private Result blockResult;
|
||||
@ -127,7 +127,7 @@ public class PlayerRightClickEvent extends PlayerEvent {
|
||||
if (itemStack.isPresent()) {
|
||||
slimefunItem.compute(SlimefunItem.getByItem(itemStack.get()));
|
||||
} else {
|
||||
slimefunItem = ComputedOptional.empty();
|
||||
slimefunItem = TriStateOptional.empty();
|
||||
}
|
||||
}
|
||||
|
||||
@ -140,7 +140,7 @@ public class PlayerRightClickEvent extends PlayerEvent {
|
||||
if (clickedBlock.isPresent()) {
|
||||
slimefunBlock.compute(BlockStorage.check(clickedBlock.get()));
|
||||
} else {
|
||||
slimefunBlock = ComputedOptional.empty();
|
||||
slimefunBlock = TriStateOptional.empty();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -30,7 +30,6 @@ import io.github.thebusybiscuit.slimefun4.core.guide.SlimefunGuideMode;
|
||||
import io.github.thebusybiscuit.slimefun4.core.multiblocks.MultiBlock;
|
||||
import io.github.thebusybiscuit.slimefun4.core.researching.Research;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.SlimefunPlugin;
|
||||
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.guide.CheatSheetSlimefunGuide;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.guide.SurvivalSlimefunGuide;
|
||||
import me.mrCookieSlime.Slimefun.Objects.Category;
|
||||
@ -82,7 +81,7 @@ public final class SlimefunRegistry {
|
||||
private final Map<UUID, PlayerProfile> profiles = new ConcurrentHashMap<>();
|
||||
private final Map<String, BlockStorage> worlds = new ConcurrentHashMap<>();
|
||||
private final Map<String, BlockInfoConfig> chunks = new HashMap<>();
|
||||
private final Map<SlimefunGuideMode, SlimefunGuideImplementation> layouts = new EnumMap<>(SlimefunGuideMode.class);
|
||||
private final Map<SlimefunGuideMode, SlimefunGuideImplementation> guides = new EnumMap<>(SlimefunGuideMode.class);
|
||||
private final Map<EntityType, Set<ItemStack>> mobDrops = new EnumMap<>(EntityType.class);
|
||||
|
||||
private final Map<String, BlockMenuPreset> blockMenuPresets = new HashMap<>();
|
||||
@ -99,8 +98,8 @@ public final class SlimefunRegistry {
|
||||
guideKey = new NamespacedKey(plugin, "slimefun_guide_mode");
|
||||
|
||||
boolean showVanillaRecipes = cfg.getBoolean("guide.show-vanilla-recipes");
|
||||
layouts.put(SlimefunGuideMode.SURVIVAL_MODE, new SurvivalSlimefunGuide(showVanillaRecipes));
|
||||
layouts.put(SlimefunGuideMode.CHEAT_MODE, new CheatSheetSlimefunGuide());
|
||||
guides.put(SlimefunGuideMode.SURVIVAL_MODE, new SurvivalSlimefunGuide(showVanillaRecipes));
|
||||
guides.put(SlimefunGuideMode.CHEAT_MODE, new CheatSheetSlimefunGuide());
|
||||
|
||||
researchRanks.addAll(cfg.getStringList("research-ranks"));
|
||||
|
||||
@ -199,8 +198,26 @@ public final class SlimefunRegistry {
|
||||
return multiblocks;
|
||||
}
|
||||
|
||||
public SlimefunGuideImplementation getGuideLayout(SlimefunGuideMode layout) {
|
||||
return layouts.get(layout);
|
||||
/**
|
||||
* This returns the corresponding {@link SlimefunGuideImplementation} for a certain
|
||||
* {@link SlimefunGuideMode}.
|
||||
*
|
||||
* @param mode
|
||||
* The {@link SlimefunGuideMode}
|
||||
*
|
||||
* @return The corresponding {@link SlimefunGuideImplementation}
|
||||
*/
|
||||
@Nonnull
|
||||
public SlimefunGuideImplementation getSlimefunGuide(@Nonnull SlimefunGuideMode mode) {
|
||||
Validate.notNull(mode, "The Guide mode cannot be null");
|
||||
|
||||
SlimefunGuideImplementation guide = guides.get(mode);
|
||||
|
||||
if (guide == null) {
|
||||
throw new IllegalStateException("Slimefun Guide '" + mode + "' has no registered implementation.");
|
||||
}
|
||||
|
||||
return guide;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -6,6 +6,7 @@ import javax.annotation.Nonnull;
|
||||
import javax.annotation.Nullable;
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
@ -14,6 +15,7 @@ import io.github.thebusybiscuit.slimefun4.implementation.SlimefunPlugin;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.guide.SurvivalSlimefunGuide;
|
||||
|
||||
import io.github.thebusybiscuit.slimefun4.utils.SlimefunUtils;
|
||||
import io.github.thebusybiscuit.slimefun4.utils.itemstack.SlimefunGuideItem;
|
||||
import me.mrCookieSlime.Slimefun.Objects.Category;
|
||||
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
|
||||
|
||||
@ -33,7 +35,7 @@ public final class SlimefunGuide {
|
||||
|
||||
@Nonnull
|
||||
public static ItemStack getItem(@Nonnull SlimefunGuideMode design) {
|
||||
return SlimefunPlugin.getRegistry().getGuideLayout(design).getItem();
|
||||
return SlimefunPlugin.getRegistry().getSlimefunGuide(design).getItem();
|
||||
}
|
||||
|
||||
public static void openCheatMenu(@Nonnull Player p) {
|
||||
@ -52,7 +54,7 @@ public final class SlimefunGuide {
|
||||
}
|
||||
}
|
||||
|
||||
public static void openGuide(@Nonnull Player p, @Nonnull SlimefunGuideMode layout) {
|
||||
public static void openGuide(@Nonnull Player p, @Nonnull SlimefunGuideMode mode) {
|
||||
if (!SlimefunPlugin.getWorldSettingsService().isWorldEnabled(p.getWorld())) {
|
||||
return;
|
||||
}
|
||||
@ -61,10 +63,10 @@ public final class SlimefunGuide {
|
||||
|
||||
if (optional.isPresent()) {
|
||||
PlayerProfile profile = optional.get();
|
||||
SlimefunGuideImplementation guide = SlimefunPlugin.getRegistry().getGuideLayout(layout);
|
||||
SlimefunGuideImplementation guide = SlimefunPlugin.getRegistry().getSlimefunGuide(mode);
|
||||
profile.getGuideHistory().openLastEntry(guide);
|
||||
} else {
|
||||
openMainMenuAsync(p, layout, 1);
|
||||
openMainMenuAsync(p, mode, 1);
|
||||
}
|
||||
}
|
||||
|
||||
@ -77,20 +79,20 @@ public final class SlimefunGuide {
|
||||
|
||||
@ParametersAreNonnullByDefault
|
||||
public static void openMainMenu(PlayerProfile profile, SlimefunGuideMode layout, int selectedPage) {
|
||||
SlimefunPlugin.getRegistry().getGuideLayout(layout).openMainMenu(profile, selectedPage);
|
||||
SlimefunPlugin.getRegistry().getSlimefunGuide(layout).openMainMenu(profile, selectedPage);
|
||||
}
|
||||
|
||||
@ParametersAreNonnullByDefault
|
||||
public static void openCategory(PlayerProfile profile, Category category, SlimefunGuideMode layout, int selectedPage) {
|
||||
SlimefunPlugin.getRegistry().getGuideLayout(layout).openCategory(profile, category, selectedPage);
|
||||
SlimefunPlugin.getRegistry().getSlimefunGuide(layout).openCategory(profile, category, selectedPage);
|
||||
}
|
||||
|
||||
@ParametersAreNonnullByDefault
|
||||
public static void openSearch(PlayerProfile profile, String input, boolean survival, boolean addToHistory) {
|
||||
SlimefunGuideImplementation layout = SlimefunPlugin.getRegistry().getGuideLayout(SlimefunGuideMode.SURVIVAL_MODE);
|
||||
SlimefunGuideImplementation layout = SlimefunPlugin.getRegistry().getSlimefunGuide(SlimefunGuideMode.SURVIVAL_MODE);
|
||||
|
||||
if (!survival) {
|
||||
layout = SlimefunPlugin.getRegistry().getGuideLayout(SlimefunGuideMode.CHEAT_MODE);
|
||||
layout = SlimefunPlugin.getRegistry().getSlimefunGuide(SlimefunGuideMode.CHEAT_MODE);
|
||||
}
|
||||
|
||||
layout.openSearch(profile, input, addToHistory);
|
||||
@ -98,17 +100,27 @@ public final class SlimefunGuide {
|
||||
|
||||
@ParametersAreNonnullByDefault
|
||||
public static void displayItem(PlayerProfile profile, ItemStack item, boolean addToHistory) {
|
||||
SlimefunPlugin.getRegistry().getGuideLayout(SlimefunGuideMode.SURVIVAL_MODE).displayItem(profile, item, 0, addToHistory);
|
||||
SlimefunPlugin.getRegistry().getSlimefunGuide(SlimefunGuideMode.SURVIVAL_MODE).displayItem(profile, item, 0, addToHistory);
|
||||
}
|
||||
|
||||
@ParametersAreNonnullByDefault
|
||||
public static void displayItem(PlayerProfile profile, SlimefunItem item, boolean addToHistory) {
|
||||
SlimefunPlugin.getRegistry().getGuideLayout(SlimefunGuideMode.SURVIVAL_MODE).displayItem(profile, item, addToHistory);
|
||||
SlimefunPlugin.getRegistry().getSlimefunGuide(SlimefunGuideMode.SURVIVAL_MODE).displayItem(profile, item, addToHistory);
|
||||
}
|
||||
|
||||
/**
|
||||
* This method checks if a given {@link ItemStack} is a {@link SlimefunGuide}.
|
||||
*
|
||||
* @param item
|
||||
* The {@link ItemStack} to check
|
||||
*
|
||||
* @return Whether this {@link ItemStack} represents a {@link SlimefunGuide}
|
||||
*/
|
||||
public static boolean isGuideItem(@Nullable ItemStack item) {
|
||||
if (item == null) {
|
||||
if (item == null || item.getType() != Material.ENCHANTED_BOOK) {
|
||||
return false;
|
||||
} else if (item instanceof SlimefunGuideItem) {
|
||||
return true;
|
||||
} else {
|
||||
return SlimefunUtils.isItemSimilar(item, getItem(SlimefunGuideMode.SURVIVAL_MODE), true) || SlimefunUtils.isItemSimilar(item, getItem(SlimefunGuideMode.CHEAT_MODE), true);
|
||||
}
|
||||
|
@ -15,7 +15,7 @@ import javax.annotation.Nullable;
|
||||
import org.apache.commons.lang.Validate;
|
||||
import org.bukkit.ChatColor;
|
||||
|
||||
import io.github.thebusybiscuit.cscorelib2.data.ComputedOptional;
|
||||
import io.github.thebusybiscuit.cscorelib2.data.TriStateOptional;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.SlimefunPlugin;
|
||||
import io.github.thebusybiscuit.slimefun4.utils.HeadTexture;
|
||||
|
||||
@ -35,7 +35,7 @@ public class Contributor {
|
||||
private final String profileLink;
|
||||
|
||||
private final ConcurrentMap<String, Integer> contributions = new ConcurrentHashMap<>();
|
||||
private final ComputedOptional<String> headTexture = ComputedOptional.createNew();
|
||||
private final TriStateOptional<String> headTexture = TriStateOptional.createNew();
|
||||
|
||||
private Optional<UUID> uuid = Optional.empty();
|
||||
private boolean immutable = false;
|
||||
|
@ -14,7 +14,7 @@ import javax.annotation.Nullable;
|
||||
import org.bukkit.Bukkit;
|
||||
|
||||
import io.github.thebusybiscuit.cscorelib2.players.MinecraftAccount;
|
||||
import io.github.thebusybiscuit.cscorelib2.players.MinecraftAccount.TooManyRequestsException;
|
||||
import io.github.thebusybiscuit.cscorelib2.players.TooManyRequestsException;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.SlimefunPlugin;
|
||||
|
||||
/**
|
||||
|
@ -843,6 +843,7 @@ public class ProgrammableAndroid extends SlimefunItem implements InventoryBlock,
|
||||
}
|
||||
}
|
||||
|
||||
@ParametersAreNonnullByDefault
|
||||
protected void move(Block b, BlockFace face, Block block) {
|
||||
if (block.getY() > 0 && block.getY() < block.getWorld().getMaxHeight() && block.isEmpty()) {
|
||||
BlockData blockData = Material.PLAYER_HEAD.createBlockData(data -> {
|
||||
|
Loading…
Reference in New Issue
Block a user