Add Region section Support for /tnt /fire /freeze #168
@ -42,10 +42,6 @@ public class CommandFire extends RegionToggleCommand {
|
|||||||
String getDisableMessage(){
|
String getDisableMessage(){
|
||||||
return "§aFeuerschaden aktiviert";
|
return "§aFeuerschaden aktiviert";
|
||||||
}
|
}
|
||||||
@Override
|
|
||||||
String getNoRegionMessage() {
|
|
||||||
return "§cDu befindest dich derzeit in keiner Region";
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
boolean toggle(Region region) {
|
boolean toggle(Region region) {
|
||||||
@ -53,10 +49,18 @@ public class CommandFire extends RegionToggleCommand {
|
|||||||
return region.isFire();
|
return region.isFire();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
boolean toggleGlobal() {
|
||||||
|
Region.NoRegion.fire = !Region.NoRegion.fire;
|
||||||
|
return Region.NoRegion.fire;
|
||||||
|
}
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onFireDamage(BlockBurnEvent e) {
|
public void onFireDamage(BlockBurnEvent e) {
|
||||||
Region.getRegion(e.getBlock().getLocation(), region -> {
|
Region.getRegion(e.getBlock().getLocation(), region -> {
|
||||||
if (region.isFire()) e.setCancelled(true);
|
if (region.isFire()) e.setCancelled(true);
|
||||||
|
}, () -> {
|
||||||
|
if (Region.NoRegion.fire) e.setCancelled(true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -64,6 +68,8 @@ public class CommandFire extends RegionToggleCommand {
|
|||||||
public void onFireSpread(BlockSpreadEvent e){
|
public void onFireSpread(BlockSpreadEvent e){
|
||||||
Region.getRegion(e.getBlock().getLocation(), region -> {
|
Region.getRegion(e.getBlock().getLocation(), region -> {
|
||||||
if (region.isFire()) e.setCancelled(true);
|
if (region.isFire()) e.setCancelled(true);
|
||||||
|
}, () -> {
|
||||||
|
if (Region.NoRegion.fire) e.setCancelled(true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21,11 +21,7 @@
|
|||||||
|
|
||||||
package de.steamwar.bausystem.commands;
|
package de.steamwar.bausystem.commands;
|
||||||
|
|
||||||
import de.steamwar.bausystem.BauSystem;
|
|
||||||
import de.steamwar.bausystem.world.Region;
|
import de.steamwar.bausystem.world.Region;
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.Location;
|
|
||||||
import org.bukkit.Material;
|
|
||||||
import org.bukkit.entity.EntityType;
|
import org.bukkit.entity.EntityType;
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.block.*;
|
import org.bukkit.event.block.*;
|
||||||
@ -50,10 +46,6 @@ public class CommandFreeze extends RegionToggleCommand {
|
|||||||
String getDisableMessage(){
|
String getDisableMessage(){
|
||||||
return "§aWelt aufgetaut";
|
return "§aWelt aufgetaut";
|
||||||
}
|
}
|
||||||
@Override
|
|
||||||
String getNoRegionMessage() {
|
|
||||||
return "§cDu befindest dich derzeit in keiner Region";
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
boolean toggle(Region region) {
|
boolean toggle(Region region) {
|
||||||
@ -61,6 +53,12 @@ public class CommandFreeze extends RegionToggleCommand {
|
|||||||
return region.isFreeze();
|
return region.isFreeze();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
boolean toggleGlobal() {
|
||||||
|
Region.NoRegion.freeze = !Region.NoRegion.freeze;
|
||||||
|
return Region.NoRegion.freeze;
|
||||||
|
}
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onEntitySpawn(EntitySpawnEvent e) {
|
public void onEntitySpawn(EntitySpawnEvent e) {
|
||||||
Region.getRegion(e.getLocation(), region -> {
|
Region.getRegion(e.getLocation(), region -> {
|
||||||
@ -70,6 +68,13 @@ public class CommandFreeze extends RegionToggleCommand {
|
|||||||
if (e.getEntityType() == EntityType.FALLING_BLOCK) {
|
if (e.getEntityType() == EntityType.FALLING_BLOCK) {
|
||||||
e.setCancelled(true);
|
e.setCancelled(true);
|
||||||
}
|
}
|
||||||
|
}, () -> {
|
||||||
|
if (!Region.NoRegion.freeze) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (e.getEntityType() == EntityType.FALLING_BLOCK) {
|
||||||
|
e.setCancelled(true);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -77,6 +82,8 @@ public class CommandFreeze extends RegionToggleCommand {
|
|||||||
public void onPhysicsEvent(BlockPhysicsEvent e){
|
public void onPhysicsEvent(BlockPhysicsEvent e){
|
||||||
Region.getRegion(e.getBlock().getLocation(), region -> {
|
Region.getRegion(e.getBlock().getLocation(), region -> {
|
||||||
if (region.isFreeze()) e.setCancelled(true);
|
if (region.isFreeze()) e.setCancelled(true);
|
||||||
|
}, () -> {
|
||||||
|
if (Region.NoRegion.freeze) e.setCancelled(true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -84,6 +91,8 @@ public class CommandFreeze extends RegionToggleCommand {
|
|||||||
public void onPistonExtend(BlockPistonExtendEvent e){
|
public void onPistonExtend(BlockPistonExtendEvent e){
|
||||||
Region.getRegion(e.getBlock().getLocation(), region -> {
|
Region.getRegion(e.getBlock().getLocation(), region -> {
|
||||||
if (region.isFreeze()) e.setCancelled(true);
|
if (region.isFreeze()) e.setCancelled(true);
|
||||||
|
}, () -> {
|
||||||
|
if (Region.NoRegion.freeze) e.setCancelled(true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -91,6 +100,8 @@ public class CommandFreeze extends RegionToggleCommand {
|
|||||||
public void onPistonRetract(BlockPistonRetractEvent e){
|
public void onPistonRetract(BlockPistonRetractEvent e){
|
||||||
Region.getRegion(e.getBlock().getLocation(), region -> {
|
Region.getRegion(e.getBlock().getLocation(), region -> {
|
||||||
if (region.isFreeze()) e.setCancelled(true);
|
if (region.isFreeze()) e.setCancelled(true);
|
||||||
|
}, () -> {
|
||||||
|
if (Region.NoRegion.freeze) e.setCancelled(true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -98,6 +109,8 @@ public class CommandFreeze extends RegionToggleCommand {
|
|||||||
public void onBlockGrow(BlockGrowEvent e){
|
public void onBlockGrow(BlockGrowEvent e){
|
||||||
Region.getRegion(e.getBlock().getLocation(), region -> {
|
Region.getRegion(e.getBlock().getLocation(), region -> {
|
||||||
if (region.isFreeze()) e.setCancelled(true);
|
if (region.isFreeze()) e.setCancelled(true);
|
||||||
|
}, () -> {
|
||||||
|
if (Region.NoRegion.freeze) e.setCancelled(true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -105,6 +118,8 @@ public class CommandFreeze extends RegionToggleCommand {
|
|||||||
public void onRedstoneEvent(BlockRedstoneEvent e){
|
public void onRedstoneEvent(BlockRedstoneEvent e){
|
||||||
Region.getRegion(e.getBlock().getLocation(), region -> {
|
Region.getRegion(e.getBlock().getLocation(), region -> {
|
||||||
if (region.isFreeze()) e.setNewCurrent(e.getOldCurrent());
|
if (region.isFreeze()) e.setNewCurrent(e.getOldCurrent());
|
||||||
|
}, () -> {
|
||||||
|
if (Region.NoRegion.freeze) e.setNewCurrent(e.getOldCurrent());
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -112,6 +127,8 @@ public class CommandFreeze extends RegionToggleCommand {
|
|||||||
public void onBlockDispense(BlockDispenseEvent e){
|
public void onBlockDispense(BlockDispenseEvent e){
|
||||||
Region.getRegion(e.getBlock().getLocation(), region -> {
|
Region.getRegion(e.getBlock().getLocation(), region -> {
|
||||||
if (region.isFreeze()) e.setCancelled(true);
|
if (region.isFreeze()) e.setCancelled(true);
|
||||||
|
}, () -> {
|
||||||
|
if (Region.NoRegion.freeze) e.setCancelled(true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -119,6 +136,8 @@ public class CommandFreeze extends RegionToggleCommand {
|
|||||||
public void onInventoryMoveEvent(InventoryMoveItemEvent e){
|
public void onInventoryMoveEvent(InventoryMoveItemEvent e){
|
||||||
Region.getRegion(e.getDestination().getLocation(), region -> {
|
Region.getRegion(e.getDestination().getLocation(), region -> {
|
||||||
if (region.isFreeze()) e.setCancelled(true);
|
if (region.isFreeze()) e.setCancelled(true);
|
||||||
|
}, () -> {
|
||||||
|
if (Region.NoRegion.freeze) e.setCancelled(true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -43,7 +43,7 @@ public class CommandInfo implements CommandExecutor {
|
|||||||
sender.sendMessage(BauSystem.PREFIX + "Besitzer: §e" + SteamwarUser.get(BauSystem.getOwnerID()).getUserName());
|
sender.sendMessage(BauSystem.PREFIX + "Besitzer: §e" + SteamwarUser.get(BauSystem.getOwnerID()).getUserName());
|
||||||
Region region = Region.getRegion(player);
|
Region region = Region.getRegion(player);
|
||||||
if (region == null) {
|
if (region == null) {
|
||||||
sender.sendMessage(BauSystem.PREFIX + "§7Du bist in keiner Region.");
|
sender.sendMessage(BauSystem.PREFIX + "§eTNT§8: " + Region.NoRegion.tnt.getName() + " §eFire§8: " + (Region.NoRegion.fire ? "§aAUS" : "§cAN") + " §eFreeze§8: " + (Region.NoRegion.freeze ? "§aAN" : "§cAUS"));
|
||||||
} else {
|
} else {
|
||||||
sender.sendMessage(BauSystem.PREFIX + "§eTNT§8: " + region.getTntMode().getName() + " §eFire§8: " + (region.isFire() ? "§aAUS" : "§cAN") + " §eFreeze§8: " + (region.isFreeze() ? "§aAN" : "§cAUS"));
|
sender.sendMessage(BauSystem.PREFIX + "§eTNT§8: " + region.getTntMode().getName() + " §eFire§8: " + (region.isFire() ? "§aAUS" : "§cAN") + " §eFreeze§8: " + (region.isFreeze() ? "§aAN" : "§cAUS"));
|
||||||
}
|
}
|
||||||
|
@ -23,8 +23,6 @@ import de.steamwar.bausystem.BauSystem;
|
|||||||
import de.steamwar.bausystem.Permission;
|
import de.steamwar.bausystem.Permission;
|
||||||
import de.steamwar.bausystem.world.Region;
|
import de.steamwar.bausystem.world.Region;
|
||||||
import de.steamwar.bausystem.world.Welt;
|
import de.steamwar.bausystem.world.Welt;
|
||||||
import net.md_5.bungee.api.ChatMessageType;
|
|
||||||
import net.md_5.bungee.api.chat.TextComponent;
|
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandExecutor;
|
import org.bukkit.command.CommandExecutor;
|
||||||
@ -77,10 +75,6 @@ public class CommandTNT implements CommandExecutor, Listener {
|
|||||||
return "§cEine Explosion hätte Blöcke im Baubereich zerstört";
|
return "§cEine Explosion hätte Blöcke im Baubereich zerstört";
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getNoRegionMessage() {
|
|
||||||
return "§cDu befindest dich derzeit in keiner Region";
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(CommandSender sender, Command command, String s, String[] args) {
|
public boolean onCommand(CommandSender sender, Command command, String s, String[] args) {
|
||||||
if (!(sender instanceof Player)) return false;
|
if (!(sender instanceof Player)) return false;
|
||||||
@ -118,13 +112,37 @@ public class CommandTNT implements CommandExecutor, Listener {
|
|||||||
|
|
||||||
Region region = Region.getRegion(player.getLocation());
|
Region region = Region.getRegion(player.getLocation());
|
||||||
if (region == null) {
|
if (region == null) {
|
||||||
RegionToggleCommand.actionBar(player, getNoRegionMessage());
|
tntGlobalToggle(player, requestedMode, requestedMessage);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
tntToggle(region, requestedMode, requestedMessage);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void tntGlobalToggle(Player player, TNTMode requestedMode, String requestedMessage) {
|
||||||
|
if (requestedMode != null && requestedMode != TNTMode.ONLY_TB) {
|
||||||
|
Region.NoRegion.tnt = requestedMode;
|
||||||
|
RegionToggleCommand.actionBar(player, requestedMessage);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
switch (Region.NoRegion.tnt) {
|
||||||
|
case ON:
|
||||||
|
case ONLY_TB:
|
||||||
|
Region.NoRegion.tnt = TNTMode.OFF;
|
||||||
|
RegionToggleCommand.actionBar(player, getDisableMessage());
|
||||||
|
break;
|
||||||
|
case OFF:
|
||||||
|
Region.NoRegion.tnt = TNTMode.ON;
|
||||||
|
RegionToggleCommand.actionBar(player, getEnableMessage());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void tntToggle(Region region, TNTMode requestedMode, String requestedMessage) {
|
||||||
if (requestedMode != null) {
|
if (requestedMode != null) {
|
||||||
region.setTntMode(requestedMode);
|
region.setTntMode(requestedMode);
|
||||||
RegionToggleCommand.actionBar(region, requestedMessage);
|
RegionToggleCommand.actionBar(region, requestedMessage);
|
||||||
return false;
|
return;
|
||||||
}
|
}
|
||||||
switch (region.getTntMode()) {
|
switch (region.getTntMode()) {
|
||||||
case ON:
|
case ON:
|
||||||
@ -142,14 +160,15 @@ public class CommandTNT implements CommandExecutor, Listener {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onExplode(EntityExplodeEvent event) {
|
public void onExplode(EntityExplodeEvent event) {
|
||||||
event.blockList().removeIf(block -> {
|
event.blockList().removeIf(block -> {
|
||||||
Region region = Region.getRegion(block.getLocation());
|
Region region = Region.getRegion(block.getLocation());
|
||||||
if (region == null) return false;
|
if (region == null) {
|
||||||
|
return Region.NoRegion.tnt == TNTMode.OFF;
|
||||||
|
}
|
||||||
if (region.getTntMode() == TNTMode.OFF) return true;
|
if (region.getTntMode() == TNTMode.OFF) return true;
|
||||||
if (region.getTntMode() == TNTMode.ON) return false;
|
if (region.getTntMode() == TNTMode.ON) return false;
|
||||||
if (region.hasBuildRegion() && region.inBuildRegion(block.getLocation())) {
|
if (region.hasBuildRegion() && region.inBuildRegion(block.getLocation())) {
|
||||||
|
@ -27,7 +27,6 @@ import de.steamwar.bausystem.world.Region;
|
|||||||
import de.steamwar.bausystem.world.Welt;
|
import de.steamwar.bausystem.world.Welt;
|
||||||
import net.md_5.bungee.api.ChatMessageType;
|
import net.md_5.bungee.api.ChatMessageType;
|
||||||
import net.md_5.bungee.api.chat.TextComponent;
|
import net.md_5.bungee.api.chat.TextComponent;
|
||||||
import net.minecraft.server.v1_15_R1.BlockCactus;
|
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandExecutor;
|
import org.bukkit.command.CommandExecutor;
|
||||||
@ -54,7 +53,11 @@ public abstract class RegionToggleCommand implements CommandExecutor, Listener {
|
|||||||
|
|
||||||
Region region = Region.getRegion(player);
|
Region region = Region.getRegion(player);
|
||||||
if (region == null) {
|
if (region == null) {
|
||||||
actionBar(player, getNoRegionMessage());
|
if (toggleGlobal()) {
|
||||||
|
actionBar(player, getEnableMessage());
|
||||||
|
} else {
|
||||||
|
actionBar(player, getDisableMessage());
|
||||||
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (toggle(region)) {
|
if (toggle(region)) {
|
||||||
@ -73,7 +76,6 @@ public abstract class RegionToggleCommand implements CommandExecutor, Listener {
|
|||||||
player.spigot().sendMessage(ChatMessageType.ACTION_BAR, TextComponent.fromLegacyText(s));
|
player.spigot().sendMessage(ChatMessageType.ACTION_BAR, TextComponent.fromLegacyText(s));
|
||||||
|
|||||||
}
|
}
|
||||||
|
|
||||||
abstract String getNoRegionMessage();
|
|
||||||
abstract String getNoPermMessage();
|
abstract String getNoPermMessage();
|
||||||
abstract String getEnableMessage();
|
abstract String getEnableMessage();
|
||||||
abstract String getDisableMessage();
|
abstract String getDisableMessage();
|
||||||
@ -82,5 +84,6 @@ public abstract class RegionToggleCommand implements CommandExecutor, Listener {
|
|||||||
* {@code true} for {@link #getEnableMessage()}, {@code false} for {@link #getDisableMessage()}
|
* {@code true} for {@link #getEnableMessage()}, {@code false} for {@link #getDisableMessage()}
|
||||||
*/
|
*/
|
||||||
abstract boolean toggle(Region region);
|
abstract boolean toggle(Region region);
|
||||||
|
abstract boolean toggleGlobal();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -64,6 +64,10 @@ public class BauScoreboard implements Listener {
|
|||||||
strings.add("§eTNT§8: " + region.getTntMode().getName());
|
strings.add("§eTNT§8: " + region.getTntMode().getName());
|
||||||
strings.add("§eFreeze§8: " + (region.isFreeze() ? "§aan" : "§caus"));
|
strings.add("§eFreeze§8: " + (region.isFreeze() ? "§aan" : "§caus"));
|
||||||
strings.add("§eFire§8: " + (region.isFire() ? "§aaus" : "§can"));
|
strings.add("§eFire§8: " + (region.isFire() ? "§aaus" : "§can"));
|
||||||
|
} else {
|
||||||
|
strings.add("§eTNT§8: " + Region.NoRegion.tnt.getName());
|
||||||
Lixfel
hat
Nur Testblock hat viele Spieler verwirrt/ist zu verwirrend: Alternative (etwas länger:) Nur außerhalb Baurahmen (kürzer:) Außerhalb Rahmen evtl. dürfte reichen "Baurahmen"? Einfach mal kurz User fragen, ob die das verstehen würden (A'la: Wenn im Scoreboard bei TNT: Baurahmen stehen würde, was denkst du, dass der TNT-Modus dann macht? Nur Testblock hat viele Spieler verwirrt/ist zu verwirrend: Alternative (etwas länger:) Nur außerhalb Baurahmen (kürzer:) Außerhalb Rahmen evtl. dürfte reichen "Baurahmen"? Einfach mal kurz User fragen, ob die das verstehen würden (A'la: Wenn im Scoreboard bei TNT: Baurahmen stehen würde, was denkst du, dass der TNT-Modus dann macht?
YoyoNow
hat
den Baurahmen zerstören also 'Außerhalb Baurahmen ist glaube besser' den Baurahmen zerstören also 'Außerhalb Baurahmen ist glaube besser'
YoyoNow
hat
Dieser Text ist viel zu lang. gibt es noch einen griffigeren Begriff oder Halbsatz? Dieser Text ist viel zu lang. gibt es noch einen griffigeren Begriff oder Halbsatz?
Lixfel
hat
TNT an/aus je nachdem, ob man sich derzeit im Baubereich befindet? TNT an/aus je nachdem, ob man sich derzeit im Baubereich befindet?
YoyoNow
hat
Weiß nicht. Macht das das ganze nicht noch langsamer mit dem Region zeug? und dann verwirrt das nur wieder, weil man das ganze nicht versteht und so. Weiß nicht. Macht das das ganze nicht noch langsamer mit dem Region zeug? und dann verwirrt das nur wieder, weil man das ganze nicht versteht und so.
|
|||||||
|
strings.add("§eFreeze§8: " + (Region.NoRegion.freeze ? "§aan" : "§caus"));
|
||||||
|
strings.add("§eFire§8: " + (Region.NoRegion.fire ? "§aaus" : "§can"));
|
||||||
}
|
}
|
||||||
strings.add("§eTrace§8: " + RecordStateMachine.getRecordStatus().getName());
|
strings.add("§eTrace§8: " + RecordStateMachine.getRecordStatus().getName());
|
||||||
strings.add("§eLoader§8: " + (AutoLoader.hasLoader(p) ? "§aan" : "§caus"));
|
strings.add("§eLoader§8: " + (AutoLoader.hasLoader(p) ? "§aan" : "§caus"));
|
||||||
|
@ -42,6 +42,13 @@ public class Region {
|
|||||||
private static final List<Region> regions = new ArrayList<>();
|
private static final List<Region> regions = new ArrayList<>();
|
||||||
private static boolean buildArea = false;
|
private static boolean buildArea = false;
|
||||||
|
|
||||||
Lixfel
hat
Statt der Klasse wäre es eleganter gewesen, einfach public static globalTnt etc. zu haben, durch die Klasse gewinnst du schließlich nix (es sei denn, sie wäre eine Region, die immer zurückgegeben worden wäre, wenn man in keiner Region wäre, was allerdings Probleme bei einigen Befehlen verursachen würde). Statt der Klasse wäre es eleganter gewesen, einfach public static globalTnt etc. zu haben, durch die Klasse gewinnst du schließlich nix (es sei denn, sie wäre eine Region, die immer zurückgegeben worden wäre, wenn man in keiner Region wäre, was allerdings Probleme bei einigen Befehlen verursachen würde).
YoyoNow
hat
Baue ich um. Wollte halt damit das ganze abkapseln deswegen. Baue ich um. Wollte halt damit das ganze abkapseln deswegen.
YoyoNow
hat
Ich glaube ich finde es weiterhin besser, wenn man Klassen mäßig abgekapselt ist. Das ist glaube doch noch eleganter, weil dann nicht einfach 3 Fields in der Region Klasse static drin stehen. Deswegen so gelöst. Ich glaube ich finde es weiterhin besser, wenn man Klassen mäßig abgekapselt ist. Das ist glaube doch noch eleganter, weil dann nicht einfach 3 Fields in der Region Klasse static drin stehen. Deswegen so gelöst.
|
|||||||
|
public static class NoRegion {
|
||||||
|
private NoRegion() {}
|
||||||
|
public static TNTMode tnt = TNTMode.OFF;
|
||||||
|
public static boolean fire = false;
|
||||||
|
public static boolean freeze = false;
|
||||||
|
}
|
||||||
|
|
||||||
static{
|
static{
|
||||||
YamlConfiguration config = new YamlConfiguration();
|
YamlConfiguration config = new YamlConfiguration();
|
||||||
try {
|
try {
|
||||||
@ -78,10 +85,6 @@ public class Region {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void getRegion(Location location, Consumer<Region> regionConsumer) {
|
|
||||||
getRegion(location, regionConsumer, () -> {});
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void getRegion(Location location, Consumer<Region> regionConsumer, Runnable noRegion) {
|
public static void getRegion(Location location, Consumer<Region> regionConsumer, Runnable noRegion) {
|
||||||
boolean b = true;
|
boolean b = true;
|
||||||
for (Region region : regions) {
|
for (Region region : regions) {
|
||||||
|
Sollte evtl. an alle außerhalb einer Region gehen?