How do you make a [cycling link] link that creates another link that when that is clicked again goes back to the original and just loops?

I’m using Harlowe 2.1.0 on Twine 2, and I’ve only just recently gotten into using variables and conditional statements and making more in-depth stories last month or so.

I’ve seen some stories that make it so that you can click on a link that doesn’t bring you to another passage but instead presents to you a new option that you can also click on that impacts some of the future events, such as whether your significant other is a boy or a girl or non-binary or something else.

Now, when I say, “presents to you a new option that you can also click on”, I mean something that brings you back to the other option and that if you click on again brings you to the newer option.

For example, I want to let the reader choose between these three options:
“straight”, “lesbian”, or “bisexual”.
I want it so that “straight” is presented as a link first, and when that is clicked, it changes to the link “lesbian”, and if that is clicked is changed to the link “bisexual”, that, if clicked, reverses back to the original link, “straight”, and continues to loop. I also want to make it so that whatever the player leaves the option on is noted in the future. Does anyone know how to do this?

If you were using the 3.x series of Harlowe then I would suggest using its (cycling-link:) macro, however as you are still using the 2.x series then I suggest you read the “Cycling Choices”: Harlowe (v2.0) recipe contained within the Twine Cookbook.

Thank you for your help (I switched over to Harlowe 3.x. I didn’t have to change anything of my previous code, thankfully, so)!