package be.isach.ultracosmetics.cosmetics.mounts; import be.isach.ultracosmetics.UltraCosmetics; import be.isach.ultracosmetics.UltraCosmeticsData; import be.isach.ultracosmetics.cosmetics.type.MountType; import be.isach.ultracosmetics.player.UltraPlayer; import be.isach.ultracosmetics.util.Particles; import be.isach.ultracosmetics.util.UtilParticles; import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.entity.Horse; import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; /** * Created by sacha on 10/08/15. */ public class MountDruggedHorse extends MountHorse { public MountDruggedHorse(UltraPlayer owner, UltraCosmetics ultraCosmetics) { super(owner, MountType.DRUGGEDHORSE, ultraCosmetics); } @Override public void onEquip() { super.onEquip(); UltraCosmeticsData.get().getVersionManager().getEntityUtil().setHorseSpeed(getEntity(), 1.1d); getEntity().setJumpStrength(1.3); Bukkit.getScheduler().runTaskLater(getUltraCosmetics(), () -> { try { getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.CONFUSION, 10000000, 1)); } catch (Exception ignored) { } }, 1); } @Override public void onUpdate() { Location loc = entity.getLocation().add(0, 1, 0); UtilParticles.display(Particles.FIREWORKS_SPARK, 0.4f, 0.2f, 0.4f, loc, 5); UtilParticles.display(Particles.SPELL, 0.4f, 0.2f, 0.4f, loc, 5); UtilParticles.display(Particles.SPELL_MOB_AMBIENT, 0.4f, 0.2f, 0.4f, loc, 5); UtilParticles.display(Particles.SPELL_MOB, 5, 255, 0, loc); } @Override protected void onClear() { super.onClear(); getPlayer().removePotionEffect(PotionEffectType.CONFUSION); } @Override protected Horse.Variant getVariant() { return Horse.Variant.HORSE; } @Override protected Horse.Color getColor() { return Horse.Color.CHESTNUT; } }