package cellsociety_team21; public class Ant { public void forage(Map neighbors, Cell currentCell, Simulation sim) } package cellsociety_team21; public abstract class BasicCell implements Cell { public Shape getShape() public String getCurrentState() public String getNextState() public void setNextState(String state) public void switchState(Map stateColors) public void addNeighbor(String whichNeighbor, Cell neighbor) public void setLocation(int x, int y) public int getX() public int getY() public Map getNeighborsMap() } package cellsociety_team21; public abstract class BasicSim implements Simulation { public BasicSim() public void updateGrid(Grid grid) public HashMap getStateColors() public ArrayList getStates() } package cellsociety_team21; public interface Cell { public void assignNextState(Collection cells, Simulation sim); public void switchState(Map stateColors); public Shape getShape(); public String getCurrentState(); public String getNextState(); public void setNextState(String state); public void addNeighbor(String whichNeighbor, Cell neighbor); public void setLocation(int x, int y); public int getX(); public int getY(); } package cellsociety_team21; public class FireCell extends BasicCell { public void assignNextState(Collection cells, Simulation sim) } package cellsociety_team21; public class FireSimulation extends BasicSim { public FireSimulation(double probCatch) public double getProbCatch() } package cellsociety_team21; public class ForagingCell extends BasicCell { public void assignNextState(Collection cells, Simulation sim) public void diffuse(Simulation sim) public void evaporate(Simulation sim) public void switchState(Map stateColors) public List getCurrentAnts() public List getNextAnts() public void setNextAnts(ArrayList myNextAnts) public double getCurrentFoodPhero() public void setCurrentFoodPhero(double myCurrentFoodPhero) public double getNextFoodPhero() public void setNextFoodPhero(double myNextFoodPhero) public double getCurrentHomePhero() public void setCurrentHomePhero(double myCurrentHomePhero) public double getNextHomePhero() public void setNextHomePhero(double myNextHomePhero) } package cellsociety_team21; public class ForagingSimulation extends BasicSim { public ForagingSimulation(int maxAntsPerCell, double diffusionRatio, double evaporationRatio, double maxPheromones, int antsBornPerTime, int startingAge) public void updateGrid(Grid grid) public int getMaxAntsPerCell() public void setMaxAntsPerCell(int myMaxAntsPerCell) public double getDiffusion() public void setDiffusion(double myDiffusion) public double getEvaporation() public void setEvaporation(double myEvaporation) public double getMaxPheromones() public void setMaxPheromones(double myMaxPheromones) public int getAntsBornPerTime() public void setAntsBornPerTime(int myAntsBornPerTime) public int getStartingAge() public void setStartingAge(int myStartingAge) } package cellsociety_team21; public class GOLCell extends BasicCell { public void assignNextState(Collection cells, Simulation sim) } package cellsociety_team21; public class GOLSimulation extends BasicSim { public GOLSimulation() } package cellsociety_team21; public abstract class Grid { public abstract Collection getCells(); public abstract HashMap getCellMap(); public abstract void switchStates(HashMap stateColors); } package cellsociety_team21; public class MainDriver extends Application{ public void start(Stage stage) throws Exception } package cellsociety_team21; public class RPSCell extends BasicCell { public void assignNextState(Collection cells, Simulation sim) public int getCurrentStrength() public void setNextStrength(int nextStrength) } package cellsociety_team21; public class RPSSimulation extends BasicSim { } package cellsociety_team21; public class SegregationCell extends BasicCell { public void assignNextState(Collection cells, Simulation sim) } package cellsociety_team21; public class SegregationSimulation extends BasicSim { public SegregationSimulation(double tRatio) public void updateGrid(Grid grid) public double getTRatio() } package cellsociety_team21; public interface Simulation { public void updateGrid(Grid grid); public HashMap getStateColors(); public ArrayList getStates(); } package cellsociety_team21; public class StandardGrid extends Grid{ public StandardGrid(int row, int col, ArrayList initStates, double cellSize, HashMap colors, String game) public StandardGrid() public Collection getCells() public void switchStates(HashMap stateColors) public HashMap getCellMap() public void assignNeighborsNoDiag() } package cellsociety_team21; public class StandardGridDiag extends StandardGrid { public StandardGridDiag(int row, int col, ArrayList initStates, double cellSize, public StandardGridDiag() } package cellsociety_team21; public class StandardGridWrap extends StandardGrid { public StandardGridWrap(int row, int col, ArrayList initStates, double cellSize, public StandardGridWrap() public void assignNeighborsWrap(int row, int col) } package cellsociety_team21; public class TriangleGrid extends Grid { public TriangleGrid(int row, int col, ArrayList initStates, double cellSize, HashMap colors, String game) public TriangleGrid() public Collection getCells() public void switchStates(HashMap stateColors) public HashMap getCellMap() public void assignNeighborsNoDiag() } package cellsociety_team21; public class UpTriangle extends Polygon{ public UpTriangle(int sideLength, Paint color) } package cellsociety_team21; public class WaTorCell extends BasicCell { public WaTorCell(Shape shape, String initState, int x, int y, int initEnergy, int initRepro) public int getCurrentEnergy() public int getCurrentTimeTilReproduction() public void setNextEnergy(int nextEnergy) public void setNextTimeTilReproduction(int nextRepro) public void switchState(Map stateColors) public void assignNextState(Collection cells, Simulation sim) } package cellsociety_team21; public class WaTorGrid extends StandardGridWrap { public WaTorGrid(int row, int col, ArrayList initStates, double cellSize, } package cellsociety_team21; public class WaTorSimulation extends BasicSim { public WaTorSimulation(int startEnergy, int reproductionTime, int energyPerFish) public void updateGrid(Grid grid) public int getStartEnergy() public int getReproductionTime() public int getEnergyPerFish() } package visuals; public class Driver { public Driver (Stage stage, Scene scene, String gameType, DataType data) } package visuals; public class Gui { public Gui(Stage stage, boolean dataBad) public Scene getScene() } package XML; public abstract class DataType { public String getGameType() public void setGameType(String Game) public String getTitle() public void setTitle(String Title) public String getWidth() public String getHeight() public void setWidth(String SetW) public void setHeight(String SetH) public int getWidthInt() public int getHeightInt() public void setRandom(String random) public boolean isRandom() public void setGrid(String gridT) public boolean isGrid() public void setStates(String s) public ArrayList getStates() public void init(String SetW, String SetH) } package XML; public class FireData extends DataType { public FireData(String gameType, String title, String width, String height, String probCatch, String randomAssign, String grid, String s) public Double getProbCatch() public void setProbCatch(double newVal) } package XML; public class ForageData extends DataType{ public ForageData(String GameType, String Title, String width, String height, String randomAssign, String grid, String s, String maxAnts2, String diff2, String evap2, String phero2, String ant, String start) public double getDiff() public void setDiff(double d) public double getEvap() public void setEvap(double d) public double getPhero() public void setPhero(double d) public int getMaxAnts() public void setMaxAnts(int i) public int getAntsBorn() public void setAntsBorn(int i) public int getStartAge() public void setStartAge(int i) } package XML; public class GoLData extends DataType{ public GoLData(String GameType, String Title, String width, String height, String randomAssign, String grid, String s) } package XML; public class SegregationData extends DataType{ public SegregationData(String GameType, String Title, String width, String height, String Tratio, String randomAssign, String grid, String s) public double getRatio() public void setRatio(double newVal) } package XML; public class WatorData extends DataType{ public WatorData(String GameType, String Title, String width, String height, String sEnergy, String repro, String eFish, String randomAssign, String grid, String s) public int getStartEnergy() public int getReproduction() public int getFishEnergy() public void setStartEnergy(int newV) public void setReproduction(int newV) } package XML; public class XMLParser { public XMLParser(File file) public void assignTWH(Element eElement) public DataType getData() public boolean isFailed() } package XML; public class XMLSaver { public XMLSaver(DataType data, StandardGrid grid, boolean gridLines, int width, int height) public boolean isSaved() }