![](https://lemmy.world/pictrs/image/1a6bfb01-d7bb-4b30-a85b-ca12d89bedaa.jpeg)
![](https://lemmy.world/pictrs/image/fe882c27-7ec3-429e-a086-03d5a3efb517.png)
You need to have them in square brakcets to ‘run’ them:
{[subAgilityMod = 1, '']|[subAction = advnonac, '']}
// The (, '') just tells the square bracket to output nothing.
Also if you are calling a list inside a square bracket, you don’t need to enclose it too in another square bracket.
[
✅. ]
[
❎. ]]
It is because you are ‘overwriting’ the value of the
state
variable.Initially you have it as a list:
But after loading the page, it would automatically ‘evaluate’ the
state
list on theoutput
in which it would evaluate to:With the
state = "Utah"
in the square brackets, you are overwriting thestate
list to just have the valueUtah
in which after you click the randomize button, instead of it using the initial list, it would only just outputUtah
since it is the value that was assigned to thestate
variable.So, the solution would be like this:
This list would output the state and then set the
geo
variable to its value. In[geo = "landlocked", '']
, the, ''
is there to have the square brackets output nothing (or an empty string).Since all square brackets, after evaluating it, always output the result in the square bracket, like in
[state="Utah", geo = "landlock"]
, the last thing to be evaluated is thegeo = "landlock"
, therefore the engine would outputlandlock
on the page, so to prevent that we add an empty string at the end of the brackets.