mourning-ember / src / main / java / dev / llan / events / EnemyUpdatedEvent.java
EnemyUpdatedEvent.java
Raw
package dev.llan.events;

import dev.llan.events.Events.*;
import dev.llan.model.pieces.enemies.Enemy;

import java.util.ArrayList;
import java.util.List;

public class EnemyUpdatedEvent extends BaseEvent {
  private Enemy enemy;
  private List<EnemyUpdateType> updateTypes;

  public EnemyUpdatedEvent(Enemy enemy, EnemyUpdateType type, EnemyUpdateType... types) {
    super(EventType.ENEMIES_UPDATE);
    this.enemy = enemy;
    updateTypes = new ArrayList<>();
    updateTypes.add(type);
    updateTypes.addAll(List.of(types));
  }

  public Enemy getEnemy() {
    return enemy;
  }

  public List<EnemyUpdateType> getUpdateTypes() {
    return updateTypes;
  }

  @Override
  public String getMessage() {
    return "Enemy (or enemies') attributes updated";
  }
}