0 votes
by (250 points)

I'm trying to lock the player out of accessing a specific passage once a choice has been made, in this case, to murder a clown.

The player can approach the clown while the clown is twisting up some balloon animals. The player can ask the clown for a cat, worm, or donkey balloon. Each time the player asks him for any of these, they are brought to a distinct passage ("Cat balloon seq" for example) and the item gets added to the player's inventory. If the player has just received the cat balloon, he/she then has an option to jump right to the other passages to receive those other items.

What I want to do is give the player the option to kill the clown after he/she has received the worm balloon. This would effectively eliminate a whole chain of passages, thereby forbidding the player from accessing them again for the remaining duration of the game.

Please let me know if any additional info about my setup is required to help solve the issue. Thanks!

1 Answer

0 votes
by (910 points)
selected by
Best answer

You could always just use a variable to check whether the clown is alive or dead, and if they're dead, have the other passages automatically redirect somewhere else. At some point prior to meeting the clown, such as the beginning of the story, set the clown variable to "alive" (while first making sure that the clown hasn't been killed yet, just to make sure that you're not unintentionally bringing them back to life if revisiting this passage later).

(unless: $clown is "dead")[(set: $clown to "alive")]

Then, after you kill the clown, set the variable to "dead".

(set: $clown to "dead")

Finally, in the passages where you would interact with the clown were they still alive, set a go-to to activate if the variable is set to "dead". This will cause it to automatically load the specified passage before the clown interaction is even displayed.

(if: $clown is "dead")[(go-to: "PassageName")]

This way, so long as the clown is alive, the player can access these passages, but when the clown has been killed, the game will never display them. Is that along the lines of what you were looking for?

by (250 points)
Thanks! This worked great.