mirror of
https://github.com/Xiao-MoMi/Custom-Fishing.git
synced 2025-12-28 19:39:06 +00:00
Add more annotations
This commit is contained in:
@@ -19,7 +19,6 @@ package net.momirealms.customfishing.bukkit;
|
||||
|
||||
import net.momirealms.customfishing.api.BukkitCustomFishingPlugin;
|
||||
import net.momirealms.customfishing.api.event.CustomFishingReloadEvent;
|
||||
import net.momirealms.customfishing.api.event.FishingLootSpawnEvent;
|
||||
import net.momirealms.customfishing.api.mechanic.MechanicType;
|
||||
import net.momirealms.customfishing.api.mechanic.config.ConfigManager;
|
||||
import net.momirealms.customfishing.api.mechanic.misc.cooldown.CoolDownManager;
|
||||
@@ -58,7 +57,6 @@ import net.momirealms.customfishing.common.plugin.logging.JavaPluginLogger;
|
||||
import net.momirealms.customfishing.common.plugin.logging.PluginLogger;
|
||||
import org.bstats.bukkit.Metrics;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.entity.Item;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
|
||||
@@ -31,12 +31,9 @@ import net.momirealms.customfishing.api.mechanic.misc.value.MathValue;
|
||||
import net.momirealms.customfishing.api.mechanic.misc.value.TextValue;
|
||||
import net.momirealms.customfishing.api.mechanic.requirement.Requirement;
|
||||
import net.momirealms.customfishing.bukkit.integration.VaultHook;
|
||||
import net.momirealms.customfishing.bukkit.item.damage.DurabilityItem;
|
||||
import net.momirealms.customfishing.bukkit.item.damage.VanillaDurabilityItem;
|
||||
import net.momirealms.customfishing.bukkit.util.LocationUtils;
|
||||
import net.momirealms.customfishing.bukkit.util.PlayerUtils;
|
||||
import net.momirealms.customfishing.common.helper.AdventureHelper;
|
||||
import net.momirealms.customfishing.common.item.Item;
|
||||
import net.momirealms.customfishing.common.locale.MessageConstants;
|
||||
import net.momirealms.customfishing.common.locale.TranslationManager;
|
||||
import net.momirealms.customfishing.common.plugin.scheduler.SchedulerTask;
|
||||
@@ -437,9 +434,9 @@ public class BukkitActionManager implements ActionManager<Player> {
|
||||
if (itemStack.getItemMeta() == null)
|
||||
return;
|
||||
if (amount > 0) {
|
||||
plugin.getItemManager().increaseDurability(context.getHolder(), itemStack, amount);
|
||||
plugin.getItemManager().decreaseDamage(context.getHolder(), itemStack, amount);
|
||||
} else {
|
||||
plugin.getItemManager().decreaseDurability(context.getHolder(), itemStack, -amount, true);
|
||||
plugin.getItemManager().increaseDamage(context.getHolder(), itemStack, -amount, true);
|
||||
}
|
||||
};
|
||||
} else {
|
||||
|
||||
@@ -258,11 +258,11 @@ public class BukkitFishingManager implements FishingManager, Listener {
|
||||
if (player.getGameMode() != GameMode.CREATIVE) {
|
||||
ItemStack itemStack = player.getInventory().getItemInMainHand();
|
||||
if (itemStack.getType() != Material.FISHING_ROD) itemStack = player.getInventory().getItemInOffHand();
|
||||
if (plugin.getItemManager().hasCustomDurability(itemStack)) {
|
||||
if (plugin.getItemManager().hasCustomMaxDamage(itemStack)) {
|
||||
event.getHook().pullHookedEntity();
|
||||
event.getHook().remove();
|
||||
event.setCancelled(true);
|
||||
plugin.getItemManager().decreaseDurability(player, itemStack, event.getCaught() instanceof Item ? 3 : 5, true);
|
||||
plugin.getItemManager().increaseDamage(player, itemStack, event.getCaught() instanceof Item ? 3 : 5, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -322,10 +322,10 @@ public class BukkitFishingManager implements FishingManager, Listener {
|
||||
ItemStack itemStack = player.getInventory().getItemInMainHand();
|
||||
if (itemStack.getType() != Material.FISHING_ROD) itemStack = player.getInventory().getItemInOffHand();
|
||||
if (itemStack.getType() == Material.FISHING_ROD) {
|
||||
if (plugin.getItemManager().hasCustomDurability(itemStack)) {
|
||||
if (plugin.getItemManager().hasCustomMaxDamage(itemStack)) {
|
||||
event.setCancelled(true);
|
||||
event.getHook().remove();
|
||||
plugin.getItemManager().decreaseDurability(player, itemStack, 2, true);
|
||||
plugin.getItemManager().increaseDamage(player, itemStack, 2, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -129,7 +129,7 @@ public class BukkitHookManager implements HookManager, Listener {
|
||||
} else {
|
||||
itemStack = plugin.getItemManager().buildInternal(Context.player(player), id);
|
||||
}
|
||||
plugin.getItemManager().setDurability(player, itemStack, damage);
|
||||
plugin.getItemManager().setDamage(player, itemStack, damage);
|
||||
|
||||
wrapped.removeTag("CustomFishing", "hook_id");
|
||||
wrapped.removeTag("CustomFishing", "hook_stack");
|
||||
@@ -185,7 +185,7 @@ public class BukkitHookManager implements HookManager, Listener {
|
||||
previousItemStack = plugin.getItemManager().buildInternal(Context.player(player), previousHookID);
|
||||
}
|
||||
if (previousItemStack != null) {
|
||||
plugin.getItemManager().setDurability(player, previousItemStack, previousHookDamage);
|
||||
plugin.getItemManager().setDamage(player, previousItemStack, previousHookDamage);
|
||||
if (cursor.getAmount() == 0) {
|
||||
event.setCursor(previousItemStack);
|
||||
} else {
|
||||
|
||||
@@ -248,7 +248,7 @@ public class BukkitItemManager implements ItemManager, Listener {
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasCustomDurability(ItemStack itemStack) {
|
||||
public boolean hasCustomMaxDamage(ItemStack itemStack) {
|
||||
if (itemStack == null || itemStack.getType() == Material.AIR || itemStack.getAmount() == 0)
|
||||
return false;
|
||||
Item<ItemStack> wrapped = factory.wrap(itemStack);
|
||||
@@ -256,7 +256,19 @@ public class BukkitItemManager implements ItemManager, Listener {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void increaseDurability(Player player, ItemStack itemStack, int amount) {
|
||||
public int getMaxDamage(ItemStack itemStack) {
|
||||
if (itemStack == null || itemStack.getType() == Material.AIR || itemStack.getAmount() == 0)
|
||||
return 0;
|
||||
Item<ItemStack> wrapped = factory.wrap(itemStack);
|
||||
if (wrapped.hasTag("CustomFishing", "max_dur")) {
|
||||
return new CustomDurabilityItem(wrapped).maxDamage();
|
||||
} else {
|
||||
return new VanillaDurabilityItem(wrapped).maxDamage();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void decreaseDamage(Player player, ItemStack itemStack, int amount) {
|
||||
if (itemStack == null || itemStack.getType() == Material.AIR || itemStack.getAmount() == 0)
|
||||
return;
|
||||
Item<ItemStack> wrapped = factory.wrap(itemStack);
|
||||
@@ -271,7 +283,7 @@ public class BukkitItemManager implements ItemManager, Listener {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void decreaseDurability(Player player, ItemStack itemStack, int amount, boolean incorrectUsage) {
|
||||
public void increaseDamage(Player player, ItemStack itemStack, int amount, boolean incorrectUsage) {
|
||||
if (itemStack == null || itemStack.getType() == Material.AIR || itemStack.getAmount() == 0)
|
||||
return;
|
||||
if (!incorrectUsage) {
|
||||
@@ -307,7 +319,7 @@ public class BukkitItemManager implements ItemManager, Listener {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setDurability(Player player, ItemStack itemStack, int damage) {
|
||||
public void setDamage(Player player, ItemStack itemStack, int damage) {
|
||||
if (itemStack == null || itemStack.getType() == Material.AIR || itemStack.getAmount() == 0)
|
||||
return;
|
||||
Item<ItemStack> wrapped = factory.wrap(itemStack);
|
||||
@@ -335,7 +347,7 @@ public class BukkitItemManager implements ItemManager, Listener {
|
||||
@EventHandler (ignoreCancelled = true)
|
||||
public void onMending(PlayerItemMendEvent event) {
|
||||
ItemStack itemStack = event.getItem();
|
||||
if (!hasCustomDurability(itemStack)) {
|
||||
if (!hasCustomMaxDamage(itemStack)) {
|
||||
return;
|
||||
}
|
||||
event.setCancelled(true);
|
||||
@@ -343,7 +355,7 @@ public class BukkitItemManager implements ItemManager, Listener {
|
||||
if (wrapped.unbreakable())
|
||||
return;
|
||||
DurabilityItem wrappedDurability = wrapDurabilityItem(wrapped);
|
||||
setDurability(event.getPlayer(), itemStack, Math.max(wrappedDurability.damage() - event.getRepairAmount(), 0));
|
||||
setDamage(event.getPlayer(), itemStack, Math.max(wrappedDurability.damage() - event.getRepairAmount(), 0));
|
||||
}
|
||||
|
||||
@EventHandler (ignoreCancelled = true)
|
||||
@@ -353,7 +365,7 @@ public class BukkitItemManager implements ItemManager, Listener {
|
||||
ItemStack second = anvil.getSecondItem();
|
||||
if (first != null && second != null
|
||||
&& first.getType() == Material.FISHING_ROD && second.getType() == Material.FISHING_ROD && event.getResult() != null
|
||||
&& hasCustomDurability(first)) {
|
||||
&& hasCustomMaxDamage(first)) {
|
||||
Item<ItemStack> wrapped1 = factory.wrap(anvil.getResult());
|
||||
DurabilityItem wrappedDurability1 = wrapDurabilityItem(wrapped1);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user