diff --git a/runtime-workspace/fr.n7.game.examples/enigme.game b/runtime-workspace/fr.n7.game.examples/enigme.game index 8880ec9..b06455f 100644 --- a/runtime-workspace/fr.n7.game.examples/enigme.game +++ b/runtime-workspace/fr.n7.game.examples/enigme.game @@ -81,7 +81,7 @@ "lieu_in": "Enigme", "lieu_out": "Echec", "ouvert": true, - "visible": tentatives == 0, + "visible": tentative == 0, "obligatoire": true, "connaissances": [], "objets_recus": [], diff --git a/runtime-workspace/fr.n7.game.examples/src-gen/Action.java b/runtime-workspace/fr.n7.game.examples/src-gen/Action.java index 5665fb1..f456faf 100644 --- a/runtime-workspace/fr.n7.game.examples/src-gen/Action.java +++ b/runtime-workspace/fr.n7.game.examples/src-gen/Action.java @@ -10,10 +10,10 @@ public class Action { public Action( Condition visible, + Condition finInterraction, List connaissances, List objetsRecus, List objetsConso, - Condition finInterraction, List descriptions) { this.visible = visible; this.connaissances = connaissances; diff --git a/runtime-workspace/fr.n7.game.examples/src-gen/Chemin.java b/runtime-workspace/fr.n7.game.examples/src-gen/Chemin.java index 251c984..9702699 100644 --- a/runtime-workspace/fr.n7.game.examples/src-gen/Chemin.java +++ b/runtime-workspace/fr.n7.game.examples/src-gen/Chemin.java @@ -1,6 +1,7 @@ import java.util.List; public class Chemin { + String nom; Lieu lieuIn; Lieu lieuOut; Condition ouvert; @@ -12,6 +13,7 @@ public class Chemin { List descriptions; public Chemin( + String nom, Lieu lieuIn, Lieu lieuOut, Condition ouvert, @@ -21,6 +23,7 @@ public class Chemin { List objetsRecus, List objetsConso, List descriptions) { + this.nom = nom; this.lieuIn = lieuIn; this.lieuOut = lieuOut; this.ouvert = ouvert; diff --git a/runtime-workspace/fr.n7.game.examples/src-gen/Jeu.java b/runtime-workspace/fr.n7.game.examples/src-gen/Jeu.java index 4df2274..c2a5fe3 100644 --- a/runtime-workspace/fr.n7.game.examples/src-gen/Jeu.java +++ b/runtime-workspace/fr.n7.game.examples/src-gen/Jeu.java @@ -25,6 +25,11 @@ public class Jeu { this.transformations = transformations; } + public static void clearScreen() { + System.out.print("\033[H\033[2J"); + System.out.flush(); + } + void jouer() { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); @@ -39,7 +44,8 @@ public class Jeu { while (!lieu.fin.evaluer()) { boolean recommencer = false; - System.out.println("\n\n\n\n\n\n\n\n\n\nLieu : " + lieu + "\n"); + clearScreen(); + System.out.println("Lieu : " + lieu + "\n"); System.out.println(Jeu.explorateur); for (Personne p : lieu.personnes) { @@ -100,7 +106,8 @@ public class Jeu { } else { Personne p = personnes_choix.get(choix - chemins_choix.size()); - System.out.println("\n\n\n\n\n\n\n\n\n\nLieu : " + lieu + "\n"); + clearScreen(); + System.out.println("Lieu : " + lieu + "\n"); System.out.println(Jeu.explorateur); System.out.println(p + " :"); diff --git a/runtime-workspace/fr.n7.game.examples/src-gen/Prototype.java b/runtime-workspace/fr.n7.game.examples/src-gen/Prototype.java new file mode 100644 index 0000000..d494697 --- /dev/null +++ b/runtime-workspace/fr.n7.game.examples/src-gen/Prototype.java @@ -0,0 +1,724 @@ +import java.util.List; +import java.util.ArrayList; +import java.io.InputStreamReader; +import java.io.BufferedReader; +import java.io.IOException; + +public class Prototype { +public static void main(String[] args) { + +// "Objets" +List jeu_objets = new ArrayList<>(); + + List objet_tentative_descriptions = new ArrayList<>(); + + List objet_tentative_description_1_conditions_ET_list = new ArrayList<>(); + + List objet_tentative_description_1_conditions_TEST_list = new ArrayList<>(); + + objet_tentative_description_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + objet_tentative_description_1_conditions_ET_list.add( + new ConditionEt(objet_tentative_description_1_conditions_TEST_list) + ); + + Condition objet_tentative_description_1_condition = new Condition(objet_tentative_description_1_conditions_ET_list); + + objet_tentative_descriptions.add( + new Description( + "permet repondre une question du sphinx", + objet_tentative_description_1_condition + ) + ); + List objet_visible_tentative_conditions_ET_list = new ArrayList<>(); + + List objet_visible_tentative_conditions_TEST_list = new ArrayList<>(); + + objet_visible_tentative_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + objet_visible_tentative_conditions_ET_list.add( + new ConditionEt(objet_visible_tentative_conditions_TEST_list) + ); + + Condition objet_visible_tentative_condition = new Condition(objet_visible_tentative_conditions_ET_list); + Objet objet_tentative = new Objet( + "tentative", + 1, + objet_visible_tentative_condition, + objet_tentative_descriptions + ); + jeu_objets.add(objet_tentative); + +// "Connaissances" +List jeu_connaissances = new ArrayList<>(); + + List connaissance_Reussite_descriptions = new ArrayList<>(); + + List connaissance_Reussite_description_1_conditions_ET_list = new ArrayList<>(); + + List connaissance_Reussite_description_1_conditions_TEST_list = new ArrayList<>(); + + connaissance_Reussite_description_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + connaissance_Reussite_description_1_conditions_ET_list.add( + new ConditionEt(connaissance_Reussite_description_1_conditions_TEST_list) + ); + + Condition connaissance_Reussite_description_1_condition = new Condition(connaissance_Reussite_description_1_conditions_ET_list); + + connaissance_Reussite_descriptions.add( + new Description( + "Permet de se casser de la", + connaissance_Reussite_description_1_condition + ) + ); + List connaissance_visible_Reussite_conditions_ET_list = new ArrayList<>(); + + List connaissance_visible_Reussite_conditions_TEST_list = new ArrayList<>(); + + connaissance_visible_Reussite_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + connaissance_visible_Reussite_conditions_ET_list.add( + new ConditionEt(connaissance_visible_Reussite_conditions_TEST_list) + ); + + Condition connaissance_visible_Reussite_condition = new Condition(connaissance_visible_Reussite_conditions_ET_list); + Connaissance connaissance_Reussite = new Connaissance( + "Reussite", + connaissance_visible_Reussite_condition, + connaissance_Reussite_descriptions + ); + jeu_connaissances.add(connaissance_Reussite); + +// "Transformations" +List jeu_transformations = new ArrayList<>(); + + +// "Explorateur" + +List explorateur_inventaire = new ArrayList<>(); + explorateur_inventaire.add(objet_tentative); + explorateur_inventaire.add(objet_tentative); + explorateur_inventaire.add(objet_tentative); + +List explorateur_connaissances = new ArrayList<>(); + +Jeu.explorateur = new Explorateur( + 3, + explorateur_connaissances, + explorateur_inventaire +); + +// "Personnes" + +List jeu_personnes = new ArrayList<>(); + + List personne_visible_Sphinx_1_conditions_ET_list = new ArrayList<>(); + + List personne_visible_Sphinx_1_conditions_TEST_list = new ArrayList<>(); + + personne_visible_Sphinx_1_conditions_TEST_list.add( + new ConditionConnaissance( + connaissance_Reussite, + true + ) + ); + personne_visible_Sphinx_1_conditions_TEST_list.add( + new ConditionObjet( + objet_tentative, + ">", + 0 + ) + ); + personne_visible_Sphinx_1_conditions_ET_list.add( + new ConditionEt(personne_visible_Sphinx_1_conditions_TEST_list) + ); + + Condition personne_visible_Sphinx_1_condition = new Condition(personne_visible_Sphinx_1_conditions_ET_list); + List personne_obligatoire_Sphinx_1_conditions_ET_list = new ArrayList<>(); + + List personne_obligatoire_Sphinx_1_conditions_TEST_list = new ArrayList<>(); + + personne_obligatoire_Sphinx_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + personne_obligatoire_Sphinx_1_conditions_ET_list.add( + new ConditionEt(personne_obligatoire_Sphinx_1_conditions_TEST_list) + ); + + Condition personne_obligatoire_Sphinx_1_condition = new Condition(personne_obligatoire_Sphinx_1_conditions_ET_list); + List personne_Sphinx_1_interactions = new ArrayList<>(); + + List personne_Sphinx_1_interaction_visible_1_conditions_ET_list = new ArrayList<>(); + + List personne_Sphinx_1_interaction_visible_1_conditions_TEST_list = new ArrayList<>(); + + personne_Sphinx_1_interaction_visible_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + personne_Sphinx_1_interaction_visible_1_conditions_ET_list.add( + new ConditionEt(personne_Sphinx_1_interaction_visible_1_conditions_TEST_list) + ); + + Condition personne_Sphinx_1_interaction_visible_1_condition = new Condition(personne_Sphinx_1_interaction_visible_1_conditions_ET_list); + List personne_Sphinx_1_interaction_1_actions = new ArrayList<>(); + + List personne_Sphinx_1_interaction_1_action_visible_1_conditions_ET_list = new ArrayList<>(); + + List personne_Sphinx_1_interaction_1_action_visible_1_conditions_TEST_list = new ArrayList<>(); + + personne_Sphinx_1_interaction_1_action_visible_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + personne_Sphinx_1_interaction_1_action_visible_1_conditions_ET_list.add( + new ConditionEt(personne_Sphinx_1_interaction_1_action_visible_1_conditions_TEST_list) + ); + + Condition personne_Sphinx_1_interaction_1_action_visible_1_condition = new Condition(personne_Sphinx_1_interaction_1_action_visible_1_conditions_ET_list); + List personne_Sphinx_1_interaction_1_action_fin_1_conditions_ET_list = new ArrayList<>(); + + List personne_Sphinx_1_interaction_1_action_fin_1_conditions_TEST_list = new ArrayList<>(); + + personne_Sphinx_1_interaction_1_action_fin_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + personne_Sphinx_1_interaction_1_action_fin_1_conditions_ET_list.add( + new ConditionEt(personne_Sphinx_1_interaction_1_action_fin_1_conditions_TEST_list) + ); + + Condition personne_Sphinx_1_interaction_1_action_fin_1_condition = new Condition(personne_Sphinx_1_interaction_1_action_fin_1_conditions_ET_list); + List personne_Sphinx_1_interaction_1_action_1_descriptions = new ArrayList<>(); + + List personne_Sphinx_1_interaction_1_action_1_description_1_conditions_ET_list = new ArrayList<>(); + + List personne_Sphinx_1_interaction_1_action_1_description_1_conditions_TEST_list = new ArrayList<>(); + + personne_Sphinx_1_interaction_1_action_1_description_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + personne_Sphinx_1_interaction_1_action_1_description_1_conditions_ET_list.add( + new ConditionEt(personne_Sphinx_1_interaction_1_action_1_description_1_conditions_TEST_list) + ); + + Condition personne_Sphinx_1_interaction_1_action_1_description_1_condition = new Condition(personne_Sphinx_1_interaction_1_action_1_description_1_conditions_ET_list); + + personne_Sphinx_1_interaction_1_action_1_descriptions.add( + new Description( + "la bonne reponse", + personne_Sphinx_1_interaction_1_action_1_description_1_condition + ) + ); + + List personne_Sphinx_1_interaction_1_action_1_connaissances = new ArrayList<>(); + personne_Sphinx_1_interaction_1_action_1_connaissances.add(connaissance_Reussite); + List personne_Sphinx_1_interaction_1_action_1_objets_conso = new ArrayList<>(); + List personne_Sphinx_1_interaction_1_action_1_objets_recus = new ArrayList<>(); + + personne_Sphinx_1_interaction_1_actions.add( + new Action( + personne_Sphinx_1_interaction_1_action_visible_1_condition, + personne_Sphinx_1_interaction_1_action_fin_1_condition, + personne_Sphinx_1_interaction_1_action_1_connaissances, + personne_Sphinx_1_interaction_1_action_1_objets_conso, + personne_Sphinx_1_interaction_1_action_1_objets_recus, + personne_Sphinx_1_interaction_1_action_1_descriptions + ) + ); + List personne_Sphinx_1_interaction_1_action_visible_2_conditions_ET_list = new ArrayList<>(); + + List personne_Sphinx_1_interaction_1_action_visible_2_conditions_TEST_list = new ArrayList<>(); + + personne_Sphinx_1_interaction_1_action_visible_2_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + personne_Sphinx_1_interaction_1_action_visible_2_conditions_ET_list.add( + new ConditionEt(personne_Sphinx_1_interaction_1_action_visible_2_conditions_TEST_list) + ); + + Condition personne_Sphinx_1_interaction_1_action_visible_2_condition = new Condition(personne_Sphinx_1_interaction_1_action_visible_2_conditions_ET_list); + List personne_Sphinx_1_interaction_1_action_fin_2_conditions_ET_list = new ArrayList<>(); + + List personne_Sphinx_1_interaction_1_action_fin_2_conditions_TEST_list = new ArrayList<>(); + + personne_Sphinx_1_interaction_1_action_fin_2_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + personne_Sphinx_1_interaction_1_action_fin_2_conditions_ET_list.add( + new ConditionEt(personne_Sphinx_1_interaction_1_action_fin_2_conditions_TEST_list) + ); + + Condition personne_Sphinx_1_interaction_1_action_fin_2_condition = new Condition(personne_Sphinx_1_interaction_1_action_fin_2_conditions_ET_list); + List personne_Sphinx_1_interaction_1_action_2_descriptions = new ArrayList<>(); + + List personne_Sphinx_1_interaction_1_action_2_description_1_conditions_ET_list = new ArrayList<>(); + + List personne_Sphinx_1_interaction_1_action_2_description_1_conditions_TEST_list = new ArrayList<>(); + + personne_Sphinx_1_interaction_1_action_2_description_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + personne_Sphinx_1_interaction_1_action_2_description_1_conditions_ET_list.add( + new ConditionEt(personne_Sphinx_1_interaction_1_action_2_description_1_conditions_TEST_list) + ); + + Condition personne_Sphinx_1_interaction_1_action_2_description_1_condition = new Condition(personne_Sphinx_1_interaction_1_action_2_description_1_conditions_ET_list); + + personne_Sphinx_1_interaction_1_action_2_descriptions.add( + new Description( + "la mauvaise reponse", + personne_Sphinx_1_interaction_1_action_2_description_1_condition + ) + ); + + List personne_Sphinx_1_interaction_1_action_2_connaissances = new ArrayList<>(); + List personne_Sphinx_1_interaction_1_action_2_objets_conso = new ArrayList<>(); + personne_Sphinx_1_interaction_1_action_2_objets_conso.add(objet_tentative); + List personne_Sphinx_1_interaction_1_action_2_objets_recus = new ArrayList<>(); + + personne_Sphinx_1_interaction_1_actions.add( + new Action( + personne_Sphinx_1_interaction_1_action_visible_2_condition, + personne_Sphinx_1_interaction_1_action_fin_2_condition, + personne_Sphinx_1_interaction_1_action_2_connaissances, + personne_Sphinx_1_interaction_1_action_2_objets_recus, + personne_Sphinx_1_interaction_1_action_2_objets_conso, + personne_Sphinx_1_interaction_1_action_2_descriptions + ) + ); + + List personne_Sphinx_1_interaction_1_connaissances = new ArrayList<>(); + List personne_Sphinx_1_interaction_1_objets_conso = new ArrayList<>(); + List personne_Sphinx_1_interaction_1_objets_recus = new ArrayList<>(); + + personne_Sphinx_1_interactions.add( + new Interaction( + personne_Sphinx_1_interaction_visible_1_condition, + personne_Sphinx_1_interaction_1_connaissances, + personne_Sphinx_1_interaction_1_objets_conso, + personne_Sphinx_1_interaction_1_objets_recus, + personne_Sphinx_1_interaction_1_actions + ) + ); + + + Personne personne_Sphinx = new Personne( + "Sphinx", + personne_visible_Sphinx_1_condition, + personne_obligatoire_Sphinx_1_condition, + personne_Sphinx_1_interactions + ); + + jeu_personnes.add(personne_Sphinx); + +// "Lieux" + +List territoire_lieux = new ArrayList<>(); + List lieu_deposable_1_conditions_ET_list = new ArrayList<>(); + + List lieu_deposable_1_conditions_TEST_list = new ArrayList<>(); + + lieu_deposable_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + lieu_deposable_1_conditions_ET_list.add( + new ConditionEt(lieu_deposable_1_conditions_TEST_list) + ); + + Condition lieu_deposable_1_condition = new Condition(lieu_deposable_1_conditions_ET_list); + List lieu_depart_1_conditions_ET_list = new ArrayList<>(); + + List lieu_depart_1_conditions_TEST_list = new ArrayList<>(); + + lieu_depart_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + lieu_depart_1_conditions_ET_list.add( + new ConditionEt(lieu_depart_1_conditions_TEST_list) + ); + + Condition lieu_depart_1_condition = new Condition(lieu_depart_1_conditions_ET_list); + List lieu_fin_1_conditions_ET_list = new ArrayList<>(); + + List lieu_fin_1_conditions_TEST_list = new ArrayList<>(); + + lieu_fin_1_conditions_TEST_list.add( + new ConditionBoolean(false) + ); + lieu_fin_1_conditions_ET_list.add( + new ConditionEt(lieu_fin_1_conditions_TEST_list) + ); + + Condition lieu_fin_1_condition = new Condition(lieu_fin_1_conditions_ET_list); + List lieu_Enigme_1_descriptions = new ArrayList<>(); + + List lieu_Enigme_1_description_1_conditions_ET_list = new ArrayList<>(); + + List lieu_Enigme_1_description_1_conditions_TEST_list = new ArrayList<>(); + + lieu_Enigme_1_description_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + lieu_Enigme_1_description_1_conditions_ET_list.add( + new ConditionEt(lieu_Enigme_1_description_1_conditions_TEST_list) + ); + + Condition lieu_Enigme_1_description_1_condition = new Condition(lieu_Enigme_1_description_1_conditions_ET_list); + + lieu_Enigme_1_descriptions.add( + new Description( + "lieu de depart", + lieu_Enigme_1_description_1_condition + ) + ); + + List lieu_Enigme_1_personnes = new ArrayList<>(); + lieu_Enigme_1_personnes.add(personne_Sphinx); + List lieu_Enigme_1_objets = new ArrayList<>(); + List lieu_Enigme_1_connaissances = new ArrayList<>(); + + // TODO: utiliser un search dans la liste plutot que de déclarer les objets + Lieu lieu_Enigme = new Lieu( + "Enigme", + lieu_deposable_1_condition, + lieu_depart_1_condition, + lieu_fin_1_condition, + lieu_Enigme_1_personnes, + lieu_Enigme_1_descriptions, + lieu_Enigme_1_objets, + lieu_Enigme_1_connaissances + ); + + territoire_lieux.add(lieu_Enigme); + List lieu_deposable_2_conditions_ET_list = new ArrayList<>(); + + List lieu_deposable_2_conditions_TEST_list = new ArrayList<>(); + + lieu_deposable_2_conditions_TEST_list.add( + new ConditionBoolean(false) + ); + lieu_deposable_2_conditions_ET_list.add( + new ConditionEt(lieu_deposable_2_conditions_TEST_list) + ); + + Condition lieu_deposable_2_condition = new Condition(lieu_deposable_2_conditions_ET_list); + List lieu_depart_2_conditions_ET_list = new ArrayList<>(); + + List lieu_depart_2_conditions_TEST_list = new ArrayList<>(); + + lieu_depart_2_conditions_TEST_list.add( + new ConditionBoolean(false) + ); + lieu_depart_2_conditions_ET_list.add( + new ConditionEt(lieu_depart_2_conditions_TEST_list) + ); + + Condition lieu_depart_2_condition = new Condition(lieu_depart_2_conditions_ET_list); + List lieu_fin_2_conditions_ET_list = new ArrayList<>(); + + List lieu_fin_2_conditions_TEST_list = new ArrayList<>(); + + lieu_fin_2_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + lieu_fin_2_conditions_ET_list.add( + new ConditionEt(lieu_fin_2_conditions_TEST_list) + ); + + Condition lieu_fin_2_condition = new Condition(lieu_fin_2_conditions_ET_list); + List lieu_Succes_2_descriptions = new ArrayList<>(); + + List lieu_Succes_2_description_1_conditions_ET_list = new ArrayList<>(); + + List lieu_Succes_2_description_1_conditions_TEST_list = new ArrayList<>(); + + lieu_Succes_2_description_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + lieu_Succes_2_description_1_conditions_ET_list.add( + new ConditionEt(lieu_Succes_2_description_1_conditions_TEST_list) + ); + + Condition lieu_Succes_2_description_1_condition = new Condition(lieu_Succes_2_description_1_conditions_ET_list); + + lieu_Succes_2_descriptions.add( + new Description( + "lieu succes", + lieu_Succes_2_description_1_condition + ) + ); + + List lieu_Succes_2_personnes = new ArrayList<>(); + List lieu_Succes_2_objets = new ArrayList<>(); + List lieu_Succes_2_connaissances = new ArrayList<>(); + + // TODO: utiliser un search dans la liste plutot que de déclarer les objets + Lieu lieu_Succes = new Lieu( + "Succes", + lieu_deposable_2_condition, + lieu_depart_2_condition, + lieu_fin_2_condition, + lieu_Succes_2_personnes, + lieu_Succes_2_descriptions, + lieu_Succes_2_objets, + lieu_Succes_2_connaissances + ); + + territoire_lieux.add(lieu_Succes); + List lieu_deposable_3_conditions_ET_list = new ArrayList<>(); + + List lieu_deposable_3_conditions_TEST_list = new ArrayList<>(); + + lieu_deposable_3_conditions_TEST_list.add( + new ConditionBoolean(false) + ); + lieu_deposable_3_conditions_ET_list.add( + new ConditionEt(lieu_deposable_3_conditions_TEST_list) + ); + + Condition lieu_deposable_3_condition = new Condition(lieu_deposable_3_conditions_ET_list); + List lieu_depart_3_conditions_ET_list = new ArrayList<>(); + + List lieu_depart_3_conditions_TEST_list = new ArrayList<>(); + + lieu_depart_3_conditions_TEST_list.add( + new ConditionBoolean(false) + ); + lieu_depart_3_conditions_ET_list.add( + new ConditionEt(lieu_depart_3_conditions_TEST_list) + ); + + Condition lieu_depart_3_condition = new Condition(lieu_depart_3_conditions_ET_list); + List lieu_fin_3_conditions_ET_list = new ArrayList<>(); + + List lieu_fin_3_conditions_TEST_list = new ArrayList<>(); + + lieu_fin_3_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + lieu_fin_3_conditions_ET_list.add( + new ConditionEt(lieu_fin_3_conditions_TEST_list) + ); + + Condition lieu_fin_3_condition = new Condition(lieu_fin_3_conditions_ET_list); + List lieu_Echec_3_descriptions = new ArrayList<>(); + + List lieu_Echec_3_description_1_conditions_ET_list = new ArrayList<>(); + + List lieu_Echec_3_description_1_conditions_TEST_list = new ArrayList<>(); + + lieu_Echec_3_description_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + lieu_Echec_3_description_1_conditions_ET_list.add( + new ConditionEt(lieu_Echec_3_description_1_conditions_TEST_list) + ); + + Condition lieu_Echec_3_description_1_condition = new Condition(lieu_Echec_3_description_1_conditions_ET_list); + + lieu_Echec_3_descriptions.add( + new Description( + "lieu echec", + lieu_Echec_3_description_1_condition + ) + ); + + List lieu_Echec_3_personnes = new ArrayList<>(); + List lieu_Echec_3_objets = new ArrayList<>(); + List lieu_Echec_3_connaissances = new ArrayList<>(); + + // TODO: utiliser un search dans la liste plutot que de déclarer les objets + Lieu lieu_Echec = new Lieu( + "Echec", + lieu_deposable_3_condition, + lieu_depart_3_condition, + lieu_fin_3_condition, + lieu_Echec_3_personnes, + lieu_Echec_3_descriptions, + lieu_Echec_3_objets, + lieu_Echec_3_connaissances + ); + + territoire_lieux.add(lieu_Echec); + + +// "Chemins" + +List territoire_chemins = new ArrayList<>(); + List chemin_ouvert_win_1_conditions_ET_list = new ArrayList<>(); + + List chemin_ouvert_win_1_conditions_TEST_list = new ArrayList<>(); + + chemin_ouvert_win_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + chemin_ouvert_win_1_conditions_ET_list.add( + new ConditionEt(chemin_ouvert_win_1_conditions_TEST_list) + ); + + Condition chemin_ouvert_win_1_condition = new Condition(chemin_ouvert_win_1_conditions_ET_list); + List chemin_visible_win_1_conditions_ET_list = new ArrayList<>(); + + List chemin_visible_win_1_conditions_TEST_list = new ArrayList<>(); + + chemin_visible_win_1_conditions_TEST_list.add( + new ConditionConnaissance( + connaissance_Reussite, + false + ) + ); + chemin_visible_win_1_conditions_ET_list.add( + new ConditionEt(chemin_visible_win_1_conditions_TEST_list) + ); + + Condition chemin_visible_win_1_condition = new Condition(chemin_visible_win_1_conditions_ET_list); + List chemin_obligatoire_win_1_conditions_ET_list = new ArrayList<>(); + + List chemin_obligatoire_win_1_conditions_TEST_list = new ArrayList<>(); + + chemin_obligatoire_win_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + chemin_obligatoire_win_1_conditions_ET_list.add( + new ConditionEt(chemin_obligatoire_win_1_conditions_TEST_list) + ); + + Condition chemin_obligatoire_win_1_condition = new Condition(chemin_obligatoire_win_1_conditions_ET_list); + List chemin_win_1_descriptions = new ArrayList<>(); + + List chemin_win_1_description_1_conditions_ET_list = new ArrayList<>(); + + List chemin_win_1_description_1_conditions_TEST_list = new ArrayList<>(); + + chemin_win_1_description_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + chemin_win_1_description_1_conditions_ET_list.add( + new ConditionEt(chemin_win_1_description_1_conditions_TEST_list) + ); + + Condition chemin_win_1_description_1_condition = new Condition(chemin_win_1_description_1_conditions_ET_list); + + chemin_win_1_descriptions.add( + new Description( + "Le chemin de la victoire !", + chemin_win_1_description_1_condition + ) + ); + + List chemin_win_1_connaissances = new ArrayList<>(); + List chemin_win_1_objets_recus = new ArrayList<>(); + List chemin_win_1_objets_conso = new ArrayList<>(); + + Chemin chemins_win = new Chemin( + "win", + lieu_Enigme, + lieu_Succes, + chemin_ouvert_win_1_condition, + chemin_visible_win_1_condition, + chemin_obligatoire_win_1_condition, + chemin_win_1_connaissances, + chemin_win_1_objets_recus, + chemin_win_1_objets_conso, + chemin_win_1_descriptions + ); + + territoire_chemins.add(chemins_win); + List chemin_ouvert_loose_2_conditions_ET_list = new ArrayList<>(); + + List chemin_ouvert_loose_2_conditions_TEST_list = new ArrayList<>(); + + chemin_ouvert_loose_2_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + chemin_ouvert_loose_2_conditions_ET_list.add( + new ConditionEt(chemin_ouvert_loose_2_conditions_TEST_list) + ); + + Condition chemin_ouvert_loose_2_condition = new Condition(chemin_ouvert_loose_2_conditions_ET_list); + List chemin_visible_loose_2_conditions_ET_list = new ArrayList<>(); + + List chemin_visible_loose_2_conditions_TEST_list = new ArrayList<>(); + + chemin_visible_loose_2_conditions_TEST_list.add( + new ConditionObjet( + objet_tentative, + "==", + 0 + ) + ); + chemin_visible_loose_2_conditions_ET_list.add( + new ConditionEt(chemin_visible_loose_2_conditions_TEST_list) + ); + + Condition chemin_visible_loose_2_condition = new Condition(chemin_visible_loose_2_conditions_ET_list); + List chemin_obligatoire_loose_2_conditions_ET_list = new ArrayList<>(); + + List chemin_obligatoire_loose_2_conditions_TEST_list = new ArrayList<>(); + + chemin_obligatoire_loose_2_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + chemin_obligatoire_loose_2_conditions_ET_list.add( + new ConditionEt(chemin_obligatoire_loose_2_conditions_TEST_list) + ); + + Condition chemin_obligatoire_loose_2_condition = new Condition(chemin_obligatoire_loose_2_conditions_ET_list); + List chemin_loose_2_descriptions = new ArrayList<>(); + + List chemin_loose_2_description_1_conditions_ET_list = new ArrayList<>(); + + List chemin_loose_2_description_1_conditions_TEST_list = new ArrayList<>(); + + chemin_loose_2_description_1_conditions_TEST_list.add( + new ConditionBoolean(true) + ); + chemin_loose_2_description_1_conditions_ET_list.add( + new ConditionEt(chemin_loose_2_description_1_conditions_TEST_list) + ); + + Condition chemin_loose_2_description_1_condition = new Condition(chemin_loose_2_description_1_conditions_ET_list); + + chemin_loose_2_descriptions.add( + new Description( + "Le chemin de la loose !", + chemin_loose_2_description_1_condition + ) + ); + + List chemin_loose_2_connaissances = new ArrayList<>(); + List chemin_loose_2_objets_recus = new ArrayList<>(); + List chemin_loose_2_objets_conso = new ArrayList<>(); + + Chemin chemins_loose = new Chemin( + "loose", + lieu_Enigme, + lieu_Echec, + chemin_ouvert_loose_2_condition, + chemin_visible_loose_2_condition, + chemin_obligatoire_loose_2_condition, + chemin_loose_2_connaissances, + chemin_loose_2_objets_recus, + chemin_loose_2_objets_conso, + chemin_loose_2_descriptions + ); + + territoire_chemins.add(chemins_loose); + + Territoire jeu_territoire = new Territoire(territoire_lieux, territoire_chemins); + + Jeu ze_GAME = new Jeu( + jeu_territoire, + jeu_objets, + jeu_connaissances, + jeu_personnes, + jeu_transformations + ); + + ze_GAME.jouer(); + +} +} diff --git a/workspace/fr.n7.game.toPrototype/bin/fr/n7/game/toPrototype/main/toPrototype.emtl b/workspace/fr.n7.game.toPrototype/bin/fr/n7/game/toPrototype/main/toPrototype.emtl index 4093a05..b2d9e8f 100644 --- a/workspace/fr.n7.game.toPrototype/bin/fr/n7/game/toPrototype/main/toPrototype.emtl +++ b/workspace/fr.n7.game.toPrototype/bin/fr/n7/game/toPrototype/main/toPrototype.emtl @@ -151,7 +151,7 @@ - + @@ -831,7 +831,7 @@ - + @@ -1607,7 +1607,7 @@ - + @@ -1624,24 +1624,25 @@ - + + + + + + - - - - - + - + @@ -1651,7 +1652,7 @@ - + @@ -1663,7 +1664,7 @@ - + @@ -1676,7 +1677,7 @@ - + @@ -1684,18 +1685,19 @@ - + - + - + + @@ -1706,7 +1708,7 @@ - + @@ -1718,7 +1720,7 @@ - + @@ -1732,7 +1734,7 @@ - + @@ -1740,7 +1742,7 @@ - + @@ -1748,7 +1750,7 @@ - + @@ -1758,7 +1760,7 @@ - + @@ -1770,7 +1772,7 @@ - + @@ -1780,19 +1782,7 @@ - - - - - - - - - - - - - + @@ -1803,6 +1793,15 @@ + + + + + + + + + @@ -1821,7 +1820,7 @@ - + @@ -1865,7 +1864,7 @@ - + @@ -1889,7 +1888,7 @@ - + @@ -1904,7 +1903,7 @@ - + @@ -1939,7 +1938,7 @@ - + @@ -1969,7 +1968,7 @@ - + @@ -1992,13 +1991,13 @@ - + - + @@ -2010,7 +2009,7 @@ - + @@ -2020,7 +2019,7 @@ - + @@ -2047,44 +2046,67 @@ - + - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - + + + + + + + - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -2094,7 +2116,7 @@ - + @@ -2125,7 +2147,7 @@ - + @@ -2133,7 +2155,7 @@ - + @@ -2141,7 +2163,7 @@ - + @@ -2149,15 +2171,7 @@ - - - - - - - - - + @@ -2165,10 +2179,18 @@ - + - + + + + + + + + + @@ -2180,13 +2202,13 @@ - + - + @@ -2215,7 +2237,7 @@ - + @@ -2244,7 +2266,7 @@ - + @@ -2256,7 +2278,7 @@ - + @@ -2266,7 +2288,7 @@ - + @@ -2293,7 +2315,7 @@ - + @@ -2303,7 +2325,7 @@ - + @@ -2330,7 +2352,7 @@ - + @@ -2340,7 +2362,7 @@ - + @@ -2366,12 +2388,12 @@ - + - + @@ -2379,7 +2401,7 @@ - + @@ -2387,7 +2409,7 @@ - + @@ -2395,7 +2417,7 @@ - + @@ -2403,7 +2425,7 @@ - + @@ -2423,13 +2445,6 @@ - - - - - - - @@ -3168,7 +3183,7 @@ - + @@ -3223,21 +3238,18 @@ - - - - - - - - - + + + + + + @@ -3347,7 +3359,7 @@ - + @@ -3577,12 +3589,12 @@
-
+
-
+
@@ -3847,2682 +3859,2682 @@
-
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
+
+ +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ -
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
+
+ +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ -
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
+
+ +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ -
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
+
+ +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ -
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -6541,433 +6553,433 @@
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
+
+
- -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
+ +
+
- -
-
-
+ +
+
+
- -
-
+ +
+
- -
-
-
+ +
+
+
- -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
+ +
+
- -
-
+ +
+
- -
-
+ +
+
- -
-
-
+ +
+
+
- -
-
+ +
+
- -
-
-
- - -
-
-
- - -
-
+ +
+
- -
-
+ +
+
+
+ + +
+
- -
-
+ +
+
- -
-
-
+ +
+
+
- -
-
-
+ +
+
+
- -
-
+ +
+
- -
-
+ +
+
- -
-
+ +
+
- -
-
+ +
+
- -
-
+ +
+
- -
-
+ +
+
- -
-
+ +
+
+
+ + +
+
+
+ + +
+
- -
+ +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
- -
-
-
- - -
-
+ +
+
- -
-
-
- - -
-
+ +
+
- + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ +
-
-
- - -
-
-
- - -
-
+
- -
-
+ +
+
+ +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ -
-
-
+
+
+
- -
-
+ +
+
- -
-
+ +
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
@@ -6976,153 +6988,153 @@
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
@@ -7131,1114 +7143,1154 @@
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
- -
-
-
+ +
+
+
- -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - +
-
+
+
+ + +
+
- -
+ +
-
+
- +
-
+
- -
-
+ +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
- -
-
+ +
+
- -
-
-
- - -
-
-
- - -
-
+ +
+
- -
-
-
- - -
-
-
- - -
-
+ +
+
- + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ +
- -
-
-
+ +
+
+
- -
-
-
+ +
+
+
- -
-
+ +
+
- -
-
-
+ +
+
+
- -
-
-
+ +
+
+
- -
-
-
+ +
+
+
- -
-
+ +
+
- -
-
+ +
+
- -
-
+ +
+
- -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
+ +
- -
-
+ +
+
- -
+ +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
-
+
- -
-
-
- - -
-
+ +
+
- -
-
+ +
+
- -
-
-
- - -
-
+ +
+
- -
-
-
- - -
-
+ +
+
- -
-
-
- - -
-
-
- - -
-
-
- - -
-
+ +
+
- -
-
-
- - -
-
+ +
+
- -
-
-
- - -
-
+ +
+
- -
-
+ +
+
- -
-
-
+ +
+
+
- -
+ +
+
+
+ + +
-
+
- -
+ +
+
+
+ + +
- -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
-
- - -
-
+ +
+
- -
-
-
- - -
-
-
- - -
-
-
- - -
-
+ +
+
- -
-
-
- - -
-
-
- - -
-
-
- - -
-
+ +
+
- + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ +
- -
-
-
+ +
+
+
- -
-
-
+ +
+
+
- -
-
+ +
+
- -
-
-
+ +
+
+
- -
-
-
+ +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
diff --git a/workspace/fr.n7.game.toPrototype/bin/fr/n7/game/toPrototype/main/toPrototype.mtl b/workspace/fr.n7.game.toPrototype/bin/fr/n7/game/toPrototype/main/toPrototype.mtl index 4f735ad..db9e23c 100644 --- a/workspace/fr.n7.game.toPrototype/bin/fr/n7/game/toPrototype/main/toPrototype.mtl +++ b/workspace/fr.n7.game.toPrototype/bin/fr/n7/game/toPrototype/main/toPrototype.mtl @@ -31,7 +31,7 @@ List jeu_objets = new ArrayList<>(); [comment Connaissances /] // "Connaissances" -List jeu_connaissances = new ArrayList<>(); +List jeu_connaissances = new ArrayList<>(); [for (c : Connaissance | jeu.connaissances)] [print_descriptions(c.descriptions, 'connaissance_' + c.nom.nom)/] @@ -120,7 +120,7 @@ List territoire_lieux = new ArrayList<>(); List lieu_[l.nom.nom/]_[i/]_personnes = new ArrayList<>(); [for (p : Nom | l.personnes)] - lieu_[l.nom.nom/]_[i/]_personnes.add(objet_[p.nom/]); + lieu_[l.nom.nom/]_[i/]_personnes.add(personne_[p.nom/]); [/for] List lieu_[l.nom.nom/]_[i/]_objets = new ArrayList<>(); [for (o : Nom | l.objets)] @@ -186,17 +186,31 @@ List territoire_chemins = new ArrayList<>(); territoire_chemins.add(chemins_[ch.nom.nom/]); [/for] + Territoire jeu_territoire = new Territoire(territoire_lieux, territoire_chemins); + + Jeu ze_GAME = new Jeu( + jeu_territoire, + jeu_objets, + jeu_connaissances, + jeu_personnes, + jeu_transformations + ); + + ze_GAME.jouer(); + } } [/file] [/template] [template public print_condition(c : Condition, name: String) post (trim()) ] -List [name/]_conditions_ET = new ArrayList<>(); +List [name/]_conditions_ET_list = new ArrayList<>(); [for (cET : ConditionEt | c.condition)] +List [name/]_conditions_TEST_list = new ArrayList<>(); + [for (cTEST : ConditionTest | cET.conditionTest)] - [name/]_conditions_ET_[i/].add( + [name/]_conditions_TEST_list.add( [if (cTEST.oclIsKindOf(ConditionBoolean))] [let cBOOL : ConditionBoolean = cTEST.oclAsType(ConditionBoolean)] new ConditionBoolean([cBOOL.valeur/]) @@ -205,7 +219,7 @@ List [name/]_conditions_ET = new ArrayList<>(); [let cCONN : ConditionConnaissance = cTEST.oclAsType(ConditionConnaissance)] new ConditionConnaissance( connaissance_[cCONN.connaissance/], - [if (cCONN.connaissance.startsWith('!'))]true[else]false[/if] + [if (cCONN.negation = '!')]true[else]false[/if] ) [/let] [elseif (cTEST.oclIsKindOf(ConditionObjet))] @@ -218,12 +232,13 @@ List [name/]_conditions_ET = new ArrayList<>(); [/let] [/if] ); - [name/]_conditions_ET.add([name/]_conditions_TEST_[i/]); - [/for] + [name/]_conditions_ET_list.add( + new ConditionEt([name/]_conditions_TEST_list) + ); [/for] -Condition [name/]_condition = new Condition([name/]_conditions_ET); +Condition [name/]_condition = new Condition([name/]_conditions_ET_list); [/template] [template public print_descriptions(ds : OrderedSet(Description), name: String) post (trim()) ] @@ -247,16 +262,18 @@ List [name/]_actions = new ArrayList<>(); [for (a : Action | as)] [print_condition(a.visible, name + '_action_visible_' + i.toString())/] [print_condition(a.finInteraction, name + '_action_fin_' + i.toString())/] - [print_descriptions(a.descriptions, name + '_' + i.toString())/] + [print_descriptions(a.descriptions, name + '_action_' + i.toString())/] List [name/]_action_[i/]_connaissances = new ArrayList<>(); [for (c : Nom | a.connaissances)] [name/]_action_[i/]_connaissances.add(connaissance_[c.nom/]); [/for] List [name/]_action_[i/]_objets_conso = new ArrayList<>(); - [for (c : Nom | a.objetsConso)] - [name/]_action_[i/]_objets_conso.add(objet_[c.nom/]); - [/for] + [let test : String = name + '_action_' + i + '_objets_conso'] // TODO: OMG C DÉGUEULASSE -> LE FAIRE PARTOUT + [for (c : Nom | a.objetsConso)] + [test/].add(objet_[c.nom/]); + [/for] + [/let] List [name/]_action_[i/]_objets_recus = new ArrayList<>(); [for (c : Nom | a.objetsRecus)] [name/]_action_[i/]_objets_recus.add(objet_[c.nom/]); @@ -267,16 +284,16 @@ List [name/]_actions = new ArrayList<>(); [name/]_action_visible_[i/]_condition, [name/]_action_fin_[i/]_condition, [name/]_action_[i/]_connaissances, - [name/]_action_[i/]_objets_conso, [name/]_action_[i/]_objets_recus, + [name/]_action_[i/]_objets_conso, [name/]_action_[i/]_descriptions ) - ); + ); [/for] [/template] [template public print_interactions(is: OrderedSet(Interaction), name: String)] -List [name/]_interactions = new ArrayList<>(); +List [name/]_interactions = new ArrayList<>(); [for (it : Interaction | is)] [print_condition(it.visible, name + '_interaction_visible_' + i.toString())/] @@ -295,8 +312,8 @@ List [name/]_interactions = new ArrayList<>(); [name/]_interaction_[i/]_objets_recus.add(objet_[c.nom/]); [/for] - [name/]_actions.add( - new Action( + [name/]_interactions.add( + new Interaction( [name/]_interaction_visible_[i/]_condition, [name/]_interaction_[i/]_connaissances, [name/]_interaction_[i/]_objets_conso, diff --git a/workspace/fr.n7.game.toPrototype/src/fr/n7/game/toPrototype/main/toPrototype.mtl b/workspace/fr.n7.game.toPrototype/src/fr/n7/game/toPrototype/main/toPrototype.mtl index 4f735ad..db9e23c 100644 --- a/workspace/fr.n7.game.toPrototype/src/fr/n7/game/toPrototype/main/toPrototype.mtl +++ b/workspace/fr.n7.game.toPrototype/src/fr/n7/game/toPrototype/main/toPrototype.mtl @@ -31,7 +31,7 @@ List jeu_objets = new ArrayList<>(); [comment Connaissances /] // "Connaissances" -List jeu_connaissances = new ArrayList<>(); +List jeu_connaissances = new ArrayList<>(); [for (c : Connaissance | jeu.connaissances)] [print_descriptions(c.descriptions, 'connaissance_' + c.nom.nom)/] @@ -120,7 +120,7 @@ List territoire_lieux = new ArrayList<>(); List lieu_[l.nom.nom/]_[i/]_personnes = new ArrayList<>(); [for (p : Nom | l.personnes)] - lieu_[l.nom.nom/]_[i/]_personnes.add(objet_[p.nom/]); + lieu_[l.nom.nom/]_[i/]_personnes.add(personne_[p.nom/]); [/for] List lieu_[l.nom.nom/]_[i/]_objets = new ArrayList<>(); [for (o : Nom | l.objets)] @@ -186,17 +186,31 @@ List territoire_chemins = new ArrayList<>(); territoire_chemins.add(chemins_[ch.nom.nom/]); [/for] + Territoire jeu_territoire = new Territoire(territoire_lieux, territoire_chemins); + + Jeu ze_GAME = new Jeu( + jeu_territoire, + jeu_objets, + jeu_connaissances, + jeu_personnes, + jeu_transformations + ); + + ze_GAME.jouer(); + } } [/file] [/template] [template public print_condition(c : Condition, name: String) post (trim()) ] -List [name/]_conditions_ET = new ArrayList<>(); +List [name/]_conditions_ET_list = new ArrayList<>(); [for (cET : ConditionEt | c.condition)] +List [name/]_conditions_TEST_list = new ArrayList<>(); + [for (cTEST : ConditionTest | cET.conditionTest)] - [name/]_conditions_ET_[i/].add( + [name/]_conditions_TEST_list.add( [if (cTEST.oclIsKindOf(ConditionBoolean))] [let cBOOL : ConditionBoolean = cTEST.oclAsType(ConditionBoolean)] new ConditionBoolean([cBOOL.valeur/]) @@ -205,7 +219,7 @@ List [name/]_conditions_ET = new ArrayList<>(); [let cCONN : ConditionConnaissance = cTEST.oclAsType(ConditionConnaissance)] new ConditionConnaissance( connaissance_[cCONN.connaissance/], - [if (cCONN.connaissance.startsWith('!'))]true[else]false[/if] + [if (cCONN.negation = '!')]true[else]false[/if] ) [/let] [elseif (cTEST.oclIsKindOf(ConditionObjet))] @@ -218,12 +232,13 @@ List [name/]_conditions_ET = new ArrayList<>(); [/let] [/if] ); - [name/]_conditions_ET.add([name/]_conditions_TEST_[i/]); - [/for] + [name/]_conditions_ET_list.add( + new ConditionEt([name/]_conditions_TEST_list) + ); [/for] -Condition [name/]_condition = new Condition([name/]_conditions_ET); +Condition [name/]_condition = new Condition([name/]_conditions_ET_list); [/template] [template public print_descriptions(ds : OrderedSet(Description), name: String) post (trim()) ] @@ -247,16 +262,18 @@ List [name/]_actions = new ArrayList<>(); [for (a : Action | as)] [print_condition(a.visible, name + '_action_visible_' + i.toString())/] [print_condition(a.finInteraction, name + '_action_fin_' + i.toString())/] - [print_descriptions(a.descriptions, name + '_' + i.toString())/] + [print_descriptions(a.descriptions, name + '_action_' + i.toString())/] List [name/]_action_[i/]_connaissances = new ArrayList<>(); [for (c : Nom | a.connaissances)] [name/]_action_[i/]_connaissances.add(connaissance_[c.nom/]); [/for] List [name/]_action_[i/]_objets_conso = new ArrayList<>(); - [for (c : Nom | a.objetsConso)] - [name/]_action_[i/]_objets_conso.add(objet_[c.nom/]); - [/for] + [let test : String = name + '_action_' + i + '_objets_conso'] // TODO: OMG C DÉGUEULASSE -> LE FAIRE PARTOUT + [for (c : Nom | a.objetsConso)] + [test/].add(objet_[c.nom/]); + [/for] + [/let] List [name/]_action_[i/]_objets_recus = new ArrayList<>(); [for (c : Nom | a.objetsRecus)] [name/]_action_[i/]_objets_recus.add(objet_[c.nom/]); @@ -267,16 +284,16 @@ List [name/]_actions = new ArrayList<>(); [name/]_action_visible_[i/]_condition, [name/]_action_fin_[i/]_condition, [name/]_action_[i/]_connaissances, - [name/]_action_[i/]_objets_conso, [name/]_action_[i/]_objets_recus, + [name/]_action_[i/]_objets_conso, [name/]_action_[i/]_descriptions ) - ); + ); [/for] [/template] [template public print_interactions(is: OrderedSet(Interaction), name: String)] -List [name/]_interactions = new ArrayList<>(); +List [name/]_interactions = new ArrayList<>(); [for (it : Interaction | is)] [print_condition(it.visible, name + '_interaction_visible_' + i.toString())/] @@ -295,8 +312,8 @@ List [name/]_interactions = new ArrayList<>(); [name/]_interaction_[i/]_objets_recus.add(objet_[c.nom/]); [/for] - [name/]_actions.add( - new Action( + [name/]_interactions.add( + new Interaction( [name/]_interaction_visible_[i/]_condition, [name/]_interaction_[i/]_connaissances, [name/]_interaction_[i/]_objets_conso, diff --git a/workspace/fr.n7.game.xtext.tests/xtend-gen/fr/n7/game/xtext/tests/.GameParsingTest.xtendbin b/workspace/fr.n7.game.xtext.tests/xtend-gen/fr/n7/game/xtext/tests/.GameParsingTest.xtendbin index 047e792..df57e17 100644 Binary files a/workspace/fr.n7.game.xtext.tests/xtend-gen/fr/n7/game/xtext/tests/.GameParsingTest.xtendbin and b/workspace/fr.n7.game.xtext.tests/xtend-gen/fr/n7/game/xtext/tests/.GameParsingTest.xtendbin differ diff --git a/workspace/fr.n7.game.xtext/xtend-gen/fr/n7/game/xtext/generator/.GameGenerator.xtendbin b/workspace/fr.n7.game.xtext/xtend-gen/fr/n7/game/xtext/generator/.GameGenerator.xtendbin index e63c5c0..5f28e94 100644 Binary files a/workspace/fr.n7.game.xtext/xtend-gen/fr/n7/game/xtext/generator/.GameGenerator.xtendbin and b/workspace/fr.n7.game.xtext/xtend-gen/fr/n7/game/xtext/generator/.GameGenerator.xtendbin differ