diff options
author | Tor Andersson <tor@ccxvii.net> | 2025-02-28 12:09:24 +0100 |
---|---|---|
committer | Tor Andersson <tor@ccxvii.net> | 2025-02-28 12:10:35 +0100 |
commit | d745d77007170117f04bf70f3c5601fc9f55fc0c (patch) | |
tree | 67f77fa23749fe4eb1f3a63b9fdfe6227e68d08e | |
parent | 6e6b862e520a59dd2ef6e7d48075f4281496147b (diff) | |
download | land-and-freedom-d745d77007170117f04bf70f3c5601fc9f55fc0c.tar.gz |
Don't clobber readonly "roles" array when using it as active player list.
-rw-r--r-- | rules.js | 2 | ||||
-rw-r--r-- | rules.ts | 4 |
2 files changed, 3 insertions, 3 deletions
@@ -292,7 +292,7 @@ function get_next_active(p) { return p.map((faction) => faction_player_map[faction]); } if (p === 'all') { - return exports.roles; + return exports.roles.slice(); } if (p === 'None') { return 'None'; @@ -122,7 +122,7 @@ const fascist_decks = { export const scenarios = ['Standard']; -export const roles: Player[] = [ANARCHIST, COMMUNIST, MODERATE]; +export const roles: readonly Player[] = [ANARCHIST, COMMUNIST, MODERATE]; function gen_action(action: string, argument?: number | string) { if (argument === undefined) { @@ -443,7 +443,7 @@ function get_next_active(p: StateNode['p']): Player | Player[] | 'None' { return p.map((faction) => faction_player_map[faction]); } if (p === 'all') { - return roles; + return roles.slice(); } if (p === 'None') { return 'None'; |