mirror of
				https://github.com/IntellectualSites/PlotSquared.git
				synced 2025-10-29 16:43:43 +01:00 
			
		
		
		
	Compare commits
	
		
			2 Commits
		
	
	
		
			7.5.0
			...
			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