use of net.minecraft.server.v1_12_R1.MobEffect in project PaperDev by Kamillaova.
the class CraftPotionBrewer method getEffects.
public Collection<PotionEffect> getEffects(PotionType damage, boolean upgraded, boolean extended) {
if (cache.containsKey(damage))
return cache.get(damage);
List<MobEffect> mcEffects = PotionRegistry.a(CraftPotionUtil.fromBukkit(new PotionData(damage, extended, upgraded))).a();
ImmutableList.Builder<PotionEffect> builder = new ImmutableList.Builder<PotionEffect>();
for (MobEffect effect : mcEffects) {
builder.add(CraftPotionUtil.toBukkit(effect));
}
cache.put(damage, builder.build());
return cache.get(damage);
}
use of net.minecraft.server.v1_12_R1.MobEffect in project PaperDev by Kamillaova.
the class CraftTippedArrow method removeCustomEffect.
@Override
public boolean removeCustomEffect(PotionEffectType effect) {
int effectId = effect.getId();
MobEffect existing = null;
for (MobEffect mobEffect : getHandle().effects) {
if (MobEffectList.getId(mobEffect.getMobEffect()) == effectId) {
existing = mobEffect;
}
}
if (existing == null) {
return false;
}
Validate.isTrue(getBasePotionData().getType() != PotionType.UNCRAFTABLE || !getHandle().effects.isEmpty(), "Tipped Arrows must have at least 1 effect");
getHandle().effects.remove(existing);
getHandle().refreshEffects();
return true;
}
use of net.minecraft.server.v1_12_R1.MobEffect in project PaperDev by Kamillaova.
the class CraftAreaEffectCloud method removeCustomEffect.
@Override
public boolean removeCustomEffect(PotionEffectType effect) {
int effectId = effect.getId();
MobEffect existing = null;
for (MobEffect mobEffect : getHandle().effects) {
if (MobEffectList.getId(mobEffect.getMobEffect()) == effectId) {
existing = mobEffect;
}
}
if (existing == null) {
return false;
}
getHandle().effects.remove(existing);
getHandle().refreshEffects();
return true;
}
use of net.minecraft.server.v1_12_R1.MobEffect in project MechanicsMain by WeaponMechanics.
the class Scope_1_9_R2 method removeNightVision.
@Override
public void removeNightVision(Player player) {
if (player.hasPotionEffect(PotionEffectType.NIGHT_VISION)) {
EntityPlayer entityPlayer = ((CraftPlayer) player).getHandle();
// Simply remove the entity effect
PacketPlayOutRemoveEntityEffect removeEntityEffect = new PacketPlayOutRemoveEntityEffect(player.getEntityId(), MobEffectList.fromId(PotionEffectType.NIGHT_VISION.getId()));
entityPlayer.playerConnection.sendPacket(removeEntityEffect);
// resend the existing one
MobEffect mobEffect = entityPlayer.getEffect(MobEffectList.fromId(PotionEffectType.NIGHT_VISION.getId()));
PacketPlayOutEntityEffect entityEffect = new PacketPlayOutEntityEffect(player.getEntityId(), mobEffect);
((CraftPlayer) player).getHandle().playerConnection.sendPacket(entityEffect);
return;
}
// Simply remove the entity effect
PacketPlayOutRemoveEntityEffect removeEntityEffect = new PacketPlayOutRemoveEntityEffect(player.getEntityId(), MobEffectList.fromId(PotionEffectType.NIGHT_VISION.getId()));
((CraftPlayer) player).getHandle().playerConnection.sendPacket(removeEntityEffect);
}
use of net.minecraft.server.v1_12_R1.MobEffect in project MechanicsMain by WeaponMechanics.
the class Scope_1_9_R2 method addNightVision.
@Override
public void addNightVision(Player player) {
// 6000 = 5min
PacketPlayOutEntityEffect entityEffect = new PacketPlayOutEntityEffect(-player.getEntityId(), new MobEffect(MobEffectList.fromId(PotionEffectType.NIGHT_VISION.getId()), 6000, 2));
((CraftPlayer) player).getHandle().playerConnection.sendPacket(entityEffect);
}
Aggregations