1package com.runehive.game.world.entity.combat.effect;
3import com.runehive.game.world.World;
4import com.runehive.game.world.entity.mob.Mob;
6import java.util.Collection;
7import java.util.Collections;
8import java.util.HashMap;
21 public static final Map<CombatEffectType, CombatEffect>
EFFECTS =
new HashMap<>();
58 public static Collection<CombatEffect>
values() {
59 return Collections.unmodifiableCollection(
EFFECTS.values());
Represents the game world.
static void schedule(Task task)
Submits a new event.
CombatEffect(int delay)
Creates a new CombatEffect.
abstract boolean removeOn(Mob mob)
Removes this effect from mob if needed.
static Collection< CombatEffect > values()
Returns an unmodifiable view of the combat effect listeners.
final int getDelay()
Gets the delay for this individual combat effect.
abstract boolean apply(Mob mob)
Applies this effect to mob.
final boolean start(Mob mob)
Starts this combat effect by scheduling a task utilizing the abstract methods in this class.
abstract boolean onLogin(Mob mob)
Executed on login, primarily used to re-apply the effect to mob.
abstract void process(Mob mob)
Provides processing for this effect on mob.
static final Map< CombatEffectType, CombatEffect > EFFECTS
The map of all of the combat effect types mapped to their respective listeners.
final int delay
The delay for this individual combat effect.
The Task implementation that provides processing for CombatEffects.