# IEffekManager > Plays Effekseer particle effects on a player's client. `gg.lode.lecternapi.api.manager.IEffekManager` --- ## Signature ```java public interface IEffekManager ``` --- ## Notes Effekseer effects are authored VFX files (`.efkefc`) shipped inside the Lectern client mod or a resource pack, loaded by the client under an id such as `lodestone:explosion`. They are a different animal from `IParticleManager`'s vanilla-style particles: a single play can be an entire choreographed effect (beams, shockwaves, ribbons) with a lifetime of its own. A play can optionally carry an **emitter name**, which turns it into an addressable slot: the same name can later be moved, retuned via dynamic inputs, triggered, or stopped. Playing again under the same name replaces the previous emitter. An empty name is fire-and-forget. Effects the client does not have are silently ignored, a missing visual stays cosmetic. All rotations are radians; scale of 1 is the authored size. --- ## Methods ### playEffek ```java void playEffek(Player player, String effekId, String emitterName, double x, double y, double z, float rotX, float rotY, float rotZ, float scaleX, float scaleY, float scaleZ) void playEffek(Player player, String effekId, Location location) void playEffek(Player player, String effekId, Location location, float scale) void playEffek(Player player, String effekId, String emitterName, Location location, float scale) ``` Plays an effect at a position. Fire-and-forget play at a location, unrotated, at authored size. Fire-and-forget play at a location with a uniform scale. Named play at a location, the emitter stays addressable under `emitterName`. --- ### moveEffek ```java void moveEffek(Player player, String effekId, String emitterName, double x, double y, double z) void moveEffek(Player player, String effekId, String emitterName, Location location) ``` Moves a named emitter to a new position. Unknown names are ignored. Convenience overload of `String, String, double, double, double)`. --- ### setEffekParam ```java void setEffekParam(Player player, String effekId, String emitterName, int slot, float value) ``` Sets a dynamic input on a named emitter, the four float knobs (slots 0-3) an Effekseer effect exposes to its host, with effect-defined meaning. | Parameter | Type | Description | |---|---|---| | `player` | `Player` | | | `effekId` | `String` | | | `emitterName` | `String` | | | `slot` | `int` | dynamic input slot, 0-3 | | `value` | `float` | the new value | --- ### triggerEffek ```java void triggerEffek(Player player, String effekId, String emitterName, int slot) ``` Fires a trigger (slots 0-3) on a named emitter, effect-defined one-shot signals, e.g. "detonate now". | Parameter | Type | Description | |---|---|---| | `player` | `Player` | | | `effekId` | `String` | | | `emitterName` | `String` | | | `slot` | `int` | trigger slot, 0-3 | --- ### stopEffek ```java void stopEffek(Player player, String effekId, String emitterName) ``` Stops a named emitter of an effect. With an empty name, stops every emitter of that effect on the player's client. | Parameter | Type | |---|---| | `player` | `Player` | | `effekId` | `String` | | `emitterName` | `String` | --- ### clearEffeks ```java void clearEffeks(Player player) ``` Stops every emitter of every effect on the player's client. | Parameter | Type | |---|---| | `player` | `Player` | --- ## Example Play an Effekseer effect at a position on one player's client: ```java IEffekManager effeks = LecternAPI.getApi().getEffekManager(); effeks.playEffek(player, "lectern:light_bomb", target.getLocation(), 1.5f); ``` A named emitter is how you address the same effect later, to move it, drive a parameter or stop it: ```java effeks.playEffek(player, "lectern:light_bomb", "beacon", target.getLocation(), 1f); effeks.moveEffek(player, "lectern:light_bomb", "beacon", target.getLocation().add(0, 2, 0)); effeks.setEffekParam(player, "lectern:light_bomb", "beacon", 0, 0.75f); effeks.stopEffek(player, "lectern:light_bomb", "beacon"); ``` --- ## Related Pages - [[IParticleManager]]. Lectern's own particles, for smaller things