This commit is contained in:
Anuken 2023-05-10 13:00:49 -04:00
parent a3dbbe63c4
commit c5cf6f0af6

View file

@ -606,48 +606,43 @@ public class PlanetDialog extends BaseDialog implements PlanetInterfaceRenderer{
t.label(() -> mode == select ? "@sectors.select" : "").style(Styles.outlineLabel).color(Pal.accent);
}),
buttons,
// planet selection
new Table(t -> {
t.top().left();
ScrollPane pane = new ScrollPane(null, Styles.smallPane);
t.add(pane).colspan(2).row();
Table starsTable = new Table(Styles.black);
pane.setWidget(starsTable);
pane.setScrollingDisabled(true, false);
int starCount = 0;
for(Planet star : content.planets()){
if(star.solarSystem != star) continue;
boolean hasSelectablePlanets = false;
for(Planet planet : content.planets()){
if(planet.solarSystem == star && selectable(planet)){
hasSelectablePlanets = true;
break;
// planet selection
new Table(t -> {
t.top().left();
ScrollPane pane = new ScrollPane(null, Styles.smallPane);
t.add(pane).colspan(2).row();
Table starsTable = new Table(Styles.black);
pane.setWidget(starsTable);
pane.setScrollingDisabled(true, false);
int starCount = 0;
for(Planet star : content.planets()){
if(star.solarSystem != star || !content.planets().contains(p -> p.solarSystem == star && selectable(p))) continue;
starCount++;
if(starCount > 1) starsTable.add(star.localizedName).padLeft(10f).padBottom(10f).padTop(10f).left().width(190f).row();
Table planetTable = new Table();
starsTable.add(planetTable).left().row();
for(Planet planet : content.planets()){
if(planet.solarSystem == star && selectable(planet)){
Button planetButton = planetTable.button(planet.localizedName, Icon.icons.get(planet.icon + "Small", Icon.icons.get(planet.icon, Icon.commandRallySmall)), Styles.flatTogglet, () -> {
selected = null;
launchSector = null;
if(state.planet != planet){
newPresets.clear();
state.planet = planet;
rebuildExpand();
}
}
if(!hasSelectablePlanets) continue;
starCount++;
if(starCount > 1) starsTable.add(star.localizedName).padLeft(10f).padBottom(10f).padTop(10f).left().width(190f).row();
Table planetTable = new Table();
starsTable.add(planetTable).left().row();
for(Planet planet : content.planets()){
if(planet.solarSystem == star && selectable(planet)){
Button planetButton = planetTable.button(planet.localizedName, Icon.icons.get(planet.icon + "Small", Icon.icons.get(planet.icon, Icon.commandRallySmall)), Styles.flatTogglet, () -> {
selected = null;
launchSector = null;
if(state.planet != planet){
newPresets.clear();
state.planet = planet;
rebuildExpand();
}
settings.put("lastplanet", planet.name);
}).width(200).height(40).update(bb -> bb.setChecked(state.planet == planet)).with(w -> w.marginLeft(10f)).get();
planetButton.getChildren().get(1).setColor(planet.iconColor);
planetButton.setColor(planet.iconColor);
planetTable.background(Tex.pane).row();
}
}
settings.put("lastplanet", planet.name);
}).width(200).height(40).update(bb -> bb.setChecked(state.planet == planet)).with(w -> w.marginLeft(10f)).get();
planetButton.getChildren().get(1).setColor(planet.iconColor);
planetButton.setColor(planet.iconColor);
planetTable.background(Tex.pane).row();
}
}),
}
}
}),
new Table(c -> {
expandTable = c;