It looks like you're new here. If you want to get involved, click one of these buttons!
(if: (history:) contains "1", "2", "3", "4")[[[new link here]]]I get why this doesn't work, I think, because history can't have more than one string attached to it, I'm just not sure what the alternative would be. Thanks in advance for the help.
Comments
1. The (history:) macro returns an array containing the names of all the passages you have navigated forward through up to and including the previous passage.
2. The contains keyword checks an array for a single value, not a list.
3. When evaluating more than one expression within a (if:) macro you need to separate each expression with either an and or an or depending on if all expressions need to be true or only some of the expressions need to be true.
The following is one way to do what you want:
note: I am assigning the current value of (history:) to a local variable because we don't know how much work Harlowe has to do to generate the history array and we need it to generate that array four times. ... note the single space character between the (if:) associated hook's open square bracket and the start of the new link here markup link, this is current;y needed due to a bug.
I am so horribly confused as to how to use variables, I would never have considered that solution. I appreciate the help.
Well I wish I knew that about eight hours ago. I was using crazy macros to try to overcome that problem. At least there's an easy fix!