9
0
mirror of https://github.com/Xiao-MoMi/Custom-Fishing.git synced 2025-12-27 10:59:13 +00:00
This commit is contained in:
XiaoMoMi
2024-01-03 06:17:54 +08:00
parent da74c91f61
commit 0847df9909
4 changed files with 18 additions and 3 deletions

View File

@@ -25,6 +25,7 @@ import net.momirealms.customfishing.api.manager.BagManager;
import net.momirealms.customfishing.api.manager.EffectManager;
import net.momirealms.customfishing.api.mechanic.action.Action;
import net.momirealms.customfishing.api.mechanic.bag.FishingBagHolder;
import net.momirealms.customfishing.api.mechanic.requirement.Requirement;
import net.momirealms.customfishing.api.util.InventoryUtils;
import net.momirealms.customfishing.compatibility.papi.PlaceholderManagerImpl;
import net.momirealms.customfishing.setting.CFConfig;
@@ -54,6 +55,7 @@ public class BagManagerImpl implements BagManager, Listener {
private boolean bagStoreLoots;
private String bagTitle;
private List<Material> bagWhiteListItems;
private Requirement[] collectRequirements;
public BagManagerImpl(CustomFishingPluginImpl plugin) {
this.plugin = plugin;
@@ -77,6 +79,7 @@ public class BagManagerImpl implements BagManager, Listener {
if (bagStoreLoots) {
collectLootActions = plugin.getActionManager().getActions(bagSection.getConfigurationSection("collect-actions"));
bagFullActions = plugin.getActionManager().getActions(bagSection.getConfigurationSection("full-actions"));
collectRequirements = plugin.getRequirementManager().getRequirements(bagSection.getConfigurationSection("collect-requirements"), false);
}
}
}
@@ -240,4 +243,9 @@ public class BagManagerImpl implements BagManager, Listener {
public List<Material> getBagWhiteListItems() {
return bagWhiteListItems;
}
@Override
public Requirement[] getCollectRequirements() {
return collectRequirements;
}
}

View File

@@ -432,7 +432,7 @@ public class ItemManagerImpl implements ItemManager, Listener {
return;
}
if (CFConfig.enableFishingBag && plugin.getBagManager().doesBagStoreLoots() && player.hasPermission("fishingbag.collectloot")) {
if (CFConfig.enableFishingBag && plugin.getBagManager().doesBagStoreLoots() && RequirementManager.isRequirementMet(condition, plugin.getBagManager().getCollectRequirements())) {
var bag = plugin.getBagManager().getOnlineBagInventory(player.getUniqueId());
int cannotPut = ItemUtils.putLootsToBag(bag, item, item.getAmount());
// some are put into bag

View File

@@ -154,11 +154,15 @@ mechanics:
enable: true
# Fishing bag container title
bag-title: '<blue>{player}''s Fishing Bag</blue>'
# Can fishing bag store fishing loots?
can-store-loot: false
# Other whitelist-items
whitelist-items:
- fishing_rod
# Can fishing bag store fishing loots?
can-store-loot: false
# Requirements for automatically collecting
collect-requirements:
permission: fishingbag.collectloot
# Actions to do if fishing loots are automatically collected into bag
collect-actions:
sound_action: