summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTor Andersson <tor@ccxvii.net>2023-05-07 21:36:14 +0200
committerTor Andersson <tor@ccxvii.net>2023-05-24 21:06:18 +0200
commit60009fa990d36e0c551613c3399a7d54043886b7 (patch)
tree81d11f24945f5d8ecb952cd1b5bf5cdb0272ebba
parentb4401cc81a4264b21a10f849438174d383ebade7 (diff)
downloadred-flag-over-paris-60009fa990d36e0c551613c3399a7d54043886b7.tar.gz
Prompts.
-rw-r--r--events.txt32
-rw-r--r--rules.js39
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 ],