You can make your code better readable by using booleans (True/False):
init:
$ girlmeet_all_action_count = 0
$ compliment_cute_count = 0
$ compliment_cute_repeat_s = False # Use booleans where appropriate.
$ compliment_cute_repeat_f = False
$ compliment_cute_s = False
$ compliment_cute_f = False
$ girlmeet_dice = 0
$ girlmeet_disp_multiplicator = 1
label gm_interact_cute: #just one of the labels with only few traits
if compliment_cute_count > 1:
$ compliment_cute_repeat_f = True
$chr.disposition -= random.randint(10, 25)
elif compliment_cute_count: # You don't need > 0 here, == 1 would work as well. #check if you do same thing more then once in one session
if chr.disposition > 300:
$ girlmeet_dice = 40
elif chr.disposition > 9:
$ girlmeet_dice = 30
else:
$ girlmeet_dice = 20
if dice(girlmeet_dice):
$ compliment_cute_repeat_s = True
$chr.disposition += random.randint(5, 15)
else:
$ compliment_cute_repeat_f = True
$chr.disposition -= random.randint(10, 15)
else: #main part
if chr.disposition > 300:
$ girlmeet_dice = 90 #chance to succes
$ girlmeet_disp_multiplicator = 0.4 #compliment is worth less as relationship advances
elif chr.disposition > 9:
$ girlmeet_dice = 75
$ girlmeet_disp_multiplicator = 1
else:
$ girlmeet_dice = 40
$ girlmeet_disp_multiplicator = 1.2
if dice(girlmeet_dice):
$ compliment_cute_s = True #type of text to show
$chr.disposition += (random.randint(10, 20)*(girlmeet_disp_multiplicator))
else:
$ compliment_cute_f = True
$chr.disposition -= (random.randint(5, 15)*(girlmeet_disp_multiplicator))
if compliment_cute_repeat_s: # No need for == 1 #display of text
$ compliment_cute_repeat_s = False # I am thinking bools should be reset in the gm_end label.
if "Impersonal" in chr.traits:
$chr_gm(random.choice(["Mhm... praised again... (impersonal RS)"]))
elif "Well-mannered" in chr.traits:
$chr_gm(random.choice(["Thank you again.(polite RS)"]))
else:
$chr_gm(random.choice(["So much praise...(normal RS)"]))
elif compliment_cute_repeat_f:
$ compliment_cute_repeat_f = False
if "Impersonal" in chr.traits:
$chr_gm(random.choice(["Not again. (impersonal RF)"]))
elif "Well-mannered" in chr.traits:
$chr_gm(random.choice(["Sir, you are repeating yourself. (polite RF)"]))
else:
$chr_gm(random.choice(["I've heard that from you already. (normal RF)"]))
elif compliment_cute_s:
$ compliment_cute_s = False
if "Impersonal" in chr.traits:
$chr_gm(random.choice(["…ok ((impersonal S)"]))
elif "Well-mannered" in chr.traits:
$chr_gm(random.choice(["Thank you, I'm very pleased. (polite S)"]))
else:
$chr_gm(random.choice(["Thank you. (normal S) "]))
else:
if "Impersonal" in chr.traits:
$chr_gm(random.choice(["Bigmouth. (impersonal F)"]))
elif "Well-mannered" in chr.traits:
$chr_gm(random.choice(["Please, don't bother me... (polite F)"]))
else:
$chr_gm(random.choice(["I've heard it all. (normal F)"]))
$ compliment_cute_count += 1
$ girlmeet_all_action_count += 1
if girlmeet_all_action_count > 2:
jump gm_end
else:
jump girlsmeet
label gm_end: #end after three actions (need to be done differently)
$ girlmeet_all_action_count = 0
$ girlmeet_disp_multiplicator = 1
$ compliment_cute_count = 0
$narrator(random.choice(["After awhile together, it comes time to say goodbye.", "You parted ways after another short while together."]))
hide screen pyt_girlsmeet
hide screen pyt_city_parkgates
hide screen pyt_city_park
jump pyt_city