Fixed selection arrow in the HUD

This commit is contained in:
Sollace 2023-06-03 13:38:21 +01:00
parent cab3477693
commit cab6ef2375

View file

@ -123,8 +123,7 @@ public class UHud extends DrawableHelper {
slots.forEach(slot -> slot.renderBackground(matrices, abilities, swap, tickDelta)); slots.forEach(slot -> slot.renderBackground(matrices, abilities, swap, tickDelta));
if (pony.getObservedSpecies().canCast()) { if (pony.getObservedSpecies().canCast()) {
AbilitySlot slot = swap ? AbilitySlot.PASSIVE : AbilitySlot.PRIMARY; Ability<?> ability = pony.getAbilities().getStat(AbilitySlot.PRIMARY)
Ability<?> ability = pony.getAbilities().getStat(slot)
.getAbility(Unicopia.getConfig().hudPage.get()) .getAbility(Unicopia.getConfig().hudPage.get())
.orElse(null); .orElse(null);
@ -133,7 +132,7 @@ public class UHud extends DrawableHelper {
matrices.translate(PRIMARY_SLOT_SIZE / 2F, PRIMARY_SLOT_SIZE / 2F, 0); matrices.translate(PRIMARY_SLOT_SIZE / 2F, PRIMARY_SLOT_SIZE / 2F, 0);
boolean first = !pony.asEntity().isSneaking(); boolean first = !pony.asEntity().isSneaking();
TypedActionResult<CustomisedSpellType<?>> inHand = pony.getCharms().getSpellInHand(false); TypedActionResult<CustomisedSpellType<?>> inHand = pony.getCharms().getSpellInHand(false);
boolean replacing = inHand.getResult().isAccepted() && pony.getAbilities().getStat(slot).getActiveAbility().isEmpty(); boolean replacing = inHand.getResult().isAccepted() && pony.getAbilities().getStat(AbilitySlot.PRIMARY).getActiveAbility().isEmpty();
if (first != prevPointed || replacing != prevReplacing || inHand.getValue().type() != focusedType) { if (first != prevPointed || replacing != prevReplacing || inHand.getValue().type() != focusedType) {
focusedType = inHand.getValue().type(); focusedType = inHand.getValue().type();
prevPointed = first; prevPointed = first;