Skip to content
Snippets Groups Projects
Select Git revision
  • f4d390d49f777ee7f3c2f731eb4d6008c2501ba7
  • main default protected
  • variant
3 results

FireFigther.java

Blame
  • Forked from LABOUREL Arnaud / Firefighter template
    Source project has a limited visibility.
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    FireFigther.java 973 B
    package model.Element;
    
    import util.Position;
    import view.ViewElement;
    
    import java.util.List;
    import java.util.Map;
    
    import static util.Tools.*;
    
    public class FireFigther implements ModelElement{
        @Override
        public void update(Position position, Map<Position, List<ModelElement>> board, int step, int columnCount, int rowCount) {
    
    
            if(!extinguishneighbor(position,board,columnCount,rowCount)) {
                Position newPositionStep = neighborClosestTo(position,board,rowCount,columnCount,new Fire(),List.of(new Mountain()));
                removeElement(position, board, new FireFigther());
                addElement(newPositionStep, board, new FireFigther());
                extinguishneighbor(newPositionStep,board,columnCount,rowCount);
            }
    
        }
    
    
        @Override
        public ViewElement getViewElement() {
            return ViewElement.FIREFIGHTER;
        }
    
        @Override
        public boolean equals(Object obj) {
            return obj instanceof FireFigther;
        }
    }