WIP map info dialog changes
This commit is contained in:
@@ -1,10 +1,10 @@
|
||||
package mindustry.editor;
|
||||
|
||||
import arc.*;
|
||||
import arc.scene.ui.*;
|
||||
import arc.struct.*;
|
||||
import mindustry.*;
|
||||
import mindustry.game.*;
|
||||
import mindustry.gen.*;
|
||||
import mindustry.io.*;
|
||||
import mindustry.maps.filters.*;
|
||||
import mindustry.ui.*;
|
||||
@@ -16,6 +16,7 @@ public class MapInfoDialog extends BaseDialog{
|
||||
private final WaveInfoDialog waveInfo;
|
||||
private final MapGenerateDialog generate;
|
||||
private final CustomRulesDialog ruleInfo = new CustomRulesDialog();
|
||||
private final MapObjectivesDialog objectives = new MapObjectivesDialog();
|
||||
|
||||
public MapInfoDialog(){
|
||||
super("@editor.mapinfo");
|
||||
@@ -51,41 +52,49 @@ public class MapInfoDialog extends BaseDialog{
|
||||
t.row();
|
||||
t.add("@editor.author").padRight(8).left();
|
||||
|
||||
TextField author = t.field(tags.get("author", Core.settings.getString("mapAuthor", "")), text -> {
|
||||
TextField author = t.field(tags.get("author", ""), text -> {
|
||||
tags.put("author", text);
|
||||
Core.settings.put("mapAuthor", text);
|
||||
}).size(400, 55f).maxTextLength(50).get();
|
||||
author.setMessageText("@unknown");
|
||||
|
||||
t.row();
|
||||
t.add("@editor.rules").padRight(8).left();
|
||||
t.button("@edit", () -> {
|
||||
ruleInfo.show(Vars.state.rules, () -> Vars.state.rules = new Rules());
|
||||
hide();
|
||||
}).left().width(200f);
|
||||
|
||||
t.row();
|
||||
t.add("@editor.waves").padRight(8).left();
|
||||
t.button("@edit", () -> {
|
||||
waveInfo.show();
|
||||
hide();
|
||||
}).left().width(200f);
|
||||
t.table(Tex.button, r -> {
|
||||
r.defaults().width(230f).height(60f);
|
||||
|
||||
t.row();
|
||||
t.add("@editor.generation").padRight(8).left();
|
||||
t.button("@edit", () -> {
|
||||
//randomize so they're not all the same seed
|
||||
var res = maps.readFilters(editor.tags.get("genfilters", ""));
|
||||
res.each(GenerateFilter::randomize);
|
||||
var style = Styles.flatt;
|
||||
|
||||
generate.show(res,
|
||||
filters -> {
|
||||
//reset seed to 0 so it is not written
|
||||
filters.each(f -> f.seed = 0);
|
||||
editor.tags.put("genfilters", JsonIO.write(filters));
|
||||
});
|
||||
hide();
|
||||
}).left().width(200f);
|
||||
r.button("@editor.rules", Icon.list, style, () -> {
|
||||
ruleInfo.show(Vars.state.rules, () -> Vars.state.rules = new Rules());
|
||||
hide();
|
||||
}).marginLeft(10f);
|
||||
|
||||
r.button("@editor.waves", Icon.units, style, () -> {
|
||||
waveInfo.show();
|
||||
hide();
|
||||
}).marginLeft(10f);
|
||||
|
||||
r.row();
|
||||
|
||||
r.button("@editor.objectives", Icon.info, style, () -> {
|
||||
objectives.show(state.rules.objectives);
|
||||
hide();
|
||||
}).marginLeft(10f);
|
||||
|
||||
r.button("@editor.generation", Icon.terrain, style, () -> {
|
||||
//randomize so they're not all the same seed
|
||||
var res = maps.readFilters(editor.tags.get("genfilters", ""));
|
||||
res.each(GenerateFilter::randomize);
|
||||
|
||||
generate.show(res,
|
||||
filters -> {
|
||||
//reset seed to 0 so it is not written
|
||||
filters.each(f -> f.seed = 0);
|
||||
editor.tags.put("genfilters", JsonIO.write(filters));
|
||||
});
|
||||
hide();
|
||||
}).marginLeft(10f);
|
||||
}).colspan(2).center();
|
||||
|
||||
name.change();
|
||||
description.change();
|
||||
|
||||
Reference in New Issue
Block a user