Skip to content

Commit c73726d

Browse files
committed
feat cancel spread water, lava
1 parent 2d7b439 commit c73726d

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

src/main/java/com/github/elic0de/thejpspit/listener/BlockPlaceListener.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,13 @@
44
import org.bukkit.Bukkit;
55
import org.bukkit.GameMode;
66
import org.bukkit.Location;
7+
import org.bukkit.Material;
78
import org.bukkit.block.BlockState;
89
import org.bukkit.entity.Player;
910
import org.bukkit.event.EventHandler;
1011
import org.bukkit.event.Listener;
12+
import org.bukkit.event.block.BlockFormEvent;
13+
import org.bukkit.event.block.BlockFromToEvent;
1114
import org.bukkit.event.block.BlockPlaceEvent;
1215
import org.bukkit.event.player.PlayerBucketEmptyEvent;
1316

@@ -58,6 +61,25 @@ public void on(PlayerBucketEmptyEvent event) {
5861
}, (10 * 20));
5962
}
6063

64+
@EventHandler
65+
private void on(BlockFormEvent event) {
66+
if (event.getNewState().getBlock().getType() == Material.OBSIDIAN) {
67+
event.setCancelled(true);
68+
}
69+
}
70+
71+
@EventHandler
72+
private void onLiquidSpread(BlockFromToEvent event) {
73+
Material block = event.getBlock().getType();
74+
75+
if (block == Material.LAVA || block == Material.WATER) {
76+
event.getBlock().setType(Material.AIR);
77+
event.setCancelled(true);
78+
return;
79+
}
80+
}
81+
82+
6183
public static void restoreBlocks() {
6284
replacedStates.values().forEach(b -> b.update(true));
6385
}

0 commit comments

Comments
 (0)