core update is completely fixed yey

This commit is contained in:
sharlotte
2021-08-26 14:41:21 +09:00
parent 698f53b49d
commit 1cac374a32
2 changed files with 18 additions and 24 deletions

View File

@@ -132,7 +132,9 @@ public class HudUi {
}
});
Events.on(EventType.BlockDestroyEvent.class, e -> coreItems.resetUsed());
Events.on(EventType.BlockDestroyEvent.class, e -> {
if(e.tile.block() instanceof CoreBlock)coreItems.resetUsed();
});
Events.on(EventType.CoreChangeEvent.class, e -> coreItems.resetUsed());
Events.on(EventType.ResetEvent.class, e -> coreItems.resetUsed());
}
@@ -877,27 +879,23 @@ public class HudUi {
public void addItemTable(){
if(uiIndex != 2) return;
ScrollPane itemPane = new ScrollPane(new Table(this::setItem).left(), new ScrollPane.ScrollPaneStyle(){{
vScroll = Tex.clear;
vScrollKnob = new ScaledNinePatchDrawable(new NinePatch(((TextureRegionDrawable) scrollKnobVerticalThin).getRegion()), modUiScale);
}});
itemPane.setScrollingDisabled(true, false);
itemPane.setScrollYForce(itemScrollPos);
itemPane.setOverscroll(false, false);
itemPane.update(() -> {
if(itemPane.hasScroll()){
Element result = scene.hit(input.mouseX(), input.mouseY(), true);
if(result == null || !result.isDescendantOf(itemPane)){
scene.setScrollFocus(null);
}
}
itemScrollPos = itemPane.getScrollY();
});
itemTable = new Table(table -> {
table.left().defaults().minWidth(Scl.scl(modUiScale) * 54 * 8f).height(Scl.scl(modUiScale) * 32 * 8f).align(Align.left);
table.table(Tex.button, t -> {
t.add(itemPane);
ScrollPane pane = t.pane(new ScrollPane.ScrollPaneStyle(){{
vScroll = Tex.clear;
vScrollKnob = new ScaledNinePatchDrawable(new NinePatch(((TextureRegionDrawable) scrollKnobVerticalThin).getRegion()), modUiScale);
}}, new Table(this::setItem).left()).get();
pane.update(() -> {
Element result = scene.hit(input.mouseX(), input.mouseY(), true);
if(pane.hasScroll() && (result == null || !result.isDescendantOf(pane)))
scene.setScrollFocus(null);
itemScrollPos = pane.getScrollY();
});
pane.setOverscroll(false, false);
pane.setScrollingDisabled(true, false);
pane.setScrollYForce(itemScrollPos);
t.update(() -> {
NinePatchDrawable patch = (NinePatchDrawable)Tex.button;
t.setBackground(patch.tint(Tmp.c1.set(patch.getPatch().getColor()).a(settings.getInt("uiopacity") / 100f)));

View File

@@ -29,7 +29,7 @@ public class CoresItemsDisplay {
private final ObjectMap<Team, ObjectSet<UnitType>> usedUnits = new ObjectMap<>();
private final ObjectMap<Team, Seq<ItemStack>> prevItems = new ObjectMap<>();
private final ObjectMap<Team, Seq<ItemStack>> updateItems = new ObjectMap<>();
private final ObjectIntMap<Team> coreAmount = new ObjectIntMap<>();
public final ObjectIntMap<Team> coreAmount = new ObjectIntMap<>();
private CoreBlock.CoreBuild core;
public Team[] teams;
public Seq<Table> tables = new Seq<>();
@@ -75,8 +75,6 @@ public class CoresItemsDisplay {
public Table setTable(Team team){
return new Table(t -> {
t.clear();
t.update(() -> {
core = team.core();
heat += Time.delta;
@@ -91,11 +89,9 @@ public class CoresItemsDisplay {
}
});
Label label1 = new Label(() -> "[#" + team.color.toString() + "]" + team.name + "[]");
label1.setFontScale(modUiScale);
t.add(label1).row();
t.row();
t.table(coretable -> {
final int[] i = {0};
for(CoreBlock.CoreBuild core : team.cores()) {