/* * This file is a part of the SteamWar software. * * Copyright (C) 2025 SteamWar.de-Serverteam * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero 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 Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ package de.steamwar.fightsystem.utils; import org.bukkit.DyeColor; import org.bukkit.Material; import org.bukkit.World; import org.bukkit.block.Block; import org.bukkit.entity.Player; import org.bukkit.event.block.BlockPhysicsEvent; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; public class FlatteningWrapper8 implements FlatteningWrapper { @Override public DyeColor getSilver() { return DyeColor.SILVER; } @Override public boolean isWater(Block block) { Material type = block.getType(); return type == Material.WATER || type == Material.STATIONARY_WATER || type == Material.LAVA || type == Material.STATIONARY_LAVA; } @Override public boolean removeWater(Block block) { if(isWater(block)){ block.setType(Material.AIR); return true; } return false; } @Override public boolean containsBlockMeta(ItemMeta meta) { return false; } @Override public boolean hasAttributeModifier(ItemStack stack) { return false; } @Override public boolean doRecord(BlockPhysicsEvent e) { return e.getChangedType() != e.getBlock().getType(); } @Override public void forceLoadChunk(World world, int cX, int cZ) { world.setKeepSpawnInMemory(true); } @Override public boolean checkPistonMoving(Block block) { return block.getType() == Material.PISTON_MOVING_PIECE; } @Override public boolean isFacingWater(Block dispenser) { return false; } @Override public boolean isCrouching(Player player) { return false; } @Override @SuppressWarnings("deprecation") public void sendBlockChange(Player player, Block block, Material type) { player.sendBlockChange(block.getLocation(), type, (byte)0); } }