Varius tweaks and changes.

This commit is contained in:
Mysticate 2016-02-04 21:58:55 -05:00
parent e94222a68e
commit b414642990
7 changed files with 120 additions and 68 deletions

View File

@ -115,7 +115,6 @@ public class MountPage extends ShopPageBase<CosmeticManager, CosmeticShop>
} }
} }
if (getDonationManager().Get(getPlayer().getName()).OwnsUnknownPackage(mount.GetName())) if (getDonationManager().Get(getPlayer().getName()).OwnsUnknownPackage(mount.GetName()))
{ {
if (mount.GetActive().containsKey(getPlayer())) if (mount.GetActive().containsKey(getPlayer()))
@ -146,18 +145,18 @@ public class MountPage extends ShopPageBase<CosmeticManager, CosmeticShop>
itemLore.add(C.cBlack); itemLore.add(C.cBlack);
itemLore.add(C.cGreen + "Click to Purchase"); itemLore.add(C.cGreen + "Click to Purchase");
addButton(slot, new ShopItem(mount.GetDisplayMaterial(), mount.GetDisplayData(), mount.GetName(), itemLore.toArray(new String[itemLore.size()]), 1, true, false), new MountButton(mount, this)); addButton(slot, new ShopItem(Material.INK_SACK, (byte) 7, mount.GetName(), itemLore.toArray(new String[itemLore.size()]), 1, true, false), new MountButton(mount, this));
} }
else if (mount.GetCost(CurrencyType.Coins) > 0) else if (mount.GetCost(CurrencyType.Coins) > 0)
{ {
itemLore.add(C.cBlack); itemLore.add(C.cBlack);
itemLore.add(C.cRed + "Not enough Treasure Shards."); itemLore.add(C.cRed + "Not enough Treasure Shards.");
setItem(slot, new ShopItem(mount.GetDisplayMaterial(), mount.GetDisplayData(), mount.GetName(), itemLore.toArray(new String[itemLore.size()]), 1, true, false)); setItem(slot, new ShopItem(Material.INK_SACK, (byte) 7, mount.GetName(), itemLore.toArray(new String[itemLore.size()]), 1, true, false));
} }
else else
{ {
setItem(slot, new ShopItem(mount.GetDisplayMaterial(), mount.GetDisplayData(), mount.GetName(), itemLore.toArray(new String[itemLore.size()]), 1, true, false)); setItem(slot, new ShopItem(Material.INK_SACK, (byte) 7, mount.GetName(), itemLore.toArray(new String[itemLore.size()]), 1, true, false));
} }
} }

View File

@ -51,6 +51,7 @@ import mineplex.core.gadget.gadgets.hat.HatRudolph;
import mineplex.core.gadget.gadgets.hat.HatSanta; import mineplex.core.gadget.gadgets.hat.HatSanta;
import mineplex.core.gadget.gadgets.hat.HatSnowman; import mineplex.core.gadget.gadgets.hat.HatSnowman;
import mineplex.core.gadget.gadgets.item.ItemBatGun; import mineplex.core.gadget.gadgets.item.ItemBatGun;
import mineplex.core.gadget.gadgets.item.ItemBow;
import mineplex.core.gadget.gadgets.item.ItemCoal; import mineplex.core.gadget.gadgets.item.ItemCoal;
import mineplex.core.gadget.gadgets.item.ItemCoinBomb; import mineplex.core.gadget.gadgets.item.ItemCoinBomb;
import mineplex.core.gadget.gadgets.item.ItemDuelingSword; import mineplex.core.gadget.gadgets.item.ItemDuelingSword;
@ -206,6 +207,7 @@ public class GadgetManager extends MiniPlugin
addGadget(new ItemCoal(this)); addGadget(new ItemCoal(this));
addGadget(new ItemFreezeCannon(this)); addGadget(new ItemFreezeCannon(this));
addGadget(new ItemSnowball(this)); addGadget(new ItemSnowball(this));
addGadget(new ItemBow(this));
// Costume // Costume
addGadget(new OutfitRaveSuitHelmet(this)); addGadget(new OutfitRaveSuitHelmet(this));

View File

@ -24,24 +24,20 @@ public class ArrowTrailHearts extends ArrowEffectGadget
{ {
super(manager, "Arrows of Cupid", super(manager, "Arrows of Cupid",
UtilText.splitLineToArray(C.cGray + "Tether your love to an arrow, then spear someone with it. Maybe they'll fall in love!", LineFormat.LORE), UtilText.splitLineToArray(C.cGray + "Tether your love to an arrow, then spear someone with it. Maybe they'll fall in love!", LineFormat.LORE),
-6, 1,
Material.APPLE, (byte) 0); Material.APPLE, (byte) 0);
} }
@Override @Override
public void doTrail(Arrow arrow) public void doTrail(Arrow arrow)
{ {
if (UtilMath.random.nextDouble() > .6) UtilParticle.PlayParticleToAll(ParticleType.HEART, arrow.getLocation(), .1F, .1F, .1F, 0F, 1, ViewDist.LONGER);
{
UtilParticle.PlayParticleToAll(ParticleType.HEART, arrow.getLocation(), .1F, .1F, .1F, 0F, 1, ViewDist.LONGER);
return;
}
byte data = 14; byte data = 14;
if (UtilMath.random.nextDouble() > .5) if (UtilMath.random.nextDouble() > .5)
data = 6; data = 6;
UtilParticle.PlayParticleToAll(ParticleType.ICON_CRACK.getParticle(Material.WOOL, data), arrow.getLocation(), 0, 0, 0, 0.0f, 1, ViewDist.NORMAL); UtilParticle.PlayParticleToAll(ParticleType.ICON_CRACK.getParticle(Material.WOOL, data), arrow.getLocation(), 0, 0, 0, 0.0f, 5, ViewDist.NORMAL);
} }
@Override @Override
@ -49,7 +45,7 @@ public class ArrowTrailHearts extends ArrowEffectGadget
{ {
UtilParticle.PlayParticleToAll(ParticleType.HEART, arrow.getLocation(), .5F, .5F, .5F, 0F, 4, ViewDist.LONGER); UtilParticle.PlayParticleToAll(ParticleType.HEART, arrow.getLocation(), .5F, .5F, .5F, 0F, 4, ViewDist.LONGER);
UtilParticle.PlayParticleToAll(ParticleType.ICON_CRACK.getParticle(Material.WOOL, 14), arrow.getLocation(), .5F, .5F, .5F, 0.0f, 2, ViewDist.NORMAL); UtilParticle.PlayParticleToAll(ParticleType.ICON_CRACK.getParticle(Material.WOOL, 14), arrow.getLocation(), .5F, .5F, .5F, 0.0f, 5, ViewDist.NORMAL);
UtilParticle.PlayParticleToAll(ParticleType.ICON_CRACK.getParticle(Material.WOOL, 6), arrow.getLocation(), .5F, .5F, .5F, 0.0f, 2, ViewDist.NORMAL); UtilParticle.PlayParticleToAll(ParticleType.ICON_CRACK.getParticle(Material.WOOL, 6), arrow.getLocation(), .5F, .5F, .5F, 0.0f, 5, ViewDist.NORMAL);
} }
} }

View File

@ -1,5 +1,7 @@
package mineplex.core.gadget.gadgets.death; package mineplex.core.gadget.gadgets.death;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority; import org.bukkit.event.EventPriority;
@ -8,9 +10,9 @@ import mineplex.core.blood.BloodEvent;
import mineplex.core.common.util.C; import mineplex.core.common.util.C;
import mineplex.core.common.util.LineFormat; import mineplex.core.common.util.LineFormat;
import mineplex.core.common.util.UtilParticle; import mineplex.core.common.util.UtilParticle;
import mineplex.core.common.util.UtilText;
import mineplex.core.common.util.UtilParticle.ParticleType; import mineplex.core.common.util.UtilParticle.ParticleType;
import mineplex.core.common.util.UtilParticle.ViewDist; import mineplex.core.common.util.UtilParticle.ViewDist;
import mineplex.core.common.util.UtilText;
import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.GadgetManager;
import mineplex.core.gadget.types.DeathEffectGadget; import mineplex.core.gadget.types.DeathEffectGadget;
@ -25,13 +27,14 @@ public class DeathHearts extends DeathEffectGadget
{ {
super(manager, "Broken Hearted", super(manager, "Broken Hearted",
UtilText.splitLineToArray(C.cGray + "Nothing hurts more than having your heart broken. Apart from being killed, that is.", LineFormat.LORE), UtilText.splitLineToArray(C.cGray + "Nothing hurts more than having your heart broken. Apart from being killed, that is.", LineFormat.LORE),
-6, Material.DOUBLE_PLANT, (byte) 4); 1, Material.DOUBLE_PLANT, (byte) 4);
} }
@EventHandler @EventHandler
public void onBlood(BloodEvent event) public void onBlood(BloodEvent event)
{ {
event.setItem(Material.RED_ROSE, (byte) 0); if (IsActive(event.getPlayer()))
event.setItem(Material.AIR, (byte) 0);
} }
@EventHandler(priority = EventPriority.MONITOR) @EventHandler(priority = EventPriority.MONITOR)
@ -40,6 +43,23 @@ public class DeathHearts extends DeathEffectGadget
if (event.isCancelled()) if (event.isCancelled())
return; return;
UtilParticle.PlayParticleToAll(ParticleType.ANGRY_VILLAGER, event.getLocation(), .5F, .5F, .5F, 0F, 5, ViewDist.NORMAL); if (IsActive(event.getPlayer()))
{
Location loc = event.getLocation().clone().add(0, .5, 0);
UtilParticle.PlayParticleToAll(ParticleType.HEART, loc, 0F, 0F, 0F, 0F, 1, ViewDist.NORMAL);
Bukkit.getScheduler().runTaskLater(Manager.getPlugin(), new Runnable()
{
@Override
public void run()
{
loc.add(0, .2, 0);
UtilParticle.PlayParticleToAll(ParticleType.ICON_CRACK.getParticle(Material.WOOL, 14), loc, .1F, .1F, .1F, 0.0f, 5, ViewDist.NORMAL);
UtilParticle.PlayParticleToAll(ParticleType.ICON_CRACK.getParticle(Material.WOOL, 6), loc, .1F, .1F, .1F, 0.0f, 5, ViewDist.NORMAL);
}
}, 10);
}
} }
} }

View File

@ -24,7 +24,7 @@ public class DoubleJumpHearts extends DoubleJumpEffectGadget
{ {
super(manager, "Wings of Love", super(manager, "Wings of Love",
UtilText.splitLineToArray(C.cGray + "Nothing hurts more than having your heart broken. Apart from being killed, that is.", LineFormat.LORE), UtilText.splitLineToArray(C.cGray + "Nothing hurts more than having your heart broken. Apart from being killed, that is.", LineFormat.LORE),
-6, Material.RED_MUSHROOM, (byte) 0); 1, Material.RED_MUSHROOM, (byte) 0);
} }
@Override @Override

View File

@ -5,10 +5,12 @@ import java.util.HashSet;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.Location; import org.bukkit.Location;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.Sound;
import org.bukkit.craftbukkit.v1_8_R3.entity.CraftEntity; import org.bukkit.craftbukkit.v1_8_R3.entity.CraftEntity;
import org.bukkit.entity.Arrow; import org.bukkit.entity.Creeper;
import org.bukkit.entity.Entity; import org.bukkit.entity.Entity;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.entity.Snowball;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
import org.bukkit.event.entity.EntityDamageByEntityEvent; import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.ProjectileHitEvent; import org.bukkit.event.entity.ProjectileHitEvent;
@ -42,7 +44,7 @@ public class ItemBow extends ItemGadget
* Timestamp: February 4, 2016 * Timestamp: February 4, 2016
*/ */
private HashSet<Arrow> _arrows = new HashSet<Arrow>(); private HashSet<Snowball> _arrows = new HashSet<Snowball>();
private boolean _spawning = false; private boolean _spawning = false;
private String[] _responses = new String[] private String[] _responses = new String[]
@ -76,7 +78,7 @@ public class ItemBow extends ItemGadget
PacketPlayOutSpawnEntity packet = (PacketPlayOutSpawnEntity) packetInfo.getPacket(); PacketPlayOutSpawnEntity packet = (PacketPlayOutSpawnEntity) packetInfo.getPacket();
for (Arrow arrow : _arrows) for (Snowball arrow : _arrows)
{ {
if (arrow.getEntityId() == packet.a) if (arrow.getEntityId() == packet.a)
{ {
@ -92,17 +94,16 @@ public class ItemBow extends ItemGadget
{ {
super(manager, "Cupid's Arrows", super(manager, "Cupid's Arrows",
UtilText.splitLineToArray(C.cGray + "This symbol of love will live on with you forever! Mainly because we couldn't attach the cupid wings to it. I guess duct tape can't fix everything!", LineFormat.LORE), UtilText.splitLineToArray(C.cGray + "This symbol of love will live on with you forever! Mainly because we couldn't attach the cupid wings to it. I guess duct tape can't fix everything!", LineFormat.LORE),
-6, Material.BOW, (byte) 0, 1000, new Ammo("Cupid Arrow", "Cupid's Arrows", Material.ARROW, (byte) 0, UtilText.splitLineToArray(C.cGray + "Use these arrows to shoot love into people's hearts!", LineFormat.LORE), -6, 15)); -6, Material.BOW, (byte) 0, 1000, new Ammo("Cupid Arrow", "Cupid's Arrows", Material.ARROW, (byte) 0, UtilText.splitLineToArray(C.cGray + "Use these arrows to shoot love into people's hearts!", LineFormat.LORE), 1, 15));
Manager.getPacketManager().addPacketHandler(_packetHandler, PacketPlayOutSpawnEntity.class); Manager.getPacketManager().addPacketHandler(_packetHandler, PacketPlayOutSpawnEntity.class);
} }
@SuppressWarnings("deprecation")
@Override @Override
public void ActivateCustom(Player player) public void ActivateCustom(Player player)
{ {
_spawning = true; _spawning = true;
Arrow arrow = player.shootArrow(); Snowball arrow = player.launchProjectile(Snowball.class);
_spawning = false; _spawning = false;
_arrows.add(arrow); _arrows.add(arrow);
@ -113,7 +114,7 @@ public class ItemBow extends ItemGadget
{ {
if (event.getType() == UpdateType.TICK) if (event.getType() == UpdateType.TICK)
{ {
for (Arrow arrow : new HashSet<Arrow>(_arrows)) for (Snowball arrow : new HashSet<Snowball>(_arrows))
{ {
if (!arrow.isValid()) if (!arrow.isValid())
{ {
@ -129,27 +130,35 @@ public class ItemBow extends ItemGadget
@EventHandler @EventHandler
public void onHit(ProjectileHitEvent event) public void onHit(ProjectileHitEvent event)
{ {
if (!(event.getEntity() instanceof Arrow)) if (!(event.getEntity() instanceof Snowball))
return; return;
Arrow arrow = (Arrow) event.getEntity(); Snowball arrow = (Snowball) event.getEntity();
if (!_arrows.contains(arrow)) if (!_arrows.contains(arrow))
return; return;
_arrows.remove(arrow); Bukkit.getScheduler().runTaskLater(Manager.getPlugin(), new Runnable()
arrow.remove(); {
@Override
UtilPlayer.message((Player) arrow.getShooter(), F.main(C.cRed + "Cupid", "You missed the shot!")); public void run()
{
if (_arrows.remove(arrow))
{
arrow.remove();
UtilPlayer.message((Player) arrow.getShooter(), F.main(C.cRed + "Cupid", "You missed the shot!"));
}
}
}, 1);
} }
@EventHandler @EventHandler
public void onDamage(EntityDamageByEntityEvent event) public void onDamage(EntityDamageByEntityEvent event)
{ {
if (!(event.getDamager() instanceof Arrow)) if (!(event.getDamager() instanceof Snowball))
return; return;
Arrow arrow = (Arrow) event.getDamager(); Snowball arrow = (Snowball) event.getDamager();
if (!_arrows.contains(arrow)) if (!_arrows.contains(arrow))
return; return;
@ -158,35 +167,59 @@ public class ItemBow extends ItemGadget
arrow.remove(); arrow.remove();
Player shooter = (Player) arrow.getShooter(); Player shooter = (Player) arrow.getShooter();
UtilPlayer.message(shooter, F.main(C.cRed + "Cupid", "You hit " + F.name(UtilEnt.getName(event.getEntity())) + " with an arrow! I wonder how they're feeling..."));
if (event.getEntity() instanceof Creeper && event.getEntity().getCustomName().equalsIgnoreCase(C.cGreenB + "Carl the Creeper"))
{
UtilPlayer.message(shooter, F.main(C.cRed + "Cupid", "Nobody will ever replace Carla."));
return;
}
// Effects // Effects
if (event.getEntity() instanceof Player) if (event.getEntity() instanceof Player)
{ {
((Player) event.getEntity()).addPotionEffect(new PotionEffect(PotionEffectType.CONFUSION, 20, 1, true, false)); if (event.getEntity() == shooter)
{
UtilPlayer.message(shooter, F.main(C.cRed + "Cupid", "We've all been there."));
return;
}
UtilPlayer.message(shooter, F.main(C.cRed + "Cupid", "You hit " + F.name(UtilEnt.getName(event.getEntity())) + " with an arrow! I wonder how they're feeling..."));
((Player) event.getEntity()).addPotionEffect(new PotionEffect(PotionEffectType.CONFUSION, 40, 1, true, false));
UtilPlayer.message(event.getEntity(), F.main(C.cRed + "Cupid", F.name(UtilEnt.getName(shooter)) + " hit you with an arrow! " + UtilMath.randomElement(_responses))); UtilPlayer.message(event.getEntity(), F.main(C.cRed + "Cupid", F.name(UtilEnt.getName(shooter)) + " hit you with an arrow! " + UtilMath.randomElement(_responses)));
} }
Entity damaged = event.getEntity();
AxisAlignedBB bb = ((CraftEntity) damaged).getHandle().getBoundingBox();
final Location loc = damaged.getLocation().clone(); UtilParticle.PlayParticleToAll(ParticleType.HEART, arrow.getLocation(), .5F, .5F, .5F, 0F, 4, ViewDist.LONGER);
final AxisAlignedBB bounding = new AxisAlignedBB(bb.a, bb.b, bb.c, bb.d, bb.e, bb.f); // Clone it
for (double rise = bounding.b ; rise < bounding.e ; rise += .2) UtilParticle.PlayParticleToAll(ParticleType.ICON_CRACK.getParticle(Material.WOOL, 14), arrow.getLocation(), .5F, .5F, .5F, 0.0f, 5, ViewDist.NORMAL);
{ UtilParticle.PlayParticleToAll(ParticleType.ICON_CRACK.getParticle(Material.WOOL, 6), arrow.getLocation(), .5F, .5F, .5F, 0.0f, 5, ViewDist.NORMAL);
final float y = (float) (rise - bounding.b);
final float x = (float) Math.sin(y);
final float z = (float) Math.cos(y);
Bukkit.getScheduler().runTaskLater(Manager.getPlugin(), new Runnable() shooter.playSound(shooter.getLocation(), Sound.ORB_PICKUP, 0.5f, 0.5f);
{
@Override // Entity damaged = event.getEntity();
public void run() // AxisAlignedBB bb = ((CraftEntity) damaged).getHandle().getBoundingBox();
{ //
UtilParticle.PlayParticleToAll(ParticleType.HEART, loc.clone().add(x, y, z), 0F, 0F, 0F, 0F, 1, ViewDist.LONGER); // final Location loc = damaged.getLocation().clone();
} // final AxisAlignedBB bounding = new AxisAlignedBB(bb.a, bb.b, bb.c, bb.d, bb.e, bb.f); // Clone it
}, (int) Math.floor(rise * 5)); //
} // int i = 0;
// for (double rise = bounding.b ; rise < bounding.e ; rise += .2)
// {
// i++;
//
// final float y = (float) (rise - bounding.b);
// final float x = (float) (Math.sin(y) * 2);
// final float z = (float) (Math.cos(y) * 2);
//
// Bukkit.getScheduler().runTaskLater(Manager.getPlugin(), new Runnable()
// {
// @Override
// public void run()
// {
// UtilParticle.PlayParticleToAll(ParticleType.HEART, loc.clone().add(x, y, z), 0F, 0F, 0F, 0F, 1, ViewDist.LONGER);
// }
// }, i);
// }
} }
} }

View File

@ -1,11 +1,11 @@
package mineplex.core.mount.types; package mineplex.core.mount.types;
import org.bukkit.DyeColor; import org.bukkit.DyeColor;
import org.bukkit.Location;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.entity.Horse; import org.bukkit.entity.Horse;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
import org.bukkit.util.Vector;
import mineplex.core.common.util.C; import mineplex.core.common.util.C;
import mineplex.core.common.util.LineFormat; import mineplex.core.common.util.LineFormat;
@ -33,7 +33,7 @@ public class MountValentinesSheep extends HorseMount
{ {
super(manager, "Loving Sheeples", super(manager, "Loving Sheeples",
UtilText.splitLineToArray(C.cGray + "This symbol of love will live on with you forever! Mainly because we couldn't attach the cupid wings to it. I guess duct tape can't fix everything!", LineFormat.LORE), UtilText.splitLineToArray(C.cGray + "This symbol of love will live on with you forever! Mainly because we couldn't attach the cupid wings to it. I guess duct tape can't fix everything!", LineFormat.LORE),
Material.WOOL, (byte) 6, -6, Horse.Color.BLACK, Horse.Style.NONE, Horse.Variant.HORSE, 1.0, null); Material.WOOL, (byte) 6, 1, Horse.Color.BLACK, Horse.Style.NONE, Horse.Variant.HORSE, 1.0, null);
} }
@Override @Override
@ -42,13 +42,11 @@ public class MountValentinesSheep extends HorseMount
super.EnableCustom(player); super.EnableCustom(player);
Horse horse = GetActive().get(player).getEntity(); Horse horse = GetActive().get(player).getEntity();
horse.setCustomName(C.cRed + player.getName() + "'s " + GetName());
UtilEnt.silence(horse, true); UtilEnt.silence(horse, true);
DisguiseSheep disguise = new DisguiseSheep(horse); DisguiseSheep disguise = new DisguiseSheep(horse);
disguise.setColor(DyeColor.PINK); disguise.setColor(DyeColor.PINK);
disguise.setName("");
Manager.getDisguiseManager().disguise(disguise); Manager.getDisguiseManager().disguise(disguise);
} }
@ -56,17 +54,19 @@ public class MountValentinesSheep extends HorseMount
@EventHandler @EventHandler
public void doAnimations(UpdateEvent event) public void doAnimations(UpdateEvent event)
{ {
if (event.getType() != UpdateType.TICK)
return;
for (SingleEntityMountData<Horse> ent : GetActive().values()) for (SingleEntityMountData<Horse> ent : GetActive().values())
{ {
if (!ent.getEntity().isValid()) if (!ent.getEntity().isValid())
continue; continue;
if (event.getType() == UpdateType.TICK) if (event.getType() == UpdateType.FASTEST)
{ {
UtilParticle.PlayParticleToAll(ParticleType.HEART, ent.getEntity().getLocation().clone().add(0, .5, 0), new Vector(), 0F, 1, ViewDist.NORMAL); Location loc = ent.getEntity().getLocation().clone().add(0, .5, 0);
UtilParticle.PlayParticleToAll(ParticleType.HEART, loc, .5F, .4F, .5F, 0F, 1, ViewDist.NORMAL);
UtilParticle.PlayParticleToAll(ParticleType.ICON_CRACK.getParticle(Material.WOOL, 14), loc, .5F, .4F, .5F, 0.0f, 1, ViewDist.NORMAL);
UtilParticle.PlayParticleToAll(ParticleType.ICON_CRACK.getParticle(Material.WOOL, 6), loc, .5F, .4F, .5F, 0.0f, 1, ViewDist.NORMAL);
} }
else if (event.getType() == UpdateType.FAST) else if (event.getType() == UpdateType.FAST)
{ {
@ -88,6 +88,8 @@ public class MountValentinesSheep extends HorseMount
{ {
sheep.setColor(DyeColor.PINK); sheep.setColor(DyeColor.PINK);
} }
Manager.getDisguiseManager().updateDisguise(sheep);
} }
} }
} }