+1 vote
by (130 points)

Okay, so, I'm really new to Twine. Like, really new. So new that I just started making one yesterday. Anyways. This might be a really simple question for some of you to answer, but I was wondering if I can make a link exclusively accessible only if the person reading had chosen a certain link beforehand. Like for example, since I'm really bad at explaining, if there were three options in "Passage 1" and the three options were "1", "2", and "3", a link a few passages later would only be able to be clicked on if, let's just say, the reader chose "3" beforehand. Does this have a super simple answer that I'm just completely missing?

2 Answers

+1 vote
by (159k points)

I suggest you read the Harlowe 2.x story format's documentation, in particular the parts on:

a. the (set:) macro, which can be used to assign a value to a variable.

b. the (link:) macro, which when combined with the (set:) macro and the (go-to:) macro can be used to create a link which will assign a value to a variable before sending the reader to another passage once the link is selected. This combination is commonly known as a Setter Link.

c. the (if:) macro (and its related (else-if:) and (else:) macros), which can be used to evaluate the current value stored within a variable and then do something based on that evaluation.

0 votes
by (6.2k points)

In passage three, do:

(set $variableName to true)

In the passage with your link, do:

(if: $variableName is true)[[[This is a link ->This is a link]]]

You need the arrow, even though it's the same passage title, because there's a bug where if you didn't put it in it wouldn't link the passage.

by (130 points)
sadly this did not work. im assuming its outdated or something since this is from september of 2017 but i still expected this to work. im so confused as my question is still not answered. how the heck do i make it where a link is locked until another has been opened???!!! its basically making my text based game unplayable without this feature! im so confused somebody answer please! and with a good answer!