Update: This script is now built into Twine 1.4! It is no longer necessary to install it.
This is a very short script that allows you to use a function called "either" in Twine's <<set>>, <<print>> and <<if>> macros. Give it several string or number values, separated by commas, and it will pick one of them randomly to use in the macro.
Obsolete script removed: use Twine 1.4
This functions largely identically to the Game Maker choose()
function. You can use it like this:
<<print either("a dusty glade", "a sinister vale", "a murky gully", "a desolate gulch") >>
- Prints one of the strings, chosen randomly.
<<set $value = either(0,1,2,3,4)>>
- Sets $value to one of the numbers.
<<if either(true, false)>>
- This is true 50% of the time. Equivalent to <<if Math.random() lt 0.5>>
In the first case, you can see it's functionally similar to the <<rnd>> macro - but, as demonstrated, it can also be used inside <<set>> as well as <<print>>.
If you patch the <<display>> macro, you can also use it to display a random passage, serving as a more primitive kind of <<randomp>>:
<<display either("Cellar", "Garden", "Observatory")>>
Feel free to report any bugs to @webbedspace.