aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit')
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditBreakableWall.java143
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditDoor.java157
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditDummy.java122
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditFairySoul.java119
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditJournal.java123
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditLever.java133
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditNPC.java123
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditOnewayDoor.java143
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditOnewayLever.java137
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditPressurePlate.java136
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditSecret.java129
-rwxr-xr-xsrc/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditTomb.java118
12 files changed, 0 insertions, 1583 deletions
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditBreakableWall.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditBreakableWall.java
deleted file mode 100755
index 04ae7643..00000000
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditBreakableWall.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- * Dungeons Guide - The most intelligent Hypixel Skyblock Dungeons Mod
- * Copyright (C) 2021 cyoung06
- *
- * 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 <https://www.gnu.org/licenses/>.
- */
-
-package kr.syeyoung.dungeonsguide.roomedit.mechanicedit;
-
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint;
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPointSet;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonBreakableWall;
-import kr.syeyoung.dungeonsguide.roomedit.EditingContext;
-import kr.syeyoung.dungeonsguide.gui.MPanel;
-import kr.syeyoung.dungeonsguide.roomedit.Parameter;
-import kr.syeyoung.dungeonsguide.gui.elements.*;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEdit;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEditCreator;
-import kr.syeyoung.dungeonsguide.utils.TextUtils;
-import net.minecraft.init.Blocks;
-
-import java.awt.*;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Collections;
-
-public class ValueEditBreakableWall extends MPanel implements ValueEdit<DungeonBreakableWall> {
- private Parameter parameter;
-
- // scroll pane
- // just create
- // add set
- private final DungeonBreakableWall dungeonBreakableWall;
-
- private final MLabel label;
- private final MValue<OffsetPointSet> value;
- private final MTextField preRequisite;
- private final MLabelAndElement preRequisite2;
- private final MButton updateOnlyAir;
-
- public ValueEditBreakableWall(final Parameter parameter2) {
- this.parameter = parameter2;
- this.dungeonBreakableWall = (DungeonBreakableWall) parameter2.getNewData();
-
-
- label = new MLabel();
- label.setText("Wall Points");
- label.setAlignment(MLabel.Alignment.LEFT);
- add(label);
-
- value = new MValue(dungeonBreakableWall.getSecretPoint(), Collections.emptyList());
- add(value);
-
- updateOnlyAir = new MButton();
- updateOnlyAir.setText("Update Air");
- updateOnlyAir.setBackgroundColor(Color.green);
- updateOnlyAir.setForeground(Color.black);
- updateOnlyAir.setBounds(new Rectangle(0,40,getBounds().width, 20));
- add(updateOnlyAir);
- updateOnlyAir.setOnActionPerformed(new Runnable() {
- @Override
- public void run() {
- OffsetPointSet ofs = dungeonBreakableWall.getSecretPoint();
- List<OffsetPoint> filtered = new ArrayList<OffsetPoint>();
- for (OffsetPoint offsetPoint : ofs.getOffsetPointList()) {
- if (offsetPoint.getBlock(EditingContext.getEditingContext().getRoom()) != Blocks.air) continue;
- filtered.add(offsetPoint);
- }
- dungeonBreakableWall.getSecretPoint().setOffsetPointList(filtered);
- }
- });
-
- preRequisite = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonBreakableWall.setPreRequisite(Arrays.asList(str.split(",")));
- }
- };
- preRequisite.setText(TextUtils.join(dungeonBreakableWall.getPreRequisite(), ","));
- preRequisite2 = new MLabelAndElement("Req.",preRequisite);
- preRequisite2.setBounds(new Rectangle(0,60,getBounds().width,20));
- add(preRequisite2);
- }
-
- @Override
- public void onBoundsUpdate() {
- label.setBounds(new Rectangle(0,0,getBounds().width, 20));
- value.setBounds(new Rectangle(0,20,getBounds().width, 20));
- updateOnlyAir.setBounds(new Rectangle(0,40,getBounds().width, 20));
- preRequisite2.setBounds(new Rectangle(0,60,getBounds().width,20));
- }
-
- @Override
- public void setParameter(Parameter parameter) {
- this.parameter = parameter;
- }
-
- @Override
- public void renderWorld(float partialTicks) {
- dungeonBreakableWall.highlight(new Color(0,255,255,50), parameter.getName(), EditingContext.getEditingContext().getRoom(), partialTicks);
- }
-
- @Override
- public void resize(int parentWidth, int parentHeight) {
- this.setBounds(new Rectangle(0,0,parentWidth, parentHeight));
- }
-
- public static class Generator implements ValueEditCreator<ValueEditBreakableWall> {
-
- @Override
- public ValueEditBreakableWall createValueEdit(Parameter parameter) {
- return new ValueEditBreakableWall(parameter);
- }
-
- @Override
- public Object createDefaultValue(Parameter parameter) {
- return new DungeonBreakableWall();
- }
-
- @Override
- public Object cloneObj(Object object) {
- try {
- return ((DungeonBreakableWall)object).clone();
- } catch (CloneNotSupportedException e) {
- e.printStackTrace();
- }
- assert false;
- return null;
- }
- }
-}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditDoor.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditDoor.java
deleted file mode 100755
index 0fc7de4c..00000000
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditDoor.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*
- * Dungeons Guide - The most intelligent Hypixel Skyblock Dungeons Mod
- * Copyright (C) 2021 cyoung06
- *
- * 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 <https://www.gnu.org/licenses/>.
- */
-
-package kr.syeyoung.dungeonsguide.roomedit.mechanicedit;
-
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint;
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPointSet;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonDoor;
-import kr.syeyoung.dungeonsguide.roomedit.EditingContext;
-import kr.syeyoung.dungeonsguide.gui.MPanel;
-import kr.syeyoung.dungeonsguide.roomedit.Parameter;
-import kr.syeyoung.dungeonsguide.gui.elements.*;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEdit;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEditCreator;
-import kr.syeyoung.dungeonsguide.utils.TextUtils;
-import net.minecraft.init.Blocks;
-
-import java.awt.*;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-public class ValueEditDoor extends MPanel implements ValueEdit<DungeonDoor> {
- private Parameter parameter;
-
- // scroll pane
- // just create
- // add set
- private final DungeonDoor dungeonDoor;
-
- private final MLabel label;
- private final MValue<OffsetPointSet> value;
- private final MTextField preRequisite;
- private final MLabelAndElement preRequisite_par;
- private final MTextField preRequisite2;
- private final MLabelAndElement preRequisite2_par;
- private final MButton updateOnlyAir;
-
- public ValueEditDoor(final Parameter parameter2) {
- this.parameter = parameter2;
- this.dungeonDoor = (DungeonDoor) parameter2.getNewData();
-
-
- label = new MLabel();
- label.setText("Wall Points");
- label.setAlignment(MLabel.Alignment.LEFT);
- add(label);
-
- value = new MValue(dungeonDoor.getSecretPoint(), Collections.emptyList());
- add(value);
-
- updateOnlyAir = new MButton();
- updateOnlyAir.setText("Update Air");
- updateOnlyAir.setBackgroundColor(Color.green);
- updateOnlyAir.setForeground(Color.black);
- updateOnlyAir.setBounds(new Rectangle(0,40,getBounds().width, 20));
- add(updateOnlyAir);
- updateOnlyAir.setOnActionPerformed(new Runnable() {
- @Override
- public void run() {
- OffsetPointSet ofs = dungeonDoor.getSecretPoint();
- List<OffsetPoint> filtered = new ArrayList<OffsetPoint>();
- for (OffsetPoint offsetPoint : ofs.getOffsetPointList()) {
- if (offsetPoint.getBlock(EditingContext.getEditingContext().getRoom()) != Blocks.air) continue;
- filtered.add(offsetPoint);
- }
- dungeonDoor.getSecretPoint().setOffsetPointList(filtered);
- }
- });
-
- preRequisite = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonDoor.setOpenPreRequisite(Arrays.asList(str.split(",")));
- }
- };
- preRequisite.setText(TextUtils.join(dungeonDoor.getOpenPreRequisite(), ","));
- preRequisite_par = new MLabelAndElement("Open Req.",preRequisite);
- preRequisite_par.setBounds(new Rectangle(0,60,getBounds().width,20));
- add(preRequisite_par);
-
- preRequisite2 = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonDoor.setClosePreRequisite(Arrays.asList(str.split(",")));
- }
- };
- preRequisite2.setText(TextUtils.join(dungeonDoor.getClosePreRequisite(), ","));
- preRequisite2_par = new MLabelAndElement("Close Req.",preRequisite2);
- preRequisite2_par.setBounds(new Rectangle(0,80,getBounds().width,20));
- add(preRequisite2_par);
- }
-
- @Override
- public void onBoundsUpdate() {
- label.setBounds(new Rectangle(0,0,getBounds().width, 20));
- value.setBounds(new Rectangle(0,20,getBounds().width, 20));
- updateOnlyAir.setBounds(new Rectangle(0,40,getBounds().width, 20));
- preRequisite_par.setBounds(new Rectangle(0,60,getBounds().width,20));
- preRequisite2_par.setBounds(new Rectangle(0,80,getBounds().width,20));
- }
-
- @Override
- public void setParameter(Parameter parameter) {
- this.parameter = parameter;
- }
-
- @Override
- public void renderWorld(float partialTicks) {
- dungeonDoor.highlight(new Color(0,255,255,50), parameter.getName(), EditingContext.getEditingContext().getRoom(), partialTicks);
- }
-
- @Override
- public void resize(int parentWidth, int parentHeight) {
- this.setBounds(new Rectangle(0,0,parentWidth, parentHeight));
- }
-
- public static class Generator implements ValueEditCreator<ValueEditDoor> {
-
- @Override
- public ValueEditDoor createValueEdit(Parameter parameter) {
- return new ValueEditDoor(parameter);
- }
-
- @Override
- public Object createDefaultValue(Parameter parameter) {
- return new DungeonDoor();
- }
-
- @Override
- public Object cloneObj(Object object) {
- try {
- return ((DungeonDoor)object).clone();
- } catch (CloneNotSupportedException e) {
- e.printStackTrace();
- }
- assert false;
- return null;
- }
- }
-}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditDummy.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditDummy.java
deleted file mode 100755
index 7c211b52..00000000
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditDummy.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * Dungeons Guide - The most intelligent Hypixel Skyblock Dungeons Mod
- * Copyright (C) 2021 cyoung06
- *
- * 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 <https://www.gnu.org/licenses/>.
- */
-
-package kr.syeyoung.dungeonsguide.roomedit.mechanicedit;
-
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonDummy;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonNPC;
-import kr.syeyoung.dungeonsguide.gui.MPanel;
-import kr.syeyoung.dungeonsguide.gui.elements.MLabel;
-import kr.syeyoung.dungeonsguide.gui.elements.MLabelAndElement;
-import kr.syeyoung.dungeonsguide.gui.elements.MTextField;
-import kr.syeyoung.dungeonsguide.gui.elements.MValue;
-import kr.syeyoung.dungeonsguide.roomedit.EditingContext;
-import kr.syeyoung.dungeonsguide.roomedit.Parameter;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEdit;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEditCreator;
-import kr.syeyoung.dungeonsguide.utils.TextUtils;
-
-import java.awt.*;
-import java.util.Arrays;
-import java.util.Collections;
-
-public class ValueEditDummy extends MPanel implements ValueEdit<DungeonDummy> {
- private Parameter parameter;
-
- // scroll pane
- // just create
- // add set
- private final DungeonDummy dungeonSecret;
-
- private final MLabel label;
- private final MValue<OffsetPoint> value;
- private final MTextField preRequisite;
- private final MLabelAndElement preRequisite2;
-
- public ValueEditDummy(final Parameter parameter2) {
- this.parameter = parameter2;
- this.dungeonSecret = (DungeonDummy) parameter2.getNewData();
-
-
- label = new MLabel();
- label.setText("Dummy Point");
- label.setAlignment(MLabel.Alignment.LEFT);
- add(label);
-
- value = new MValue(dungeonSecret.getSecretPoint(), Collections.emptyList());
- add(value);
-
- preRequisite = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonSecret.setPreRequisite(Arrays.asList(str.split(",")));
- }
- };
- preRequisite.setText(TextUtils.join(dungeonSecret.getPreRequisite(), ","));
- preRequisite2 = new MLabelAndElement("Req.",preRequisite);
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- add(preRequisite2);
- }
-
- @Override
- public void onBoundsUpdate() {
- label.setBounds(new Rectangle(0,0,getBounds().width, 20));
- value.setBounds(new Rectangle(0,20,getBounds().width, 20));
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- }
-
- @Override
- public void setParameter(Parameter parameter) {
- this.parameter = parameter;
- }
-
- @Override
- public void renderWorld(float partialTicks) {
- dungeonSecret.highlight(new Color(0,255,0,50), parameter.getName(), EditingContext.getEditingContext().getRoom(), partialTicks);
- }
-
- @Override
- public void resize(int parentWidth, int parentHeight) {
- this.setBounds(new Rectangle(0,0,parentWidth, parentHeight));
- }
-
- public static class Generator implements ValueEditCreator<ValueEditDummy> {
-
- @Override
- public ValueEditDummy createValueEdit(Parameter parameter) {
- return new ValueEditDummy(parameter);
- }
-
- @Override
- public Object createDefaultValue(Parameter parameter) {
- return new DungeonDummy();
- }
-
- @Override
- public Object cloneObj(Object object) {
- try {
- return ((DungeonDummy)object).clone();
- } catch (CloneNotSupportedException e) {
- e.printStackTrace();
- }
- assert false;
- return null;
- }
- }
-}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditFairySoul.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditFairySoul.java
deleted file mode 100755
index 7ac9ac1a..00000000
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditFairySoul.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * Dungeons Guide - The most intelligent Hypixel Skyblock Dungeons Mod
- * Copyright (C) 2021 cyoung06
- *
- * 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 <https://www.gnu.org/licenses/>.
- */
-
-package kr.syeyoung.dungeonsguide.roomedit.mechanicedit;
-
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonFairySoul;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonSecret;
-import kr.syeyoung.dungeonsguide.gui.MPanel;
-import kr.syeyoung.dungeonsguide.gui.elements.*;
-import kr.syeyoung.dungeonsguide.roomedit.EditingContext;
-import kr.syeyoung.dungeonsguide.roomedit.Parameter;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEdit;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEditCreator;
-import kr.syeyoung.dungeonsguide.utils.TextUtils;
-
-import java.awt.*;
-import java.util.Arrays;
-import java.util.Collections;
-
-public class ValueEditFairySoul extends MPanel implements ValueEdit<DungeonFairySoul> {
- private Parameter parameter;
-
- // scroll pane
- // just create
- // add set
- private final DungeonFairySoul dungeonSecret;
-
- private final MLabel label;
- private final MValue<OffsetPoint> value;
- private final MTextField preRequisite;
- private final MLabelAndElement preRequisite2;
-
- public ValueEditFairySoul(final Parameter parameter2) {
- this.parameter = parameter2;
- this.dungeonSecret = (DungeonFairySoul) parameter2.getNewData();
-
-
- label = new MLabel();
- label.setText("FairySoul Point");
- label.setAlignment(MLabel.Alignment.LEFT);
- add(label);
-
- value = new MValue(dungeonSecret.getSecretPoint(), Collections.emptyList());
- add(value);
-
- preRequisite = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonSecret.setPreRequisite(Arrays.asList(str.split(",")));
- }
- };
- preRequisite.setText(TextUtils.join(dungeonSecret.getPreRequisite(), ","));
- preRequisite2 = new MLabelAndElement("Req.",preRequisite);
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- add(preRequisite2);
- }
-
- @Override
- public void onBoundsUpdate() {
- label.setBounds(new Rectangle(0,0,getBounds().width, 20));
- value.setBounds(new Rectangle(0,20,getBounds().width, 20));
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- }
-
- @Override
- public void setParameter(Parameter parameter) {
- this.parameter = parameter;
- }
-
- @Override
- public void renderWorld(float partialTicks) {
- dungeonSecret.highlight(new Color(0,255,0,50), parameter.getName(), EditingContext.getEditingContext().getRoom(), partialTicks);
- }
-
- @Override
- public void resize(int parentWidth, int parentHeight) {
- this.setBounds(new Rectangle(0,0,parentWidth, parentHeight));
- }
-
- public static class Generator implements ValueEditCreator<ValueEditFairySoul> {
-
- @Override
- public ValueEditFairySoul createValueEdit(Parameter parameter) {
- return new ValueEditFairySoul(parameter);
- }
-
- @Override
- public Object createDefaultValue(Parameter parameter) {
- return new DungeonFairySoul();
- }
-
- @Override
- public Object cloneObj(Object object) {
- try {
- return ((DungeonFairySoul)object).clone();
- } catch (CloneNotSupportedException e) {
- e.printStackTrace();
- }
- assert false;
- return null;
- }
- }
-}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditJournal.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditJournal.java
deleted file mode 100755
index f56b1630..00000000
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditJournal.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Dungeons Guide - The most intelligent Hypixel Skyblock Dungeons Mod
- * Copyright (C) 2021 cyoung06
- *
- * 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 <https://www.gnu.org/licenses/>.
- */
-
-package kr.syeyoung.dungeonsguide.roomedit.mechanicedit;
-
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonFairySoul;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonJournal;
-import kr.syeyoung.dungeonsguide.gui.MPanel;
-import kr.syeyoung.dungeonsguide.gui.elements.MLabel;
-import kr.syeyoung.dungeonsguide.gui.elements.MLabelAndElement;
-import kr.syeyoung.dungeonsguide.gui.elements.MTextField;
-import kr.syeyoung.dungeonsguide.gui.elements.MValue;
-import kr.syeyoung.dungeonsguide.roomedit.EditingContext;
-import kr.syeyoung.dungeonsguide.roomedit.Parameter;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEdit;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEditCreator;
-import kr.syeyoung.dungeonsguide.utils.TextUtils;
-
-import java.awt.*;
-import java.util.Arrays;
-import java.util.Collections;
-
-
-public class ValueEditJournal extends MPanel implements ValueEdit<DungeonJournal> {
- private Parameter parameter;
-
- // scroll pane
- // just create
- // add set
- private final DungeonJournal dungeonSecret;
-
- private final MLabel label;
- private final MValue<OffsetPoint> value;
- private final MTextField preRequisite;
- private final MLabelAndElement preRequisite2;
-
- public ValueEditJournal(final Parameter parameter2) {
- this.parameter = parameter2;
- this.dungeonSecret = (DungeonJournal) parameter2.getNewData();
-
-
- label = new MLabel();
- label.setText("Journal Point");
- label.setAlignment(MLabel.Alignment.LEFT);
- add(label);
-
- value = new MValue(dungeonSecret.getSecretPoint(), Collections.emptyList());
- add(value);
-
- preRequisite = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonSecret.setPreRequisite(Arrays.asList(str.split(",")));
- }
- };
- preRequisite.setText(TextUtils.join(dungeonSecret.getPreRequisite(), ","));
- preRequisite2 = new MLabelAndElement("Req.",preRequisite);
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- add(preRequisite2);
- }
-
- @Override
- public void onBoundsUpdate() {
- label.setBounds(new Rectangle(0,0,getBounds().width, 20));
- value.setBounds(new Rectangle(0,20,getBounds().width, 20));
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- }
-
- @Override
- public void setParameter(Parameter parameter) {
- this.parameter = parameter;
- }
-
- @Override
- public void renderWorld(float partialTicks) {
- dungeonSecret.highlight(new Color(0,255,0,50), parameter.getName(), EditingContext.getEditingContext().getRoom(), partialTicks);
- }
-
- @Override
- public void resize(int parentWidth, int parentHeight) {
- this.setBounds(new Rectangle(0,0,parentWidth, parentHeight));
- }
-
- public static class Generator implements ValueEditCreator<ValueEditJournal> {
-
- @Override
- public ValueEditJournal createValueEdit(Parameter parameter) {
- return new ValueEditJournal(parameter);
- }
-
- @Override
- public Object createDefaultValue(Parameter parameter) {
- return new DungeonJournal();
- }
-
- @Override
- public Object cloneObj(Object object) {
- try {
- return ((DungeonJournal)object).clone();
- } catch (CloneNotSupportedException e) {
- e.printStackTrace();
- }
- assert false;
- return null;
- }
- }
-}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditLever.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditLever.java
deleted file mode 100755
index aaeb607f..00000000
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditLever.java
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
- * Dungeons Guide - The most intelligent Hypixel Skyblock Dungeons Mod
- * Copyright (C) 2021 cyoung06
- *
- * 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 <https://www.gnu.org/licenses/>.
- */
-
-package kr.syeyoung.dungeonsguide.roomedit.mechanicedit;
-
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonLever;
-import kr.syeyoung.dungeonsguide.roomedit.EditingContext;
-import kr.syeyoung.dungeonsguide.gui.MPanel;
-import kr.syeyoung.dungeonsguide.roomedit.Parameter;
-import kr.syeyoung.dungeonsguide.gui.elements.*;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEdit;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEditCreator;
-import kr.syeyoung.dungeonsguide.utils.TextUtils;
-
-import java.awt.*;
-import java.util.Arrays;
-import java.util.Collections;
-
-public class ValueEditLever extends MPanel implements ValueEdit<DungeonLever> {
- private Parameter parameter;
-
- // scroll pane
- // just create
- // add set
- private final DungeonLever dungeonLever;
-
- private final MLabel label;
- private final MValue<OffsetPoint> value;
- private final MTextField preRequisite;
- private final MLabelAndElement preRequisite2;
- private final MTextField target;
- private final MLabelAndElement target2;
-
- public ValueEditLever(final Parameter parameter2) {
- this.parameter = parameter2;
- this.dungeonLever = (DungeonLever) parameter2.getNewData();
-
-
- label = new MLabel();
- label.setText("Secret Point");
- label.setAlignment(MLabel.Alignment.LEFT);
- add(label);
-
- value = new MValue(dungeonLever.getLeverPoint(), Collections.emptyList());
- add(value);
-
- preRequisite = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonLever.setPreRequisite(Arrays.asList(str.split(",")));
- }
- };
- preRequisite.setText(TextUtils.join(dungeonLever.getPreRequisite(), ","));
- preRequisite2 = new MLabelAndElement("Req.",preRequisite);
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- add(preRequisite2);
-
-
- target = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonLever.setTriggering(str);
- }
- };
- target.setText(dungeonLever.getTriggering());
- target2 = new MLabelAndElement("Target",target);
- target2.setBounds(new Rectangle(0,60,getBounds().width,20));
- add(target2);
- }
-
- @Override
- public void onBoundsUpdate() {
- label.setBounds(new Rectangle(0,0,getBounds().width, 20));
- value.setBounds(new Rectangle(0,20,getBounds().width, 20));
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- target2.setBounds(new Rectangle(0,60,getBounds().width,20));
- }
-
- @Override
- public void setParameter(Parameter parameter) {
- this.parameter = parameter;
- }
-
- @Override
- public void renderWorld(float partialTicks) {
- dungeonLever.highlight(new Color(0,255,0,50), parameter.getName(), EditingContext.getEditingContext().getRoom(), partialTicks);
- }
-
- @Override
- public void resize(int parentWidth, int parentHeight) {
- this.setBounds(new Rectangle(0,0,parentWidth, parentHeight));
- }
-
- public static class Generator implements ValueEditCreator<ValueEditLever> {
-
- @Override
- public ValueEditLever createValueEdit(Parameter parameter) {
- return new ValueEditLever(parameter);
- }
-
- @Override
- public Object createDefaultValue(Parameter parameter) {
- return new DungeonLever();
- }
-
- @Override
- public Object cloneObj(Object object) {
- try {
- return ((DungeonLever)object).clone();
- } catch (CloneNotSupportedException e) {
- e.printStackTrace();
- }
- assert false;
- return null;
- }
- }
-}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditNPC.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditNPC.java
deleted file mode 100755
index 4146b491..00000000
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditNPC.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Dungeons Guide - The most intelligent Hypixel Skyblock Dungeons Mod
- * Copyright (C) 2021 cyoung06
- *
- * 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 <https://www.gnu.org/licenses/>.
- */
-
-package kr.syeyoung.dungeonsguide.roomedit.mechanicedit;
-
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonFairySoul;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonNPC;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonSecret;
-import kr.syeyoung.dungeonsguide.gui.MPanel;
-import kr.syeyoung.dungeonsguide.gui.elements.MLabel;
-import kr.syeyoung.dungeonsguide.gui.elements.MLabelAndElement;
-import kr.syeyoung.dungeonsguide.gui.elements.MTextField;
-import kr.syeyoung.dungeonsguide.gui.elements.MValue;
-import kr.syeyoung.dungeonsguide.roomedit.EditingContext;
-import kr.syeyoung.dungeonsguide.roomedit.Parameter;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEdit;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEditCreator;
-import kr.syeyoung.dungeonsguide.utils.TextUtils;
-
-import java.awt.*;
-import java.util.Arrays;
-import java.util.Collections;
-
-public class ValueEditNPC extends MPanel implements ValueEdit<DungeonNPC> {
- private Parameter parameter;
-
- // scroll pane
- // just create
- // add set
- private final DungeonNPC dungeonSecret;
-
- private final MLabel label;
- private final MValue<OffsetPoint> value;
- private final MTextField preRequisite;
- private final MLabelAndElement preRequisite2;
-
- public ValueEditNPC(final Parameter parameter2) {
- this.parameter = parameter2;
- this.dungeonSecret = (DungeonNPC) parameter2.getNewData();
-
-
- label = new MLabel();
- label.setText("NPC Point");
- label.setAlignment(MLabel.Alignment.LEFT);
- add(label);
-
- value = new MValue(dungeonSecret.getSecretPoint(), Collections.emptyList());
- add(value);
-
- preRequisite = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonSecret.setPreRequisite(Arrays.asList(str.split(",")));
- }
- };
- preRequisite.setText(TextUtils.join(dungeonSecret.getPreRequisite(), ","));
- preRequisite2 = new MLabelAndElement("Req.",preRequisite);
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- add(preRequisite2);
- }
-
- @Override
- public void onBoundsUpdate() {
- label.setBounds(new Rectangle(0,0,getBounds().width, 20));
- value.setBounds(new Rectangle(0,20,getBounds().width, 20));
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- }
-
- @Override
- public void setParameter(Parameter parameter) {
- this.parameter = parameter;
- }
-
- @Override
- public void renderWorld(float partialTicks) {
- dungeonSecret.highlight(new Color(0,255,0,50), parameter.getName(), EditingContext.getEditingContext().getRoom(), partialTicks);
- }
-
- @Override
- public void resize(int parentWidth, int parentHeight) {
- this.setBounds(new Rectangle(0,0,parentWidth, parentHeight));
- }
-
- public static class Generator implements ValueEditCreator<ValueEditNPC> {
-
- @Override
- public ValueEditNPC createValueEdit(Parameter parameter) {
- return new ValueEditNPC(parameter);
- }
-
- @Override
- public Object createDefaultValue(Parameter parameter) {
- return new DungeonNPC();
- }
-
- @Override
- public Object cloneObj(Object object) {
- try {
- return ((DungeonNPC)object).clone();
- } catch (CloneNotSupportedException e) {
- e.printStackTrace();
- }
- assert false;
- return null;
- }
- }
-}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditOnewayDoor.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditOnewayDoor.java
deleted file mode 100755
index ede6ee43..00000000
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditOnewayDoor.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- * Dungeons Guide - The most intelligent Hypixel Skyblock Dungeons Mod
- * Copyright (C) 2021 cyoung06
- *
- * 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 <https://www.gnu.org/licenses/>.
- */
-
-package kr.syeyoung.dungeonsguide.roomedit.mechanicedit;
-
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint;
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPointSet;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonOnewayDoor;
-import kr.syeyoung.dungeonsguide.roomedit.EditingContext;
-import kr.syeyoung.dungeonsguide.gui.MPanel;
-import kr.syeyoung.dungeonsguide.roomedit.Parameter;
-import kr.syeyoung.dungeonsguide.gui.elements.*;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEdit;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEditCreator;
-import kr.syeyoung.dungeonsguide.utils.TextUtils;
-import net.minecraft.init.Blocks;
-
-import java.awt.*;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-public class ValueEditOnewayDoor extends MPanel implements ValueEdit<DungeonOnewayDoor> {
- private Parameter parameter;
-
- // scroll pane
- // just create
- // add set
- private final DungeonOnewayDoor dungeonDoor;
-
- private final MLabel label;
- private final MValue<OffsetPointSet> value;
- private final MTextField preRequisite;
- private final MLabelAndElement preRequisite2;
- private final MButton updateOnlyAir;
-
- public ValueEditOnewayDoor(final Parameter parameter2) {
- this.parameter = parameter2;
- this.dungeonDoor = (DungeonOnewayDoor) parameter2.getNewData();
-
-
- label = new MLabel();
- label.setText("Wall Points");
- label.setAlignment(MLabel.Alignment.LEFT);
- add(label);
-
- value = new MValue(dungeonDoor.getSecretPoint(), Collections.emptyList());
- add(value);
-
- updateOnlyAir = new MButton();
- updateOnlyAir.setText("Update Air");
- updateOnlyAir.setBackgroundColor(Color.green);
- updateOnlyAir.setForeground(Color.black);
- updateOnlyAir.setBounds(new Rectangle(0,40,getBounds().width, 20));
- add(updateOnlyAir);
- updateOnlyAir.setOnActionPerformed(new Runnable() {
- @Override
- public void run() {
- OffsetPointSet ofs = dungeonDoor.getSecretPoint();
- List<OffsetPoint> filtered = new ArrayList<OffsetPoint>();
- for (OffsetPoint offsetPoint : ofs.getOffsetPointList()) {
- if (offsetPoint.getBlock(EditingContext.getEditingContext().getRoom()) != Blocks.air) continue;
- filtered.add(offsetPoint);
- }
- dungeonDoor.getSecretPoint().setOffsetPointList(filtered);
- }
- });
-
- preRequisite = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonDoor.setPreRequisite(Arrays.asList(str.split(",")));
- }
- };
- preRequisite.setText(TextUtils.join(dungeonDoor.getPreRequisite(), ","));
- preRequisite2 = new MLabelAndElement("Req.",preRequisite);
- preRequisite2.setBounds(new Rectangle(0,60,getBounds().width,20));
- add(preRequisite2);
- }
-
- @Override
- public void onBoundsUpdate() {
- label.setBounds(new Rectangle(0,0,getBounds().width, 20));
- value.setBounds(new Rectangle(0,20,getBounds().width, 20));
- updateOnlyAir.setBounds(new Rectangle(0,40,getBounds().width, 20));
- preRequisite2.setBounds(new Rectangle(0,60,getBounds().width,20));
- }
-
- @Override
- public void setParameter(Parameter parameter) {
- this.parameter = parameter;
- }
-
- @Override
- public void renderWorld(float partialTicks) {
- dungeonDoor.highlight(new Color(0,255,255,50), parameter.getName(), EditingContext.getEditingContext().getRoom(), partialTicks);
- }
-
- @Override
- public void resize(int parentWidth, int parentHeight) {
- this.setBounds(new Rectangle(0,0,parentWidth, parentHeight));
- }
-
- public static class Generator implements ValueEditCreator<ValueEditOnewayDoor> {
-
- @Override
- public ValueEditOnewayDoor createValueEdit(Parameter parameter) {
- return new ValueEditOnewayDoor(parameter);
- }
-
- @Override
- public Object createDefaultValue(Parameter parameter) {
- return new DungeonOnewayDoor();
- }
-
- @Override
- public Object cloneObj(Object object) {
- try {
- return ((DungeonOnewayDoor)object).clone();
- } catch (CloneNotSupportedException e) {
- e.printStackTrace();
- }
- assert false;
- return null;
- }
- }
-}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditOnewayLever.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditOnewayLever.java
deleted file mode 100755
index 2a15adad..00000000
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditOnewayLever.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
- * Dungeons Guide - The most intelligent Hypixel Skyblock Dungeons Mod
- * Copyright (C) 2021 cyoung06
- *
- * 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 <https://www.gnu.org/licenses/>.
- */
-
-package kr.syeyoung.dungeonsguide.roomedit.mechanicedit;
-
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonOnewayLever;
-import kr.syeyoung.dungeonsguide.roomedit.EditingContext;
-import kr.syeyoung.dungeonsguide.gui.MPanel;
-import kr.syeyoung.dungeonsguide.roomedit.Parameter;
-import kr.syeyoung.dungeonsguide.gui.elements.MLabel;
-import kr.syeyoung.dungeonsguide.gui.elements.MLabelAndElement;
-import kr.syeyoung.dungeonsguide.gui.elements.MTextField;
-import kr.syeyoung.dungeonsguide.gui.elements.MValue;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEdit;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEditCreator;
-import kr.syeyoung.dungeonsguide.utils.TextUtils;
-
-import java.awt.*;
-import java.util.Arrays;
-import java.util.Collections;
-
-public class ValueEditOnewayLever extends MPanel implements ValueEdit<DungeonOnewayLever> {
- private Parameter parameter;
-
- // scroll pane
- // just create
- // add set
- private final DungeonOnewayLever dungeonLever;
-
- private final MLabel label;
- private final MValue<OffsetPoint> value;
- private final MTextField preRequisite;
- private final MLabelAndElement preRequisite2;
- private final MTextField target;
- private final MLabelAndElement target2;
-
-
- public ValueEditOnewayLever(final Parameter parameter2) {
- this.parameter = parameter2;
- this.dungeonLever = (DungeonOnewayLever) parameter2.getNewData();
-
-
- label = new MLabel();
- label.setText("Secret Point");
- label.setAlignment(MLabel.Alignment.LEFT);
- add(label);
-
- value = new MValue(dungeonLever.getLeverPoint(), Collections.emptyList());
- add(value);
-
- preRequisite = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonLever.setPreRequisite(Arrays.asList(str.split(",")));
- }
- };
- preRequisite.setText(TextUtils.join(dungeonLever.getPreRequisite(), ","));
- preRequisite2 = new MLabelAndElement("Req.",preRequisite);
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- add(preRequisite2);
-
-
- target = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonLever.setTriggering(str);
- }
- };
- target.setText(dungeonLever.getTriggering());
- target2 = new MLabelAndElement("Target",target);
- target2.setBounds(new Rectangle(0,60,getBounds().width,20));
- add(target2);
- }
-
- @Override
- public void onBoundsUpdate() {
- label.setBounds(new Rectangle(0,0,getBounds().width, 20));
- value.setBounds(new Rectangle(0,20,getBounds().width, 20));
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- target2.setBounds(new Rectangle(0,60,getBounds().width,20));
- }
-
- @Override
- public void setParameter(Parameter parameter) {
- this.parameter = parameter;
- }
-
- @Override
- public void renderWorld(float partialTicks) {
- dungeonLever.highlight(new Color(0,255,0,50), parameter.getName(), EditingContext.getEditingContext().getRoom(), partialTicks);
- }
-
- @Override
- public void resize(int parentWidth, int parentHeight) {
- this.setBounds(new Rectangle(0,0,parentWidth, parentHeight));
- }
-
- public static class Generator implements ValueEditCreator<ValueEditOnewayLever> {
-
- @Override
- public ValueEditOnewayLever createValueEdit(Parameter parameter) {
- return new ValueEditOnewayLever(parameter);
- }
-
- @Override
- public Object createDefaultValue(Parameter parameter) {
- return new DungeonOnewayLever();
- }
-
- @Override
- public Object cloneObj(Object object) {
- try {
- return ((DungeonOnewayLever)object).clone();
- } catch (CloneNotSupportedException e) {
- e.printStackTrace();
- }
- assert false;
- return null;
- }
- }
-}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditPressurePlate.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditPressurePlate.java
deleted file mode 100755
index 99d60baa..00000000
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditPressurePlate.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/*
- * Dungeons Guide - The most intelligent Hypixel Skyblock Dungeons Mod
- * Copyright (C) 2021 cyoung06
- *
- * 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 <https://www.gnu.org/licenses/>.
- */
-
-package kr.syeyoung.dungeonsguide.roomedit.mechanicedit;
-
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonPressurePlate;
-import kr.syeyoung.dungeonsguide.roomedit.EditingContext;
-import kr.syeyoung.dungeonsguide.gui.MPanel;
-import kr.syeyoung.dungeonsguide.roomedit.Parameter;
-import kr.syeyoung.dungeonsguide.gui.elements.MLabel;
-import kr.syeyoung.dungeonsguide.gui.elements.MLabelAndElement;
-import kr.syeyoung.dungeonsguide.gui.elements.MTextField;
-import kr.syeyoung.dungeonsguide.gui.elements.MValue;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEdit;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEditCreator;
-import kr.syeyoung.dungeonsguide.utils.TextUtils;
-import java.awt.*;
-import java.util.Arrays;
-import java.util.Collections;
-
-public class ValueEditPressurePlate extends MPanel implements ValueEdit<DungeonPressurePlate> {
- private Parameter parameter;
-
- // scroll pane
- // just create
- // add set
- private final DungeonPressurePlate dungeonPressureplate;
-
- private final MLabel label;
- private final MValue<OffsetPoint> value;
- private final MTextField preRequisite;
- private final MLabelAndElement preRequisite2;
- private final MTextField target;
- private final MLabelAndElement target2;
-
-
- public ValueEditPressurePlate(final Parameter parameter2) {
- this.parameter = parameter2;
- this.dungeonPressureplate = (DungeonPressurePlate) parameter2.getNewData();
-
-
- label = new MLabel();
- label.setText("Secret Point");
- label.setAlignment(MLabel.Alignment.LEFT);
- add(label);
-
- value = new MValue(dungeonPressureplate.getPlatePoint(), Collections.emptyList());
- add(value);
-
- preRequisite = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonPressureplate.setPreRequisite(Arrays.asList(str.split(",")));
- }
- };
- preRequisite.setText(TextUtils.join(dungeonPressureplate.getPreRequisite(), ","));
- preRequisite2 = new MLabelAndElement("Req.",preRequisite);
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- add(preRequisite2);
-
-
- target = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonPressureplate.setTriggering(str);
- }
- };
- target.setText(dungeonPressureplate.getTriggering());
- target2 = new MLabelAndElement("Target",target);
- target2.setBounds(new Rectangle(0,60,getBounds().width,20));
- add(target2);
- }
-
- @Override
- public void onBoundsUpdate() {
- label.setBounds(new Rectangle(0,0,getBounds().width, 20));
- value.setBounds(new Rectangle(0,20,getBounds().width, 20));
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- target2.setBounds(new Rectangle(0,60,getBounds().width,20));
- }
-
- @Override
- public void setParameter(Parameter parameter) {
- this.parameter = parameter;
- }
-
- @Override
- public void renderWorld(float partialTicks) {
- dungeonPressureplate.highlight(new Color(0,255,0,50), parameter.getName(), EditingContext.getEditingContext().getRoom(), partialTicks);
- }
-
- @Override
- public void resize(int parentWidth, int parentHeight) {
- this.setBounds(new Rectangle(0,0,parentWidth, parentHeight));
- }
-
- public static class Generator implements ValueEditCreator<ValueEditPressurePlate> {
-
- @Override
- public ValueEditPressurePlate createValueEdit(Parameter parameter) {
- return new ValueEditPressurePlate(parameter);
- }
-
- @Override
- public Object createDefaultValue(Parameter parameter) {
- return new DungeonPressurePlate();
- }
-
- @Override
- public Object cloneObj(Object object) {
- try {
- return ((DungeonPressurePlate)object).clone();
- } catch (CloneNotSupportedException e) {
- e.printStackTrace();
- }
- assert false;
- return null;
- }
- }
-}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditSecret.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditSecret.java
deleted file mode 100755
index 72cb410b..00000000
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditSecret.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
- * Dungeons Guide - The most intelligent Hypixel Skyblock Dungeons Mod
- * Copyright (C) 2021 cyoung06
- *
- * 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 <https://www.gnu.org/licenses/>.
- */
-
-package kr.syeyoung.dungeonsguide.roomedit.mechanicedit;
-
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPoint;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonSecret;
-import kr.syeyoung.dungeonsguide.roomedit.EditingContext;
-import kr.syeyoung.dungeonsguide.gui.MPanel;
-import kr.syeyoung.dungeonsguide.roomedit.Parameter;
-import kr.syeyoung.dungeonsguide.gui.elements.*;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEdit;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEditCreator;
-import kr.syeyoung.dungeonsguide.utils.TextUtils;
-
-import java.awt.*;
-import java.util.Arrays;
-import java.util.Collections;
-
-public class ValueEditSecret extends MPanel implements ValueEdit<DungeonSecret> {
- private Parameter parameter;
-
- // scroll pane
- // just create
- // add set
- private final DungeonSecret dungeonSecret;
-
- private final MLabel label;
- private final MValue<OffsetPoint> value;
- private final MStringSelectionButton selectionButton;
- private final MTextField preRequisite;
- private final MLabelAndElement preRequisite2;
-
- public ValueEditSecret(final Parameter parameter2) {
- this.parameter = parameter2;
- this.dungeonSecret = (DungeonSecret) parameter2.getNewData();
-
-
- label = new MLabel();
- label.setText("Secret Point");
- label.setAlignment(MLabel.Alignment.LEFT);
- add(label);
-
- value = new MValue(dungeonSecret.getSecretPoint(), Collections.emptyList());
- add(value);
-
- selectionButton = new MStringSelectionButton(Arrays.asList("CHEST", "BAT", "ITEM_DROP", "ESSENCE"), dungeonSecret.getSecretType().name());
- selectionButton.setOnUpdate(new Runnable() {
- @Override
- public void run() {
- dungeonSecret.setSecretType(DungeonSecret.SecretType.valueOf(selectionButton.getSelected()));
- }
- });
- add(selectionButton);
-
- preRequisite = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonSecret.setPreRequisite(Arrays.asList(str.split(",")));
- }
- };
- preRequisite.setText(TextUtils.join(dungeonSecret.getPreRequisite(), ","));
- preRequisite2 = new MLabelAndElement("Req.",preRequisite);
- preRequisite2.setBounds(new Rectangle(0,60,getBounds().width,20));
- add(preRequisite2);
- }
-
- @Override
- public void onBoundsUpdate() {
- label.setBounds(new Rectangle(0,0,getBounds().width, 20));
- value.setBounds(new Rectangle(0,20,getBounds().width, 20));
- selectionButton.setBounds(new Rectangle(0,40,getBounds().width, 20));
- preRequisite2.setBounds(new Rectangle(0,60,getBounds().width,20));
- }
-
- @Override
- public void setParameter(Parameter parameter) {
- this.parameter = parameter;
- }
-
- @Override
- public void renderWorld(float partialTicks) {
- dungeonSecret.highlight(new Color(0,255,0,50), parameter.getName(), EditingContext.getEditingContext().getRoom(), partialTicks);
- }
-
- @Override
- public void resize(int parentWidth, int parentHeight) {
- this.setBounds(new Rectangle(0,0,parentWidth, parentHeight));
- }
-
- public static class Generator implements ValueEditCreator<ValueEditSecret> {
-
- @Override
- public ValueEditSecret createValueEdit(Parameter parameter) {
- return new ValueEditSecret(parameter);
- }
-
- @Override
- public Object createDefaultValue(Parameter parameter) {
- return new DungeonSecret();
- }
-
- @Override
- public Object cloneObj(Object object) {
- try {
- return ((DungeonSecret)object).clone();
- } catch (CloneNotSupportedException e) {
- e.printStackTrace();
- }
- assert false;
- return null;
- }
- }
-}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditTomb.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditTomb.java
deleted file mode 100755
index 042a8258..00000000
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditTomb.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
- * Dungeons Guide - The most intelligent Hypixel Skyblock Dungeons Mod
- * Copyright (C) 2021 cyoung06
- *
- * 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 <https://www.gnu.org/licenses/>.
- */
-
-package kr.syeyoung.dungeonsguide.roomedit.mechanicedit;
-
-import kr.syeyoung.dungeonsguide.dungeon.data.OffsetPointSet;
-import kr.syeyoung.dungeonsguide.dungeon.mechanics.DungeonTomb;
-import kr.syeyoung.dungeonsguide.roomedit.EditingContext;
-import kr.syeyoung.dungeonsguide.gui.MPanel;
-import kr.syeyoung.dungeonsguide.roomedit.Parameter;
-import kr.syeyoung.dungeonsguide.gui.elements.*;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEdit;
-import kr.syeyoung.dungeonsguide.roomedit.valueedit.ValueEditCreator;
-import kr.syeyoung.dungeonsguide.utils.TextUtils;
-
-import java.awt.*;
-import java.util.Arrays;
-import java.util.Collections;
-
-public class ValueEditTomb extends MPanel implements ValueEdit<DungeonTomb> {
- private Parameter parameter;
-
- // scroll pane
- // just create
- // add set
- private final DungeonTomb dungeonTomb;
-
- private final MLabel label;
- private final MValue<OffsetPointSet> value;
- private final MTextField preRequisite;
- private final MLabelAndElement preRequisite2;
-
- public ValueEditTomb(final Parameter parameter2) {
- this.parameter = parameter2;
- this.dungeonTomb = (DungeonTomb) parameter2.getNewData();
-
-
- label = new MLabel();
- label.setText("Tomb Points");
- label.setAlignment(MLabel.Alignment.LEFT);
- add(label);
-
- value = new MValue(dungeonTomb.getSecretPoint(), Collections.emptyList());
- add(value);
-
- preRequisite = new MTextField() {
- @Override
- public void edit(String str) {
- dungeonTomb.setPreRequisite(Arrays.asList(str.split(",")));
- }
- };
- preRequisite.setText(TextUtils.join(dungeonTomb.getPreRequisite(), ","));
- preRequisite2 = new MLabelAndElement("Req.",preRequisite);
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- add(preRequisite2);
- }
-
- @Override
- public void onBoundsUpdate() {
- label.setBounds(new Rectangle(0,0,getBounds().width, 20));
- value.setBounds(new Rectangle(0,20,getBounds().width, 20));
- preRequisite2.setBounds(new Rectangle(0,40,getBounds().width,20));
- }
-
- @Override
- public void setParameter(Parameter parameter) {
- this.parameter = parameter;
- }
-
- @Override
- public void renderWorld(float partialTicks) {
- dungeonTomb.highlight(new Color(0,255,255,50), parameter.getName(), EditingContext.getEditingContext().getRoom(), partialTicks);
- }
-
- @Override
- public void resize(int parentWidth, int parentHeight) {
- this.setBounds(new Rectangle(0,0,parentWidth, parentHeight));
- }
-
- public static class Generator implements ValueEditCreator<ValueEditTomb> {
-
- @Override
- public ValueEditTomb createValueEdit(Parameter parameter) {
- return new ValueEditTomb(parameter);
- }
-
- @Override
- public Object createDefaultValue(Parameter parameter) {
- return new DungeonTomb();
- }
-
- @Override
- public Object cloneObj(Object object) {
- try {
- return ((DungeonTomb)object).clone();
- } catch (CloneNotSupportedException e) {
- e.printStackTrace();
- }
- assert false;
- return null;
- }
- }
-}