Buscar..


Observaciones

Actualmente no hay una manera consistente de evitar que una entidad sufra de gravedad, incluso si cancela su movimiento, el lado del jugador del jugador intentará caer antes de que se cancele el evento.

Entidad que cae distancia

La distancia de caída de la entidad es la distancia que la entidad ha caído sin alcanzar un bloque.

Puede utilizarse para calcular diferentes daños causados ​​por caídas o la activación de un efecto después de una gran caída.


Recuperando la distancia de caída

float distanceFell = entity.getFallingDistance();

Ajuste de la distancia de caída

Esto se puede usar para simular una distancia de caída diferente a la real. Bukkit calculará el daño usando la nueva distancia de caída.

entity.setFallingDistance(float distance);

Cancelando Daños

Puedes cancelar un daño de caída usando el EntityDamageEvent

@EventHandler
public void onEntityDamage(EntityDamageEvent e) {
Entity tookDamage = e.getEntity();

DamageCause cause = e.getCause();

if (cause == DamageCause.FALL){
   //Damage was caused by falling, cancel it
   e.setCancelled(true);
}


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow