Allow bucketing obsidian to lava.

This commit is contained in:
Len 2024-02-17 15:30:36 +01:00
parent cccd301cbb
commit 084b3ea5de

View File

@ -4,18 +4,23 @@ import com.alttd.cometskyblock.CometSkyBlockPlugin;
import com.alttd.cometskyblock.island.Island;
import com.alttd.cometskyblock.island.IslandPlayer;
import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.World;
import org.bukkit.block.Block;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.event.Cancellable;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.block.BlockBreakEvent;
import org.bukkit.event.block.BlockPlaceEvent;
import org.bukkit.event.block.EntityBlockFormEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.event.player.PlayerBucketEmptyEvent;
import org.bukkit.event.player.PlayerBucketFillEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.inventory.ItemStack;
public class PlayerListener implements Listener {
@ -29,6 +34,22 @@ public class PlayerListener implements Listener {
canInteract(event, event.getPlayer());
}
// TODO - This should be moved to upstream Comet.
@EventHandler(ignoreCancelled = true)
public void onObsidianBucketInteraction(PlayerInteractEvent event) {
if(!canInteract(event, event.getPlayer()))
return;
Block block = event.getClickedBlock();
Player player = event.getPlayer();
Material material = player.getInventory().getItemInMainHand().getType();
if (event.getAction() == Action.RIGHT_CLICK_BLOCK && block != null && block.getType() == Material.OBSIDIAN && material == Material.BUCKET) {
block.setType(Material.AIR);
player.getInventory().setItemInMainHand(new ItemStack(Material.LAVA_BUCKET, 1));
event.setCancelled(true);
}
}
@EventHandler(ignoreCancelled = true)
public void onPlayerBucketEmpty(PlayerBucketEmptyEvent event) {
canInteract(event, event.getPlayer());