summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTor Andersson <tor@ccxvii.net>2023-03-19 21:01:58 +0100
committerTor Andersson <tor@ccxvii.net>2023-05-03 18:48:16 +0200
commitad863219484ad675d138e0863880bf798060b493 (patch)
tree5c9334a4bd3005a7c51ecea59db501451e7a569b
parent8f4ba18fc3c60fed53a5d230662adfb33134c620 (diff)
downloadandean-abyss-ad863219484ad675d138e0863880bf798060b493.tar.gz
Save/restore current faction for some events.
-rw-r--r--events.txt3
-rw-r--r--rules.js12
2 files changed, 13 insertions, 2 deletions
diff --git a/events.txt b/events.txt
index 1e19607..03230a2 100644
--- a/events.txt
+++ b/events.txt
@@ -426,9 +426,10 @@ SHADED 35
EVENT 36
eligible (game.current)
+ save_current
current GOVT
place_farc_zone
- # TODO: current (executing_faction())
+ restore_current
prompt Shift adjacent spaces toward Active Support.
space 2 is_pop(s) && !is_active_support(s) && is_adjacent(game.vm.farc_zone, s)
shift_support
diff --git a/rules.js b/rules.js
index 13463f9..4783d85 100644
--- a/rules.js
+++ b/rules.js
@@ -5609,10 +5609,20 @@ function vm_current() {
vm_next()
}
+function vm_save_current() {
+ game.vm.faction = game.current
+ vm_next()
+}
+
+function vm_restore_current() {
+ game.current = game.vm.faction
+ vm_next()
+}
+
states.vm_current = {
prompt() {
let list = vm_operand(1)
- event_prompt("Select Faction to execute Event.")
+ event_prompt("Select Faction.")
if (list === GOVT || (Array.isArray(list) && list.includes(GOVT)))
view.actions.govt = 1
if (list === FARC || (Array.isArray(list) && list.includes(FARC)))