diff options
author | Tor Andersson <tor@ccxvii.net> | 2025-03-11 00:12:37 +0100 |
---|---|---|
committer | Tor Andersson <tor@ccxvii.net> | 2025-03-11 00:12:37 +0100 |
commit | 9075b4e577567e774b4a2ba6ca6ad07241087912 (patch) | |
tree | 73f88e17b29fdc2d6c06e72c17fea9e510502c9f | |
parent | fd27f4280485cc79d1d3a2698775678c42735487 (diff) | |
download | land-and-freedom-9075b4e577567e774b4a2ba6ca6ad07241087912.tar.gz |
Add specific track trigger prefixes.
-rw-r--r-- | data.js | 5 | ||||
-rw-r--r-- | data.ts | 5 | ||||
-rw-r--r-- | rules.js | 9 | ||||
-rw-r--r-- | rules.ts | 9 | ||||
-rw-r--r-- | types.d.ts | 3 |
5 files changed, 26 insertions, 5 deletions
@@ -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), @@ -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), @@ -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; @@ -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[] { @@ -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<null | Effect>; }>; |