fix: replace usages of snow tag (#3758)

* replace usages of snow tag

* powder snow is 1.17+
This commit is contained in:
Hannes Greule 2022-08-10 11:03:20 +02:00 committed by GitHub
parent cba1927cc7
commit 77bce43ace
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -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);