mirror of
https://github.com/Xiao-MoMi/Custom-Fishing.git
synced 2025-12-19 15:09:24 +00:00
update README
This commit is contained in:
@@ -11,9 +11,7 @@
|
||||

|
||||

|
||||
|
||||
CustomFishing is a Paper plugin that provides minigames and a powerful condition & action system for fishing.
|
||||
With the new concept of weight system, CustomFishing brings unlimited customization possibilities and best performance.
|
||||
|
||||
CustomFishing is a versatile Paper plugin designed to offer an extensive range of minigames and a robust condition and action system for fishing. Introducing a novel weight system concept, CustomFishing provides unparalleled customization opportunities while ensuring optimal performance. The plugin goes beyond standard features by allowing developers to register custom mechanics, actions, conditions, games, and even parsers for configuration file formats. This flexibility makes it a powerful API for developers, enabling the creation of innovative fishing experiences, such as lava fishing or void fishing, tailored to their specific needs.
|
||||
## How to build
|
||||
|
||||
#### Command Line
|
||||
|
||||
@@ -49,7 +49,7 @@ public class FishingLootSpawnEvent extends PlayerEvent {
|
||||
* @param entity The entity associated with the loot, if any
|
||||
*/
|
||||
public FishingLootSpawnEvent(@NotNull Context<Player> context, Location location, Loot loot, @Nullable Entity entity) {
|
||||
super(context.getHolder());
|
||||
super(context.holder());
|
||||
this.entity = entity;
|
||||
this.loot = loot;
|
||||
this.location = location;
|
||||
|
||||
@@ -50,7 +50,7 @@ public class FishingResultEvent extends PlayerEvent implements Cancellable {
|
||||
* @param loot The loot involved
|
||||
*/
|
||||
public FishingResultEvent(@NotNull Context<Player> context, Result result, FishHook fishHook, Loot loot) {
|
||||
super(context.getHolder());
|
||||
super(context.holder());
|
||||
this.context = context;
|
||||
this.result = result;
|
||||
this.loot = loot;
|
||||
|
||||
@@ -91,7 +91,7 @@ public interface Context<T> {
|
||||
*
|
||||
* @return the holder object of type T.
|
||||
*/
|
||||
T getHolder();
|
||||
T holder();
|
||||
|
||||
/**
|
||||
* Creates a player-specific context.
|
||||
|
||||
@@ -91,7 +91,7 @@ public final class PlayerContextImpl implements Context<Player> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Player getHolder() {
|
||||
public Player holder() {
|
||||
return player;
|
||||
}
|
||||
|
||||
|
||||
@@ -128,14 +128,14 @@ public class CustomFishingHook {
|
||||
}
|
||||
// enable bait animation
|
||||
if (ConfigManager.baitAnimation() && !gears.getItem(FishingGears.GearType.BAIT).isEmpty()) {
|
||||
this.baitAnimationTask = new BaitAnimationTask(plugin, context.getHolder(), hook, gears.getItem(FishingGears.GearType.BAIT).stream().findAny().get().right());
|
||||
this.baitAnimationTask = new BaitAnimationTask(plugin, context.holder(), hook, gears.getItem(FishingGears.GearType.BAIT).stream().findAny().get().right());
|
||||
}
|
||||
|
||||
List<HookMechanic> enabledMechanics = mechanicProviders.apply(hook, context, effect);
|
||||
this.task = plugin.getScheduler().sync().runRepeating(() -> {
|
||||
// destroy if hook is invalid
|
||||
if (!hook.isValid()) {
|
||||
plugin.getFishingManager().destroyHook(context.getHolder().getUniqueId());
|
||||
plugin.getFishingManager().destroyHook(context.holder().getUniqueId());
|
||||
return;
|
||||
}
|
||||
if (isPlayingGame()) {
|
||||
@@ -229,7 +229,7 @@ public class CustomFishingHook {
|
||||
* Ends the life of the custom fishing hook.
|
||||
*/
|
||||
public void destroy() {
|
||||
plugin.getFishingManager().destroyHook(context.getHolder().getUniqueId());
|
||||
plugin.getFishingManager().destroyHook(context.holder().getUniqueId());
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -326,13 +326,13 @@ public class CustomFishingHook {
|
||||
|
||||
// auto fishing
|
||||
private void scheduleNextFishing() {
|
||||
final Player player = context.getHolder();
|
||||
final Player player = context.holder();
|
||||
plugin.getScheduler().sync().runLater(() -> {
|
||||
if (player.isOnline()) {
|
||||
ItemStack item = player.getInventory().getItem(gears.getRodSlot() == HandSlot.MAIN ? EquipmentSlot.HAND : EquipmentSlot.OFF_HAND);
|
||||
if (item.getType() == Material.FISHING_ROD) {
|
||||
SparrowHeart.getInstance().useItem(player, gears.getRodSlot(), item);
|
||||
SparrowHeart.getInstance().swingHand(context.getHolder(), gears.getRodSlot());
|
||||
SparrowHeart.getInstance().swingHand(context.holder(), gears.getRodSlot());
|
||||
}
|
||||
}
|
||||
}, 20, player.getLocation());
|
||||
@@ -373,7 +373,7 @@ public class CustomFishingHook {
|
||||
gears.trigger(ActionTrigger.BITE, context);
|
||||
if (RequirementManager.isSatisfied(context, ConfigManager.autoFishingRequirements())) {
|
||||
handleSuccessfulFishing();
|
||||
SparrowHeart.getInstance().swingHand(context.getHolder(), gears.getRodSlot());
|
||||
SparrowHeart.getInstance().swingHand(context.holder(), gears.getRodSlot());
|
||||
destroy();
|
||||
scheduleNextFishing();
|
||||
return;
|
||||
@@ -479,7 +479,7 @@ public class CustomFishingHook {
|
||||
if (spawnEvent.skipActions())
|
||||
return;
|
||||
if (item != null && item.isValid() && nextLoot.preventGrabbing()) {
|
||||
item.getPersistentDataContainer().set(Objects.requireNonNull(NamespacedKey.fromString("owner", plugin.getBoostrap())), PersistentDataType.STRING, context.getHolder().getName());
|
||||
item.getPersistentDataContainer().set(Objects.requireNonNull(NamespacedKey.fromString("owner", plugin.getBoostrap())), PersistentDataType.STRING, context.holder().getName());
|
||||
}
|
||||
doSuccessActions();
|
||||
}, (long) ConfigManager.multipleLootSpawnDelay() * i, hook.getLocation());
|
||||
@@ -513,24 +513,24 @@ public class CustomFishingHook {
|
||||
if (competition != null && RequirementManager.isSatisfied(context, competition.getConfig().joinRequirements())) {
|
||||
Double customScore = context.arg(ContextKeys.CUSTOM_SCORE);
|
||||
if (customScore != null) {
|
||||
competition.refreshData(context.getHolder(), customScore);
|
||||
competition.refreshData(context.holder(), customScore);
|
||||
context.arg(ContextKeys.SCORE_FORMATTED, String.format("%.2f", customScore));
|
||||
context.arg(ContextKeys.SCORE, customScore);
|
||||
} else {
|
||||
double score = 0;
|
||||
if (competition.getGoal() == CompetitionGoal.CATCH_AMOUNT) {
|
||||
score = 1;
|
||||
competition.refreshData(context.getHolder(), score);
|
||||
competition.refreshData(context.holder(), score);
|
||||
} else if (competition.getGoal() == CompetitionGoal.MAX_SIZE || competition.getGoal() == CompetitionGoal.MIN_SIZE || competition.getGoal() == CompetitionGoal.TOTAL_SIZE) {
|
||||
Float size = context.arg(ContextKeys.SIZE);
|
||||
if (size != null && size > 0) {
|
||||
competition.refreshData(context.getHolder(), size);
|
||||
competition.refreshData(context.holder(), size);
|
||||
}
|
||||
} else if (competition.getGoal() == CompetitionGoal.TOTAL_SCORE) {
|
||||
score = nextLoot.score().evaluate(context);
|
||||
score = score * tempFinalEffect.scoreMultiplier() + tempFinalEffect.scoreAdder();
|
||||
if (score != 0) {
|
||||
competition.refreshData(context.getHolder(), score);
|
||||
competition.refreshData(context.holder(), score);
|
||||
}
|
||||
}
|
||||
context.arg(ContextKeys.SCORE_FORMATTED, String.format("%.2f", score));
|
||||
@@ -542,7 +542,7 @@ public class CustomFishingHook {
|
||||
}
|
||||
|
||||
String id = context.arg(ContextKeys.ID);
|
||||
Player player = context.getHolder();
|
||||
Player player = context.holder();
|
||||
|
||||
if (!nextLoot.disableStats()) {
|
||||
plugin.getStorageManager().getOnlineUser(player.getUniqueId()).ifPresent(
|
||||
|
||||
@@ -154,7 +154,7 @@ public class FishingGears {
|
||||
*/
|
||||
public static BiConsumer<Context<Player>, FishingGears> defaultFishingGearsConsumers() {
|
||||
return (context, fishingGears) -> {
|
||||
Player player = context.getHolder();
|
||||
Player player = context.holder();
|
||||
PlayerInventory playerInventory = player.getInventory();
|
||||
ItemStack mainHandItem = playerInventory.getItemInMainHand();
|
||||
ItemStack offHandItem = playerInventory.getItemInOffHand();
|
||||
@@ -257,12 +257,12 @@ public class FishingGears {
|
||||
((context, itemStack) -> {}),
|
||||
((context, itemStack) -> {}),
|
||||
((context, itemStack) -> {
|
||||
if (context.getHolder().getGameMode() != GameMode.CREATIVE)
|
||||
BukkitCustomFishingPlugin.getInstance().getItemManager().increaseDamage(context.getHolder(), itemStack, 1, false);
|
||||
if (context.holder().getGameMode() != GameMode.CREATIVE)
|
||||
BukkitCustomFishingPlugin.getInstance().getItemManager().increaseDamage(context.holder(), itemStack, 1, false);
|
||||
}),
|
||||
((context, itemStack) -> {
|
||||
if (context.getHolder().getGameMode() != GameMode.CREATIVE)
|
||||
BukkitCustomFishingPlugin.getInstance().getItemManager().increaseDamage(context.getHolder(), itemStack, 1, false);
|
||||
if (context.holder().getGameMode() != GameMode.CREATIVE)
|
||||
BukkitCustomFishingPlugin.getInstance().getItemManager().increaseDamage(context.holder(), itemStack, 1, false);
|
||||
}),
|
||||
((context, itemStack) -> {}),
|
||||
((context, itemStack) -> {}),
|
||||
@@ -272,7 +272,7 @@ public class FishingGears {
|
||||
|
||||
public static final GearType BAIT = new GearType(MechanicType.BAIT,
|
||||
((context, itemStack) -> {
|
||||
if (context.getHolder().getGameMode() != GameMode.CREATIVE)
|
||||
if (context.holder().getGameMode() != GameMode.CREATIVE)
|
||||
itemStack.setAmount(itemStack.getAmount() - 1);
|
||||
}),
|
||||
((context, itemStack) -> {}),
|
||||
@@ -290,7 +290,7 @@ public class FishingGears {
|
||||
((context, itemStack) -> {}),
|
||||
((context, itemStack) -> {}),
|
||||
((context, itemStack) -> {
|
||||
if (context.getHolder().getGameMode() != GameMode.CREATIVE) {
|
||||
if (context.holder().getGameMode() != GameMode.CREATIVE) {
|
||||
Item<ItemStack> wrapped = BukkitCustomFishingPlugin.getInstance().getItemManager().wrap(itemStack);
|
||||
String hookID = (String) wrapped.getTag("CustomFishing", "hook_id").orElseThrow(() -> new RuntimeException("This error should never occur"));
|
||||
wrapped.getTag("CustomFishing", "hook_max_damage").ifPresent(max -> {
|
||||
@@ -318,7 +318,7 @@ public class FishingGears {
|
||||
}
|
||||
newLore.addAll(durabilityLore);
|
||||
wrapped.lore(newLore);
|
||||
BukkitCustomFishingPlugin.getInstance().getSenderFactory().getAudience(context.getHolder()).playSound(Sound.sound(Key.key("minecraft:entity.item.break"), Sound.Source.PLAYER, 1, 1));
|
||||
BukkitCustomFishingPlugin.getInstance().getSenderFactory().getAudience(context.holder()).playSound(Sound.sound(Key.key("minecraft:entity.item.break"), Sound.Source.PLAYER, 1, 1));
|
||||
} else {
|
||||
wrapped.setTag(hookDamage, "CustomFishing", "hook_damage");
|
||||
HookConfig hookConfig = BukkitCustomFishingPlugin.getInstance().getHookManager().getHook(hookID).orElseThrow();
|
||||
@@ -350,7 +350,7 @@ public class FishingGears {
|
||||
}
|
||||
}),
|
||||
((context, itemStack) -> {
|
||||
if (context.getHolder().getGameMode() != GameMode.CREATIVE) {
|
||||
if (context.holder().getGameMode() != GameMode.CREATIVE) {
|
||||
Item<ItemStack> wrapped = BukkitCustomFishingPlugin.getInstance().getItemManager().wrap(itemStack);
|
||||
String hookID = (String) wrapped.getTag("CustomFishing", "hook_id").orElseThrow(() -> new RuntimeException("This error should never occur"));
|
||||
wrapped.getTag("CustomFishing", "hook_max_damage").ifPresent(max -> {
|
||||
@@ -361,7 +361,7 @@ public class FishingGears {
|
||||
wrapped.removeTag("CustomFishing", "hook_id");
|
||||
wrapped.removeTag("CustomFishing", "hook_stack");
|
||||
wrapped.removeTag("CustomFishing", "hook_max_damage");
|
||||
BukkitCustomFishingPlugin.getInstance().getSenderFactory().getAudience(context.getHolder()).playSound(Sound.sound(Key.key("minecraft:entity.item.break"), Sound.Source.PLAYER, 1, 1));
|
||||
BukkitCustomFishingPlugin.getInstance().getSenderFactory().getAudience(context.holder()).playSound(Sound.sound(Key.key("minecraft:entity.item.break"), Sound.Source.PLAYER, 1, 1));
|
||||
} else {
|
||||
wrapped.setTag(hookDamage, "CustomFishing", "hook_damage");
|
||||
HookConfig hookConfig = BukkitCustomFishingPlugin.getInstance().getHookManager().getHook(hookID).orElseThrow();
|
||||
|
||||
@@ -94,7 +94,7 @@ public class LavaFishingMechanic implements HookMechanic {
|
||||
|
||||
@Override
|
||||
public void start(Effect finalEffect) {
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.getHolder(), hook, FishingHookStateEvent.State.LAND));
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.holder(), hook, FishingHookStateEvent.State.LAND));
|
||||
this.setWaitTime(finalEffect);
|
||||
this.task = BukkitCustomFishingPlugin.getInstance().getScheduler().sync().runRepeating(() -> {
|
||||
float lavaHeight = 0F;
|
||||
@@ -135,7 +135,7 @@ public class LavaFishingMechanic implements HookMechanic {
|
||||
this.setTempEntityProperties(this.tempEntity);
|
||||
this.hook.setHookedEntity(this.tempEntity);
|
||||
if (!firstTime) {
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.getHolder(), hook, FishingHookStateEvent.State.ESCAPE));
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.holder(), hook, FishingHookStateEvent.State.ESCAPE));
|
||||
}
|
||||
firstTime = false;
|
||||
}
|
||||
@@ -168,7 +168,7 @@ public class LavaFishingMechanic implements HookMechanic {
|
||||
this.nibble = RandomUtils.generateRandomInt(20, 40);
|
||||
this.hooked = true;
|
||||
hook.getWorld().playSound(hook.getLocation(), Sound.ENTITY_GENERIC_EXTINGUISH_FIRE, 0.25F, 1.0F + (RandomUtils.generateRandomFloat(0,1)-RandomUtils.generateRandomFloat(0,1)) * 0.4F);
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.getHolder(), hook, FishingHookStateEvent.State.BITE));
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.holder(), hook, FishingHookStateEvent.State.BITE));
|
||||
if (this.tempEntity != null && this.tempEntity.isValid()) {
|
||||
this.tempEntity.remove();
|
||||
}
|
||||
@@ -180,7 +180,7 @@ public class LavaFishingMechanic implements HookMechanic {
|
||||
if (this.timeUntilLured <= 0) {
|
||||
this.fishAngle = RandomUtils.generateRandomFloat(0F, 360F);
|
||||
this.timeUntilHooked = RandomUtils.generateRandomInt(20, 80);
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.getHolder(), hook, FishingHookStateEvent.State.LURE));
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.holder(), hook, FishingHookStateEvent.State.LURE));
|
||||
}
|
||||
} else {
|
||||
setWaitTime(finalEffect);
|
||||
|
||||
@@ -66,7 +66,7 @@ public class VanillaMechanic implements HookMechanic {
|
||||
|
||||
@Override
|
||||
public void start(Effect finalEffect) {
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.getHolder(), hook, FishingHookStateEvent.State.LAND));
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.holder(), hook, FishingHookStateEvent.State.LAND));
|
||||
setWaitTime(hook, finalEffect);
|
||||
this.task = BukkitCustomFishingPlugin.getInstance().getScheduler().sync().runRepeating(() -> {
|
||||
if (isHooked) {
|
||||
@@ -108,7 +108,7 @@ public class VanillaMechanic implements HookMechanic {
|
||||
}
|
||||
if (ConfigManager.antiAutoFishingMod()) {
|
||||
BukkitCustomFishingPlugin.getInstance().getScheduler().sync().runLater(() -> {
|
||||
Player player = context.getHolder();
|
||||
Player player = context.holder();
|
||||
if (player.isOnline() && hook.isValid()) {
|
||||
AntiAutoFishing.prevent(player, hook);
|
||||
}
|
||||
@@ -149,10 +149,10 @@ public class VanillaMechanic implements HookMechanic {
|
||||
}
|
||||
|
||||
public void onBite() {
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.getHolder(), hook, FishingHookStateEvent.State.BITE));
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.holder(), hook, FishingHookStateEvent.State.BITE));
|
||||
}
|
||||
|
||||
public void onFailedAttempt() {
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.getHolder(), hook, FishingHookStateEvent.State.ESCAPE));
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.holder(), hook, FishingHookStateEvent.State.ESCAPE));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -79,7 +79,7 @@ public class VoidFishingMechanic implements HookMechanic {
|
||||
|
||||
@Override
|
||||
public void start(Effect finalEffect) {
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.getHolder(), hook, FishingHookStateEvent.State.LAND));
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.holder(), hook, FishingHookStateEvent.State.LAND));
|
||||
this.setWaitTime(finalEffect);
|
||||
this.tempEntity = hook.getWorld().spawn(hook.getLocation().clone().subtract(0,1,0), ArmorStand.class);
|
||||
this.setTempEntityProperties(this.tempEntity);
|
||||
@@ -103,7 +103,7 @@ public class VoidFishingMechanic implements HookMechanic {
|
||||
this.timeUntilLured = 0;
|
||||
this.timeUntilHooked = 0;
|
||||
this.hooked = false;
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.getHolder(), hook, FishingHookStateEvent.State.ESCAPE));
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.holder(), hook, FishingHookStateEvent.State.ESCAPE));
|
||||
}
|
||||
} else {
|
||||
float f;
|
||||
@@ -134,7 +134,7 @@ public class VoidFishingMechanic implements HookMechanic {
|
||||
this.nibble = RandomUtils.generateRandomInt(20, 40);
|
||||
this.hooked = true;
|
||||
hook.getWorld().playSound(hook.getLocation(), Sound.ITEM_TRIDENT_THUNDER, 0.25F, 1.0F + (RandomUtils.generateRandomFloat(0,1)-RandomUtils.generateRandomFloat(0,1)) * 0.4F);
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.getHolder(), hook, FishingHookStateEvent.State.BITE));
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.holder(), hook, FishingHookStateEvent.State.BITE));
|
||||
}
|
||||
} else if (timeUntilLured > 0) {
|
||||
if (!freeze) {
|
||||
@@ -159,7 +159,7 @@ public class VoidFishingMechanic implements HookMechanic {
|
||||
if (this.timeUntilLured <= 0) {
|
||||
this.fishAngle = RandomUtils.generateRandomFloat(0F, 360F);
|
||||
this.timeUntilHooked = RandomUtils.generateRandomInt(20, 80);
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.getHolder(), hook, FishingHookStateEvent.State.LURE));
|
||||
EventUtils.fireAndForget(new FishingHookStateEvent(context.holder(), hook, FishingHookStateEvent.State.LURE));
|
||||
}
|
||||
} else {
|
||||
setWaitTime(finalEffect);
|
||||
|
||||
@@ -174,7 +174,7 @@ public abstract class AbstractGamingPlayer implements GamingPlayer, Runnable {
|
||||
*/
|
||||
@Override
|
||||
public Player getPlayer() {
|
||||
return hook.getContext().getHolder();
|
||||
return hook.getContext().holder();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -35,7 +35,7 @@ public class PlaceholderTextValueImpl<T> implements TextValue<T> {
|
||||
public String render(Context<T> context) {
|
||||
Map<String, String> replacements = context.placeholderMap();
|
||||
String text;
|
||||
if (context.getHolder() instanceof OfflinePlayer player) text = BukkitPlaceholderManager.getInstance().parse(player, raw, replacements);
|
||||
if (context.holder() instanceof OfflinePlayer player) text = BukkitPlaceholderManager.getInstance().parse(player, raw, replacements);
|
||||
else text = BukkitPlaceholderManager.getInstance().parse(null, raw, replacements);
|
||||
return text;
|
||||
}
|
||||
|
||||
@@ -50,7 +50,7 @@ public interface TextValue<T> {
|
||||
* @return the rendered text as a String
|
||||
*/
|
||||
default String render(Context<T> context, boolean parseRawPlaceholders) {
|
||||
if (!parseRawPlaceholders || !(context.getHolder() instanceof OfflinePlayer player)) return render(context);
|
||||
if (!parseRawPlaceholders || !(context.holder() instanceof OfflinePlayer player)) return render(context);
|
||||
return PlaceholderAPIUtils.parse(player, render(context));
|
||||
}
|
||||
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
package net.momirealms.customfishing.common.dependency;
|
||||
|
||||
import net.momirealms.customfishing.common.dependency.relocation.Relocation;
|
||||
import net.momirealms.customfishing.common.plugin.CustomFishingProperties;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.security.MessageDigest;
|
||||
|
||||
@@ -161,7 +161,7 @@ public class DependencyManagerImpl implements DependencyManager {
|
||||
int i = 0;
|
||||
while (i < repository.size()) {
|
||||
try {
|
||||
plugin.getPluginLogger().info("Downloading dependency(" + fileName + ") from " + repository.get(i).getUrl() + dependency.getMavenRepoPath());
|
||||
plugin.getPluginLogger().info("Downloading dependency(" + fileName + ")[" + repository.get(i).getUrl() + dependency.getMavenRepoPath() + "]");
|
||||
repository.get(i).download(dependency, file);
|
||||
plugin.getPluginLogger().info("Successfully downloaded " + fileName);
|
||||
return file;
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
package net.momirealms.customfishing.common.dependency;
|
||||
package net.momirealms.customfishing.common.plugin;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
@@ -48,7 +48,7 @@ public class ZaphkielItemProvider implements ItemProvider {
|
||||
|
||||
@Override
|
||||
public String itemID(@NotNull ItemStack itemStack) {
|
||||
if (itemStack == null || itemStack.getType() == Material.AIR) return null;
|
||||
if (itemStack.getType() == Material.AIR) return null;
|
||||
return zapAPI.getItemHandler().getItemId(itemStack);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -64,9 +64,9 @@ public class WorldGuardRegion {
|
||||
return context -> {
|
||||
Location location;
|
||||
if (other) {
|
||||
location = Optional.ofNullable(context.arg(ContextKeys.OTHER_LOCATION)).orElse(context.getHolder().getLocation());
|
||||
location = Optional.ofNullable(context.arg(ContextKeys.OTHER_LOCATION)).orElse(context.holder().getLocation());
|
||||
} else {
|
||||
location = context.getHolder().getLocation();
|
||||
location = context.holder().getLocation();
|
||||
}
|
||||
RegionManager regionManager = WorldGuard.getInstance().getPlatform().getRegionContainer().get(BukkitAdapter.adapt(location.getWorld()));
|
||||
if (regionManager != null) {
|
||||
|
||||
@@ -47,7 +47,6 @@ import net.momirealms.customfishing.bukkit.sender.BukkitSenderFactory;
|
||||
import net.momirealms.customfishing.bukkit.statistic.BukkitStatisticsManager;
|
||||
import net.momirealms.customfishing.bukkit.storage.BukkitStorageManager;
|
||||
import net.momirealms.customfishing.bukkit.totem.BukkitTotemManager;
|
||||
import net.momirealms.customfishing.common.dependency.CustomFishingProperties;
|
||||
import net.momirealms.customfishing.common.dependency.Dependency;
|
||||
import net.momirealms.customfishing.common.dependency.DependencyManagerImpl;
|
||||
import net.momirealms.customfishing.common.helper.VersionHelper;
|
||||
|
||||
@@ -172,8 +172,8 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
List<String> messages = ListUtils.toList(args);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
List<String> replaced = plugin.getPlaceholderManager().parse(context.getHolder(), messages, context.placeholderMap());
|
||||
Audience audience = plugin.getSenderFactory().getAudience(context.getHolder());
|
||||
List<String> replaced = plugin.getPlaceholderManager().parse(context.holder(), messages, context.placeholderMap());
|
||||
Audience audience = plugin.getSenderFactory().getAudience(context.holder());
|
||||
for (String text : replaced) {
|
||||
audience.sendMessage(AdventureHelper.miniMessage(text));
|
||||
}
|
||||
@@ -184,8 +184,8 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
String random = messages.get(RandomUtils.generateRandomInt(0, messages.size() - 1));
|
||||
random = BukkitPlaceholderManager.getInstance().parse(context.getHolder(), random, context.placeholderMap());
|
||||
Audience audience = plugin.getSenderFactory().getAudience(context.getHolder());
|
||||
random = BukkitPlaceholderManager.getInstance().parse(context.holder(), random, context.placeholderMap());
|
||||
Audience audience = plugin.getSenderFactory().getAudience(context.holder());
|
||||
audience.sendMessage(AdventureHelper.miniMessage(random));
|
||||
};
|
||||
});
|
||||
@@ -193,7 +193,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
List<String> messages = ListUtils.toList(args);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
List<String> replaced = plugin.getPlaceholderManager().parse(context.getHolder(), messages, context.placeholderMap());
|
||||
List<String> replaced = plugin.getPlaceholderManager().parse(context.holder(), messages, context.placeholderMap());
|
||||
for (Player player : Bukkit.getOnlinePlayers()) {
|
||||
Audience audience = plugin.getSenderFactory().getAudience(player);
|
||||
for (String text : replaced) {
|
||||
@@ -209,7 +209,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
double realRange = range.evaluate(context);
|
||||
Player owner = context.getHolder();
|
||||
Player owner = context.holder();
|
||||
Location location = requireNonNull(context.arg(ContextKeys.LOCATION));
|
||||
for (Player player : location.getWorld().getPlayers()) {
|
||||
if (LocationUtils.getDistance(player.getLocation(), location) <= realRange) {
|
||||
@@ -238,7 +238,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
List<String> commands = ListUtils.toList(args);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
List<String> replaced = BukkitPlaceholderManager.getInstance().parse(context.getHolder(), commands, context.placeholderMap());
|
||||
List<String> replaced = BukkitPlaceholderManager.getInstance().parse(context.holder(), commands, context.placeholderMap());
|
||||
plugin.getScheduler().sync().run(() -> {
|
||||
for (String text : replaced) {
|
||||
Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), text);
|
||||
@@ -250,12 +250,12 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
List<String> commands = ListUtils.toList(args);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
List<String> replaced = BukkitPlaceholderManager.getInstance().parse(context.getHolder(), commands, context.placeholderMap());
|
||||
List<String> replaced = BukkitPlaceholderManager.getInstance().parse(context.holder(), commands, context.placeholderMap());
|
||||
plugin.getScheduler().sync().run(() -> {
|
||||
for (String text : replaced) {
|
||||
context.getHolder().performCommand(text);
|
||||
context.holder().performCommand(text);
|
||||
}
|
||||
}, context.getHolder().getLocation());
|
||||
}, context.holder().getLocation());
|
||||
};
|
||||
});
|
||||
registerAction("random-command", (args, chance) -> {
|
||||
@@ -263,7 +263,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
String random = commands.get(ThreadLocalRandom.current().nextInt(commands.size()));
|
||||
random = BukkitPlaceholderManager.getInstance().parse(context.getHolder(), random, context.placeholderMap());
|
||||
random = BukkitPlaceholderManager.getInstance().parse(context.holder(), random, context.placeholderMap());
|
||||
String finalRandom = random;
|
||||
plugin.getScheduler().sync().run(() -> {
|
||||
Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), finalRandom);
|
||||
@@ -276,7 +276,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
MathValue<Player> range = MathValue.auto(section.get("range"));
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
Player owner = context.getHolder();
|
||||
Player owner = context.holder();
|
||||
double realRange = range.evaluate(context);
|
||||
Location location = requireNonNull(context.arg(ContextKeys.LOCATION));
|
||||
for (Player player : location.getWorld().getPlayers()) {
|
||||
@@ -299,7 +299,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
private void registerCloseInvAction() {
|
||||
registerAction("close-inv", (args, chance) -> condition -> {
|
||||
if (Math.random() > chance) return;
|
||||
condition.getHolder().closeInventory();
|
||||
condition.holder().closeInventory();
|
||||
});
|
||||
}
|
||||
|
||||
@@ -308,8 +308,8 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
String text = (String) args;
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
Audience audience = plugin.getSenderFactory().getAudience(context.getHolder());
|
||||
Component component = AdventureHelper.miniMessage(plugin.getPlaceholderManager().parse(context.getHolder(), text, context.placeholderMap()));
|
||||
Audience audience = plugin.getSenderFactory().getAudience(context.holder());
|
||||
Component component = AdventureHelper.miniMessage(plugin.getPlaceholderManager().parse(context.holder(), text, context.placeholderMap()));
|
||||
audience.sendActionBar(component);
|
||||
};
|
||||
});
|
||||
@@ -318,8 +318,8 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
String random = texts.get(RandomUtils.generateRandomInt(0, texts.size() - 1));
|
||||
random = plugin.getPlaceholderManager().parse(context.getHolder(), random, context.placeholderMap());
|
||||
Audience audience = plugin.getSenderFactory().getAudience(context.getHolder());
|
||||
random = plugin.getPlaceholderManager().parse(context.holder(), random, context.placeholderMap());
|
||||
Audience audience = plugin.getSenderFactory().getAudience(context.holder());
|
||||
audience.sendActionBar(AdventureHelper.miniMessage(random));
|
||||
};
|
||||
});
|
||||
@@ -329,7 +329,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
MathValue<Player> range = MathValue.auto(section.get("range"));
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
Player owner = context.getHolder();
|
||||
Player owner = context.holder();
|
||||
Location location = requireNonNull(context.arg(ContextKeys.LOCATION));
|
||||
double realRange = range.evaluate(context);
|
||||
for (Player player : location.getWorld().getPlayers()) {
|
||||
@@ -353,7 +353,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
MathValue<Player> value = MathValue.auto(args);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
final Player player = context.getHolder();
|
||||
final Player player = context.holder();
|
||||
ExperienceOrb entity = player.getLocation().getWorld().spawn(player.getLocation().clone().add(0,0.5,0), ExperienceOrb.class);
|
||||
entity.setExperience((int) value.evaluate(context));
|
||||
};
|
||||
@@ -362,7 +362,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
MathValue<Player> value = MathValue.auto(args);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
final Player player = context.getHolder();
|
||||
final Player player = context.holder();
|
||||
player.giveExp((int) Math.round(value.evaluate(context)));
|
||||
Audience audience = plugin.getSenderFactory().getAudience(player);
|
||||
AdventureHelper.playSound(audience, Sound.sound(Key.key("minecraft:entity.experience_orb.pickup"), Sound.Source.PLAYER, 1, 1));
|
||||
@@ -372,7 +372,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
MathValue<Player> value = MathValue.auto(args);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
Player player = context.getHolder();
|
||||
Player player = context.holder();
|
||||
player.setLevel((int) Math.max(0, player.getLevel() + value.evaluate(context)));
|
||||
};
|
||||
});
|
||||
@@ -383,7 +383,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
MathValue<Player> value = MathValue.auto(args);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
Player player = context.getHolder();
|
||||
Player player = context.holder();
|
||||
player.setFoodLevel((int) (player.getFoodLevel() + value.evaluate(context)));
|
||||
};
|
||||
});
|
||||
@@ -391,7 +391,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
MathValue<Player> value = MathValue.auto(args);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
Player player = context.getHolder();
|
||||
Player player = context.holder();
|
||||
player.setSaturation((float) (player.getSaturation() + value.evaluate(context)));
|
||||
};
|
||||
});
|
||||
@@ -404,7 +404,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
int amount = section.getInt("amount", 1);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
Player player = context.getHolder();
|
||||
Player player = context.holder();
|
||||
boolean tempHand = mainOrOff;
|
||||
EquipmentSlot hand = context.arg(ContextKeys.SLOT);
|
||||
if (hand == EquipmentSlot.OFF_HAND || hand == EquipmentSlot.HAND) {
|
||||
@@ -426,7 +426,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
int amount = section.getInt("amount", 1);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
Player player = context.getHolder();
|
||||
Player player = context.holder();
|
||||
EquipmentSlot tempSlot = slot;
|
||||
EquipmentSlot equipmentSlot = context.arg(ContextKeys.SLOT);
|
||||
if (equipmentSlot != null) {
|
||||
@@ -441,9 +441,9 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
if (itemStack.getItemMeta() == null)
|
||||
return;
|
||||
if (amount > 0) {
|
||||
plugin.getItemManager().decreaseDamage(context.getHolder(), itemStack, amount);
|
||||
plugin.getItemManager().decreaseDamage(context.holder(), itemStack, amount);
|
||||
} else {
|
||||
plugin.getItemManager().increaseDamage(context.getHolder(), itemStack, -amount, true);
|
||||
plugin.getItemManager().increaseDamage(context.holder(), itemStack, -amount, true);
|
||||
}
|
||||
};
|
||||
} else {
|
||||
@@ -458,7 +458,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
boolean toInventory = section.getBoolean("to-inventory", false);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
Player player = context.getHolder();
|
||||
Player player = context.holder();
|
||||
ItemStack itemStack = plugin.getItemManager().buildAny(context, id);
|
||||
if (itemStack != null) {
|
||||
int maxStack = itemStack.getMaxStackSize();
|
||||
@@ -632,7 +632,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
if (!VaultHook.isHooked()) return;
|
||||
VaultHook.deposit(context.getHolder(), value.evaluate(context));
|
||||
VaultHook.deposit(context.holder(), value.evaluate(context));
|
||||
};
|
||||
});
|
||||
registerAction("take-money", (args, chance) -> {
|
||||
@@ -640,7 +640,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
if (!VaultHook.isHooked()) return;
|
||||
VaultHook.withdraw(context.getHolder(), value.evaluate(context));
|
||||
VaultHook.withdraw(context.holder(), value.evaluate(context));
|
||||
};
|
||||
});
|
||||
}
|
||||
@@ -657,7 +657,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
context.getHolder().addPotionEffect(potionEffect);
|
||||
context.holder().addPotionEffect(potionEffect);
|
||||
};
|
||||
} else {
|
||||
plugin.getPluginLogger().warn("Invalid value type: " + args.getClass().getSimpleName() + " found at potion-effect action which is expected to be `Section`");
|
||||
@@ -677,7 +677,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
Audience audience = plugin.getSenderFactory().getAudience(context.getHolder());
|
||||
Audience audience = plugin.getSenderFactory().getAudience(context.holder());
|
||||
AdventureHelper.playSound(audience, sound);
|
||||
};
|
||||
} else {
|
||||
@@ -697,7 +697,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
Optional.ofNullable(plugin.getIntegrationManager().getLevelerProvider(pluginName)).ifPresentOrElse(it -> {
|
||||
it.addXp(context.getHolder(), target, value.evaluate(context));
|
||||
it.addXp(context.holder(), target, value.evaluate(context));
|
||||
}, () -> plugin.getPluginLogger().warn("Plugin (" + pluginName + "'s) level is not compatible. Please double check if it's a problem caused by pronunciation."));
|
||||
};
|
||||
} else {
|
||||
@@ -717,7 +717,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
int fadeOut = section.getInt("fade-out", 10);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
final Player player = context.getHolder();
|
||||
final Player player = context.holder();
|
||||
Audience audience = plugin.getSenderFactory().getAudience(player);
|
||||
AdventureHelper.sendTitle(audience,
|
||||
AdventureHelper.miniMessage(title.render(context)),
|
||||
@@ -743,7 +743,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
if (Math.random() > chance) return;
|
||||
TextValue<Player> title = TextValue.auto(titles.get(RandomUtils.generateRandomInt(0, titles.size() - 1)));
|
||||
TextValue<Player> subtitle = TextValue.auto(subtitles.get(RandomUtils.generateRandomInt(0, subtitles.size() - 1)));
|
||||
final Player player = context.getHolder();
|
||||
final Player player = context.holder();
|
||||
Audience audience = plugin.getSenderFactory().getAudience(player);
|
||||
AdventureHelper.sendTitle(audience,
|
||||
AdventureHelper.miniMessage(title.render(context)),
|
||||
@@ -803,7 +803,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
String finalItemID = itemID;
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
Player owner = context.getHolder();
|
||||
Player owner = context.holder();
|
||||
Location location = position ? requireNonNull(context.arg(ContextKeys.OTHER_LOCATION)).clone() : owner.getLocation().clone();
|
||||
location.add(x.evaluate(context), y.evaluate(context) - 1, z.evaluate(context));
|
||||
if (opposite) location.setYaw(-owner.getLocation().getYaw());
|
||||
@@ -851,7 +851,7 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
int range = section.getInt("range", 16);
|
||||
return context -> {
|
||||
if (Math.random() > chance) return;
|
||||
Player owner = context.getHolder();
|
||||
Player owner = context.holder();
|
||||
Location location = position ? requireNonNull(context.arg(ContextKeys.OTHER_LOCATION)).clone() : owner.getLocation().clone();
|
||||
location.add(x.evaluate(context), y.evaluate(context), z.evaluate(context));
|
||||
FakeArmorStand armorStand = SparrowHeart.getInstance().createFakeArmorStand(location);
|
||||
@@ -915,9 +915,9 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
context.arg(ContextKeys.SURROUNDING, previous);
|
||||
}
|
||||
if (loots.isEmpty()) {
|
||||
plugin.getSenderFactory().wrap(context.getHolder()).sendMessage(TranslationManager.render(MessageConstants.COMMAND_FISH_FINDER_NO_LOOT.build()));
|
||||
plugin.getSenderFactory().wrap(context.holder()).sendMessage(TranslationManager.render(MessageConstants.COMMAND_FISH_FINDER_NO_LOOT.build()));
|
||||
} else {
|
||||
plugin.getSenderFactory().wrap(context.getHolder()).sendMessage(TranslationManager.render(MessageConstants.COMMAND_FISH_FINDER_POSSIBLE_LOOTS.arguments(AdventureHelper.miniMessage(stringJoiner.toString())).build()));
|
||||
plugin.getSenderFactory().wrap(context.holder()).sendMessage(TranslationManager.render(MessageConstants.COMMAND_FISH_FINDER_POSSIBLE_LOOTS.arguments(AdventureHelper.miniMessage(stringJoiner.toString())).build()));
|
||||
}
|
||||
};
|
||||
});
|
||||
|
||||
@@ -239,13 +239,13 @@ public class BukkitBlockManager implements BlockManager, Listener {
|
||||
blockData = blockProviders.get("vanilla").blockData(context, blockID, config.dataModifier());
|
||||
}
|
||||
Location hookLocation = requireNonNull(context.arg(ContextKeys.OTHER_LOCATION));
|
||||
Location playerLocation = requireNonNull(context.getHolder()).getLocation();
|
||||
Location playerLocation = requireNonNull(context.holder()).getLocation();
|
||||
FallingBlock fallingBlock = hookLocation.getWorld().spawn(hookLocation, FallingBlock.class);
|
||||
fallingBlock.setBlockData(blockData);
|
||||
fallingBlock.getPersistentDataContainer().set(
|
||||
requireNonNull(NamespacedKey.fromString("block", plugin.getBoostrap())),
|
||||
PersistentDataType.STRING,
|
||||
id + ";" + context.getHolder().getName()
|
||||
id + ";" + context.holder().getName()
|
||||
);
|
||||
double d0 = playerLocation.getX() - hookLocation.getX();
|
||||
double d1 = playerLocation.getY() - hookLocation.getY();
|
||||
|
||||
@@ -67,7 +67,7 @@ import net.momirealms.customfishing.bukkit.totem.particle.ParticleSetting;
|
||||
import net.momirealms.customfishing.bukkit.util.ItemStackUtils;
|
||||
import net.momirealms.customfishing.bukkit.util.ParticleUtils;
|
||||
import net.momirealms.customfishing.common.config.node.Node;
|
||||
import net.momirealms.customfishing.common.dependency.CustomFishingProperties;
|
||||
import net.momirealms.customfishing.common.plugin.CustomFishingProperties;
|
||||
import net.momirealms.customfishing.common.helper.AdventureHelper;
|
||||
import net.momirealms.customfishing.common.helper.VersionHelper;
|
||||
import net.momirealms.customfishing.common.item.AbstractItem;
|
||||
|
||||
@@ -105,7 +105,7 @@ public class BukkitEntityManager implements EntityManager {
|
||||
String id = context.arg(ContextKeys.ID);
|
||||
EntityConfig config = requireNonNull(entities.get(id), "Entity " + id + " not found");
|
||||
Location hookLocation = requireNonNull(context.arg(ContextKeys.OTHER_LOCATION));
|
||||
Location playerLocation = requireNonNull(context.getHolder().getLocation());
|
||||
Location playerLocation = requireNonNull(context.holder().getLocation());
|
||||
String entityID = config.entityID();
|
||||
Entity entity;
|
||||
if (entityID.contains(":")) {
|
||||
|
||||
@@ -134,7 +134,7 @@ public class BukkitItemManager implements ItemManager, Listener {
|
||||
@NotNull
|
||||
@Override
|
||||
public ItemStack build(@NotNull Context<Player> context, @NotNull CustomFishingItem item) {
|
||||
ItemStack itemStack = getOriginalStack(context.getHolder(), item.material());
|
||||
ItemStack itemStack = getOriginalStack(context.holder(), item.material());
|
||||
if (itemStack.getType() == Material.AIR) return itemStack;
|
||||
itemStack.setAmount(Math.max(1, (int) item.amount().evaluate(context)));
|
||||
Item<ItemStack> wrappedItemStack = factory.wrap(itemStack);
|
||||
@@ -146,7 +146,7 @@ public class BukkitItemManager implements ItemManager, Listener {
|
||||
|
||||
@Override
|
||||
public ItemStack buildAny(@NotNull Context<Player> context, @NotNull String item) {
|
||||
return getOriginalStack(context.getHolder(), item);
|
||||
return getOriginalStack(context.holder(), item);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@@ -174,7 +174,7 @@ public class BukkitItemManager implements ItemManager, Listener {
|
||||
String id = requireNonNull(context.arg(ContextKeys.ID));
|
||||
ItemStack itemStack;
|
||||
if (id.equals("vanilla")) {
|
||||
itemStack = SparrowHeart.getInstance().getFishingLoot(context.getHolder(), hook, rod).stream().findAny().orElseThrow(() -> new RuntimeException("new EntityItem would throw if for whatever reason (mostly shitty datapacks) the fishing loot turns out to be empty"));
|
||||
itemStack = SparrowHeart.getInstance().getFishingLoot(context.holder(), hook, rod).stream().findAny().orElseThrow(() -> new RuntimeException("new EntityItem would throw if for whatever reason (mostly shitty datapacks) the fishing loot turns out to be empty"));
|
||||
} else {
|
||||
itemStack = requireNonNull(buildInternal(context, id));
|
||||
}
|
||||
@@ -183,7 +183,7 @@ public class BukkitItemManager implements ItemManager, Listener {
|
||||
return null;
|
||||
}
|
||||
|
||||
Player player = context.getHolder();
|
||||
Player player = context.holder();
|
||||
Location playerLocation = player.getLocation();
|
||||
Location hookLocation = requireNonNull(context.arg(ContextKeys.OTHER_LOCATION));
|
||||
|
||||
|
||||
@@ -361,9 +361,9 @@ public class BukkitMarketManager implements MarketManager, Listener {
|
||||
ActionManager.trigger(gui.context, sellDenyActions);
|
||||
}
|
||||
} else if (element.getSymbol() == sellAllSlot) {
|
||||
List<ItemStack> itemStacksToSell = storageContentsToList(gui.context.getHolder().getInventory().getStorageContents());
|
||||
List<ItemStack> itemStacksToSell = storageContentsToList(gui.context.holder().getInventory().getStorageContents());
|
||||
if (sellFishingBag) {
|
||||
Optional<UserData> optionalUserData = BukkitCustomFishingPlugin.getInstance().getStorageManager().getOnlineUser(gui.context.getHolder().getUniqueId());
|
||||
Optional<UserData> optionalUserData = BukkitCustomFishingPlugin.getInstance().getStorageManager().getOnlineUser(gui.context.holder().getUniqueId());
|
||||
optionalUserData.ifPresent(userData -> itemStacksToSell.addAll(storageContentsToList(userData.holder().getInventory().getStorageContents())));
|
||||
}
|
||||
Pair<Integer, Double> pair = getItemsToSell(gui.context, itemStacksToSell);
|
||||
|
||||
@@ -91,8 +91,8 @@ public class MarketGUI {
|
||||
}
|
||||
|
||||
public void show() {
|
||||
context.getHolder().openInventory(inventory);
|
||||
SparrowHeart.getInstance().updateInventoryTitle(context.getHolder(), AdventureHelper.componentToJson(AdventureHelper.miniMessage(manager.title.render(context))));
|
||||
context.holder().openInventory(inventory);
|
||||
SparrowHeart.getInstance().updateInventoryTitle(context.holder(), AdventureHelper.componentToJson(AdventureHelper.miniMessage(manager.title.render(context))));
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@@ -132,9 +132,9 @@ public class MarketGUI {
|
||||
|
||||
MarketDynamicGUIElement sellAllElement = (MarketDynamicGUIElement) getElement(manager.sellAllSlot);
|
||||
if (sellAllElement != null && !sellAllElement.getSlots().isEmpty()) {
|
||||
List<ItemStack> itemStacksToSell = manager.storageContentsToList(context.getHolder().getInventory().getStorageContents());
|
||||
List<ItemStack> itemStacksToSell = manager.storageContentsToList(context.holder().getInventory().getStorageContents());
|
||||
if (manager.sellFishingBag) {
|
||||
Optional<UserData> optionalUserData = BukkitCustomFishingPlugin.getInstance().getStorageManager().getOnlineUser(context.getHolder().getUniqueId());
|
||||
Optional<UserData> optionalUserData = BukkitCustomFishingPlugin.getInstance().getStorageManager().getOnlineUser(context.holder().getUniqueId());
|
||||
optionalUserData.ifPresent(userData -> itemStacksToSell.addAll(manager.storageContentsToList(userData.holder().getInventory().getStorageContents())));
|
||||
}
|
||||
Pair<Integer, Double> pair = manager.getItemsToSell(context, itemStacksToSell);
|
||||
@@ -190,7 +190,7 @@ public class MarketGUI {
|
||||
for (int slot : itemElement.getSlots()) {
|
||||
ItemStack itemStack = inventory.getItem(slot);
|
||||
if (itemStack != null && itemStack.getType() != Material.AIR) {
|
||||
PlayerUtils.giveItem(context.getHolder(), itemStack, itemStack.getAmount());
|
||||
PlayerUtils.giveItem(context.holder(), itemStack, itemStack.getAmount());
|
||||
inventory.setItem(slot, new ItemStack(Material.AIR));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -248,8 +248,8 @@ public class BukkitRequirementManager implements RequirementManager<Player> {
|
||||
List<String> items = ListUtils.toList(section.get("item"));
|
||||
return context -> {
|
||||
ItemStack itemStack = mainOrOff ?
|
||||
context.getHolder().getInventory().getItemInMainHand()
|
||||
: context.getHolder().getInventory().getItemInOffHand();
|
||||
context.holder().getInventory().getItemInMainHand()
|
||||
: context.holder().getInventory().getItemInOffHand();
|
||||
String id = plugin.getItemManager().getItemID(itemStack);
|
||||
if (items.contains(id) && itemStack.getAmount() >= amount) return true;
|
||||
if (runActions) ActionManager.trigger(context, actions);
|
||||
@@ -274,7 +274,7 @@ public class BukkitRequirementManager implements RequirementManager<Player> {
|
||||
plugin.getPluginLogger().warn("Plugin (" + pluginName + "'s) level is not compatible. Please double check if it's a problem caused by pronunciation.");
|
||||
return true;
|
||||
}
|
||||
if (levelerProvider.getLevel(context.getHolder(), target) >= level)
|
||||
if (levelerProvider.getLevel(context.holder(), target) >= level)
|
||||
return true;
|
||||
if (runActions) ActionManager.trigger(context, actions);
|
||||
return false;
|
||||
@@ -693,7 +693,7 @@ public class BukkitRequirementManager implements RequirementManager<Player> {
|
||||
registerRequirement("level", (args, actions, runActions) -> {
|
||||
MathValue<Player> value = MathValue.auto(args);
|
||||
return context -> {
|
||||
int current = context.getHolder().getLevel();
|
||||
int current = context.holder().getLevel();
|
||||
if (current >= value.evaluate(context, true))
|
||||
return true;
|
||||
if (runActions) ActionManager.trigger(context, actions);
|
||||
@@ -706,7 +706,7 @@ public class BukkitRequirementManager implements RequirementManager<Player> {
|
||||
registerRequirement("money", (args, actions, runActions) -> {
|
||||
MathValue<Player> value = MathValue.auto(args);
|
||||
return context -> {
|
||||
double current = VaultHook.getBalance(context.getHolder());
|
||||
double current = VaultHook.getBalance(context.holder());
|
||||
if (current >= value.evaluate(context, true))
|
||||
return true;
|
||||
if (runActions) ActionManager.trigger(context, actions);
|
||||
@@ -823,7 +823,7 @@ public class BukkitRequirementManager implements RequirementManager<Player> {
|
||||
String key = section.getString("key");
|
||||
int time = section.getInt("time");
|
||||
return context -> {
|
||||
if (!plugin.getCoolDownManager().isCoolDown(context.getHolder().getUniqueId(), key, time))
|
||||
if (!plugin.getCoolDownManager().isCoolDown(context.holder().getUniqueId(), key, time))
|
||||
return true;
|
||||
if (runActions) ActionManager.trigger(context, actions);
|
||||
return false;
|
||||
@@ -854,7 +854,7 @@ public class BukkitRequirementManager implements RequirementManager<Player> {
|
||||
List<String> perms = ListUtils.toList(args);
|
||||
return context -> {
|
||||
for (String perm : perms)
|
||||
if (context.getHolder().hasPermission(perm))
|
||||
if (context.holder().hasPermission(perm))
|
||||
return true;
|
||||
if (runActions) ActionManager.trigger(context, actions);
|
||||
return false;
|
||||
@@ -864,7 +864,7 @@ public class BukkitRequirementManager implements RequirementManager<Player> {
|
||||
List<String> perms = ListUtils.toList(args);
|
||||
return context -> {
|
||||
for (String perm : perms)
|
||||
if (context.getHolder().hasPermission(perm)) {
|
||||
if (context.holder().hasPermission(perm)) {
|
||||
if (runActions) ActionManager.trigger(context, actions);
|
||||
return false;
|
||||
}
|
||||
@@ -1145,7 +1145,7 @@ public class BukkitRequirementManager implements RequirementManager<Player> {
|
||||
String operator = potions.substring(split[0].length(), potions.length() - split[1].length());
|
||||
return context -> {
|
||||
int level = -1;
|
||||
PotionEffect potionEffect = context.getHolder().getPotionEffect(type);
|
||||
PotionEffect potionEffect = context.holder().getPotionEffect(type);
|
||||
if (potionEffect != null) {
|
||||
level = potionEffect.getAmplifier();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user