summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--images/icon_com.pngbin0 -> 451 bytes
-rw-r--r--images/icon_com.svg4
-rw-r--r--images/icon_dem.pngbin0 -> 929 bytes
-rw-r--r--images/icon_dem.svg20
-rw-r--r--play.css85
-rw-r--r--play.js20
-rw-r--r--rules.js143
7 files changed, 155 insertions, 117 deletions
diff --git a/images/icon_com.png b/images/icon_com.png
new file mode 100644
index 0000000..047a943
--- /dev/null
+++ b/images/icon_com.png
Binary files differ
diff --git a/images/icon_com.svg b/images/icon_com.svg
new file mode 100644
index 0000000..709c306
--- /dev/null
+++ b/images/icon_com.svg
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="43" height="43">
+<path fill="#ffd400" d="M12.081 20.407 8.935 17.39l7.163-7.162 5.171.955-4.058 4.138s19.046 18.007 19.841 18.882.053 1.808-.346 2.285-1.441 1.09-2.245.295c-.857-.845-19.064-19.603-19.064-19.603Z" />
+<path fill="#ffd400" d="M12.073 27.125s7.686 4.087 12.201 3.6c4.515-.488 8.785-2.624 8.602-10.86S21.223 4.339 21.223 4.339s15.803 3.996 16.168 16.532c.305 10.471-6.04 14.399-12.445 14.094-6.407-.304-12.325-5.644-12.325-5.644l-.487.427.017.035s.481 1.006.085 1.463c-.754.869-1.453-.051-1.844.354-.392.404-1.18 3.02-2.377 4.197-1.198 1.176-2.273 1.645-3.078 1.241l-.319-.253c-.5-.75-.166-1.875.854-3.208 1.02-1.332 3.519-2.437 3.873-2.874s-.646-1.021.125-1.874c.405-.448 1.463-.095 1.463-.095z" />
+</svg>
diff --git a/images/icon_dem.png b/images/icon_dem.png
new file mode 100644
index 0000000..01fdd51
--- /dev/null
+++ b/images/icon_dem.png
Binary files differ
diff --git a/images/icon_dem.svg b/images/icon_dem.svg
new file mode 100644
index 0000000..31654df
--- /dev/null
+++ b/images/icon_dem.svg
@@ -0,0 +1,20 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="43" height="43">
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M9.697 18.176c1.229 1.103 1.812 2.751 2.541 4.266.334.694.803 1.32 1.06 2.002-1.729.156-1.724 1.983-1.949 3.364-.27 1.663-1.669 2.281-2.181 3.717-.486 1.365.811 3.24 1.334 4.501.667 1.603 1.121 2.721 2.259 3.962a81 81 0 0 0 1.965 2.048c.2.202 16.654.169 16.566-.045-.938-2.285-1.303-5.005-1.824-7.386-.334-1.531-.861-3.291-1.696-4.705-.876-1.485-1.919-2.637-2.523-4.296-1.112-3.058-1.771-6.128-2.198-9.284-.213-1.585-.068-3.161-.385-4.728-.311-1.539-.538-3.028-.768-4.596-.111-.764-.448-1.586-.632-2.332-.189-.773-.185-1.65-.573-2.371-.725-1.348-2.679-1.442-3.481-.135-.836 1.36-.065 3.101.106 4.514.193 1.577.518 3.085.536 4.708.016 1.426-.087 3.044.07 4.446.121 1.063 1.278 4.716-.247 5.263-1.458.521-3.033-4.282-3.841-5.16-1.084-1.181-1.944-2.376-2.922-3.654-.494-.644-1.277-1.122-1.781-1.78-.477-.625-.793-1.307-1.267-1.917-.892-1.145-1.941-2.649-3.579-2.184-2.451.697-.799 2.27-.05 3.47.907 1.452 1.628 3.07 2.429 4.575.892 1.681 1.628 2.477 3.031 3.737z"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M16.8 33.111c.02.722 2.211 3.294 2.94 3.556.714.258 1.634-.251 2.051-.816.57-.776.188-1.182-.048-2.017"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M16.832 27.927c-.851-1.77-1.971-3.413-3.742-3.483"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M13.326 30.189c-.648-.262-1.488-1.775-2.003-2.253"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M10.116 34.26c1.34.676 3.202.848 4.669 1.521.998.459 3.481 2.272 3.962.184"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M20.263 36.73c-.146 1.165 1.205 4.106 2.293 4.525"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M27.521 40.59c1.14-.574 1.276-2.417 1.301-3.498"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M18.824 33.976c.033-.078-.106-.224.046-.154.173.852.373 1.437 1.242 1.398 1.009-.045 1.3-.79 1.03-1.441"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M17.519 34.604c-.274.067-.58.277-.819.412.283.859 1.293 1.405 2.095.811"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M7.109 12.732c.534-.41 1.137-.712 1.639-1.132"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M17.844 7.109c.153.342 2.378-.004 2.963-.048"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M18.975 11.849c.583.483 1.914.346 2.545.038"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M9.454 16.888c.621-.717 1.83-1.275 2.578-2.044"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M11.745 36.693c-.038-.013-.284-.001-.151-.044.53-.293 1.276-.816 1.606-1.231"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M21.469 24.433c.007.982-.367 2.246-.651 3.185"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M26.943 29.84c2.635.032.927 4.769.161 4.633"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M25.526 28.568c-.784.818-3.318.04-4.231-.37-1.434-.643-2.843-.89-4.403-.439-1.265.365-3.183 1.022-3.348 2.58-.174 1.667 1.858 2.454 3.149 2.795 2.466.652 4.956.583 7.401 1.293"/>
+<path fill="#c4e3f5" stroke="#226d9b" stroke-width=".75" d="M18.039 30.677c-.251 1.043-.621 1.581-1.71 1.515-.863-.051-1.968-.637-1.607-1.669.739-2.116 4.617-1.011 2.745 1.349"/>
+</svg>
diff --git a/play.css b/play.css
index e071306..891a4bb 100644
--- a/play.css
+++ b/play.css
@@ -37,39 +37,53 @@ body.Communist header.your_turn { background-color: hsl(355, 70%, 75%); }
#log .h5 { text-decoration: underline; }
#log { background-color: floralwhite }
-#log .h1 { background-color: tan ;}
+#log .h1 { background-color: tan }
#log .h2 { background-color: wheat }
#log .h3 { background-color: wheat }
-#log .h1, .h2:not(.group), .h3 {
- text-transform: uppercase;
+#log .marginalia {
+ display: block;
+ float: right;
+ text-indent: 0;
+ margin: 0;
+ margin-right: 6px;
+ padding: 0;
+}
+
+#log .group .marginalia {
+ margin-right: 0;
+}
+
+#log > div { clear: right }
+
+#log .h1, .h2, .h3 {
+ font-variant-caps: small-caps;
border-top: 1px solid black;
border-bottom: 1px solid black;
- font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
}
-#log .h2:not(.group).dem {
- font-size: 10px;
- background-color: hsl(206, 85%, 80%); border-top: 1px solid hsl(206, 85%, 25%); border-bottom: 1px solid hsl(206, 85%, 25%);}
-#log .h2:not(.group).com {
- font-size: 10px;
- background-color: hsl(355, 70%, 80%);
- border-top: 1px solid hsl(355, 70%, 25%);
+#log .h2.dem {
+ background-color: hsl(206, 85%, 80%);
+ border-top: 1px solid hsl(206, 85%, 25%);
+ border-bottom: 1px solid hsl(206, 85%, 25%);
+}
+#log .h2.com {
+ background-color: hsl(355, 70%, 80%);
+ border-top: 1px solid hsl(355, 70%, 25%);
border-bottom: 1px solid hsl(355, 70%, 25%);
}
#log .group.dem { background-color: hsl(206, 85%, 90%); }
#log .group.com { background-color: hsl(355, 70%, 90%); }
#log .group.both { background-color: gainsboro; }
-#log .h1, #log .h2, #log .h3 { margin: 6px 0; }
-
-#log .group {margin: 0 6px}
+#log .group { margin: 0 6px; }
+#log .header.group.dem { background-color: hsl(206, 85%, 85%); }
+#log .header.group.com { background-color: hsl(355, 70%, 85%); }
#log div { padding-left: 20px; text-indent: -12px; }
#log div.i { padding-left: 32px; text-indent: -12px; }
#log div.ii { padding-left: 44px; text-indent: -12px; }
#log .card_name { font-style: italic; }
-#log div.h2 .card_name { font-style: normal; }
#log .card_name:hover { text-decoration: underline; }
#log .space_tip:hover { cursor: pointer; text-decoration: underline; }
@@ -90,27 +104,24 @@ body.Communist header.your_turn { background-color: hsl(355, 70%, 75%); }
#log .icon {
display: inline-block;
vertical-align: -2px;
- width: 12px;
- height: 12px;
- box-shadow: none;
- border: none;
- background-size: contain;
- background-position: center;
+ background-size: 10px 10px;
background-repeat: no-repeat;
-}
-
-#log .icon.number {
- background-color: white;
+ background-color: white;
border: 1px solid #444;
width: 10px;
height: 10px;
-}
+}
+
+X#log .com_nc { background-image: url(images/icon_com.png) }
+X#log .dem_nc { background-image: url(images/icon_dem.png) }
-#log .com_nc { background-image: url(images/SVd_blank.gif);}
-#log .com_c {background-image: url(images/SV_blank.gif);}
-#log .dem_nc { background-image: url(images/USd_blank.gif);}
-#log .dem_c {background-image: url(images/favicon_dem.svg);}
+#log .com_c { background-image: url(images/icon_com.png) }
+#log .dem_c { background-image: url(images/icon_dem.png) }
+#log .com_c { background-color: hsl(358, 66%, 45%) }
+#log .com_nc { background-color: hsl(358, 66%, 80%) }
+#log .dem_c { background-color: #147fc0 }
+#log .dem_nc { background-color: #c4e2f6 }
/* MAP */
@@ -179,7 +190,7 @@ body.Communist header.your_turn { background-color: hsl(355, 70%, 75%); }
height: 15px;
width: 100px;
}
-
+
.box.d_pres { background: linear-gradient(to right, rgba(0, 0, 255, 0.75) 0%, rgba(0, 0, 255, 0.75) 20%, transparent 20%, transparent 100%); }
.box.c_pres { background: linear-gradient(to right, transparent 0%, transparent 80%,rgba(255, 0, 0, 0.75) 80%, rgba(255, 0, 0, 0.75) 100%); }
@@ -197,7 +208,7 @@ body.Communist header.your_turn { background-color: hsl(355, 70%, 75%); }
.box.c_pres.c_dom { background: linear-gradient(to right, transparent 50%, rgba(255, 0, 0, 0.75) 50%, rgba(255, 0, 0, 0.75) 100%); }
.box.d_pres.c_pres.c_dom { background: linear-gradient(to right, rgba(0, 0, 255, 0.75) 0%, rgba(0, 0, 255, 0.75) 20%, transparent 20%, transparent 50%, rgba(255, 0, 0, 0.75) 50%, rgba(255, 0, 0, 0.75) 100%); }
-
+
.box.c_pres.c_ctrl { background: linear-gradient(to right, transparent 20%, rgba(255, 0, 0, 0.75) 20%, rgba(255, 0, 0, 0.75) 100%); }
.box.d_pres.c_pres.c_ctrl { background: linear-gradient(to right, rgba(0, 0, 255, 0.75) 0%, rgba(0, 0, 255, 0.75) 20%, transparent 20%, rgba(255, 0, 0, 0.75) 20%, rgba(255, 0, 0, 0.75) 100%); }
@@ -540,12 +551,4 @@ body.Communist header.your_turn { background-color: hsl(355, 70%, 75%); }
.card.power_50 { background-image: url(cards75/power_50.avif) }
.card.power_51 { background-image: url(cards75/power_51.avif) }
.card.power_52 { background-image: url(cards75/power_52.avif) }
-/*.card.power_53 { background-image: url(cards75/power_back.avif) }
-.card.power_card.power_53 {
- background-color: transparent;
- width: 188px;
- height: 263px;
- border-radius: 0;
- border: none;
- box-shadow: none;
-} */ \ No newline at end of file
+.card.power_53 { background-image: url(cards75/power_back.avif) }
diff --git a/play.js b/play.js
index 0471007..f15659e 100644
--- a/play.js
+++ b/play.js
@@ -624,7 +624,7 @@ function layout_vp_marker() {
}
function layout_country(id) {
- // TODO: what number to display?
+ // TODO: what number to display?
if (view.revolutions[id])
ui.countries[id].className = "marker demInfl ctl v" + view.times_held[id]
else if (view.times_held[id] > 0)
@@ -848,11 +848,12 @@ function on_update() {
ui.hand.appendChild(ui.cards[c])
ui.power_hand.replaceChildren()
- if (view.is_pwr_struggle)
+ if (view.is_pwr_struggle) {
ui.power_hand.appendChild(ui.power_cards[53])
if (view.power_hand.length > 0)
for (let c of view.power_hand)
ui.power_hand.appendChild(ui.power_cards[c])
+ }
ui.power_discard.replaceChildren()
if (view.power_struggle_discard)
@@ -992,15 +993,14 @@ function sub_icon(match) {
return ICONS[match] || match
}
-function sub_arrow(match) {
- return '<span>&nbsp&#8594&nbsp</span>'
+function sub_arrow(_match) {
+ return " \u2192 "
}
function wrap_icons(match) {
- return `<span class="icon_holder">${match}</span>`;
+ return `<span class="marginalia">${match.replace("(", "").replace(")", "")}</span>`
}
-
const ICONS = {
'£CC': '<span class="icon com_c"></span>',
'£CU': '<span class="icon com_nc"></span>',
@@ -1045,9 +1045,7 @@ function on_log(text, ix) {
p.className = "i"
}
-/*
- text = text.replace(/(\(£[CDU][CU]\s\.to\s£[CDU][CU]\))/g, wrap_icons)
-*/
+ text = text.replace(/(\(£[CDU][CU]\s\.to\s£[CDU][CU]\))/g, wrap_icons)
text = text.replace(/_/g, " ")
text = text.replace(/C(\d+)/g, sub_card_name)
@@ -1122,13 +1120,13 @@ function on_log(text, ix) {
log_event = 0
}
-//Group events
+ // Group events
// Reset group box counters (when log is rewound)
if (ix <= log_event) log_event = 0
if (!scoring_cards.includes(event_n)) {
if (text.match(/^.E:/)) {
- p.classList.add("h2")
+ p.classList.add("header")
log_event = ix
text = text.replace(".E:", "")
}
diff --git a/rules.js b/rules.js
index 064c108..095008b 100644
--- a/rules.js
+++ b/rules.js
@@ -679,7 +679,7 @@ states.play_card = {
view.actions.event = 0
}
}
-
+
// Special check for Reformer Rehabilitated
if (game.played_card === C_REFORMER_REHABILITATED && game.playable_cards.includes(C_REFORMER_REHABILITATED)) {
if (game.active === DEM && (game.dem_tst_position > game.com_tst_position)) {
@@ -1969,7 +1969,6 @@ states.general_strike_roll = {
},
}
-
states.honecker = {
inactive: 'resolve Honecker',
prompt() {
@@ -2204,10 +2203,10 @@ states.stasi_play_ceh = {
return `play ${quoted_card_name[game.played_card]}`
},
prompt() {
- view.prompt = "Play " + quoted_card_name[game.played_card]
- gen_action('influence')
- gen_action('support_check')
- },
+ view.prompt = 'Play ' + quoted_card_name[game.played_card]
+ gen_action('influence')
+ gen_action('support_check')
+ },
influence() {
push_undo()
log_ops_banner()
@@ -2272,7 +2271,7 @@ function add_infl(space, ops) {
game.demInfl[space]++
}
- let end_control = check_control(space)
+ let end_control = check_control(space)
log_summary('£ in %' + space + get_icons(starting_control,end_control))
check_tyrant()
@@ -2777,7 +2776,7 @@ function check_control(space) {
return 'd_ahead'
else if (game.comInfl[space] > game.demInfl[space])
return 'c_ahead'
- else
+ else
return "none"
}
@@ -2814,9 +2813,9 @@ function get_icons(starting_control, end_control) {
return ' (£UU .to £DC)'
else if (starting_control === 'none' && end_control === COM)
return ' (£UU .to £CC)'
- else
+ else
return ''
- }
+ }
else
return ''
}
@@ -3094,7 +3093,7 @@ function score_country(country) {
if (presence.com_battlegrounds > 0) {
logi(`${presence.com_battlegrounds} VP for Battlegrounds`)
com_vp -= presence.com_battlegrounds
- }
+ }
} else {
logi('0 VP')
}
@@ -3105,7 +3104,7 @@ function score_country(country) {
if (presence.dem_battlegrounds > 0) {
logi(`${presence.dem_battlegrounds} VP for Battlegrounds`)
dem_vp += presence.dem_battlegrounds
- }
+ }
} else {
logi('0 VP')
}
@@ -3242,7 +3241,7 @@ function end_stasi_choose_card() {
if (game.stasi_card === C_COMMON_EUROPEAN_HOME) {
game.state = 'stasi_confirm'
} else {
- end_stasi()
+ end_stasi()
}
}
@@ -3265,7 +3264,7 @@ function end_goddess() {
log_h2("Action Round " + game.round)
if (game.active === DEM) {
change_player()
- }
+ }
if (game.persistent_events.includes(C_GENERAL_STRIKE)) {
game.state = 'general_strike'
} else {
@@ -3875,7 +3874,7 @@ function end_round() {
game.round_player = DEM
if (game.active !== DEM) {
change_player()
- }
+ }
if (game.democrat_hand.includes(game.stasi_card)) {
game.state = 'stasi_play_card'
} else {
@@ -4011,7 +4010,7 @@ function new_turn() {
}
if (game.active === DEM)
log('Democrat:')
- else
+ else
log('Communist:')
game.state = 'tst_goddess'
} else {
@@ -4254,7 +4253,7 @@ function check_systematization() {
if (game.systematization > 0) {
game.valid_spaces = game.valid_spaces.filter(n => n !== game.systematization)
}
-}
+}
function this_card() {
return game.vm_event > 0 ? game.vm_event : game.played_card
@@ -4290,34 +4289,42 @@ function log(msg) {
}
function log_ops_banner() {
+ log_br()
if (game.active === DEM)
log('.O.d')
- else
+ else
log('.O.c')
+ log_br()
finish_select_card()
}
function log_event_banner() {
+ log_br()
if (game.active === DEM)
log('.V.d')
- else
+ else
log('.V.c')
+ log_br()
}
function log_struggle_banner(n) {
+ log_br()
if (game.active === DEM)
log('.S.dC' + n)
else
log('.S.cC' + n)
+ log_br()
}
function log_tst_8_banner() {
+ log_br()
if (game.active === DEM)
log('.T.d')
- else
+ else
log('.T.c')
+ log_br()
finish_select_card()
-}
+}
function log_event(n) {
log_br()
@@ -4326,7 +4333,7 @@ function log_event(n) {
else if (cards[n].side === "D")
game.log.push(".E:C" + n + ".D")
else
- game.log.push(".E:C" + n + ".N")
+ game.log.push(".E:C" + n + ".N")
}
function log_br() {
@@ -4344,15 +4351,21 @@ function logii(msg) {
}
function log_h1(msg) {
+ log_br()
log(".h1 " + msg)
+ log_br()
}
function log_h2(msg) {
+ log_br()
log(".h2 " + msg)
+ log_br()
}
function log_h3(msg) {
+ log_br()
log(".h3 " + msg)
+ log_br()
}
function log_h4(msg) {
@@ -4378,7 +4391,7 @@ function log_msg_gap(msg) {
function logi_msg_gap(msg) {
game.log.push(">" + msg)
log_br()
-}
+}
function log_round() {
log_h2(`Action Round ${game.round}`)
@@ -4436,75 +4449,75 @@ function pop_summary_i() {
function pop_summary_i() {
if (game.summary.length > 0) {
// Create a map to group by space and track totals and details
- let grouped_summary = new Map();
- let c63_logged = false;
- let deferred_logs = [];
+ let grouped_summary = new Map()
+ let c63_logged = false
+ let deferred_logs = []
- for (let [n, msg] of game.summary) {
+ for (let [ n, msg ] of game.summary) {
// Special case: Log C63 only once
- if (msg === "(-1 Op due to C63)") {
+ if (msg === '(-1 Op due to C63)') {
if (!c63_logged) {
- logi(msg);
- c63_logged = true;
+ logi(msg)
+ c63_logged = true
}
- continue;
+ continue
}
// Direct log for messages like C50, C123
if (!/^£/.test(msg)) {
if (msg.includes('VP')) {
- deferred_logs.push(msg);
- } else {
- logi(msg);
- }
+ deferred_logs.push(msg)
+ } else {
+ logi(msg)
+ }
}
// Extract the space identifier (e.g., %33) and type (e.g., "in" or "from")
- let space_match = msg.match(/(in|from) (%\d+)/);
- if (!space_match) continue; // Skip if no valid match
+ let space_match = msg.match(/(in|from) (%\d+)/)
+ if (!space_match)
+ continue // Skip if no valid match
- let type = space_match[1];
- let space = space_match[2];
+ let type = space_match[1]
+ let space = space_match[2]
// Extract additional details (e.g., £DC .to £UU)
- let details_match = msg.match(/\((.*?)\)$/);
- let details = details_match ? details_match[1] : "";
+ let details_match = msg.match(/\((.*?)\)$/)
+ let details = details_match ? details_match[1] : ''
// Split the details into "start" and "end" parts
- let [start, end] = details.split(" .to ");
+ let [ start, end ] = details.split(' .to ')
// Group by type and space
- let key = `${type} ${space}`;
+ let key = `${type} ${space}`
if (!grouped_summary.has(key)) {
- grouped_summary.set(key, { total: 0, start: "", end: "" });
+ grouped_summary.set(key, { total: 0, start: '', end: '' })
}
- let entry = grouped_summary.get(key);
- entry.total += n;
+ let entry = grouped_summary.get(key)
+ entry.total += n
// Update the start only if it's not already set
if (start && !entry.start) {
- entry.start = start;
+ entry.start = start
}
// Always update the end with the most recent value
if (end) {
- entry.end = end;
+ entry.end = end
}
}
// Log the grouped results
- for (let [key, { total, start, end }] of grouped_summary) {
- let details = start && end ? ` (${start} .to ${end})` : "";
- logi(`${total} ${key}${details}`);
+ for (let [ key, { total, start, end } ] of grouped_summary) {
+ let details = start && end ? ` (${start} .to ${end})` : ''
+ logi(`${total} ${key}${details}`)
}
for (let msg of deferred_logs) {
- logi(msg);
- }
+ logi(msg)
+ }
}
- game.summary = [];
-}
-
+ game.summary = []
+}
function do_log_summary() {
if (game.summary.length > 0) {
@@ -4702,7 +4715,7 @@ function vm_return() {
delete game.vm_max_infl
delete game.vm_influence_added
delete game.communist_hand_red
- game.vm_event = 0
+ game.vm_event = 0
if (game.persistent_events.includes(C_AUSTRIA_HUNGARY_BORDER_REOPENED)) {
reset_austria_hungary_border_reopened()
}
@@ -4956,7 +4969,7 @@ function vm_take_control(space) {
let end_control = check_control(space)
if (game.state === 'vm_kremlin_coup_take_control')
logi('Took control of %' + space + get_icons(starting_control, end_control) +'.')
- else
+ else
log('Took control of %' + space + get_icons(starting_control, end_control) +'.')
}
@@ -4991,7 +5004,7 @@ function vm_add_infl_free() {
function vm_add_x_infl() {
game.vm_available_ops = vm_operand(1)
- if (!(game.vm_event === C_PUBLIC_AGAINST_VIOLENCE &&
+ if (!(game.vm_event === C_PUBLIC_AGAINST_VIOLENCE &&
event_prompt() === 'Presov'))
log('Placed SP:')
game.state = 'vm_add_x_infl'
@@ -5000,7 +5013,7 @@ function vm_add_x_infl() {
function vm_do_add_x_infl(space) {
push_undo()
let starting_control = check_control(space)
-
+
if (game.active === COM) {
game.comInfl[space] += game.vm_available_ops
} else {
@@ -5350,7 +5363,7 @@ function vm_ceausescu_prep() {
function vm_ceausescu() {
game.persistent_events = game.persistent_events.filter(n => n!== C_CEAUSESCU)
let adj_cluj = false
-
+
if (game.demInfl[S_TIMISOARA] > 0) {
adj_cluj = true
}
@@ -6437,7 +6450,7 @@ states.vm_remove_infl = {
else {
if (game.vm_event === C_CEAUSESCU)
prompt_event(`${event_prompt()}.`)
- else
+ else
prompt_event(`Remove ${pluralize(game.vm_available_ops,'SP')}${event_prompt()}.`)
}
for (let space_id of game.valid_spaces) {
@@ -6897,7 +6910,7 @@ states.vm_common_european_home_play = {
game.state = 'vm_ceh_support_check_prep'
valid_spaces_sc()
},
- tst() {
+ tst() {
push_undo()
log_gap(`Played C${game.vm_event} to the Tiananmen Square Track`)
game.state = 'vm_tiananmen_square_attempt'
@@ -8191,7 +8204,7 @@ states.vm_we_are_the_people_remove = {
space(space) {
remove_infl(space, 'vm_available_ops')
if (game.vm_influence_added[S_LUTHERAN_CHURCH] === 4 ||
- game.valid_spaces.length === 0
+ game.valid_spaces.length === 0
) {
do_log_summary()
finish_we_are_the_people()
@@ -8383,7 +8396,7 @@ states.vm_tst_6 = {
if (game.active === DEM)
log('Democrat free 2 Ops support check.')
else
- log('Communist free 2 Ops support check.')
+ log('Communist free 2 Ops support check.')
game.selected_space = space
if (
game.active === DEM &&