package lucifer3 import ( "git.aiterp.net/lucifer3/server/device" "time" ) type Effect interface { // State uses three values: // index: The position of this ID; // len: The total length of the effect's IDs; // round: Increases by one for each run of the effect if Frequency > 0; // random: A random positive int in the full 31-bit range. State(index, len, round, random int) device.State Frequency() time.Duration EffectDescription() string }