Tappable dressing game question

Hi!
I’m writing a story with a friend which uses many choices and a point system. Clothing choices are impactful as well. So the dressing game has tappable overlays with the the clothes and we need to add points for each outfit. For example, for a very casual outfit -1…
The thing is, that I can’t make the point system work in the game :sweat_smile:
Does someone know how?

INT. WALKINCLOSET - DAY
@cut to zone 3
@zoom on 640 303 to 199% in 0
@CODY spot 0.807 58 222 in zone 3 AND CODY faces right
@CODY moves to layer 3
@CODY is tinker_stand_neutral_loop_rear
&zoom on 683 306 to 191% in 2
&CODY is think_rubchin
@overlay CLOTHESDIVIDER create
@overlay CLOTHESDIVIDER opacity 1
@overlay CLOTHESDIVIDER shifts to 1 -46 in zone 3
@overlay CLOTHESDIVIDER moves to layer 4
@overlay CLOTHESDIVIDER shifts to 214 -59 in zone 2 in 1
&overlay FORMAL create
&overlay 6709886607097856_FORMAL shifts to 85 334 in zone 3
&overlay 6709886607097856_FORMAL scales to 0.381 0.381
&overlay 6709886607097856_FORMAL moves to layer 5
&overlay SEMI create
@overlay 6709886607097856_SEMI shifts to 83 234 in zone 3
@overlay 6709886607097856_SEMI scales to 0.394 0.394
@overlay 6709886607097856_SEMI moves to layer 6
&overlay CASUAL create
@overlay 6709886607097856_CASUAL shifts to 83 129 in zone 3
@overlay 6709886607097856_CASUAL scales to 0.406 0.406
@overlay 6709886607097856_CASUAL moves to layer 7
@overlay FORMAL opacity 1 in 0.4
@overlay SEMI opacity 1 in 0.4
@overlay CASUAL opacity 1 in 0.4

@speechbubble is 160 279 to 90% with tail_top_left
NARR
| italic, highlight:green |Click which outfit you would like Cody to wear to the |bold,italic,highlight:green|school reunion.
| italic ,highlight:green |Remember that choices can impact the relationships Cody makes, and can manipulate future scenes.

@pause for a beat

label clothes_1

@CODY =0

tappable (DRESSING_GAME1)
“FORMAL” {

@CODY is dustoff_neutral_loop
@CODY changes into CODY_DRESSINGGAME1_FORMAL

@CODY is flirt_wink_atcamera

gain DRESSING_GAME1_FORMAL

}
“SEMI”{

@CODY is dustoff_neutral_loop
@CODY changes into CODY_DRESSINGGAME1_SEMI

@CODY is flirt_wink_atcamera

gain DRESSING_GAME1_SEMI

}
“CASUAL” {

@CODY is dustoff_neutral_loop
@CODY changes into CODY_DRESSINGGAME1_CASUAL

@CODY is flirt_wink_atcamera

gain DRESSING_GAME1_CASUAL

}

    CODY (talk_shrug_neutral)
Is this what I want to wear to the reunion?

choice
“Yes, you look amazing!” {

@CODY is laugh_giggle
}
“No, I would like to try the other options” {

@CODY is yawn_bored

goto clothes_1

}

&overlay CLOTHESDIVIDER opacity 0 in 2
&overlay FORMAL opacity 0 in 2
&overlay CASUAL opacity 0 in 2
&overlay SEMI opacity 0 in 2
&CODY walks to spot 0.807 276 226 in zone 2 in 3

Currently your mixing gains and character points. Replaces the gains with character points.

@CODY =1

@CODY =2

@CODY =3

1 Like

You can do it via two ways, one way - the easier - is using the tags you set up.

In that case, you need to set a branch up.

if(DRESSING_GAME1_FORMAL){

NARR
This is the reaction if the player chose the Formal option during the dressing game.

}elif(CODY_DRESSINGGAME1_SEMI){

NARR
This is the reaction if the player chose the Semi-formal option during the dressing game.

}else{

NARR
This is the reaction if the player chose the Casual option during the dressing game

}

Hope it helps, happy writing!

1 Like

@ntfnd @LaurelleE27 thanks!
So what I had done was that I used the if/ elif to add the points. My concern is that when the person tries the outfits, the points get mixed idk :woman_shrugging:

Hello :slightly_smiling_face:
Just to let you know, the gains in this coding such as “gain DRESSING_GAME1_FORMAL“ won’t work properly unless you have a choice asking are they sure they want to wear this per option and then they gain for that outfit if they click yes. Otherwise if they went to check out all the outfits, they will have gained for all outfits because you can’t un-gain a flag. Right now you have it so that once they try on the outfit, they gain a flag for it so if they replayed it, they still have that flag for that outfit because you can’t lose a flag.

And as Laurelle was saying, if you want to use the point system then you need to add where they gain points by using that code:
@NAMEOFPOINTS +# or -#
In place of where she was suggesting.

To refer back to points (there’s many different setups to refer back to points, it depends on how many points they can collect and for why you want to refer back to them) this is just one example :


if (NAMEOFPOINTS = #) {
#whatever happens here
} elif (NAMEOFPOINTS = #) {
#whatever happens here
} elif (NAMEOFPOINTS = #) {
#whatever happens here
}

You can also end it with } else { so that if they don’t match any of the numbers you’ve named then the else scene will play. Otherwise if they don’t match any of these numbers it’ll just skip over this part.

You can also do it the way Dara has a thread on it using greater than, less than or equals to.

#also keep in mind if you use negative numbers such as -1 and the reader starts with 0 and they get -1, the reader’s points will change from 0 to being -1 so you’ll have to put -1 to refer back to it because even though it’s technically 0, you’ve set their points into the negative numbers. Same case if say later on in episodes, the reader has a total of 2 points and they chose options that subtracts a total of 4 points that will make them go into a negative number then you need to keep track of what negative numbers readers can go into if you want particular scenes/responses to happen depending on specific negative numbers. That’s the tricky part about the point system as ntfnd was mentioning, is you gotta keep track of all the different types of points a reader can end up with.
To refer back to a negative number, you would do the same thing but make sure to use a negative number such as:

if (CODY = -1) {

or you could end the if/elif with “else” like this:

} else {
#whatever you want to happen here for negative numbers
}

And if you use else in that case then if the reader has any number in the negative or any number that doesn’t match any of your if/elifs then the “else” scene will play for them.

Since you already named your choice; DRESSING_GAME1, I would just take out the flags you currently have and add points per choice. Unless you’re using gains as a way to later on eliminate or add certain choice options/scenes depending on if they have this gain or not.

When you want to refer back to the outfit choices they’ve made for the dressing game1 by using the Named choice system which is in your script already, just do this:

if (DRESSING_GAME1 is “FORMAL”) {
#whatever happens here if they’ve chosen formal
} elif (DRESSING_GAME1 is “SEMI”) {
#whatever happens here if they’ve chosen semi
} else {
#whatever happens here if they’ve chosen casual
}

If you wanted to keep using your gains/flags you have in there then you need to add a choice within the choice of trying on those outfits and then put the gain there. Instead of having the question of whether they want to wear it afterwards, with gains that question should be inside each option. But again using gains in this case may be a little bit of extra effort you don’t need to do when you can just use the named choice system which you already have in there. But it depends on why you have gains there then if you wanted to keep them it would look something like this for the first option:

“FORMAL” {

@CODY is dustoff_neutral_loop
@CODY changes into CODY_DRESSINGGAME1_FORMAL

@CODY is flirt_wink_atcamera

NARR
Are you sure this is what you want to wear?

choice
“Erm… maybe not.” {
goto clothes_1

} “I look amazeballs!” {

@CODY is laugh_giggle
gain DRESSING_GAME1_FORMAL
}

} “SEMI” {
Etc…

Then to refer back to the gains/flags

if (DRESSING_GAME1_FORMAL) {
#whatever happens here if they’ve chosen formal.
} elif (DRESSING_GAME1_SEMI) {
#whatever happens here if they’ve chosen semi.
} else {
#whatever happens here if they’ve chosen casual.
}

And I probably confused the hell outta you :woozy_face: lol sorry.

1 Like

Thank you!!! I think I understood!!

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.