Date: 2023/08/31 11:03:24 UTC-07:00
Type: Denizen Script
rw_trait_scrolling_task:
type: task
debug: false
definitions: selection
script:
- define player <player>
- define traits_data <script[cfg_traits].data_key[traits]>
- define traits <list[<[player].flag[TRAITS_SELECTION].sub[1]>|<[player].flag[TRAITS_SELECTION]>|<[player].flag[TRAITS_SELECTION].add[1]>]>
# makes the list wrap around itself
- foreach <[traits]> as:trait:
- if <[trait]> < 1:
- define new_trait <[traits_data].size.sub[<[trait].mod[<[traits_data].size>].abs>]>
- else if <[trait]> > <[traits_data].size>:
- define new_trait <element[1].add[<[trait].mod[<[traits_data].size>]>]>
- else:
- define new_trait <[trait]>
- define new_traits:->:<[new_trait]>
- define trait_1 <[traits_data].get[<[traits_data].keys.get[<[new_traits].get[1]>]>]>
- define trait_2 <[traits_data].get[<[traits_data].keys.get[<[new_traits].get[2]>]>]>
- define trait_3 <[traits_data].get[<[traits_data].keys.get[<[new_traits].get[3]>]>]>