Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Hey, at first view, I think the main problem is that you're initializing the variables top and bottom just at the start. This is a problem because you are modifying the values with an addition instead of absolute values, so if you say you want to choose again, you keep adding and if this end value is more than 3 then you don't have anything to show.

Let me explain with an example:

scene bodyChoice

1. Init body, top and bottom with 0

2. Choose body: I choose option 1, then body = body + 1 = 0 + 1 = 1

scene topChoice

1. show body_1 because body == 1

2. Choose top: I choose option 1, then top = top + 1 = 0 + 1 = 1

scene topBottom

1. show body_1 because body == 1

2. show top_1 because top == 1

3. Choice (Ok or choose another top): I choose another top

scene topChoice

1. show body_1 because body == 1

2. Choose top: I choose option 3, then top = top + 3 = 1 + 3 = 4 (!!!!!!!)

Here's the problem, now top == 4, and you don't have a top_4 to show, and in fact, what you want to show is top_3, the same problem happens with the bottoms.

There are two ways of solving this: You can reset top and bottom to 0 at the start of the functions with the visual choice that modifies them. This means, every time you do the addition, the variable will be 0. The second option, and the one I recommend you do is to change the additions for assignations. What I mean with this is very simple: Instead of doing:

      - var top: "{top} + 1"

You do:

      - var top: 1

And the same with all the assignations, including body, top and bottom.

I think this should fix all your problems, but let me know how it goes.

Cheers!