LoafyLemon
cd485b2bac
* Added checkpoints to forbid the editor from rolling back to menu context * Added forced checkpoint for when the editor is being opened to avoid rolling back to before it was opened (by opening a console for example) * Alleviated the issue for when the game tries to recover from the place it cannot stop rolling back, but version var is unavailable because of it being not initialized in that moment
334 lines
13 KiB
Plaintext
334 lines
13 KiB
Plaintext
|
|
label summon_luna:
|
|
|
|
$ active_girl = "luna"
|
|
$ last_character = "luna"
|
|
|
|
$ luna_busy = True
|
|
|
|
call update_luna
|
|
call update_lun_tier
|
|
|
|
$ renpy.checkpoint(hard=True)
|
|
|
|
call play_music("luna")
|
|
call play_sound("door")
|
|
call lun_chibi("stand","mid","base")
|
|
with d3
|
|
|
|
lun "[lun_genie_name]..." ("base", "base", "base", "mid", xpos="base", ypos="base")
|
|
|
|
if spectrespecs_E3 and not spectrespecs_E4:
|
|
jump spectrespecs_E4
|
|
|
|
label luna_requests:
|
|
|
|
# Reset
|
|
call reset_menu_position
|
|
lun "" (xpos="base",ypos="base")
|
|
|
|
menu:
|
|
|
|
# Talk
|
|
"-Talk-" (icon="interface/icons/small/talk.webp"):
|
|
if lun_mood > 0:
|
|
lun "I have nothing to say to you sir..."
|
|
jump luna_requests
|
|
|
|
call luna_chitchat
|
|
jump luna_talk
|
|
|
|
# Personal Favors
|
|
"-Sexual Favours-" (icon="interface/icons/small/condom.webp") if luna_favors:
|
|
jump luna_favor_menu
|
|
|
|
"-Sexual Favours-" (style="disabled") if not luna_favors:
|
|
call nar(">You haven't unlocked this feature yet.")
|
|
jump luna_requests
|
|
|
|
# Wardrobe
|
|
"-Wardrobe-" (icon="interface/icons/small/wardrobe.webp") if luna_wardrobe_unlocked:
|
|
hide astoria_main with d1
|
|
call wardrobe
|
|
jump luna_requests
|
|
|
|
"-Wardrobe-" (style="disabled") if not luna_wardrobe_unlocked:
|
|
call nar(">You haven't unlocked this feature yet.")
|
|
jump luna_requests
|
|
|
|
"-Give Item-" (icon="interface/icons/small/gift.webp"):
|
|
$ TBA_message()
|
|
jump luna_requests
|
|
|
|
# hide luna_main with d1
|
|
# call gift_menu
|
|
# jump luna_requests
|
|
|
|
# Dismiss
|
|
"-Dismiss her-":
|
|
stop music fadeout 3.0
|
|
|
|
if game.daytime:
|
|
if lun_mood >= 3:
|
|
lun "Good day..."
|
|
else:
|
|
lun "Sure thing, [lun_genie_name]. I will head to class."
|
|
else:
|
|
if lun_mood >= 3:
|
|
lun "Good night..."
|
|
else:
|
|
lun "Sure thing, good night [lun_genie_name]."
|
|
|
|
jump end_luna_event
|
|
|
|
label update_lun_tier:
|
|
if lun_tier == 1 and lun_whoring >= 3:
|
|
if not ll_pf_talk.is_event_complete(1, 3):
|
|
return
|
|
|
|
$ lun_level_up = 1
|
|
elif lun_tier == 2 and lun_whoring >= 6:
|
|
if not ll_pf_inspect.is_event_complete(2, 3):
|
|
return
|
|
$ lun_level_up = 2
|
|
elif lun_tier == 3 and lun_whoring >= 9:
|
|
# T4 NOT AVAILABLE
|
|
return
|
|
|
|
if not ll_pf_masturbate.is_event_complete(3, 3):
|
|
return
|
|
|
|
$ lun_level_up = 3
|
|
elif lun_tier == 4 and lun_whoring >= 13:
|
|
# T5 NOT AVAILABLE
|
|
return
|
|
|
|
# Requirement: Tier 4 - Blow me T4 E3
|
|
$ lun_level_up = 4
|
|
return
|
|
|
|
label luna_level_up(tier=None):
|
|
|
|
call bld
|
|
if tier == 1:
|
|
gen "(I think it's about time to give her a proper inspection...)" ("base", xpos="far_left", ypos="head")
|
|
elif tier == 2:
|
|
gen "(Let's see if she's ready for some self-care...)" ("base", xpos="far_left", ypos="head")
|
|
elif tier == 3:
|
|
gen "(I wonder if she'll be able to get the spurts out with her mouth...)" ("base", xpos="far_left", ypos="head")
|
|
elif tier == 4:
|
|
gen "(Getting the spurts out of two people at the same time...)" ("base", xpos="far_left", ypos="head")
|
|
gen "(Now that's going to require some careful timing!)" ("grin", xpos="far_left", ypos="head")
|
|
|
|
$ lun_tier = tier+1
|
|
$ lun_level_up = None
|
|
$ lun_mood = 0
|
|
|
|
pause.5
|
|
call nar(">Luna has reached {i}favour tier{/i} "+str(lun_tier)+"!")
|
|
|
|
call update_lun_tier
|
|
|
|
return
|
|
|
|
# Luna Favor Menu
|
|
label luna_favor_menu:
|
|
call update_luna_favors
|
|
|
|
menu:
|
|
"-Level Up-" (icon="interface/icons/small/levelup.webp") if lun_level_up != None:
|
|
call luna_level_up(tier=lun_level_up)
|
|
jump luna_favor_menu
|
|
|
|
"-Personal Favours-" (icon="interface/icons/small/heart_red.webp"):
|
|
call tutorial("hearts")
|
|
|
|
label .personal:
|
|
python:
|
|
menu_choices = []
|
|
for i in ll_favor_list:
|
|
if i in []: # Not in the game yet.
|
|
menu_choices.append(gui.menu_item("-Not available-", "na", style="disabled"))
|
|
elif i.start_tier > lun_tier:
|
|
menu_choices.append(gui.menu_item("-Not Ready-", "vague", style="disabled"))
|
|
else:
|
|
menu_choices.append(i.get_menu_item())
|
|
|
|
menu_choices.append(("-Never mind-", "nvm"))
|
|
result = renpy.display_menu(menu_choices)
|
|
|
|
if result == "nvm":
|
|
jump luna_favor_menu
|
|
elif result == "vague":
|
|
call favor_not_ready
|
|
jump .personal
|
|
elif result == "na":
|
|
call not_available
|
|
jump .personal
|
|
else:
|
|
$ renpy.jump(result)
|
|
|
|
"-Public Requests-" (icon="interface/icons/small/star_yellow.webp", style="disabled"):
|
|
call not_available
|
|
jump luna_favor_menu
|
|
|
|
"-Never mind-":
|
|
jump luna_requests
|
|
|
|
label update_luna_favors:
|
|
python:
|
|
for i in ll_favor_list:
|
|
i.tier = lun_tier
|
|
return
|
|
|
|
label luna_talk:
|
|
# General.
|
|
menu:
|
|
"-Ask her to cheer for Ravenclaw-" if cho_quid.gryffindor_failed and not cho_quid.E11_complete:
|
|
jump cho_quid_E11
|
|
|
|
"-Address me only as-" if spectrespecs_E4:
|
|
menu:
|
|
"-Sir-":
|
|
$ lun_genie_name = "Sir"
|
|
"-Dumbledore-":
|
|
$ lun_genie_name = "Dumbledore"
|
|
"-Professor-":
|
|
$ lun_genie_name = "Professor"
|
|
"-Partner-":
|
|
$ lun_genie_name = "Partner"
|
|
"-Master-" if lun_tier >= 2:
|
|
$ lun_genie_name = "Master"
|
|
"-Daddy-" if lun_tier >= 2:
|
|
$ lun_genie_name = "Daddy"
|
|
"-Custom Input-" if lun_tier >= 3:
|
|
$ lun_genie_name = renpy.input("(Please enter the name.)", lun_genie_name, ALLOWED_CHARACTERS, length=14).strip() or "Professor"
|
|
"-Never mind-":
|
|
jump luna_talk
|
|
|
|
jump genie_luna_change
|
|
|
|
"-From now on I will refer to you as-" if spectrespecs_E4:
|
|
menu:
|
|
"-Miss Lovegood-":
|
|
$ luna_name = "Miss Lovegood"
|
|
"-Luna-":
|
|
$ luna_name = "Luna"
|
|
"-Loony-":
|
|
$ luna_name = "Loony"
|
|
"-Girl-":
|
|
$ luna_name = "Girl"
|
|
"-Partner-":
|
|
$ luna_name = "Partner"
|
|
"-Bimbo-" if lun_tier >= 2:
|
|
$ luna_name = "Bimbo"
|
|
"-Minx-" if lun_tier >= 3:
|
|
$ luna_name = "Minx"
|
|
"-Cumslut-" if lun_tier >= 5:
|
|
$ luna_name = "Cumslut"
|
|
"-Custom Input-" if lun_tier >= 3:
|
|
$ luna_name = renpy.input("(Please enter the name.)", luna_name, ALLOWED_CHARACTERS, length=14).strip() or "Miss Lovegood"
|
|
"-Never mind-":
|
|
jump luna_talk
|
|
|
|
jump luna_name
|
|
|
|
"-Never mind-":
|
|
jump luna_requests
|
|
|
|
label genie_luna_change:
|
|
# NickName responses
|
|
if lun_genie_name == "Sir":
|
|
lun "Certainly, [lun_genie_name]." ("base", "base", "base", "mid")
|
|
elif lun_genie_name == "Dumbledore":
|
|
lun "You want me to call you by your last name?" ("annoyed", "narrow", "base", "mid")
|
|
gen "Is that going to be a problem?" ("base", xpos="far_left", ypos="head")
|
|
lun "Of course not [lun_genie_name]..." ("angry", "base", "base", "mid")
|
|
lun "[lun_genie_name]..." ("angry", "base", "base", "downL")
|
|
lun "Don't think I've ever heard anyone call you just [lun_genie_name] before..." ("grin", "base", "base", "mid")
|
|
elif lun_genie_name == "Professor":
|
|
lun "Yes, [lun_genie_name]." ("base", "base", "base", "mid")
|
|
elif lun_genie_name == "Partner":
|
|
lun "[lun_genie_name]?" ("soft", "base", "raised", "mid")
|
|
gen "Yes, we're working together now so it's only appropriate." ("base", xpos="far_left", ypos="head")
|
|
lun "Oh... Of course [lun_genie_name]." ("grin", "base", "base", "mid")
|
|
elif lun_genie_name == "Master":
|
|
lun "[lun_genie_name]?" ("soft", "narrow", "base", "mid")
|
|
lun "What are you a [lun_genie_name] of exactly?" ("angry", "base", "base", "mid")
|
|
if lun_tier >= 3:
|
|
gen "A master baiter!" ("grin", xpos="far_left", ypos="head")
|
|
lun "Oh, right!" ("smile", "base", "base", "mid")
|
|
lun "Thank you for allowing me to be your pupil, [lun_genie_name]." ("base", "base", "base", "mid")
|
|
else:
|
|
gen "*Err*...{w=0.4} Of the arts?" ("base", xpos="far_left", ypos="head")
|
|
lun "What arts?" ("angry", "narrow", "base", "mid")
|
|
gen "Avoiding confrontation." ("base", xpos="far_left", ypos="head")
|
|
lun "*Huh*?" ("mad", "base", "base", "mid")
|
|
gen "..." ("base", xpos="far_left", ypos="head")
|
|
lun "..." ("annoyed", "base", "base", "mid")
|
|
gen "..." ("base", xpos="far_left", ypos="head")
|
|
lun "Sir?" ("soft", "narrow", "base", "mid")
|
|
gen "..." ("base", xpos="far_left", ypos="head")
|
|
lun "[lun_genie_name]?" ("open", "base", "base", "mid")
|
|
gen "That's me." ("base", xpos="far_left", ypos="head")
|
|
lun "Okay, I'll call you [lun_genie_name] from now on." ("soft", "base", "base", "mid")
|
|
gen "(Another confrontation expertly avoided...)" ("base", xpos="far_left", ypos="head")
|
|
elif lun_genie_name == "Daddy":
|
|
lun "[lun_genie_name]?" ("open", "narrow", "base", "mid")
|
|
gen "Yes..." ("base", xpos="far_left", ypos="head")
|
|
lun "But wont that be confusing?" ("annoyed", "narrow", "base", "mid")
|
|
gen "Would it?" ("base", xpos="far_left", ypos="head")
|
|
lun "Yes, that's usually what I call my father..." ("open", "base", "base", "R")
|
|
gen "I'm your daddy now..." ("base", xpos="far_left", ypos="head")
|
|
lun "*Huh*?" ("angry", "base", "base", "mid")
|
|
gen "Call me daddy you naughty girl!" ("angry", xpos="far_left", ypos="head")
|
|
lun "Oh...{w=0.3} Yes, I'm sorry [lun_genie_name]!" ("angry", "happyCl", "base", "mid")
|
|
else: #custom/fallback
|
|
lun "Okay, I'll call you [lun_genie_name] from now on..." ("base", "base", "base", "mid")
|
|
jump luna_talk
|
|
|
|
label luna_name:
|
|
# NickName responses
|
|
if luna_name == "Miss Lovegood":
|
|
lun "Of course, [lun_genie_name]." ("base", "wink", "base", "mid")
|
|
elif luna_name == "Luna":
|
|
lun "But that's my first name!" ("angry", "base", "base", "mid")
|
|
gen "So?" ("base", xpos="far_left", ypos="head")
|
|
lun "Isn't it against the law?" ("mad", "narrow", "base", "mid")
|
|
gen "... Is what against the law?" ("base", xpos="far_left", ypos="head")
|
|
lun "Teachers and students calling each other by their first name. I read an article about it in the quibbler." ("angry", "narrow", "raised", "mid")
|
|
gen "*Err*... No they recently made it legal." ("base", xpos="far_left", ypos="head")
|
|
lun "Oh, How progressive!" ("soft", "base", "base", "stare")
|
|
lun "Then of course, you can call me that!" ("smile", "base", "base", "mid")
|
|
elif luna_name == "Loony":
|
|
lun "Do you really need to call me that, [lun_genie_name]?" ("upset", "base", "base", "mid")
|
|
lun "Other students call me that to make fun of me." ("upset", "base", "base", "R")
|
|
gen "I like it." ("grin", xpos="far_left", ypos="head")
|
|
lun "Alright then..." ("annoyed", "base", "base", "mid")
|
|
elif luna_name == "Girl":
|
|
lun "Just [luna_name]?" ("soft", "base", "raised", "mid")
|
|
gen "Yep." ("base", xpos="far_left", ypos="head")
|
|
lun "Alright, I suppose I am a girl after all." ("grin", "narrow", "base", "mid")
|
|
elif luna_name == "Partner":
|
|
lun "[luna_name]?" ("soft", "base", "base", "mid")
|
|
gen "Yes, we're partners in venture are we not?" ("base", xpos="far_left", ypos="head")
|
|
lun "Oh right!" ("angry", "base", "base", "mid")
|
|
lun "Of course, you can call me that!" ("grin", "base", "base", "mid")
|
|
elif luna_name == "Bimbo":
|
|
lun "A what?" ("soft", "base", "base", "mid")
|
|
gen "A Bimbo..." ("base", xpos="far_left", ypos="head")
|
|
lun "Oh... Okay..." ("base", "base", "base", "mid")
|
|
gen "(...{w} Maybe she doesn't know what that means...)" ("base", xpos="far_left", ypos="head")
|
|
elif luna_name == "Minx":
|
|
lun "A mink?" ("soft", "base", "base", "mid")
|
|
gen "No, a--" ("base", xpos="far_left", ypos="head")
|
|
lun "I love minks!" ("smile", "wide", "base", "mid")
|
|
gen "...{w=0.3} Great." ("base", xpos="far_left", ypos="head")
|
|
elif luna_name == "Cumslut":
|
|
lun "Well I do love helping you cum..." ("grin", "narrow", "base", "downL")
|
|
lun "Sure, you can call me that." ("grin", "base", "base", "mid")
|
|
else: #Custom/fallback
|
|
lun "That's not too bad... Sure you can call me that." ("base", "base", "base", "mid")
|
|
|
|
jump luna_talk
|