cancel();
return;
}
if(newLocation.getY() > p.getLocation().getY()) {
p.setVelocity(new Vector(0, speed,0));
if(!BlockType.canPassThrough(p.getLocation().add(0, 2, 0).getBlock().getTypeId()))
p.teleport(p.getLocation().add(0, speed, 0));
} else if (newLocation.getY() < p.getLocation().getY()) {
p.setVelocity(new Vector(0, -speed,0));
if(!BlockType.canPassThrough(p.getLocation().add(0, -1, 0).getBlock().getTypeId()))
p.teleport(p.getLocation().add(0, -speed, 0));
} else {
teleportFinish(player, destination, shift);
if(flyingPlayers.contains(p.getUniqueId())) {