mirror of
https://github.com/IntellectualSites/PlotSquared.git
synced 2025-07-22 07:14:44 +02:00
Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
b0a4e11c46 | |||
77bce43ace | |||
cba1927cc7 |
@ -121,6 +121,23 @@ public class BlockEventListener implements Listener {
|
|||||||
Material.TURTLE_EGG,
|
Material.TURTLE_EGG,
|
||||||
Material.TURTLE_SPAWN_EGG
|
Material.TURTLE_SPAWN_EGG
|
||||||
);
|
);
|
||||||
|
private static final Set<Material> SNOW; // needed as Tag.SNOW isn't present in 1.16.5
|
||||||
|
|
||||||
|
static {
|
||||||
|
if (PlotSquared.platform().serverVersion()[1] < 17) {
|
||||||
|
SNOW = Set.of(
|
||||||
|
Material.SNOW,
|
||||||
|
Material.SNOW_BLOCK
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
SNOW = Set.of(
|
||||||
|
Material.SNOW,
|
||||||
|
Material.SNOW_BLOCK,
|
||||||
|
Material.POWDER_SNOW // only since 1.17
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private final PlotAreaManager plotAreaManager;
|
private final PlotAreaManager plotAreaManager;
|
||||||
private final WorldEdit worldEdit;
|
private final WorldEdit worldEdit;
|
||||||
|
|
||||||
@ -529,7 +546,7 @@ public class BlockEventListener implements Listener {
|
|||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (Tag.SNOW.isTagged(event.getNewState().getType())) {
|
if (SNOW.contains(event.getNewState().getType())) {
|
||||||
if (!plot.getFlag(SnowFormFlag.class)) {
|
if (!plot.getFlag(SnowFormFlag.class)) {
|
||||||
plot.debug("Snow could not form because snow-form = false");
|
plot.debug("Snow could not form because snow-form = false");
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
@ -561,7 +578,7 @@ public class BlockEventListener implements Listener {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Class<? extends BooleanFlag<?>> flag;
|
Class<? extends BooleanFlag<?>> flag;
|
||||||
if (Tag.SNOW.isTagged(event.getNewState().getType())) {
|
if (SNOW.contains(event.getNewState().getType())) {
|
||||||
flag = SnowFormFlag.class;
|
flag = SnowFormFlag.class;
|
||||||
} else if (Tag.ICE.isTagged(event.getNewState().getType())) {
|
} else if (Tag.ICE.isTagged(event.getNewState().getType())) {
|
||||||
flag = IceFormFlag.class;
|
flag = IceFormFlag.class;
|
||||||
@ -678,7 +695,7 @@ public class BlockEventListener implements Listener {
|
|||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (Tag.SNOW.isTagged(blockType)) {
|
if (SNOW.contains(blockType)) {
|
||||||
if (!plot.getFlag(SnowMeltFlag.class)) {
|
if (!plot.getFlag(SnowMeltFlag.class)) {
|
||||||
plot.debug("Snow could not melt because snow-melt = false");
|
plot.debug("Snow could not melt because snow-melt = false");
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
|
@ -126,16 +126,16 @@ public class EntitySpawnListener implements Listener {
|
|||||||
Plot plot = location.getOwnedPlotAbs();
|
Plot plot = location.getOwnedPlotAbs();
|
||||||
EntityType type = entity.getType();
|
EntityType type = entity.getType();
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
|
if (type == EntityType.DROPPED_ITEM) {
|
||||||
|
if (Settings.Enabled_Components.KILL_ROAD_ITEMS) {
|
||||||
|
event.setCancelled(true);
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (!area.isMobSpawning()) {
|
if (!area.isMobSpawning()) {
|
||||||
if (type == EntityType.PLAYER) {
|
if (type == EntityType.PLAYER) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (type == EntityType.DROPPED_ITEM) {
|
|
||||||
if (Settings.Enabled_Components.KILL_ROAD_ITEMS) {
|
|
||||||
event.setCancelled(true);
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (type.isAlive()) {
|
if (type.isAlive()) {
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
}
|
}
|
||||||
|
@ -229,17 +229,17 @@ public class PaperListener implements Listener {
|
|||||||
Plot plot = location.getOwnedPlotAbs();
|
Plot plot = location.getOwnedPlotAbs();
|
||||||
if (plot == null) {
|
if (plot == null) {
|
||||||
EntityType type = event.getType();
|
EntityType type = event.getType();
|
||||||
|
// PreCreatureSpawnEvent **should** not be called for DROPPED_ITEM, just for the sake of consistency
|
||||||
|
if (type == EntityType.DROPPED_ITEM) {
|
||||||
|
if (Settings.Enabled_Components.KILL_ROAD_ITEMS) {
|
||||||
|
event.setCancelled(true);
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (!area.isMobSpawning()) {
|
if (!area.isMobSpawning()) {
|
||||||
if (type == EntityType.PLAYER) {
|
if (type == EntityType.PLAYER) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (type == EntityType.DROPPED_ITEM) {
|
|
||||||
if (Settings.Enabled_Components.KILL_ROAD_ITEMS) {
|
|
||||||
event.setShouldAbortSpawn(true);
|
|
||||||
event.setCancelled(true);
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (type.isAlive()) {
|
if (type.isAlive()) {
|
||||||
event.setShouldAbortSpawn(true);
|
event.setShouldAbortSpawn(true);
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
|
@ -19,7 +19,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
group = "com.plotsquared"
|
group = "com.plotsquared"
|
||||||
version = "6.9.4-SNAPSHOT"
|
version = "6.9.4"
|
||||||
|
|
||||||
subprojects {
|
subprojects {
|
||||||
group = rootProject.group
|
group = rootProject.group
|
||||||
|
Reference in New Issue
Block a user