Try to detect sneaking state onAttach for SneakTrait
This commit is contained in:
parent
b6f5184192
commit
ed117eac96
|
@ -8,7 +8,7 @@ import net.citizensnpcs.util.NMS;
|
||||||
@TraitName("sneak")
|
@TraitName("sneak")
|
||||||
public class SneakTrait extends Trait {
|
public class SneakTrait extends Trait {
|
||||||
@Persist
|
@Persist
|
||||||
private boolean sneaking = true;
|
private boolean sneaking;
|
||||||
|
|
||||||
public SneakTrait() {
|
public SneakTrait() {
|
||||||
super("sneak");
|
super("sneak");
|
||||||
|
@ -24,6 +24,11 @@ public class SneakTrait extends Trait {
|
||||||
return sneaking;
|
return sneaking;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onAttach() {
|
||||||
|
sneaking = NMS.isSneaking(npc.getEntity());
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onSpawn() {
|
public void onSpawn() {
|
||||||
apply();
|
apply();
|
||||||
|
|
|
@ -1318,13 +1318,6 @@ public class NMSImpl implements NMSBridge {
|
||||||
((EntityTameableAnimal) NMSImpl.getHandle((LivingEntity) tameable)).setSitting(sitting);
|
((EntityTameableAnimal) NMSImpl.getHandle((LivingEntity) tameable)).setSitting(sitting);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void setSneaking(org.bukkit.entity.Entity entity, boolean sneaking) {
|
|
||||||
if (entity instanceof Player) {
|
|
||||||
((Player) entity).setSneaking(sneaking);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setStepHeight(org.bukkit.entity.Entity entity, float height) {
|
public void setStepHeight(org.bukkit.entity.Entity entity, float height) {
|
||||||
NMSImpl.getHandle(entity).P = height;
|
NMSImpl.getHandle(entity).P = height;
|
||||||
|
|
|
@ -1371,13 +1371,6 @@ public class NMSImpl implements NMSBridge {
|
||||||
((EntityTameableAnimal) NMSImpl.getHandle((LivingEntity) tameable)).setSitting(sitting);
|
((EntityTameableAnimal) NMSImpl.getHandle((LivingEntity) tameable)).setSitting(sitting);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void setSneaking(org.bukkit.entity.Entity entity, boolean sneaking) {
|
|
||||||
if (entity instanceof Player) {
|
|
||||||
((Player) entity).setSneaking(sneaking);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setStepHeight(org.bukkit.entity.Entity entity, float height) {
|
public void setStepHeight(org.bukkit.entity.Entity entity, float height) {
|
||||||
NMSImpl.getHandle(entity).P = height;
|
NMSImpl.getHandle(entity).P = height;
|
||||||
|
|
|
@ -1378,13 +1378,6 @@ public class NMSImpl implements NMSBridge {
|
||||||
((EntityTameableAnimal) NMSImpl.getHandle((LivingEntity) tameable)).setSitting(sitting);
|
((EntityTameableAnimal) NMSImpl.getHandle((LivingEntity) tameable)).setSitting(sitting);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void setSneaking(org.bukkit.entity.Entity entity, boolean sneaking) {
|
|
||||||
if (entity instanceof Player) {
|
|
||||||
((Player) entity).setSneaking(sneaking);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setStepHeight(org.bukkit.entity.Entity entity, float height) {
|
public void setStepHeight(org.bukkit.entity.Entity entity, float height) {
|
||||||
NMSImpl.getHandle(entity).P = height;
|
NMSImpl.getHandle(entity).P = height;
|
||||||
|
|
|
@ -1415,13 +1415,6 @@ public class NMSImpl implements NMSBridge {
|
||||||
((EntityTameableAnimal) NMSImpl.getHandle((LivingEntity) tameable)).setSitting(sitting);
|
((EntityTameableAnimal) NMSImpl.getHandle((LivingEntity) tameable)).setSitting(sitting);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void setSneaking(org.bukkit.entity.Entity entity, boolean sneaking) {
|
|
||||||
if (entity instanceof Player) {
|
|
||||||
((Player) entity).setSneaking(sneaking);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setStepHeight(org.bukkit.entity.Entity entity, float height) {
|
public void setStepHeight(org.bukkit.entity.Entity entity, float height) {
|
||||||
NMSImpl.getHandle(entity).Q = height;
|
NMSImpl.getHandle(entity).Q = height;
|
||||||
|
|
|
@ -836,6 +836,14 @@ public class NMSImpl implements NMSBridge {
|
||||||
return NMSImpl.getHandle(entity).onGround;
|
return NMSImpl.getHandle(entity).onGround;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isSneaking(org.bukkit.entity.Entity entity) {
|
||||||
|
if (entity instanceof Player) {
|
||||||
|
return ((Player) entity).isSneaking();
|
||||||
|
}
|
||||||
|
return getHandle(entity).getPose() == EntityPose.SNEAKING;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isSolid(org.bukkit.block.Block in) {
|
public boolean isSolid(org.bukkit.block.Block in) {
|
||||||
IBlockData data = ((CraftBlock) in).getNMS();
|
IBlockData data = ((CraftBlock) in).getNMS();
|
||||||
|
|
|
@ -851,6 +851,14 @@ public class NMSImpl implements NMSBridge {
|
||||||
return NMSImpl.getHandle(entity).onGround;
|
return NMSImpl.getHandle(entity).onGround;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isSneaking(org.bukkit.entity.Entity entity) {
|
||||||
|
if (entity instanceof Player) {
|
||||||
|
return ((Player) entity).isSneaking();
|
||||||
|
}
|
||||||
|
return getHandle(entity).getPose() == EntityPose.CROUCHING;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isSolid(org.bukkit.block.Block in) {
|
public boolean isSolid(org.bukkit.block.Block in) {
|
||||||
IBlockData data = ((CraftBlock) in).getNMS();
|
IBlockData data = ((CraftBlock) in).getNMS();
|
||||||
|
|
|
@ -875,6 +875,14 @@ public class NMSImpl implements NMSBridge {
|
||||||
return NMSImpl.getHandle(entity).isOnGround();
|
return NMSImpl.getHandle(entity).isOnGround();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isSneaking(org.bukkit.entity.Entity entity) {
|
||||||
|
if (entity instanceof Player) {
|
||||||
|
return ((Player) entity).isSneaking();
|
||||||
|
}
|
||||||
|
return getHandle(entity).getPose() == EntityPose.CROUCHING;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isSolid(org.bukkit.block.Block in) {
|
public boolean isSolid(org.bukkit.block.Block in) {
|
||||||
IBlockData data = ((CraftBlock) in).getNMS();
|
IBlockData data = ((CraftBlock) in).getNMS();
|
||||||
|
|
|
@ -657,7 +657,7 @@ public class NMSImpl implements NMSBridge {
|
||||||
entry.broadcastRemoved();
|
entry.broadcastRemoved();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<org.bukkit.entity.Entity> getPassengers(org.bukkit.entity.Entity entity) {
|
public List<org.bukkit.entity.Entity> getPassengers(org.bukkit.entity.Entity entity) {
|
||||||
|
@ -877,6 +877,14 @@ public class NMSImpl implements NMSBridge {
|
||||||
return NMSImpl.getHandle(entity).isOnGround();
|
return NMSImpl.getHandle(entity).isOnGround();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isSneaking(org.bukkit.entity.Entity entity) {
|
||||||
|
if (entity instanceof Player) {
|
||||||
|
return ((Player) entity).isSneaking();
|
||||||
|
}
|
||||||
|
return getHandle(entity).getPose() == Pose.CROUCHING;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isSolid(org.bukkit.block.Block in) {
|
public boolean isSolid(org.bukkit.block.Block in) {
|
||||||
BlockState data = ((CraftBlock) in).getNMS();
|
BlockState data = ((CraftBlock) in).getNMS();
|
||||||
|
|
|
@ -884,6 +884,14 @@ public class NMSImpl implements NMSBridge {
|
||||||
return NMSImpl.getHandle(entity).isOnGround();
|
return NMSImpl.getHandle(entity).isOnGround();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isSneaking(org.bukkit.entity.Entity entity) {
|
||||||
|
if (entity instanceof Player) {
|
||||||
|
return ((Player) entity).isSneaking();
|
||||||
|
}
|
||||||
|
return getHandle(entity).getPose() == Pose.CROUCHING;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isSolid(org.bukkit.block.Block in) {
|
public boolean isSolid(org.bukkit.block.Block in) {
|
||||||
BlockState data = ((CraftBlock) in).getNMS();
|
BlockState data = ((CraftBlock) in).getNMS();
|
||||||
|
|
|
@ -925,6 +925,14 @@ public class NMSImpl implements NMSBridge {
|
||||||
return getHandle(entity).isOnGround();
|
return getHandle(entity).isOnGround();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isSneaking(org.bukkit.entity.Entity entity) {
|
||||||
|
if (entity instanceof Player) {
|
||||||
|
return ((Player) entity).isSneaking();
|
||||||
|
}
|
||||||
|
return getHandle(entity).getPose() == Pose.CROUCHING;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isSolid(org.bukkit.block.Block in) {
|
public boolean isSolid(org.bukkit.block.Block in) {
|
||||||
BlockState data = ((CraftBlock) in).getNMS();
|
BlockState data = ((CraftBlock) in).getNMS();
|
||||||
|
|
|
@ -895,6 +895,14 @@ public class NMSImpl implements NMSBridge {
|
||||||
return getHandle(entity).onGround();
|
return getHandle(entity).onGround();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isSneaking(org.bukkit.entity.Entity entity) {
|
||||||
|
if (entity instanceof Player) {
|
||||||
|
return ((Player) entity).isSneaking();
|
||||||
|
}
|
||||||
|
return getHandle(entity).getPose() == Pose.CROUCHING;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isSolid(org.bukkit.block.Block in) {
|
public boolean isSolid(org.bukkit.block.Block in) {
|
||||||
BlockState data = ((CraftBlock) in).getNMS();
|
BlockState data = ((CraftBlock) in).getNMS();
|
||||||
|
|
|
@ -1228,13 +1228,6 @@ public class NMSImpl implements NMSBridge {
|
||||||
((EntityTameableAnimal) NMSImpl.getHandle((LivingEntity) tameable)).setSitting(sitting);
|
((EntityTameableAnimal) NMSImpl.getHandle((LivingEntity) tameable)).setSitting(sitting);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void setSneaking(org.bukkit.entity.Entity entity, boolean sneaking) {
|
|
||||||
if (entity instanceof Player) {
|
|
||||||
((Player) entity).setSneaking(sneaking);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setStepHeight(org.bukkit.entity.Entity entity, float height) {
|
public void setStepHeight(org.bukkit.entity.Entity entity, float height) {
|
||||||
NMSImpl.getHandle(entity).S = height;
|
NMSImpl.getHandle(entity).S = height;
|
||||||
|
|
Loading…
Reference in New Issue