9
0
mirror of https://github.com/Xiao-MoMi/Custom-Crops.git synced 2025-12-27 19:09:09 +00:00

improve farmland checks

This commit is contained in:
XiaoMoMi
2024-09-05 00:22:47 +08:00
parent 956d2863b3
commit 343c12dbe3
3 changed files with 28 additions and 4 deletions

View File

@@ -22,6 +22,7 @@ import net.momirealms.customcrops.api.action.ActionManager;
import net.momirealms.customcrops.api.context.Context;
import net.momirealms.customcrops.api.context.ContextKeys;
import net.momirealms.customcrops.api.core.block.CropBlock;
import net.momirealms.customcrops.api.core.block.PotBlock;
import net.momirealms.customcrops.api.core.mechanic.crop.BoneMeal;
import net.momirealms.customcrops.api.core.mechanic.crop.CropConfig;
import net.momirealms.customcrops.api.core.mechanic.crop.CropStageConfig;
@@ -234,8 +235,21 @@ public abstract class AbstractCustomEventListener implements Listener {
@EventHandler (ignoreCancelled = true, priority = EventPriority.HIGH)
public void onMoistureChange(MoistureChangeEvent event) {
if (ConfigManager.disableMoistureMechanic())
if (ConfigManager.disableMoistureMechanic()) {
event.setCancelled(true);
return;
}
// Location location = event.getBlock().getLocation();
// Optional<CustomCropsWorld<?>> world = BukkitCustomCropsPlugin.getInstance().getWorldManager().getWorld(location.getWorld());
// if (world.isEmpty()){
// return;
// }
// CustomCropsWorld<?> w = world.get();
// w.getBlockState(Pos3.from(location)).ifPresent(state -> {
// if (state.type() instanceof PotBlock) {
// event.setCancelled(true);
// }
// });
}
@EventHandler (ignoreCancelled = true, priority = EventPriority.HIGH)

View File

@@ -25,7 +25,9 @@ public enum CustomForm {
CHORUS(ExistenceForm.BLOCK),
ITEM_FRAME(ExistenceForm.FURNITURE),
ITEM_DISPLAY(ExistenceForm.FURNITURE),
ARMOR_STAND(ExistenceForm.FURNITURE);
ARMOR_STAND(ExistenceForm.FURNITURE),
BLOCK(ExistenceForm.BLOCK),
FURNITURE(ExistenceForm.FURNITURE);
private final ExistenceForm form;

View File

@@ -24,6 +24,7 @@ import net.momirealms.customcrops.api.core.world.CustomCropsBlockState;
import net.momirealms.customcrops.api.misc.water.WaterBar;
import net.momirealms.customcrops.api.misc.water.WateringMethod;
import net.momirealms.customcrops.api.requirement.Requirement;
import net.momirealms.customcrops.api.util.StringUtils;
import net.momirealms.customcrops.common.util.Pair;
import org.bukkit.entity.Player;
@@ -100,14 +101,21 @@ public class PotConfigImpl implements PotConfig {
this.maxFertilizerActions = maxFertilizerActions;
this.blocks.add(basicAppearance.left());
this.blocks.add(basicAppearance.right());
this.wetBlocks.add(basicAppearance.right());
addToWet(basicAppearance.right());
for (Pair<String, String> pair : potAppearanceMap.values()) {
this.blocks.add(pair.left());
this.blocks.add(pair.right());
this.wetBlocks.add(pair.right());
addToWet(pair.right());
}
}
private void addToWet(String id) {
if (StringUtils.isCapitalLetter(id)) {
return;
}
this.wetBlocks.add(id);
}
@Override
public String id() {
return id;