浏览代码

Fix air bar position (#2)

Lortseam 4 年之前
父节点
当前提交
c39f4bdcd0
共有 1 个文件被更改,包括 10 次插入2 次删除
  1. 10 2
      src/main/java/me/lortseam/bettermounthud/mixin/IngameHudMixin.java

+ 10 - 2
src/main/java/me/lortseam/bettermounthud/mixin/IngameHudMixin.java

@@ -15,8 +15,8 @@ public abstract class IngameHudMixin {
     @Shadow @Final private MinecraftClient client;
 
     @ModifyConstant(method = "renderMountHealth", constant = @Constant(intValue = 39))
-    private int bettermounthud$moveMountHealthUp(int original) {
-        return original + 10;
+    private int bettermounthud$moveMountHealthUp(int yOffset) {
+        return yOffset + 10;
     }
 
     @Redirect(method = "renderStatusBars", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/hud/InGameHud;getHeartCount(Lnet/minecraft/entity/LivingEntity;)I"))
@@ -24,6 +24,14 @@ public abstract class IngameHudMixin {
         return 0;
     }
 
+    @ModifyVariable(method = "renderStatusBars", at = @At(value = "STORE", ordinal = 1), ordinal = 10)
+    private int bettermounthud$moveAirUp(int y) {
+        if (client.player.hasJumpingMount()) {
+            y -= 10;
+        }
+        return y;
+    }
+
     @Redirect(method = "render", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/network/ClientPlayerEntity;hasJumpingMount()Z"))
     private boolean bettermounthud$switchBar(ClientPlayerEntity player) {
         if (!player.hasJumpingMount()) return false;