Well, that was unexpected. Actually it was your game that inspired my sandbox / loop system instead of just creating a linear VN. I much prefer games with actual gameplay, even if it means a lot more coding.
Unexpected as in me writing something in your game thread? I check out most of the sandbox games that come out, since I prefer these types of games over the VN "click, read click, click, read" style.
As for the inspiration, that's nice to hear, thanks
Removing choices already selected would be great, though I still need to figure out a way to do it efficiently on the code. Creating a new variable for every choice is really time-consuming and likely not the best approach. I will look more into this in the Lemmasoft forums.
It's a lot faster if I just tell you
Python:
$ i_option1 = True
$ i_option2 = True
label whatever_menu_start:
menu:
"Ask for whatever1" if i_option1:
$ i_option1 = False
"....."
"Ask for whatever2" if i_option2:
$ i_option2 = False
"......"
"Quit conversation":
jump whatever_end
if i_option1 or i_option2:
jump whatever_menu_start
label whatever_end:
"Have a nice day!"
You can reuse the "option" variables as often as you want.
With the
if i_otion1 or i_option2 at the end, you can also "auto finish" the conversation, if nothing else can be done anyway. So the player doesn't have to click the "quit/end option".
If you want to save yourself some headaches, move away from single variables for your characters. it will take a little getting used to, but in the end, it will open up a lot of new options and possibilities if you use a character class and create instances for every member (girl).
But going into this some more is too much for this thread. If you want to discuss it or would like some general ideas, send me a PM.
PS: Using calls makes sense where possible, but you should always use calls with ().
So instead of:
call battle1
you should do:
call battle1()
passing the necessary variables to the underlying function:
call battle1(i_strength = 10, i_health = 50)