Merging changes from private branch

This commit is contained in:
Anuken
2025-04-04 11:47:35 -04:00
parent cf5c6d0905
commit b7dbe54d76
161 changed files with 2484 additions and 1137 deletions

View File

@@ -147,8 +147,8 @@ public class EditorTile extends Tile{
if(block.hasBuilding()){
build = entityprov.get().init(this, team, false, rotation);
if(block.hasItems) build.items = new ItemModule();
if(block.hasLiquids) build.liquids(new LiquidModule());
if(block.hasPower) build.power(new PowerModule());
if(block.hasLiquids) build.liquids = new LiquidModule();
if(block.hasPower) build.power = new PowerModule();
}
}

View File

@@ -136,6 +136,7 @@ public class MapObjectivesDialog extends BaseDialog{
name(cont, name, remover, indexer);
cont.table(t -> t.left().button(
b -> b.image(Tex.whiteui).size(iconSmall).update(i -> i.setColor(get.get().color)),
Styles.squarei,
() -> showTeamSelect(set)
).fill().pad(4f)).growX().fillY();
});
@@ -529,6 +530,8 @@ public class MapObjectivesDialog extends BaseDialog{
public void rebuildObjectives(Seq<MapObjective> objectives){
canvas.clearObjectives();
objectives.each(MapObjective::validate);
if(
objectives.any() && (
// If the objectives were previously programmatically made...
@@ -592,9 +595,23 @@ public class MapObjectivesDialog extends BaseDialog{
}
public static void showTeamSelect(Cons<Team> cons){
showTeamSelect(false, cons);
}
public static void showTeamSelect(boolean allowNull, Cons<Team> cons){
BaseDialog dialog = new BaseDialog("");
dialog.cont.defaults().size(40f).pad(4f);
if(allowNull){
dialog.cont.button(Icon.cancel, Styles.emptyi, () -> {
cons.get(null);
dialog.hide();
}).tooltip("@none");
}
for(var team : Team.baseTeams){
dialog.cont.image(Tex.whiteui).size(iconMed).color(team.color).pad(4)
dialog.cont.image(Tex.whiteui).color(team.color)
.with(i -> i.addListener(new HandCursorListener()))
.tooltip(team.localized()).get().clicked(() -> {
cons.get(team);

View File

@@ -288,6 +288,13 @@ public class WaveInfoDialog extends BaseDialog{
buildGroups();
}).padTop(4).update(b -> b.setChecked(group.effect == StatusEffects.boss)).padBottom(8f).row();
t.table(a -> {
a.add("@waves.team").padRight(8);
a.button(b -> b.image(Tex.whiteui).size(iconSmall).update(i -> i.setColor(group.team == null ? Color.clear : group.team.color)), Styles.squarei,
() -> MapObjectivesDialog.showTeamSelect(true, team -> group.team = team)).size(38f);
}).padTop(0).row();
t.table(a -> {
a.add("@waves.spawn").padRight(8);