From a7832c63b9f8cda7b70e39f4cf6f0241d748ba21 Mon Sep 17 00:00:00 2001
From: Xiao-MoMi <70987828+Xiao-MoMi@users.noreply.github.com>
Date: Mon, 29 Aug 2022 17:02:22 +0800
Subject: [PATCH] 1.1.1
---
.../momirealms/customfishing/ConfigReader.java | 18 +++++++++---------
.../customfishing/api/CustomFishingAPI.java | 13 +++++++++++++
.../customfishing/listener/FishListener.java | 2 +-
.../customfishing/listener/PickUpListener.java | 11 +++++++++++
.../customfishing/utils/ItemStackUtil.java | 2 ++
src/main/resources/config.yml | 4 ++--
src/main/resources/loots/example.yml | 2 +-
src/main/resources/mobs/example.yml | 3 ++-
8 files changed, 41 insertions(+), 14 deletions(-)
create mode 100644 src/main/java/net/momirealms/customfishing/api/CustomFishingAPI.java
diff --git a/src/main/java/net/momirealms/customfishing/ConfigReader.java b/src/main/java/net/momirealms/customfishing/ConfigReader.java
index fc69fbaf..1b5349df 100644
--- a/src/main/java/net/momirealms/customfishing/ConfigReader.java
+++ b/src/main/java/net/momirealms/customfishing/ConfigReader.java
@@ -118,14 +118,14 @@ public class ConfigReader{
if (config.getBoolean("config.integrations.WorldGuard")){
if (Bukkit.getPluginManager().getPlugin("WorldGuard") == null) AdventureUtil.consoleMessage("[CustomFishing] Failed to initialize WorldGuard!");
else {
- AdventureUtil.consoleMessage("[CustomFishing] WorldGuard Hooked!");
+ AdventureUtil.consoleMessage("[CustomFishing] WorldGuard Hooked!");
wg = true;
}
}
if (config.getBoolean("config.integrations.MythicMobs")){
if (Bukkit.getPluginManager().getPlugin("MythicMobs") == null) AdventureUtil.consoleMessage("[CustomFishing] Failed to initialize MythicMobs!");
else {
- AdventureUtil.consoleMessage("[CustomFishing] MythicMobs Hooked!");
+ AdventureUtil.consoleMessage("[CustomFishing] MythicMobs Hooked!");
mm = true;
}
}
@@ -139,28 +139,28 @@ public class ConfigReader{
if (Bukkit.getPluginManager().getPlugin("mcMMO") == null) CustomFishing.instance.getLogger().warning("Failed to initialize mcMMO!");
else {
skillXP = new mcMMO();
- AdventureUtil.consoleMessage("[CustomFishing] mcMMO Hooked!");
+ AdventureUtil.consoleMessage("[CustomFishing] mcMMO Hooked!");
}
}
if(config.getBoolean("config.integrations.AureliumSkills",false)){
if (Bukkit.getPluginManager().getPlugin("AureliumSkills") == null) CustomFishing.instance.getLogger().warning("Failed to initialize AureliumSkills!");
else {
skillXP = new Aurelium();
- AdventureUtil.consoleMessage("[CustomFishing] AureliumSkills Hooked!");
+ AdventureUtil.consoleMessage("[CustomFishing] AureliumSkills Hooked!");
}
}
if(config.getBoolean("config.integrations.MMOCore",false)){
if (Bukkit.getPluginManager().getPlugin("MMOCore") == null) CustomFishing.instance.getLogger().warning("Failed to initialize MMOCore!");
else {
skillXP = new MMOCore();
- AdventureUtil.consoleMessage("[CustomFishing] MMOCore Hooked!");
+ AdventureUtil.consoleMessage("[CustomFishing] MMOCore Hooked!");
}
}
if(config.getBoolean("config.integrations.EcoSkills",false)){
if (Bukkit.getPluginManager().getPlugin("EcoSkills") == null) CustomFishing.instance.getLogger().warning("Failed to initialize EcoSkills!");
else {
skillXP = new EcoSkill();
- AdventureUtil.consoleMessage("[CustomFishing] EcoSkills Hooked!");
+ AdventureUtil.consoleMessage("[CustomFishing] EcoSkills Hooked!");
}
}
@@ -169,14 +169,14 @@ public class ConfigReader{
if (Bukkit.getPluginManager().getPlugin("RealisticSeasons") == null) Log.warn("Failed to initialize RealisticSeasons!");
else {
season = new RealisticSeason();
- AdventureUtil.consoleMessage("[CustomFishing] RealisticSeasons Hooked!");
+ AdventureUtil.consoleMessage("[CustomFishing] RealisticSeasons Hooked!");
}
}
if (config.getBoolean("config.integrations.CustomCrops",false)){
if (Bukkit.getPluginManager().getPlugin("CustomCrops") == null) Log.warn("Failed to initialize CustomCrops!");
else {
season = new CustomCropsSeason();
- AdventureUtil.consoleMessage("[CustomFishing] CustomCrops Hooked!");
+ AdventureUtil.consoleMessage("[CustomFishing] CustomCrops Hooked!");
}
}
@@ -502,7 +502,7 @@ public class ConfigReader{
AdventureUtil.consoleMessage("[CustomFishing] Error! Failed to create mobs folder...");
return;
}
- CustomFishing.instance.saveResource("loots" + File.separator + "ExampleMob.yml", false);
+ CustomFishing.instance.saveResource("mobs" + File.separator + "example.yml", false);
}
File[] mobFiles = mob_file.listFiles();
if (mobFiles != null) {
diff --git a/src/main/java/net/momirealms/customfishing/api/CustomFishingAPI.java b/src/main/java/net/momirealms/customfishing/api/CustomFishingAPI.java
new file mode 100644
index 00000000..8b71a94a
--- /dev/null
+++ b/src/main/java/net/momirealms/customfishing/api/CustomFishingAPI.java
@@ -0,0 +1,13 @@
+package net.momirealms.customfishing.api;
+
+import net.momirealms.customfishing.ConfigReader;
+import net.momirealms.customfishing.object.loot.Loot;
+import org.jetbrains.annotations.Nullable;
+
+public class CustomFishingAPI {
+
+ @Nullable
+ public static Loot getLoot(String key){
+ return ConfigReader.LOOT.get(key);
+ }
+}
diff --git a/src/main/java/net/momirealms/customfishing/listener/FishListener.java b/src/main/java/net/momirealms/customfishing/listener/FishListener.java
index efba4271..52af0ee2 100644
--- a/src/main/java/net/momirealms/customfishing/listener/FishListener.java
+++ b/src/main/java/net/momirealms/customfishing/listener/FishListener.java
@@ -470,7 +470,7 @@ public class FishListener implements Listener {
}
}
}
- else if (vanillaLoot == null) {
+ else {
fail(player, loot);
}
}
diff --git a/src/main/java/net/momirealms/customfishing/listener/PickUpListener.java b/src/main/java/net/momirealms/customfishing/listener/PickUpListener.java
index 0303ea4c..fba6e804 100644
--- a/src/main/java/net/momirealms/customfishing/listener/PickUpListener.java
+++ b/src/main/java/net/momirealms/customfishing/listener/PickUpListener.java
@@ -3,6 +3,7 @@ package net.momirealms.customfishing.listener;
import de.tr7zw.changeme.nbtapi.NBTItem;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
+import org.bukkit.event.inventory.InventoryPickupItemEvent;
import org.bukkit.event.player.PlayerAttemptPickupItemEvent;
import org.bukkit.inventory.ItemStack;
@@ -24,4 +25,14 @@ public class PickUpListener implements Listener {
}
}
}
+
+ @EventHandler
+ public void onMove(InventoryPickupItemEvent event){
+ ItemStack itemStack = event.getItem().getItemStack();
+ NBTItem nbtItem = new NBTItem(itemStack);
+ if (nbtItem.hasKey("M_Owner")){
+ nbtItem.removeKey("M_Owner");
+ itemStack.setItemMeta(nbtItem.getItem().getItemMeta());
+ }
+ }
}
diff --git a/src/main/java/net/momirealms/customfishing/utils/ItemStackUtil.java b/src/main/java/net/momirealms/customfishing/utils/ItemStackUtil.java
index 2b3ae7e8..3a5103d2 100644
--- a/src/main/java/net/momirealms/customfishing/utils/ItemStackUtil.java
+++ b/src/main/java/net/momirealms/customfishing/utils/ItemStackUtil.java
@@ -22,8 +22,10 @@ import de.tr7zw.changeme.nbtapi.NBTItem;
import net.kyori.adventure.text.minimessage.MiniMessage;
import net.kyori.adventure.text.serializer.gson.GsonComponentSerializer;
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
+import net.momirealms.customfishing.CustomFishing;
import net.momirealms.customfishing.object.Item;
import net.momirealms.customfishing.object.LeveledEnchantment;
+import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.enchantments.Enchantment;
import org.bukkit.inventory.ItemStack;
diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml
index 6d58628b..5c46b190 100644
--- a/src/main/resources/config.yml
+++ b/src/main/resources/config.yml
@@ -29,8 +29,8 @@ config:
# This is useful for vanilla loots
# Vanilla loot is available only when 'double-reel-in' is true
vanilla: true
- # This means 30% of the loots are from vanilla
- # and 70% are from CustomFishing Loot system
+ # 0.4 means 40% of the loots are from vanilla
+ # and 60% are from CustomFishing Loot system
vanilla-ratio: 0.4
# Should vanilla loots have the same fishing mechanic CustomFishing provides
bar: true
diff --git a/src/main/resources/loots/example.yml b/src/main/resources/loots/example.yml
index 3e0551c2..2e5ef01f 100644
--- a/src/main/resources/loots/example.yml
+++ b/src/main/resources/loots/example.yml
@@ -35,7 +35,7 @@ rainbow_fish:
custom-model-data: 1
# Custom NBT tags
- # If you are not sure about the NBT tag. You can use command '/cfishing import xxx' and get it in 'CustomFishing/export' folder
+ # If you are not sure about the NBT tag. You can use command '/cfishing import xxx'
# (Int) (Byte) (String) (Float) (String) (Double) (Short) (Long) (UUID) (Boolean) (IntArray) (ByteArray)
nbt:
itemsadder:
diff --git a/src/main/resources/mobs/example.yml b/src/main/resources/mobs/example.yml
index a459198a..8d775b03 100644
--- a/src/main/resources/mobs/example.yml
+++ b/src/main/resources/mobs/example.yml
@@ -1,6 +1,6 @@
skeletalknight:
- enable: false
+ enable: true
# MythicMobsID
mythicmobsID: SkeletalKnight
@@ -28,6 +28,7 @@ skeletalknight:
- world
piranha:
+ enable: false
mythicmobsID: piranha
name: 'Piranha'
weight: 50