From 9075b4e577567e774b4a2ba6ca6ad07241087912 Mon Sep 17 00:00:00 2001 From: Tor Andersson Date: Tue, 11 Mar 2025 00:12:37 +0100 Subject: Add specific track trigger prefixes. --- data.js | 5 +++++ data.ts | 5 +++++ rules.js | 9 +++++++-- rules.ts | 9 +++++++-- types.d.ts | 3 ++- 5 files changed, 26 insertions(+), 5 deletions(-) diff --git a/data.js b/data.js index d788052..c2d173d 100644 --- a/data.js +++ b/data.js @@ -1797,6 +1797,7 @@ const data = { tracks: [ { id: LIBERTY, + action: 'tr0', name: 'Liberty', triggers: [ create_effect('bonus', MORALE_BONUS, OFF), @@ -1814,6 +1815,7 @@ const data = { }, { id: COLLECTIVIZATION, + action: 'tr1', name: 'Collectivization', triggers: [ create_effect('bonus', MORALE_BONUS, OFF), @@ -1831,6 +1833,7 @@ const data = { }, { id: GOVERNMENT, + action: 'tr2', name: 'Government', triggers: [ null, @@ -1848,6 +1851,7 @@ const data = { }, { id: SOVIET_SUPPORT, + action: 'tr3', name: 'Soviet Support', triggers: [ create_effect('bonus', MORALE_BONUS, OFF), @@ -1865,6 +1869,7 @@ const data = { }, { id: FOREIGN_AID, + action: 'tr4', name: 'Foreign Aid', triggers: [ create_effect('bonus', MORALE_BONUS, OFF), diff --git a/data.ts b/data.ts index 4b44ecd..8255252 100644 --- a/data.ts +++ b/data.ts @@ -1869,6 +1869,7 @@ const data: StaticData = { tracks: [ { id: LIBERTY, + action: 'tr0', name: 'Liberty', triggers: [ create_effect('bonus', MORALE_BONUS, OFF), @@ -1886,6 +1887,7 @@ const data: StaticData = { }, { id: COLLECTIVIZATION, + action: 'tr1', name: 'Collectivization', triggers: [ create_effect('bonus', MORALE_BONUS, OFF), @@ -1903,6 +1905,7 @@ const data: StaticData = { }, { id: GOVERNMENT, + action: 'tr2', name: 'Government', triggers: [ null, @@ -1920,6 +1923,7 @@ const data: StaticData = { }, { id: SOVIET_SUPPORT, + action: 'tr3', name: 'Soviet Support', triggers: [ create_effect('bonus', MORALE_BONUS, OFF), @@ -1937,6 +1941,7 @@ const data: StaticData = { }, { id: FOREIGN_AID, + action: 'tr4', name: 'Foreign Aid', triggers: [ create_effect('bonus', MORALE_BONUS, OFF), diff --git a/rules.js b/rules.js index 0c39f5e..028dd08 100644 --- a/rules.js +++ b/rules.js @@ -2409,7 +2409,7 @@ function move_track_to(track_id, new_value) { if (space_id !== 0) { game.triggered_track_effects.push(get_blank_marker_id(track_id, space_id)); } - const node = resolve_effect(trigger, 'track_icon'); + const node = resolve_effect(trigger, tracks[track_id].action); if (node !== null) { insert_after_active_node(node); } @@ -2829,12 +2829,17 @@ function get_source_name(source) { return cards[game.current_events[game.current_events.length - 1]].title; case 'fascist_test': return 'Fascist Test'; + case 'tr0': return tracks[0].name + ' Trigger'; + case 'tr1': return tracks[1].name + ' Trigger'; + case 'tr2': return tracks[2].name + ' Trigger'; + case 'tr3': return tracks[3].name + ' Trigger'; + case 'tr4': return tracks[4].name + ' Trigger'; case 'track_icon': return 'Track Trigger'; case 'momentum': return 'Momentum'; } - return '???'; + return source; } function get_factions_with_most_hero_poins() { let most_hero_points = null; diff --git a/rules.ts b/rules.ts index ada0dad..f4b1962 100644 --- a/rules.ts +++ b/rules.ts @@ -3010,7 +3010,7 @@ function move_track_to(track_id: number, new_value: number) { get_blank_marker_id(track_id, space_id) ); } - const node = resolve_effect(trigger, 'track_icon'); + const node = resolve_effect(trigger, tracks[track_id].action); if (node !== null) { insert_after_active_node(node); } @@ -3601,12 +3601,17 @@ function get_source_name(source: EffectSource): string { return cards[game.current_events[game.current_events.length - 1]].title; case 'fascist_test': return 'Fascist Test'; + case 'tr0': return tracks[0].name + ' Trigger'; + case 'tr1': return tracks[1].name + ' Trigger'; + case 'tr2': return tracks[2].name + ' Trigger'; + case 'tr3': return tracks[3].name + ' Trigger'; + case 'tr4': return tracks[4].name + ' Trigger'; case 'track_icon': return 'Track Trigger'; case 'momentum': return 'Momentum'; } - return '???'; + return source; } function get_factions_with_most_hero_poins(): FactionId[] { diff --git a/types.d.ts b/types.d.ts index b2e915b..4e0daaf 100644 --- a/types.d.ts +++ b/types.d.ts @@ -175,7 +175,7 @@ export interface PlayerCard extends CardBase { icons: Icon[]; } -export type EffectSource = 'player_event' | 'fascist_event' | 'fascist_test' | 'track_icon' | 'momentum'; +export type EffectSource = 'player_event' | 'fascist_event' | 'fascist_test' | 'track_icon' | 'momentum' | 'tr0' | 'tr1' | 'tr2' | 'tr3' | 'tr4'; export interface Effect { type: @@ -213,6 +213,7 @@ export interface StaticData { }>; tracks: Array<{ id: number; + action: EffectSource; name: string; triggers: Array; }>; -- cgit v1.2.3