From 60009fa990d36e0c551613c3399a7d54043886b7 Mon Sep 17 00:00:00 2001 From: Tor Andersson Date: Sun, 7 May 2023 21:36:14 +0200 Subject: Prompts. --- events.txt | 32 ++++++++++++++++++++++++++++++++ rules.js | 39 ++++++++++++++++++++++++++++++++++----- 2 files changed, 66 insertions(+), 5 deletions(-) diff --git a/events.txt b/events.txt index 279339c..7215377 100644 --- a/events.txt +++ b/events.txt @@ -3,6 +3,7 @@ # Versailles Cards CARD 1 - Jules Ducatel + # TODO if (game.round === 4) goto "reveal_commune_hand" else @@ -12,17 +13,21 @@ CARD 1 - Jules Ducatel CARD 2 - The Murder of Vincenzini increase_revolutionary_momentum + prompt "Remove up to 3 from Political." remove_up_to 3 POLITICAL CARD 3 - Brassardiers + prompt "Replace 1 in a Military space where you are present." replace 1 (where_present(MILITARY)) CARD 4 - Jules Ferry prompt "Place up to 2 in Republicans or replace 1 in National Assembly." switch ["place","replace"] case "place" + prompt "Place up to 2 in Republicans." place_up_to 2 REPUBLICANS case "replace" + prompt "Replace 1 in National Assembly." replace 1 NATIONAL_ASSEMBLY endswitch @@ -30,33 +35,41 @@ CARD 5 - Le Figaro prompt "Place up to 2 in Press or replace 1 in Public Opinion." switch ["place","replace"] case "place" + prompt "Place up to 2 in Press." place_up_to 2 PRESS case "replace" + prompt "Replace 1 in Public Opinion." replace 1 PUBLIC_OPINION endswitch CARD 6 - Général Louis Valentin # remove_different_up_to 2 (where_present(PARIS)) + # TODO goto "general_louis_valentin" CARD 7 - Général Espivent + prompt "Remove up to 2 from Social Movements." remove_up_to 2 SOCIAL_MOVEMENTS CARD 8 - Les Amis de l'Ordre # must place 2 in paris spaces + prompt "Place 2 in Paris." place 2 PARIS CARD 9 - Socialist Newspaper Ban increase_revolutionary_momentum + prompt "Remove up to 2 from Press." remove_up_to 2 PRESS # forbid Le Reveil from being played asm game.snb=1 CARD 10 - Fortification of Mont-Valérien + prompt "Place up to 1 in Mont-Valérien." place_up_to 1 MONT_VALERIEN # reassess control after placing the cube asm update_presence_and_control() if (is_control(MONT_VALERIEN)) + prompt "You may place a Fortification in Mont-Valérien." may_place_disc MONT_VALERIEN endif @@ -66,6 +79,8 @@ CARD 11 - Adolphe Thiers CARD 12 - Otto von Bismarck # must remove own cube from National Assembly + # TODO + prompt "Remove 1 blue cube from National Assembly." remove_own NATIONAL_ASSEMBLY increase_prussian_collaboration ops 2 MILITARY @@ -99,26 +114,33 @@ CARD 17 - Maréchal Macmahon # Commune Cards CARD 18 - Paule Minck + prompt "Replace 1 in a Military space where you are present." replace 1 (where_present(MILITARY)) CARD 19 - Walery Wroblewski + prompt "Place one Barricade in a Paris space where you are present." place_disc (where_present(PARIS)) CARD 20 - Banque de France decrease_revolutionary_momentum + prompt "Place up to 1 in Paris." place_up_to 1 PARIS + prompt "You may place a Barricade in Paris." may_place_disc PARIS CARD 21 - Le Réveil # must not have played Socialist Newspaper Ban increase_revolutionary_momentum + prompt "Place up to 1 in Press." place_up_to 1 PRESS CARD 22 - Execution of Generals increase_prussian_collaboration + prompt "Replace up to 2 in a Paris space where you are present." replace_up_to 2 (where_present(PARIS)) CARD 23 - Les Cantinières + prompt "Place up to 2 in a Military space where you are present (may use removed)." place_removed_up_to 2 (where_present(MILITARY)) CARD 24 - Eugène Protot @@ -147,9 +169,11 @@ CARD 28 - Jaroslav Dombrowski CARD 29 - Raoul Rigault increase_revolutionary_momentum + prompt "Move up to 2 from Catholic Church to Paris." move_up_to 2 CATHOLIC_CHURCH PARIS CARD 30 - Karl Marx + # TODO goto "karl_marx" CARD 31 - Blanquists @@ -178,15 +202,19 @@ CARD 35 - Conciliation prompt "Move up to 2 from Public Opinion or Paris to the other." switch ["public_opinion","paris"] case "public_opinion" + prompt "Move up to 2 from Public Opinion to Paris." move_up_to 2 PUBLIC_OPINION PARIS case "paris" + prompt "Move up to 2 from Paris to Public Opinion." move_up_to 2 PARIS PUBLIC_OPINION endswitch CARD 36 - Georges Clemenceau + prompt "Move up to 3 from Paris to Institutional." move_up_to 3 PARIS INSTITUTIONAL CARD 37 - Archbishop Georges Darboy + prompt "Move up to 4 from any spaces to Catholic Church." move_up_to 4 ANY CATHOLIC_CHURCH CARD 38 - Victor Hugo @@ -220,8 +248,10 @@ CARD 41 - Freemason Parade prompt "Place up to 2 or replace 1 in Institutional." switch ["place","replace"] case "place" + prompt "Place up to 2 in Institutional." place_up_to 2 INSTITUTIONAL case "replace" + prompt "Replace 1 in Institutional." replace 1 INSTITUTIONAL endswitch @@ -243,6 +273,7 @@ CARD 42 - Paris Cannons CARD 43 - Aux Barricades! ops 2 PARIS player COMMUNE + prompt "You may place a Barricade in Butte-aux-Cailles." may_place_disc BUTTE_AUX_CAILLES CARD 44 - Commune's Stronghold @@ -251,6 +282,7 @@ CARD 44 - Commune's Stronghold case "ops" ops 2 MILITARY case "remove" + prompt "Remove 1 from any space." remove 1 ANY endswitch diff --git a/rules.js b/rules.js index e73ff63..21387a1 100644 --- a/rules.js +++ b/rules.js @@ -2366,7 +2366,7 @@ function goto_vm_place() { states.vm_place = { prompt() { - event_prompt("Place " + game.vm.count + " cube.") + event_prompt() if (game.vm.upto) view.actions.skip = 1 for (let s of game.vm.spaces) @@ -2428,7 +2428,7 @@ states.vm_move_disc = { states.vm_place_disc = { prompt() { - event_prompt("Place a disc.") + event_prompt() if (game.vm.upto) view.actions.skip = 1 for (let s of game.vm.spaces) @@ -2462,7 +2462,7 @@ function goto_vm_replace() { states.vm_replace = { prompt() { - event_prompt("Replace " + game.vm.count + " cubes.") + event_prompt() if (game.vm.upto) view.actions.skip = 1 for (let s of game.vm.spaces) @@ -2497,7 +2497,7 @@ function goto_vm_remove() { states.vm_remove = { prompt() { - event_prompt("Remove " + game.vm.count + " cubes.") + event_prompt() if (game.vm.upto) view.actions.skip = 1 for (let s of game.vm.spaces) @@ -2558,7 +2558,7 @@ function goto_vm_move() { states.vm_move = { prompt() { - event_prompt("Move up to " + game.vm.count + " cubes.") + event_prompt() view.actions.skip = 1 if (game.who < 0) { for (let s of game.vm.a) @@ -2971,11 +2971,13 @@ CODE[1] = [ // Jules Ducatel CODE[2] = [ // The Murder of Vincenzini [ vm_increase_revolutionary_momentum ], + [ vm_prompt, "Remove up to 3 from Political." ], [ vm_remove_up_to, 3, POLITICAL ], [ vm_return ], ] CODE[3] = [ // Brassardiers + [ vm_prompt, "Replace 1 in a Military space where you are present." ], [ vm_replace, 1, ()=>(where_present(MILITARY)) ], [ vm_return ], ] @@ -2984,8 +2986,10 @@ CODE[4] = [ // Jules Ferry [ vm_prompt, "Place up to 2 in Republicans or replace 1 in National Assembly." ], [ vm_switch, ["place","replace"] ], [ vm_case, "place" ], + [ vm_prompt, "Place up to 2 in Republicans." ], [ vm_place_up_to, 2, REPUBLICANS ], [ vm_case, "replace" ], + [ vm_prompt, "Replace 1 in National Assembly." ], [ vm_replace, 1, NATIONAL_ASSEMBLY ], [ vm_endswitch ], [ vm_return ], @@ -2995,8 +2999,10 @@ CODE[5] = [ // Le Figaro [ vm_prompt, "Place up to 2 in Press or replace 1 in Public Opinion." ], [ vm_switch, ["place","replace"] ], [ vm_case, "place" ], + [ vm_prompt, "Place up to 2 in Press." ], [ vm_place_up_to, 2, PRESS ], [ vm_case, "replace" ], + [ vm_prompt, "Replace 1 in Public Opinion." ], [ vm_replace, 1, PUBLIC_OPINION ], [ vm_endswitch ], [ vm_return ], @@ -3008,25 +3014,31 @@ CODE[6] = [ // Général Louis Valentin ] CODE[7] = [ // Général Espivent + [ vm_prompt, "Remove up to 2 from Social Movements." ], [ vm_remove_up_to, 2, SOCIAL_MOVEMENTS ], [ vm_return ], ] CODE[8] = [ // Les Amis de l'Ordre + [ vm_prompt, "Place 2 in Paris." ], [ vm_place, 2, PARIS ], [ vm_return ], ] CODE[9] = [ // Socialist Newspaper Ban [ vm_increase_revolutionary_momentum ], + [ vm_prompt, "Remove up to 2 from Press." ], [ vm_remove_up_to, 2, PRESS ], [ vm_asm, ()=>game.snb=1 ], [ vm_return ], ] CODE[10] = [ // Fortification of Mont-Valérien + [ vm_prompt, "Place up to 1 in Mont-Valérien." ], [ vm_place_up_to, 1, MONT_VALERIEN ], + [ vm_asm, ()=>update_presence_and_control() ], [ vm_if, ()=>(is_control(MONT_VALERIEN)) ], + [ vm_prompt, "You may place a Fortification in Mont-Valérien." ], [ vm_may_place_disc, MONT_VALERIEN ], [ vm_endif ], [ vm_return ], @@ -3039,6 +3051,7 @@ CODE[11] = [ // Adolphe Thiers ] CODE[12] = [ // Otto von Bismarck + [ vm_prompt, "Remove 1 blue cube from National Assembly." ], [ vm_remove_own, NATIONAL_ASSEMBLY ], [ vm_increase_prussian_collaboration ], [ vm_ops, 2, MILITARY ], @@ -3082,35 +3095,42 @@ CODE[17] = [ // Maréchal Macmahon ] CODE[18] = [ // Paule Minck + [ vm_prompt, "Replace 1 in a Military space where you are present." ], [ vm_replace, 1, ()=>(where_present(MILITARY)) ], [ vm_return ], ] CODE[19] = [ // Walery Wroblewski + [ vm_prompt, "Place one Barricade in a Paris space where you are present." ], [ vm_place_disc, ()=>(where_present(PARIS)) ], [ vm_return ], ] CODE[20] = [ // Banque de France [ vm_decrease_revolutionary_momentum ], + [ vm_prompt, "Place up to 1 in Paris." ], [ vm_place_up_to, 1, PARIS ], + [ vm_prompt, "You may place a Barricade in Paris." ], [ vm_may_place_disc, PARIS ], [ vm_return ], ] CODE[21] = [ // Le Réveil [ vm_increase_revolutionary_momentum ], + [ vm_prompt, "Place up to 1 in Press." ], [ vm_place_up_to, 1, PRESS ], [ vm_return ], ] CODE[22] = [ // Execution of Generals [ vm_increase_prussian_collaboration ], + [ vm_prompt, "Replace up to 2 in a Paris space where you are present." ], [ vm_replace_up_to, 2, ()=>(where_present(PARIS)) ], [ vm_return ], ] CODE[23] = [ // Les Cantinières + [ vm_prompt, "Place up to 2 in a Military space where you are present (may use removed)." ], [ vm_place_removed_up_to, 2, ()=>(where_present(MILITARY)) ], [ vm_return ], ] @@ -3151,6 +3171,7 @@ CODE[28] = [ // Jaroslav Dombrowski CODE[29] = [ // Raoul Rigault [ vm_increase_revolutionary_momentum ], + [ vm_prompt, "Move up to 2 from Catholic Church to Paris." ], [ vm_move_up_to, 2, CATHOLIC_CHURCH, PARIS ], [ vm_return ], ] @@ -3192,19 +3213,23 @@ CODE[35] = [ // Conciliation [ vm_prompt, "Move up to 2 from Public Opinion or Paris to the other." ], [ vm_switch, ["public_opinion","paris"] ], [ vm_case, "public_opinion" ], + [ vm_prompt, "Move up to 2 from Public Opinion to Paris." ], [ vm_move_up_to, 2, PUBLIC_OPINION, PARIS ], [ vm_case, "paris" ], + [ vm_prompt, "Move up to 2 from Paris to Public Opinion." ], [ vm_move_up_to, 2, PARIS, PUBLIC_OPINION ], [ vm_endswitch ], [ vm_return ], ] CODE[36] = [ // Georges Clemenceau + [ vm_prompt, "Move up to 3 from Paris to Institutional." ], [ vm_move_up_to, 3, PARIS, INSTITUTIONAL ], [ vm_return ], ] CODE[37] = [ // Archbishop Georges Darboy + [ vm_prompt, "Move up to 4 from any spaces to Catholic Church." ], [ vm_move_up_to, 4, ANY, CATHOLIC_CHURCH ], [ vm_return ], ] @@ -3241,8 +3266,10 @@ CODE[41] = [ // Freemason Parade [ vm_prompt, "Place up to 2 or replace 1 in Institutional." ], [ vm_switch, ["place","replace"] ], [ vm_case, "place" ], + [ vm_prompt, "Place up to 2 in Institutional." ], [ vm_place_up_to, 2, INSTITUTIONAL ], [ vm_case, "replace" ], + [ vm_prompt, "Replace 1 in Institutional." ], [ vm_replace, 1, INSTITUTIONAL ], [ vm_endswitch ], [ vm_return ], @@ -3266,6 +3293,7 @@ CODE[42] = [ // Paris Cannons CODE[43] = [ // Aux Barricades! [ vm_ops, 2, PARIS ], [ vm_player, COMMUNE ], + [ vm_prompt, "You may place a Barricade in Butte-aux-Cailles." ], [ vm_may_place_disc, BUTTE_AUX_CAILLES ], [ vm_return ], ] @@ -3276,6 +3304,7 @@ CODE[44] = [ // Commune's Stronghold [ vm_case, "ops" ], [ vm_ops, 2, MILITARY ], [ vm_case, "remove" ], + [ vm_prompt, "Remove 1 from any space." ], [ vm_remove, 1, ANY ], [ vm_endswitch ], [ vm_return ], -- cgit v1.2.3