package model; import util.Position; import java.util.ArrayList; import java.util.List; import java.util.Random; public class MotorizedFactory implements ElementFactory<MotorizedFireFighter>, PositionGenerator{ private final Random random; private int count; public MotorizedFactory(Random random, int count) { this.random = random; this.count = count; } @Override public List<MotorizedFireFighter> createElements(int rowCount, int columnCount) { List<MotorizedFireFighter> firefighters = new ArrayList<>(); for (int i = 0; i < count; i++) { Position randomPosition = generateRandomPosition(rowCount, columnCount); firefighters.add(new MotorizedFireFighter(randomPosition)); } return firefighters; } @Override public Position generateRandomPosition(int rowCount, int columnCount) { int row = random.nextInt(rowCount); int column = random.nextInt(columnCount); return new Position(row, column); } public int getCount() { return count; } }