From 7ca44c0795935d503e6a365c8de8ac973517f001 Mon Sep 17 00:00:00 2001 From: yoyosource Date: Sat, 17 Apr 2021 21:06:37 +0200 Subject: [PATCH] Add ProtectMode --- .../steamwar/bausystem/region/flags/Flag.java | 7 ++- .../{FIREMode.java => DamageMode.java} | 22 +++---- .../{DAMAGEMode.java => FireMode.java} | 25 ++++---- .../{FREEZEMode.java => FreezeMode.java} | 25 ++++---- .../region/flags/flagvalues/ProtectMode.java | 61 +++++++++++++++++++ .../region/flags/flagvalues/TNTMode.java | 2 - 6 files changed, 101 insertions(+), 41 deletions(-) rename BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/{FIREMode.java => DamageMode.java} (75%) rename BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/{DAMAGEMode.java => FireMode.java} (73%) rename BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/{FREEZEMode.java => FreezeMode.java} (73%) create mode 100644 BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/ProtectMode.java diff --git a/BauSystem_Main/src/de/steamwar/bausystem/region/flags/Flag.java b/BauSystem_Main/src/de/steamwar/bausystem/region/flags/Flag.java index 70bc3128..c89265b2 100644 --- a/BauSystem_Main/src/de/steamwar/bausystem/region/flags/Flag.java +++ b/BauSystem_Main/src/de/steamwar/bausystem/region/flags/Flag.java @@ -28,9 +28,10 @@ import lombok.Getter; public enum Flag { TNT(TNTMode.class, TNTMode.ALLOW), - FIRE(FIREMode.class, FIREMode.ALLOW), - FREEZE(FREEZEMode.class, FREEZEMode.INACTIVE), - DAMAGE(DAMAGEMode.class, DAMAGEMode.ALLOW); + FIRE(FireMode.class, FireMode.ALLOW), + FREEZE(FreezeMode.class, FreezeMode.INACTIVE), + PROTECT(ProtectMode.class, ProtectMode.INACTIVE), + DAMAGE(DamageMode.class, DamageMode.ALLOW); @Getter private static final Set flags; diff --git a/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/FIREMode.java b/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/DamageMode.java similarity index 75% rename from BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/FIREMode.java rename to BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/DamageMode.java index 16765474..08d8492e 100644 --- a/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/FIREMode.java +++ b/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/DamageMode.java @@ -26,35 +26,33 @@ import net.md_5.bungee.api.ChatColor; @Getter @AllArgsConstructor -public enum FIREMode implements Flag.Value { +public enum DamageMode implements Flag.Value { ALLOW(ChatColor.RED + "an"), DENY(ChatColor.GREEN + "aus"); - - private static FIREMode[] values; + private static DamageMode[] values; private final String chatValue; - @Override - public FIREMode[] getValues() { - if (FIREMode.values == null) { - FIREMode.values = FIREMode.values(); //NOSONAR + public DamageMode[] getValues() { + if (DamageMode.values == null) { + DamageMode.values = DamageMode.values(); //NOSONAR } - return FIREMode.values; + return DamageMode.values; } @Override - public FIREMode getValue() { + public DamageMode getValue() { return this; } @Override - public FIREMode getValueOf(final String name) { + public DamageMode getValueOf(final String name) { try { - return FIREMode.valueOf(name); + return DamageMode.valueOf(name); } catch (IllegalArgumentException e) { - return FIREMode.ALLOW; + return DamageMode.ALLOW; } } } \ No newline at end of file diff --git a/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/DAMAGEMode.java b/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/FireMode.java similarity index 73% rename from BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/DAMAGEMode.java rename to BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/FireMode.java index e2ea369b..99998cdf 100644 --- a/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/DAMAGEMode.java +++ b/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/FireMode.java @@ -26,35 +26,36 @@ import net.md_5.bungee.api.ChatColor; @Getter @AllArgsConstructor -public enum DAMAGEMode implements Flag.Value { +public enum FireMode implements Flag.Value { ALLOW(ChatColor.RED + "an"), DENY(ChatColor.GREEN + "aus"); - - private static DAMAGEMode[] values; + private static FireMode[] values; private final String chatValue; - @Override - public DAMAGEMode[] getValues() { - if (DAMAGEMode.values == null) { - DAMAGEMode.values = DAMAGEMode.values(); //NOSONAR + public FireMode[] getValues() { + if (FireMode.values == null) { + FireMode.values = FireMode.values(); //NOSONAR } - return DAMAGEMode.values; + return FireMode.values; } @Override - public DAMAGEMode getValue() { + public FireMode getValue() { return this; } @Override - public DAMAGEMode getValueOf(final String name) { + public FireMode getValueOf(final String name) { try { - return DAMAGEMode.valueOf(name); + return FireMode.valueOf(name); } catch (IllegalArgumentException e) { - return DAMAGEMode.ALLOW; + if (name.equalsIgnoreCase("false")) { + return FireMode.DENY; + } + return FireMode.ALLOW; } } } \ No newline at end of file diff --git a/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/FREEZEMode.java b/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/FreezeMode.java similarity index 73% rename from BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/FREEZEMode.java rename to BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/FreezeMode.java index 123e63e5..68daaff0 100644 --- a/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/FREEZEMode.java +++ b/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/FreezeMode.java @@ -27,36 +27,37 @@ import net.md_5.bungee.api.ChatColor; @Getter @AllArgsConstructor -public enum FREEZEMode implements Flag.Value { +public enum FreezeMode implements Flag.Value { ACTIVE("activate", ChatColor.GREEN + "an"), INACTIVE("deactivate", ChatColor.RED + "aus"); - - private static FREEZEMode[] values; + private static FreezeMode[] values; private final String descriptor; private final String chatValue; - @Override - public FREEZEMode[] getValues() { - if (FREEZEMode.values == null) { - FREEZEMode.values = FREEZEMode.values(); //NOSONAR + public FreezeMode[] getValues() { + if (FreezeMode.values == null) { + FreezeMode.values = FreezeMode.values(); //NOSONAR } - return FREEZEMode.values; + return FreezeMode.values; } @Override - public FREEZEMode getValue() { + public FreezeMode getValue() { return this; } @Override - public FREEZEMode getValueOf(final String name) { + public FreezeMode getValueOf(final String name) { try { - return FREEZEMode.valueOf(name); + return FreezeMode.valueOf(name); } catch (IllegalArgumentException e) { - return FREEZEMode.INACTIVE; + if (name.equalsIgnoreCase("false")) { + return FreezeMode.INACTIVE; + } + return FreezeMode.INACTIVE; } } diff --git a/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/ProtectMode.java b/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/ProtectMode.java new file mode 100644 index 00000000..19ab417a --- /dev/null +++ b/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/ProtectMode.java @@ -0,0 +1,61 @@ +/* + * This file is a part of the SteamWar software. + * + * Copyright (C) 2021 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.bausystem.region.flags.flagvalues; + +import de.steamwar.bausystem.region.flags.Flag; +import lombok.AllArgsConstructor; +import lombok.Getter; +import net.md_5.bungee.api.ChatColor; + +@Getter +@AllArgsConstructor +public enum ProtectMode implements Flag.Value { + + ACTIVE(ChatColor.GREEN + "an"), + INACTIVE(ChatColor.RED + "aus"); + + private static ProtectMode[] values; + private final String chatValue; + + @Override + public ProtectMode[] getValues() { + if (ProtectMode.values == null) { + ProtectMode.values = ProtectMode.values(); //NOSONAR + } + return ProtectMode.values; + } + + @Override + public ProtectMode getValue() { + return this; + } + + @Override + public ProtectMode getValueOf(final String name) { + try { + return ProtectMode.valueOf(name); + } catch (IllegalArgumentException e) { + if (name.equalsIgnoreCase("false")) { + return ProtectMode.INACTIVE; + } + return ProtectMode.ACTIVE; + } + } +} diff --git a/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/TNTMode.java b/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/TNTMode.java index c649e183..465af85f 100644 --- a/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/TNTMode.java +++ b/BauSystem_Main/src/de/steamwar/bausystem/region/flags/flagvalues/TNTMode.java @@ -32,11 +32,9 @@ public enum TNTMode implements Flag.Value { DENY(ChatColor.RED + "aus"), ONLY_TB(ChatColor.GRAY + "Kein " + ChatColor.YELLOW + "Baurahmen"); - private static TNTMode[] values; private final String chatValue; - @Override public TNTMode[] getValues() { if (TNTMode.values == null) {