From 03dbb577323f3224d1600b1edbaa5e286c6f1bff Mon Sep 17 00:00:00 2001 From: yoyosource Date: Sat, 1 Jun 2024 15:03:47 +0200 Subject: [PATCH] Add NoGravityMode --- .../de/steamwar/bausystem/region/Flag.java | 1 + .../bausystem/region/flags/NoGravityMode.java | 59 +++++++++++++++++++ 2 files changed, 60 insertions(+) create mode 100644 BauSystem_PluginBase/src/de/steamwar/bausystem/region/flags/NoGravityMode.java diff --git a/BauSystem_PluginBase/src/de/steamwar/bausystem/region/Flag.java b/BauSystem_PluginBase/src/de/steamwar/bausystem/region/Flag.java index ddd3c570..aaf56489 100644 --- a/BauSystem_PluginBase/src/de/steamwar/bausystem/region/Flag.java +++ b/BauSystem_PluginBase/src/de/steamwar/bausystem/region/Flag.java @@ -34,6 +34,7 @@ public enum Flag { FREEZE(FreezeMode.class, FreezeMode.INACTIVE), PROTECT(ProtectMode.class, ProtectMode.ACTIVE), ITEMS(ItemMode.class, ItemMode.INACTIVE), + NO_GRAVITY(NoGravityMode.class, NoGravityMode.INACTIVE), TESTBLOCK(TestblockMode.class, TestblockMode.NO_VALUE), CHANGED(ChangedMode.class, ChangedMode.NO_CHANGE), ; diff --git a/BauSystem_PluginBase/src/de/steamwar/bausystem/region/flags/NoGravityMode.java b/BauSystem_PluginBase/src/de/steamwar/bausystem/region/flags/NoGravityMode.java new file mode 100644 index 00000000..0d1f8313 --- /dev/null +++ b/BauSystem_PluginBase/src/de/steamwar/bausystem/region/flags/NoGravityMode.java @@ -0,0 +1,59 @@ +/* + * This file is a part of the SteamWar software. + * + * Copyright (C) 2024 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; + +import de.steamwar.bausystem.region.Flag; +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public enum NoGravityMode implements Flag.Value { + + ACTIVE, + INACTIVE; + + private static NoGravityMode[] values; + + @Override + public NoGravityMode[] getValues() { + if (NoGravityMode.values == null) { + NoGravityMode.values = NoGravityMode.values(); //NOSONAR + } + return NoGravityMode.values; + } + + @Override + public NoGravityMode getValue() { + return this; + } + + @Override + public NoGravityMode getValueOf(final String name) { + try { + return NoGravityMode.valueOf(name.toUpperCase()); + } catch (IllegalArgumentException e) { + if (name.equalsIgnoreCase("false")) { + return NoGravityMode.INACTIVE; + } + return NoGravityMode.ACTIVE; + } + } +}