mirror of
				https://github.com/IntellectualSites/PlotSquared.git
				synced 2025-11-04 03:03:43 +01:00 
			
		
		
		
	Compare commits
	
		
			2 Commits
		
	
	
		
			feat/range
			...
			feature/v7
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					2e216f3aa3 | ||
| 
						 | 
					e718dd32af | 
@@ -26,6 +26,7 @@ import com.plotsquared.core.plot.Plot;
 | 
				
			|||||||
import com.plotsquared.core.plot.PlotArea;
 | 
					import com.plotsquared.core.plot.PlotArea;
 | 
				
			||||||
import com.plotsquared.core.plot.flag.implementations.CopperOxideFlag;
 | 
					import com.plotsquared.core.plot.flag.implementations.CopperOxideFlag;
 | 
				
			||||||
import com.plotsquared.core.plot.flag.implementations.MiscInteractFlag;
 | 
					import com.plotsquared.core.plot.flag.implementations.MiscInteractFlag;
 | 
				
			||||||
 | 
					import com.plotsquared.core.plot.flag.implementations.SculkSensorInteractFlag;
 | 
				
			||||||
import com.plotsquared.core.util.PlotFlagUtil;
 | 
					import com.plotsquared.core.util.PlotFlagUtil;
 | 
				
			||||||
import org.bukkit.Material;
 | 
					import org.bukkit.Material;
 | 
				
			||||||
import org.bukkit.block.Block;
 | 
					import org.bukkit.block.Block;
 | 
				
			||||||
@@ -96,12 +97,12 @@ public class BlockEventListener117 implements Listener {
 | 
				
			|||||||
                area,
 | 
					                area,
 | 
				
			||||||
                MiscInteractFlag.class,
 | 
					                MiscInteractFlag.class,
 | 
				
			||||||
                true
 | 
					                true
 | 
				
			||||||
        ) || plot != null && !plot.getFlag(
 | 
					        ) || plot != null && (!plot.getFlag(MiscInteractFlag.class) || !plot.getFlag(SculkSensorInteractFlag.class))) {
 | 
				
			||||||
                MiscInteractFlag.class)) {
 | 
					 | 
				
			||||||
            if (plotPlayer != null) {
 | 
					            if (plotPlayer != null) {
 | 
				
			||||||
                if (plot != null) {
 | 
					                if (plot != null) {
 | 
				
			||||||
                    if (!plot.isAdded(plotPlayer.getUUID())) {
 | 
					                    if (!plot.isAdded(plotPlayer.getUUID())) {
 | 
				
			||||||
                        plot.debug(plotPlayer.getName() + " couldn't trigger sculk sensors because misc-interact = false");
 | 
					                        plot.debug(plotPlayer.getName() + " couldn't trigger sculk sensors because both " +
 | 
				
			||||||
 | 
					                                "sculk-sensor-interact and misc-interact = false");
 | 
				
			||||||
                        event.setCancelled(true);
 | 
					                        event.setCancelled(true);
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
@@ -112,13 +113,15 @@ public class BlockEventListener117 implements Listener {
 | 
				
			|||||||
                if (plot != null) {
 | 
					                if (plot != null) {
 | 
				
			||||||
                    if (itemThrower == null && (itemThrower = item.getOwner()) == null) {
 | 
					                    if (itemThrower == null && (itemThrower = item.getOwner()) == null) {
 | 
				
			||||||
                        plot.debug(
 | 
					                        plot.debug(
 | 
				
			||||||
                                "A thrown item couldn't trigger sculk sensors because misc-interact = false and the item's owner could not be resolved.");
 | 
					                                "A thrown item couldn't trigger sculk sensors because both sculk-sensor-interact and " +
 | 
				
			||||||
 | 
					                                        "misc-interact = false and the item's owner could not be resolved.");
 | 
				
			||||||
                        event.setCancelled(true);
 | 
					                        event.setCancelled(true);
 | 
				
			||||||
                        return;
 | 
					                        return;
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                    if (!plot.isAdded(itemThrower)) {
 | 
					                    if (!plot.isAdded(itemThrower)) {
 | 
				
			||||||
                        if (!plot.isAdded(itemThrower)) {
 | 
					                        if (!plot.isAdded(itemThrower)) {
 | 
				
			||||||
                            plot.debug("A thrown item couldn't trigger sculk sensors because misc-interact = false");
 | 
					                            plot.debug("A thrown item couldn't trigger sculk sensors because both sculk-sensor-interact and " +
 | 
				
			||||||
 | 
					                                    "misc-interact = false");
 | 
				
			||||||
                            event.setCancelled(true);
 | 
					                            event.setCancelled(true);
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
@@ -137,7 +140,6 @@ public class BlockEventListener117 implements Listener {
 | 
				
			|||||||
        if (area == null) {
 | 
					        if (area == null) {
 | 
				
			||||||
            for (int i = blocks.size() - 1; i >= 0; i--) {
 | 
					            for (int i = blocks.size() - 1; i >= 0; i--) {
 | 
				
			||||||
                Location blockLocation = BukkitUtil.adapt(blocks.get(i).getLocation());
 | 
					                Location blockLocation = BukkitUtil.adapt(blocks.get(i).getLocation());
 | 
				
			||||||
                blockLocation = BukkitUtil.adapt(blocks.get(i).getLocation());
 | 
					 | 
				
			||||||
                if (blockLocation.isPlotArea()) {
 | 
					                if (blockLocation.isPlotArea()) {
 | 
				
			||||||
                    blocks.remove(i);
 | 
					                    blocks.remove(i);
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -91,6 +91,7 @@ import com.plotsquared.core.plot.flag.implementations.ProjectilesFlag;
 | 
				
			|||||||
import com.plotsquared.core.plot.flag.implementations.PveFlag;
 | 
					import com.plotsquared.core.plot.flag.implementations.PveFlag;
 | 
				
			||||||
import com.plotsquared.core.plot.flag.implementations.PvpFlag;
 | 
					import com.plotsquared.core.plot.flag.implementations.PvpFlag;
 | 
				
			||||||
import com.plotsquared.core.plot.flag.implementations.RedstoneFlag;
 | 
					import com.plotsquared.core.plot.flag.implementations.RedstoneFlag;
 | 
				
			||||||
 | 
					import com.plotsquared.core.plot.flag.implementations.SculkSensorInteractFlag;
 | 
				
			||||||
import com.plotsquared.core.plot.flag.implementations.ServerPlotFlag;
 | 
					import com.plotsquared.core.plot.flag.implementations.ServerPlotFlag;
 | 
				
			||||||
import com.plotsquared.core.plot.flag.implementations.SnowFormFlag;
 | 
					import com.plotsquared.core.plot.flag.implementations.SnowFormFlag;
 | 
				
			||||||
import com.plotsquared.core.plot.flag.implementations.SnowMeltFlag;
 | 
					import com.plotsquared.core.plot.flag.implementations.SnowMeltFlag;
 | 
				
			||||||
@@ -172,6 +173,7 @@ public final class GlobalFlagContainer extends FlagContainer {
 | 
				
			|||||||
        this.addFlag(MobBreakFlag.MOB_BREAK_FALSE);
 | 
					        this.addFlag(MobBreakFlag.MOB_BREAK_FALSE);
 | 
				
			||||||
        this.addFlag(MobPlaceFlag.MOB_PLACE_FALSE);
 | 
					        this.addFlag(MobPlaceFlag.MOB_PLACE_FALSE);
 | 
				
			||||||
        this.addFlag(MiscInteractFlag.MISC_INTERACT_FALSE);
 | 
					        this.addFlag(MiscInteractFlag.MISC_INTERACT_FALSE);
 | 
				
			||||||
 | 
					        this.addFlag(SculkSensorInteractFlag.SCULK_SENSOR_INTERACT_FALSE);
 | 
				
			||||||
        this.addFlag(MiscPlaceFlag.MISC_PLACE_FALSE);
 | 
					        this.addFlag(MiscPlaceFlag.MISC_PLACE_FALSE);
 | 
				
			||||||
        this.addFlag(MycelGrowFlag.MYCEL_GROW_TRUE);
 | 
					        this.addFlag(MycelGrowFlag.MYCEL_GROW_TRUE);
 | 
				
			||||||
        this.addFlag(NotifyEnterFlag.NOTIFY_ENTER_FALSE);
 | 
					        this.addFlag(NotifyEnterFlag.NOTIFY_ENTER_FALSE);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -0,0 +1,39 @@
 | 
				
			|||||||
 | 
					/*
 | 
				
			||||||
 | 
					 * PlotSquared, a land and world management plugin for Minecraft.
 | 
				
			||||||
 | 
					 * Copyright (C) IntellectualSites <https://intellectualsites.com>
 | 
				
			||||||
 | 
					 * Copyright (C) IntellectualSites team and contributors
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * This program is free software: you can redistribute it and/or modify
 | 
				
			||||||
 | 
					 * it under the terms of the GNU General Public License as published by
 | 
				
			||||||
 | 
					 * the Free Software Foundation, either version 3 of the License, or
 | 
				
			||||||
 | 
					 * (at your option) any later version.
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * This program is distributed in the hope that it will be useful,
 | 
				
			||||||
 | 
					 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
				
			||||||
 | 
					 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
				
			||||||
 | 
					 * GNU General Public License for more details.
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * You should have received a copy of the GNU General Public License
 | 
				
			||||||
 | 
					 * along with this program.  If not, see <https://www.gnu.org/licenses/>.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					package com.plotsquared.core.plot.flag.implementations;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.plotsquared.core.configuration.caption.TranslatableCaption;
 | 
				
			||||||
 | 
					import com.plotsquared.core.plot.flag.types.BooleanFlag;
 | 
				
			||||||
 | 
					import org.checkerframework.checker.nullness.qual.NonNull;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class SculkSensorInteractFlag extends BooleanFlag<SculkSensorInteractFlag> {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public static final SculkSensorInteractFlag SCULK_SENSOR_INTERACT_TRUE = new SculkSensorInteractFlag(true);
 | 
				
			||||||
 | 
					    public static final SculkSensorInteractFlag SCULK_SENSOR_INTERACT_FALSE = new SculkSensorInteractFlag(false);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private SculkSensorInteractFlag(boolean value) {
 | 
				
			||||||
 | 
					        super(value, TranslatableCaption.of("flags.flag_description_sculk_sensor_interact"));
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override
 | 
				
			||||||
 | 
					    protected SculkSensorInteractFlag flagOf(@NonNull Boolean value) {
 | 
				
			||||||
 | 
					        return value ? SCULK_SENSOR_INTERACT_TRUE : SCULK_SENSOR_INTERACT_FALSE;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@@ -572,6 +572,7 @@
 | 
				
			|||||||
  "flags.flag_description_misc_break": "<gray>Set to `true` to allow guests to break miscellaneous items.</gray>",
 | 
					  "flags.flag_description_misc_break": "<gray>Set to `true` to allow guests to break miscellaneous items.</gray>",
 | 
				
			||||||
  "flags.flag_description_misc_cap": "<gray>Set to an integer value to limit the amount of miscellaneous entities on the plot.</gray>",
 | 
					  "flags.flag_description_misc_cap": "<gray>Set to an integer value to limit the amount of miscellaneous entities on the plot.</gray>",
 | 
				
			||||||
  "flags.flag_description_misc_interact": "<gray>Set to `true` to allow guests to interact with miscellaneous items.</gray>",
 | 
					  "flags.flag_description_misc_interact": "<gray>Set to `true` to allow guests to interact with miscellaneous items.</gray>",
 | 
				
			||||||
 | 
					  "flags.flag_description_sculk_sensor_interact": "<gray>Set to `true` to allow guests to interact with sculk sensors.</gray>",
 | 
				
			||||||
  "flags.flag_description_misc_place": "<gray>Set to `true` to allow guests to place miscellaneous items.</gray>",
 | 
					  "flags.flag_description_misc_place": "<gray>Set to `true` to allow guests to place miscellaneous items.</gray>",
 | 
				
			||||||
  "flags.flag_description_mob_break": "<gray>Set to `true` to allow mobs to break blocks within the plot.</gray>",
 | 
					  "flags.flag_description_mob_break": "<gray>Set to `true` to allow mobs to break blocks within the plot.</gray>",
 | 
				
			||||||
  "flags.flag_description_mob_cap": "<gray>Set to an integer value to limit the amount of mobs on the plot.</gray>",
 | 
					  "flags.flag_description_mob_cap": "<gray>Set to an integer value to limit the amount of mobs on the plot.</gray>",
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user