use of de.slikey.effectlib.Effect in project solinia3-core by mixxit.
the class SpecialEffectUtils method playFlameEffect.
public static void playFlameEffect(Entity entity, SoliniaActiveSpell activeSpell) {
Effect effect = new FlameEffect(StateManager.getInstance().getEffectManager());
effect.setEntity(entity);
effect.iterations = 1 * 20;
effect.start();
}
use of de.slikey.effectlib.Effect in project solinia3-core by mixxit.
the class SpecialEffectUtils method playLoveEffect.
public static void playLoveEffect(Entity entity, SoliniaActiveSpell activeSpell) {
Effect effect = new LoveEffect(StateManager.getInstance().getEffectManager());
effect.setEntity(entity);
effect.iterations = 1 * 20;
effect.start();
}
use of de.slikey.effectlib.Effect in project solinia3-core by mixxit.
the class SpecialEffectUtils method playSmokeEffect.
public static void playSmokeEffect(Entity entity, SoliniaActiveSpell activeSpell) {
Effect effect = new SmokeEffect(StateManager.getInstance().getEffectManager());
effect.setEntity(entity);
effect.iterations = 1 * 20;
effect.start();
}
use of de.slikey.effectlib.Effect in project solinia3-core by mixxit.
the class SpecialEffectUtils method playMusicEffect.
public static void playMusicEffect(Entity entity, SoliniaActiveSpell activeSpell) {
Effect effect = new MusicEffect(StateManager.getInstance().getEffectManager());
effect.setEntity(entity);
effect.iterations = 1 * 20;
effect.start();
}
use of de.slikey.effectlib.Effect in project MagicPlugin by elBukkit.
the class EffectLibManager method play.
@Nullable
public Effect play(ConfigurationSection configuration, EffectPlayer player, DynamicLocation origin, DynamicLocation target, Map<String, String> parameterMap) {
if (parameterMap == null) {
parameterMap = new HashMap<>();
}
Entity originEntity = origin == null ? null : origin.getEntity();
if (originEntity != null && originEntity instanceof Player) {
parameterMap.put("$name", ((Player) originEntity).getName());
} else if (originEntity != null && originEntity instanceof LivingEntity) {
parameterMap.put("$name", ((LivingEntity) originEntity).getCustomName());
} else {
parameterMap.put("$name", "Unknown");
}
Entity targetEntity = target == null ? null : target.getEntity();
if (targetEntity != null && targetEntity instanceof Player) {
parameterMap.put("$target", ((Player) targetEntity).getName());
} else if (originEntity != null && targetEntity instanceof LivingEntity) {
parameterMap.put("$target", ((LivingEntity) targetEntity).getCustomName());
} else {
parameterMap.put("$target", "Unknown");
}
Effect effect = null;
String effectClass = configuration.getString("class");
ParticleEffect particleEffect = player.overrideParticle(null);
String effectOverride = player.getParticleOverrideName();
if (effectOverride != null && effectOverride.isEmpty())
effectOverride = null;
String colorOverrideName = player.getColorOverrideName();
if (colorOverrideName != null && colorOverrideName.isEmpty())
colorOverrideName = null;
ConfigurationSection parameters = configuration;
Color colorOverride = player.getColor1();
if ((colorOverrideName != null && colorOverride != null) || (effectOverride != null && particleEffect != null)) {
parameters = new MemoryConfiguration();
Collection<String> keys = configuration.getKeys(false);
for (String key : keys) {
parameters.set(key, configuration.get(key));
}
if (effectOverride != null && particleEffect != null) {
parameters.set(effectOverride, particleEffect.name());
}
if (colorOverride != null && colorOverrideName != null) {
String hexColor = Integer.toHexString(colorOverride.asRGB());
parameters.set(colorOverrideName, hexColor);
}
}
try {
effect = effectManager.start(effectClass, parameters, origin, target, parameterMap);
if (!parameters.contains("material")) {
MaterialAndData mat = player.getWorkingMaterial();
if (mat != null) {
effect.material = mat.getMaterial();
effect.materialData = mat.getBlockData();
}
}
} catch (Throwable ex) {
Bukkit.getLogger().warning("Error playing effects of class: " + effectClass);
ex.printStackTrace();
}
return effect;
}
Aggregations