Skip to content
Snippets Groups Projects
Select Git revision
  • 2f40d74bb03ba8b9b9d79a10bd9bc811aa37cbd8
  • main default protected
  • master
3 results

Display.java

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    Extinguisher.java 811 B
    package model;
    
    import util.Position;
    
    import java.util.ArrayList;
    import java.util.List;
    
    public abstract class Extinguisher {
        protected Position position;
    
        public Extinguisher(Position position){
            this.position = position;
        }
    
        public Position position() {
            return position;
        }
    
    
        public void update(FirefighterBoard board){
            move(board);
            extinguish(board);
        }
    
        private void extinguish(FirefighterBoard board) {
            List<Item> itemList = board.itemList();
            List<Position> neighborslist = board.neighbors(position);
            for (Position neighborsposition: neighborslist) {
                itemList.removeIf(item -> neighborsposition == item.position() && item instanceof Fire);
    
            }
        }
    
        abstract void move(FirefighterBoard board);
    }