Use Minecraft horse controls

This commit is contained in:
fullwall 2020-02-14 22:42:03 +08:00
parent 3bf5881c4b
commit ade25b246a
2 changed files with 4 additions and 3 deletions

View File

@ -8,6 +8,7 @@ import org.bukkit.Location;
import org.bukkit.entity.EnderDragon;
import org.bukkit.entity.Entity;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Horse;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
@ -309,7 +310,9 @@ public class Controllable extends Trait implements Toggleable, CommandConfigurab
boolean onGround = NMS.isOnGround(npc.getEntity());
float speedMod = npc.getNavigator().getDefaultParameters()
.modifiedSpeed((onGround ? GROUND_SPEED : AIR_SPEED));
speed = updateHorizontalSpeed(npc.getEntity(), rider, speed, speedMod);
if (!(npc.getEntity() instanceof Horse)) { // just use minecraft horse physics
speed = updateHorizontalSpeed(npc.getEntity(), rider, speed, speedMod);
}
boolean shouldJump = NMS.shouldJump(rider);
if (shouldJump) {

View File

@ -16,7 +16,6 @@ import net.citizensnpcs.npc.CitizensNPC;
import net.citizensnpcs.npc.ai.NPCHolder;
import net.citizensnpcs.trait.Controllable;
import net.citizensnpcs.trait.HorseModifiers;
import net.citizensnpcs.util.NMS;
import net.citizensnpcs.util.Util;
import net.minecraft.server.v1_15_R1.BlockPosition;
import net.minecraft.server.v1_15_R1.DamageSource;
@ -231,7 +230,6 @@ public class HorseController extends MobEntityController {
if (riding) {
d(4, true); // datawatcher method
}
NMS.setStepHeight(getBukkitEntity(), 2);
npc.update();
}
}