From b9a101047c7b3f48fce4bfb28efd7ae505386b3d Mon Sep 17 00:00:00 2001 From: Joël Simoneau Date: Tue, 1 Apr 2025 16:22:04 -0400 Subject: Mongol Invaders as cubes --- play.css | 1 + play.js | 2 ++ rules.js | 23 +++++++++++++++++++---- 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/play.css b/play.css index 9ffaea9..19625de 100644 --- a/play.css +++ b/play.css @@ -165,6 +165,7 @@ img.f { #log .h2.ve { background-color: #e4ba6e } #log .h2.mi { background-color: #ebc9be } +#log img.c { height: 15px; vertical-align: -3px } #log img.f { height: 16px; vertical-align: -2px } #log { font-variant-numeric: tabular-nums; } diff --git a/play.js b/play.js index 6e7eef0..67d15ca 100644 --- a/play.js +++ b/play.js @@ -1364,6 +1364,7 @@ function sub_space(match, p1) { return `${n}` } +const C_MI = '' const F_DS = '' const F_BK = '' const F_VE = '' @@ -1382,6 +1383,7 @@ function on_log(text) { text = text.replace(//g, ">") + text = text.replace(/\bCMI\b/g, C_MI) text = text.replace(/\bFDS\b/g, F_DS) text = text.replace(/\bFBK\b/g, F_BK) text = text.replace(/\bFVE\b/g, F_VE) diff --git a/rules.js b/rules.js index 10f25d4..e6acad5 100644 --- a/rules.js +++ b/rules.js @@ -3024,6 +3024,15 @@ function piece_faction(p) { throw "IMPOSSIBLE - piece_faction" } +function piece_symbol(p) { + let f = piece_faction(p) + let t = piece_type(p) + if (PIECE_FACTION_TYPE_SYMBOL[f][t] !== null) + return PIECE_FACTION_TYPE_SYMBOL[f][t] + else + return PIECE_FACTION_TYPE_NAME[f][t] +} + function piece_name(p) { return PIECE_FACTION_TYPE_NAME[piece_faction(p)][piece_type(p)] } @@ -3800,17 +3809,17 @@ function placed_summary(type="") { function log_summary_place(p) { let from = piece_space(p) if (from !== AVAILABLE) - log_summary("% " + piece_name(p) + " from S" + from) + log_summary("% " + piece_symbol(p) + " from S" + from) else - log_summary("% " + piece_name(p)) + log_summary("% " + piece_symbol(p)) } function log_summary_move_from(p) { - log_summary("% " + piece_name(p) + " from S" + piece_space(p)) + log_summary("% " + piece_symbol(p) + " from S" + piece_space(p)) } function log_summary_remove(p) { - log_summary("Removed % " + piece_name(p)) + log_summary("Removed % " + piece_symbol(p)) } function log_summary_cavalry(c) { @@ -5675,6 +5684,12 @@ const PIECE_FACTION_TYPE_NAME = [ [ "Temple", "Raja", null ], [ null, null, "Invader" ] ] +const PIECE_FACTION_TYPE_SYMBOL = [ + [ null, null, null ], + [ null, null, null ], + [ null, null, null ], + [ null, null, CMI ] +] const LAST_CAVALRY = 9 // Sequence of Play options -- cgit v1.2.3