mirror of
https://github.com/yawaflua/Informatis.git
synced 2025-12-10 12:09:27 +02:00
separated setting
This commit is contained in:
@@ -46,5 +46,5 @@ shows every units' hp, ammo, shield by bar under each unit.
|
|||||||
## Setting
|
## Setting
|
||||||
can toggle display on/off ingame, set some ui opacity etc.
|
can toggle display on/off ingame, set some ui opacity etc.
|
||||||
- [ ] improve setting ui
|
- [ ] improve setting ui
|
||||||
- [ ] separate setting because it's too many
|
- [x] separate setting because it's too many
|
||||||
- [ ] add its description
|
- [ ] add its description
|
||||||
@@ -13,6 +13,8 @@ import mindustry.ui.Styles;
|
|||||||
import mindustry.ui.dialogs.*;
|
import mindustry.ui.dialogs.*;
|
||||||
import sun.tools.jconsole.Tab;
|
import sun.tools.jconsole.Tab;
|
||||||
|
|
||||||
|
import java.util.Iterator;
|
||||||
|
|
||||||
import static arc.Core.bundle;
|
import static arc.Core.bundle;
|
||||||
import static arc.Core.settings;
|
import static arc.Core.settings;
|
||||||
import static mindustry.Vars.*;
|
import static mindustry.Vars.*;
|
||||||
@@ -22,14 +24,16 @@ public class Setting {
|
|||||||
public static SettingsMenuDialog.SettingsTable opacityTable = new SettingsMenuDialog.SettingsTable();
|
public static SettingsMenuDialog.SettingsTable opacityTable = new SettingsMenuDialog.SettingsTable();
|
||||||
public static SettingsMenuDialog.SettingsTable scanTable = new SettingsMenuDialog.SettingsTable();
|
public static SettingsMenuDialog.SettingsTable scanTable = new SettingsMenuDialog.SettingsTable();
|
||||||
|
|
||||||
public void addGraphicCheckSetting(String key){
|
public void addGraphicCheckSetting(String key, boolean def){
|
||||||
ui.settings.graphics.checkPref(key, Core.settings.getBool(key));
|
ui.settings.graphics.checkPref(key, def);
|
||||||
}
|
}
|
||||||
public void addGraphicSlideSetting(String key, int def, int min, int max, int step, SettingsMenuDialog.StringProcessor s, Seq<SettingsMenuDialog.SettingsTable.Setting> list){
|
public void addGraphicSlideSetting(String key, int def, int min, int max, int step, SettingsMenuDialog.StringProcessor s, Seq<SettingsMenuDialog.SettingsTable.Setting> list){
|
||||||
list.add(new SettingsMenuDialog.SettingsTable.Setting() {
|
list.add(new SettingsMenuDialog.SettingsTable.Setting() {
|
||||||
{
|
{
|
||||||
name = key;
|
name = key;
|
||||||
title = bundle.get("setting." + key + ".name");
|
title = bundle.get("setting." + key + ".name");
|
||||||
|
|
||||||
|
Core.settings.defaults(name, def);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -56,13 +60,14 @@ public class Setting {
|
|||||||
table.row();
|
table.row();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
settings.defaults(key, def);
|
|
||||||
}
|
}
|
||||||
public void addGraphicCheckSetting(String key, boolean def, Seq<SettingsMenuDialog.SettingsTable.Setting> list){
|
public void addGraphicCheckSetting(String key, boolean def, Seq<SettingsMenuDialog.SettingsTable.Setting> list){
|
||||||
list.add(new SettingsMenuDialog.SettingsTable.Setting() {
|
list.add(new SettingsMenuDialog.SettingsTable.Setting() {
|
||||||
{
|
{
|
||||||
name = key;
|
name = key;
|
||||||
title = bundle.get("setting." + key + ".name");
|
title = bundle.get("setting." + key + ".name");
|
||||||
|
|
||||||
|
Core.settings.defaults(name, def);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -80,7 +85,6 @@ public class Setting {
|
|||||||
table.row();
|
table.row();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
settings.defaults(key, def);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addGraphicTypeSetting(String key, int defs, String dialogs, String invalid, int warnMax, Seq<SettingsMenuDialog.SettingsTable.Setting> list){
|
public void addGraphicTypeSetting(String key, int defs, String dialogs, String invalid, int warnMax, Seq<SettingsMenuDialog.SettingsTable.Setting> list){
|
||||||
@@ -218,29 +222,38 @@ public class Setting {
|
|||||||
{
|
{
|
||||||
name = key;
|
name = key;
|
||||||
title = Core.bundle.get("setting." + key + ".name");
|
title = Core.bundle.get("setting." + key + ".name");
|
||||||
|
|
||||||
|
Core.settings.defaults(name, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void rebuild() {
|
public Table rebuild() {
|
||||||
table.clearChildren();
|
table.clearChildren();
|
||||||
|
|
||||||
for(SettingsMenuDialog.SettingsTable.Setting setting : list){
|
Iterator var1 = list.iterator();
|
||||||
|
|
||||||
|
while(var1.hasNext()) {
|
||||||
|
SettingsMenuDialog.SettingsTable.Setting setting = (SettingsMenuDialog.SettingsTable.Setting)var1.next();
|
||||||
setting.add(table);
|
setting.add(table);
|
||||||
}
|
}
|
||||||
|
table.button(Core.bundle.get("settings.reset", "Reset to Defaults"), () -> {
|
||||||
|
Iterator var2 = list.iterator();
|
||||||
|
|
||||||
table.button(bundle.get("settings.reset", "Reset to Defaults"), () -> {
|
while(var1.hasNext()) {
|
||||||
for(SettingsMenuDialog.SettingsTable.Setting setting : list){
|
SettingsMenuDialog.SettingsTable.Setting setting = (SettingsMenuDialog.SettingsTable.Setting)var1.next();
|
||||||
if(setting.name == null || setting.title == null) continue;
|
if (setting.name != null && setting.title != null) {
|
||||||
settings.put(setting.name, settings.getDefault(setting.name));
|
Core.settings.put(setting.name, Core.settings.getDefault(setting.name));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
rebuild();
|
rebuild();
|
||||||
}).margin(14).width(240f).pad(6);
|
}).margin(14.0F).width(240.0F).pad(6.0F);
|
||||||
|
|
||||||
|
return table;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void add(SettingsMenuDialog.SettingsTable settingsTable) {
|
public void add(SettingsMenuDialog.SettingsTable settingsTable) {
|
||||||
settingsTable.table(Core.scene.getStyle(Button.ButtonStyle.class).up, t->{
|
settingsTable.table(Core.scene.getStyle(Button.ButtonStyle.class).up, t->{
|
||||||
rebuild();
|
t.add(rebuild());
|
||||||
t.add(table);
|
|
||||||
t.row();
|
t.row();
|
||||||
});
|
});
|
||||||
settingsTable.row();
|
settingsTable.row();
|
||||||
@@ -249,9 +262,6 @@ public class Setting {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void init(){
|
public void init(){
|
||||||
boolean tmp = Core.settings.getBool("uiscalechanged", false);
|
|
||||||
Core.settings.put("uiscalechanged", false);
|
|
||||||
|
|
||||||
Seq<SettingsMenuDialog.SettingsTable.Setting> waveSeq = new Seq<>();
|
Seq<SettingsMenuDialog.SettingsTable.Setting> waveSeq = new Seq<>();
|
||||||
addGraphicCheckSetting("pastwave", false, waveSeq);
|
addGraphicCheckSetting("pastwave", false, waveSeq);
|
||||||
addGraphicCheckSetting("emptywave", true, waveSeq);
|
addGraphicCheckSetting("emptywave", true, waveSeq);
|
||||||
@@ -270,20 +280,11 @@ public class Setting {
|
|||||||
addGraphicSlideSetting("uiopacity", 50, 0, 100, 5, s -> s + "%", opacitySeq);
|
addGraphicSlideSetting("uiopacity", 50, 0, 100, 5, s -> s + "%", opacitySeq);
|
||||||
addGraphicDialogSetting("opacitysetting", opacitySeq, opacityTable);
|
addGraphicDialogSetting("opacitysetting", opacitySeq, opacityTable);
|
||||||
|
|
||||||
addGraphicCheckSetting("infoui");
|
addGraphicCheckSetting("infoui", true);
|
||||||
addGraphicCheckSetting("weaponui");
|
addGraphicCheckSetting("weaponui", true);
|
||||||
addGraphicCheckSetting("select");
|
addGraphicCheckSetting("select", false);
|
||||||
addGraphicCheckSetting("unithealthui");
|
addGraphicCheckSetting("unithealthui", true);
|
||||||
addGraphicCheckSetting("ssim");
|
addGraphicCheckSetting("ssim", false);
|
||||||
addGraphicCheckSetting("gaycursor");
|
addGraphicCheckSetting("gaycursor", false);
|
||||||
|
|
||||||
Core.settings.defaults("infoui", true);
|
|
||||||
Core.settings.defaults("weaponui", true);
|
|
||||||
Core.settings.defaults("select", false);
|
|
||||||
Core.settings.defaults("unithealthui", true);
|
|
||||||
Core.settings.defaults("ssim", false);
|
|
||||||
Core.settings.defaults("gaycursor", false);
|
|
||||||
|
|
||||||
Core.settings.put("uiscalechanged", tmp);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user