package loupsgarous; // I.a

import java.util.HashMap;
import java.util.Map.Entry;

public class Engine { // I.a
	private HashMap<String, Role> roles; // II.c
	
	public Engine() { // I.b
		roles = new HashMap<String, Role>(); // II.c
		
		roles.put("Bulbizarre", new Peasant(this)); // II.c
		roles.put("Pikachu", new Peasant(this)); // II.c
		roles.put("Carapuce", new Peasant(this)); // II.c
		roles.put("Pixel", new FortuneTeller(this)); // II.c
		roles.put("Tyrion", new WereWolf(this)); // II.c
		roles.put("Cersei", new WereWolf(this)); // II.c
		roles.put("Grogu", new LittleGirl(this)); // II.c
	}
	
	public void play() { // I.b
		String[] messages = {  // I.c
			"Le village s'endort", // I.c
			"La voyante se réveille et désigne un joueur dont elle veut découvrir le rôle", // I.c
			"Les loups-garous se réveillent, se reconnaissent et désignent une nouvelle victime", // I.c
			"C'est le matin, le village se réveille et ouvre les yeux" //I.c
		};
		
		for(int i=0; i<messages.length; i++) { // I.d
			System.out.println("Étape " + i + " : " + messages[i]); // I.d
			
			for(String cur: roles.keySet()) { // II.d
				roles.get(cur).execute(i, cur); // II.d
			}
		}
	}
	
	public static void main(String[] args) {
		System.out.println("---- démarrage du jeu ----"); // I.a
		Engine e = new Engine(); // I.b
		e.play(); // I.b
	}
}
