public class Clan {
private String clanName;
static ArrayList<Citizen> list;
private int clanSize;
public Clan(String clanName, int clanSize) {
this.clanName = clanName;
this.clanSize = clanSize;
Clan.list = new ArrayList<Citizen>(clanSize);
//list.add(new Archer());
for (int i = 0; i < clanSize; i++) {
Clan.list.add(Citizen.randomCitizen());
}
}
public static Citizen randomCitizen() {
Random randomReturn = new Random();
Citizen [] list = new Citizen[3];
list[0]=new Archer();
list[1]= new Barbarian();
list[2]= new Civilian();
return list[randomReturn.nextInt(list.length)];
}
This is meant to randomly fill the clan with random citizens whenever its called. The error I am having is if I create a new clan(toronto, 5) and another new clan(montreal, 6). They both have the same pattern of citizens. Its meant to be random for each call