This repository has been archived on 2023-11-26. You can view files and clone it, but cannot push or open issues or pull requests.
GulliverReloaded/src/main/java/com/thebrokenrail/gulliverreloaded/mixin/MixinPlayerEntity.java

33 lines
1.3 KiB
Java

package com.thebrokenrail.gulliverreloaded.mixin;
import com.thebrokenrail.gulliverreloaded.ScaledEntity;
import net.minecraft.entity.EntityDimensions;
import net.minecraft.entity.EntityPose;
import net.minecraft.entity.player.PlayerEntity;
import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
import java.util.Map;
@SuppressWarnings("unused")
@Mixin(PlayerEntity.class)
public abstract class MixinPlayerEntity {
@Shadow
@Final
private static Map<EntityPose, EntityDimensions> POSE_DIMENSIONS;
@Inject(at = @At("RETURN"), method = "getMovementSpeed()F", cancellable = true)
public void getMovementSpeed(CallbackInfoReturnable<Float> info) {
info.setReturnValue(info.getReturnValue() * ((ScaledEntity) this).getScale());
}
@Inject(at = @At("RETURN"), method = "getDimensions", cancellable = true)
public void getDimensions(EntityPose pose, CallbackInfoReturnable<EntityDimensions> info) {
info.setReturnValue(((ScaledEntity) this).scaleDimensions(info.getReturnValue()));
}
}