mirror of
https://github.com/CivMC/Civ.git
synced 2026-07-15 23:20:44 +00:00
Revert "prevent brewing without oxygen"
This reverts commit 472089ed05.
This commit is contained in:
@@ -18,7 +18,6 @@ import net.civmc.zorweth.flight.FlightComputerGui;
|
|||||||
import net.civmc.zorweth.mechanics.Fuel;
|
import net.civmc.zorweth.mechanics.Fuel;
|
||||||
import net.civmc.zorweth.mechanics.OilMechanics;
|
import net.civmc.zorweth.mechanics.OilMechanics;
|
||||||
import net.civmc.zorweth.oxygen.ActivityManager;
|
import net.civmc.zorweth.oxygen.ActivityManager;
|
||||||
import net.civmc.zorweth.oxygen.BreweryOxygenListener;
|
|
||||||
import net.civmc.zorweth.oxygen.OxygenBladder;
|
import net.civmc.zorweth.oxygen.OxygenBladder;
|
||||||
import net.civmc.zorweth.oxygen.OxygenCommand;
|
import net.civmc.zorweth.oxygen.OxygenCommand;
|
||||||
import net.civmc.zorweth.oxygen.OxygenDisplay;
|
import net.civmc.zorweth.oxygen.OxygenDisplay;
|
||||||
@@ -127,9 +126,6 @@ public final class ZorwethPlugin extends JavaPlugin {
|
|||||||
|
|
||||||
this.oxygenManager = OxygenManager.deserialize(this, activityManager, oxygenSection);
|
this.oxygenManager = OxygenManager.deserialize(this, activityManager, oxygenSection);
|
||||||
getServer().getPluginManager().registerEvents(this.oxygenManager, this);
|
getServer().getPluginManager().registerEvents(this.oxygenManager, this);
|
||||||
if (getServer().getPluginManager().isPluginEnabled("BreweryX")) {
|
|
||||||
getServer().getPluginManager().registerEvents(new BreweryOxygenListener(this.oxygenManager), this);
|
|
||||||
}
|
|
||||||
getServer().getPluginManager().registerEvents(new SpaceKelpListener(), this);
|
getServer().getPluginManager().registerEvents(new SpaceKelpListener(), this);
|
||||||
getCommand("oxygen").setExecutor(new OxygenCommand(this.oxygenManager));
|
getCommand("oxygen").setExecutor(new OxygenCommand(this.oxygenManager));
|
||||||
|
|
||||||
|
|||||||
@@ -1,53 +0,0 @@
|
|||||||
package net.civmc.zorweth.oxygen;
|
|
||||||
|
|
||||||
import com.dre.brewery.api.events.IngedientAddEvent;
|
|
||||||
import com.dre.brewery.api.events.brew.BrewModifyEvent;
|
|
||||||
import java.util.Objects;
|
|
||||||
import net.kyori.adventure.text.Component;
|
|
||||||
import net.kyori.adventure.text.format.NamedTextColor;
|
|
||||||
import org.bukkit.block.Block;
|
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
import org.bukkit.event.EventHandler;
|
|
||||||
import org.bukkit.event.EventPriority;
|
|
||||||
import org.bukkit.event.Listener;
|
|
||||||
|
|
||||||
public final class BreweryOxygenListener implements Listener {
|
|
||||||
|
|
||||||
private static final Component NO_OXYGEN_MESSAGE = Component.text("Brewery does not work without oxygen.",
|
|
||||||
NamedTextColor.RED);
|
|
||||||
|
|
||||||
private final OxygenManager oxygenManager;
|
|
||||||
|
|
||||||
public BreweryOxygenListener(final OxygenManager oxygenManager) {
|
|
||||||
this.oxygenManager = Objects.requireNonNull(oxygenManager);
|
|
||||||
}
|
|
||||||
|
|
||||||
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
|
|
||||||
public void on(final IngedientAddEvent event) {
|
|
||||||
if (hasOxygen(event.getBlock())) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
event.setCancelled(true);
|
|
||||||
sendNoOxygenMessage(event.getPlayer());
|
|
||||||
}
|
|
||||||
|
|
||||||
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
|
|
||||||
public void on(final BrewModifyEvent event) {
|
|
||||||
final Player player = event.getPlayer();
|
|
||||||
if (player == null || this.oxygenManager.hasOxygen(player.getLocation())) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
event.setCancelled(true);
|
|
||||||
sendNoOxygenMessage(player);
|
|
||||||
}
|
|
||||||
|
|
||||||
private boolean hasOxygen(final Block block) {
|
|
||||||
return block != null && this.oxygenManager.hasOxygen(block.getLocation());
|
|
||||||
}
|
|
||||||
|
|
||||||
private void sendNoOxygenMessage(final Player player) {
|
|
||||||
if (player != null) {
|
|
||||||
player.sendMessage(NO_OXYGEN_MESSAGE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -21,7 +21,6 @@ import net.kyori.adventure.text.format.NamedTextColor;
|
|||||||
import net.kyori.adventure.text.format.TextDecoration;
|
import net.kyori.adventure.text.format.TextDecoration;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.GameMode;
|
import org.bukkit.GameMode;
|
||||||
import org.bukkit.Location;
|
|
||||||
import org.bukkit.NamespacedKey;
|
import org.bukkit.NamespacedKey;
|
||||||
import org.bukkit.Registry;
|
import org.bukkit.Registry;
|
||||||
import org.bukkit.World;
|
import org.bukkit.World;
|
||||||
@@ -331,14 +330,6 @@ public class OxygenManager implements Listener {
|
|||||||
return this.biomeMultipliers.getOrDefault(biome, 0D) == 0D;
|
return this.biomeMultipliers.getOrDefault(biome, 0D) == 0D;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean hasOxygen(final Location location) {
|
|
||||||
final World locationWorld = location.getWorld();
|
|
||||||
return locationWorld != null
|
|
||||||
&& locationWorld.getName().equals(this.world)
|
|
||||||
&& locationWorld.getEnvironment() != World.Environment.NETHER
|
|
||||||
&& hasOxygen(location.getBlock().getBiome());
|
|
||||||
}
|
|
||||||
|
|
||||||
private void addOxygen(final Player player, final double amount) {
|
private void addOxygen(final Player player, final double amount) {
|
||||||
setOxygen(player, getOxygen(player) + amount);
|
setOxygen(player, getOxygen(player) + amount);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user