diff --git a/gradle.properties b/gradle.properties index e89992c..8e1d24a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -80,7 +80,7 @@ apiPackage = api # Specify the configuration file for Forge's access transformers here. It must be placed into /src/main/resources/META-INF/ # There can be multiple files in a space-separated list. # Example value: mymodid_at.cfg nei_at.cfg -accessTransformersFile = +accessTransformersFile = storagedrawers_at.cfg # Provides setup for Mixins if enabled. If you don't know what mixins are: Keep it disabled! usesMixins = true diff --git a/src/main/java/com/jaquadro/minecraft/storagedrawers/mixins/early/MixinPlayerControllerMP.java b/src/main/java/com/jaquadro/minecraft/storagedrawers/mixins/early/MixinPlayerControllerMP.java index 21f3e70..7315efd 100644 --- a/src/main/java/com/jaquadro/minecraft/storagedrawers/mixins/early/MixinPlayerControllerMP.java +++ b/src/main/java/com/jaquadro/minecraft/storagedrawers/mixins/early/MixinPlayerControllerMP.java @@ -8,6 +8,8 @@ import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; import com.jaquadro.minecraft.storagedrawers.block.tile.TileEntityDrawers; +import com.llamalad7.mixinextras.expression.Definition; +import com.llamalad7.mixinextras.expression.Expression; import com.llamalad7.mixinextras.injector.ModifyExpressionValue; import com.llamalad7.mixinextras.sugar.Local; @@ -17,9 +19,11 @@ public abstract class MixinPlayerControllerMP { @Shadow private float curBlockDamageMP; - @ModifyExpressionValue( - method = "clickBlock", - at = @At(value = "INVOKE", target = "Ltarget/Class;curBlockDamageMPZ")) + @Definition( + id = "curBlockDamageMP", + field = "Lnet/minecraft/client/multiplayer/PlayerControllerMP;curBlockDamageMP:F") + @Expression("this.curBlockDamageMP == 0.0") + @ModifyExpressionValue(method = "clickBlock", at = @At(value = "MIXINEXTRAS:EXPRESSION")) private boolean withClickOnDrawer(boolean original, @Local Minecraft mc, @Local int x, @Local int y, @Local int z, @Local int side) { diff --git a/src/main/resources/META-INF/storagedrawers_at.cfg b/src/main/resources/META-INF/storagedrawers_at.cfg new file mode 100644 index 0000000..6846af2 --- /dev/null +++ b/src/main/resources/META-INF/storagedrawers_at.cfg @@ -0,0 +1 @@ +public net.minecraft.client.multiplayer.PlayerControllerMP field_78770_f \ No newline at end of file