diff options
| author | syeyoung <cyong06@naver.com> | 2021-02-11 16:49:04 +0900 | 
|---|---|---|
| committer | syeyoung <cyong06@naver.com> | 2021-02-11 16:49:04 +0900 | 
| commit | 505cb6fc92e7d2c7412b43f459796791ca36e5a3 (patch) | |
| tree | e4ffe630b60345892b1b768ef6227f6676072b5c /src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit | |
| parent | 9ec1ada8e734e502db1be59853959fc269090baa (diff) | |
| download | Skyblock-Dungeons-Guide-505cb6fc92e7d2c7412b43f459796791ca36e5a3.tar.gz Skyblock-Dungeons-Guide-505cb6fc92e7d2c7412b43f459796791ca36e5a3.tar.bz2 Skyblock-Dungeons-Guide-505cb6fc92e7d2c7412b43f459796791ca36e5a3.zip | |
journal and essence secrets
Diffstat (limited to 'src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit')
| -rwxr-xr-x | src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditJournal.java | 105 | ||||
| -rwxr-xr-x | src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditSecret.java | 2 | 
2 files changed, 106 insertions, 1 deletions
| diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditJournal.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditJournal.java new file mode 100755 index 00000000..cc94278f --- /dev/null +++ b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditJournal.java @@ -0,0 +1,105 @@ +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 DungeonJournal dungeonSecret; + +    private MLabel label; +    private MValue<OffsetPoint> value; +    private MTextField preRequisite; +    private 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/ValueEditSecret.java b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditSecret.java index eb8349c4..18d1195e 100755 --- a/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditSecret.java +++ b/src/main/java/kr/syeyoung/dungeonsguide/roomedit/mechanicedit/ValueEditSecret.java @@ -41,7 +41,7 @@ public class ValueEditSecret extends MPanel implements ValueEdit<DungeonSecret>          value = new MValue(dungeonSecret.getSecretPoint(), Collections.emptyList());          add(value); -        selectionButton = new MStringSelectionButton(Arrays.asList(new String[] {"CHEST", "BAT", "ITEM_DROP"}), "CHEST"); +        selectionButton = new MStringSelectionButton(Arrays.asList(new String[] {"CHEST", "BAT", "ITEM_DROP", "ESSENCE"}), "CHEST");          selectionButton.setOnUpdate(new Runnable() {              @Override              public void run() { | 
