From 1556c203e141373cc294615b61be1f71b68320c4 Mon Sep 17 00:00:00 2001 From: CoolMineman <62723322+CoolMineman@users.noreply.github.com> Date: Fri, 31 Jul 2020 22:05:49 -0500 Subject: [PATCH] fix minecraft_ApplyGravity --- .vscode/settings.json | 3 --- java/squeek/quakemovement/QuakeClientPlayer.java | 8 ++++++-- 2 files changed, 6 insertions(+), 5 deletions(-) delete mode 100644 .vscode/settings.json diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index e0f15db..0000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "java.configuration.updateBuildConfiguration": "automatic" -} \ No newline at end of file diff --git a/java/squeek/quakemovement/QuakeClientPlayer.java b/java/squeek/quakemovement/QuakeClientPlayer.java index 9b8a2b4..6916f3c 100644 --- a/java/squeek/quakemovement/QuakeClientPlayer.java +++ b/java/squeek/quakemovement/QuakeClientPlayer.java @@ -6,6 +6,7 @@ import net.minecraft.block.BlockState; import net.minecraft.block.Material; import net.minecraft.entity.Entity; import net.minecraft.entity.MovementType; +import net.minecraft.entity.effect.StatusEffects; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.particle.BlockStateParticleEffect; import net.minecraft.particle.ParticleTypes; @@ -233,9 +234,12 @@ public class QuakeClientPlayer private static void minecraft_ApplyGravity(PlayerEntity player) { - //BlockPos pos = new BlockPos((int) player.x, (int) player.y, (int) player.z); + BlockPos pos = new BlockPos((int) player.getX(), (int) player.getY(), (int) player.getZ()); double velocityY = player.getVelocity().y; - if (/*player.world.isClient && !player.world.isBlockLoaded(pos)*/ false) //todo fix + if (player.hasStatusEffect(StatusEffects.LEVITATION)) { + velocityY += (0.05D * (double)(player.getStatusEffect(StatusEffects.LEVITATION).getAmplifier() + 1) - /*vec3d6.y*/ velocityY) * 0.2D; + player.fallDistance = 0.0F; + } else if (player.world.isClient && !player.world.isChunkLoaded(pos)) { if (player.getY() > 0.0D) {