Skip to content
Snippets Groups Projects
Select Git revision
  • 538d361d9efda5cbfa85caf03336442b97019bb9
  • main default protected
  • correction_video
  • going_further
  • ImprovedMouseInteraction
  • final2023
  • template
  • ModifGUI
8 results

GameOfLifeState.java

Blame
  • Forked from YAGOUBI Rim / Game of life Template
    Source project has a limited visibility.
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    FireFigther.java 1021 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,new Fire(),rowCount,columnCount)) {
                Position newPositionStep = neighborClosestTo(position,board,rowCount,columnCount,new Fire(),List.of(new Mountain(),new MotorisedFirefigther() ));
                removeElement(position, board, new FireFigther());
                addElement(newPositionStep, board, new FireFigther());
                extinguishneighbor(newPositionStep,board,new Fire(),rowCount,columnCount);
            }
    
        }
    
    
        @Override
        public ViewElement getViewElement() {
            return ViewElement.FIREFIGHTER;
        }
    
        @Override
        public boolean equals(Object obj) {
            return obj instanceof FireFigther;
        }
    }