private static void addMission(String rank, List<Mission> allMissions, List<Mission> available) { List<Mission> rollingMissions = new ArrayList<Mission>(); for (Mission m : allMissions) { if (m.getRankClass().equals(rank)) { rollingMissions.add(m); } } int missionRoll = Roller.roll(rollingMissions.size()) - 1; if (missionRoll > 0) available.add(rollingMissions.get(missionRoll)); }
public static List<Mission> generateAvailableMissions(Ninja n, List<Mission> allMissions) { if (n == null || allMissions == null) return null; List<Mission> available = new ArrayList<Mission>(); for (int missionRolls = (n.getLevel() / 5) + 3; missionRolls > 0; missionRolls--) { int chance = Roller.roll(100); if (chance < 10) { continue; } else { addMission("D", allMissions, available); } } return available; }