@Override
	public void randomizeStaticPokemon(boolean legendForLegend) {
		// Load
		checkPokemonRestrictions();
		List<Pokemon> currentStaticPokemon = this.getStaticPokemon();
		List<Pokemon> replacements = new ArrayList<Pokemon>();
		List<Pokemon> banned = this.bannedForStaticPokemon();

		if (legendForLegend) {
			for (int i = 0; i < currentStaticPokemon.size(); i++) {
				Pokemon old = currentStaticPokemon.get(i);
				Pokemon newPK = old.isLegendary() ? randomLegendaryPokemon()
						: randomNonLegendaryPokemon();
				while (replacements.contains(newPK) || banned.contains(newPK)) {
					newPK = old.isLegendary() ? randomLegendaryPokemon()
							: randomNonLegendaryPokemon();
				}
				replacements.add(newPK);
			}
		} else {
			for (int i = 0; i < currentStaticPokemon.size(); i++) {
				Pokemon newPK = randomPokemon();
				while (replacements.contains(newPK) || banned.contains(newPK)) {
					newPK = randomPokemon();
				}
				replacements.add(newPK);
			}
		}

		// Save
		this.setStaticPokemon(replacements);
	}