Erekir rule option

This commit is contained in:
Anuken
2022-02-18 18:06:33 -05:00
parent 0c0adea2a4
commit 9633c57fe0
16 changed files with 38 additions and 16 deletions

View File

@@ -214,6 +214,26 @@ public class CustomRulesDialog extends BaseDialog{
main.button("@rules.weather", this::weatherDialog).width(250f).left().row();
title("@rules.title.planet");
main.table(Tex.button, t -> {
t.margin(10f);
var group = new ButtonGroup<>();
var style = Styles.clearTogglet;
t.defaults().size(140f, 50f);
//TODO dynamic selection
for(Planet planet : new Planet[]{Planets.serpulo, Planets.erekir}){
t.button(planet.localizedName, style, () -> {
rules.env = planet.defaultEnv;
rules.hiddenBuildItems.clear();
rules.hiddenBuildItems.addAll(planet.hiddenItems);
planet.ruleSetter.get(rules);
}).group(group).checked(rules.env == planet.defaultEnv);
}
}).left().fill(false).expand(false, false).row();
title("@rules.title.teams");
team("@rules.playerteam", t -> rules.defaultTeam = t, () -> rules.defaultTeam);

View File

@@ -373,7 +373,7 @@ public class PlacementFragment extends Fragment{
topTable.row();
topTable.table(b -> {
b.image(Icon.cancel).padRight(2).color(Color.scarlet);
b.add(!player.isBuilder() ? "@unit.nobuild" : !displayBlock.supportsEnv(state.rules.environment) ? "@unsupported.environment" : "@banned").width(190f).wrap();
b.add(!player.isBuilder() ? "@unit.nobuild" : !displayBlock.supportsEnv(state.rules.env) ? "@unsupported.environment" : "@banned").width(190f).wrap();
b.left();
}).padTop(2).left();
}
@@ -552,7 +552,7 @@ public class PlacementFragment extends Fragment{
boolean unlocked(Block block){
return block.unlockedNow() && block.placeablePlayer && block.environmentBuildable() &&
block.supportsEnv(state.rules.environment); //TODO this hides env unsupported blocks, not always a good thing
block.supportsEnv(state.rules.env); //TODO this hides env unsupported blocks, not always a good thing
}
boolean hasInfoBox(){