Continuing from the previous NVL Menus post, we have the window hiding/showing automatically now! Featuring a poem by Discord member skyglitter.
A quick update from last wee: we’ve implemented a menu callback function to handle all the
window hide before entering
menu (nvl=True) and
window show immediately after a player makes a choice.
def _nvl_menu_dialogue_callback(mode, old_modes): old = old_modes if len(old_modes) > 2: if "nvl_menu" == old_modes: _window_show(trans=None) if mode == "nvl": if "nvl_menu" == old: _window_hide(trans=None) config.mode_callbacks.append(_nvl_menu_dialogue_callback)
This snippet checks if we switched between
nvl_menu modes, which Ren’Py conveniently logs for us. If we add this code snippet to a
python block at the beginning of the game, then we can just do:
$ renpy.pause(0.3, hard=False) nn "A few moments later, he leaned towards me, this time sniffing close to my neck." menu(nvl=True): "What are you—": nvl clear "Get the hell away from—": nvl clear $ renpy.pause(0.4, hard=False) mn "Heh, heh. A little on edge, aren't we?" nvl clear $ renpy.pause(0.4, hard=False) show markus 1_nvl with Dissolve (0.2)
This means that as far as updating our menus to NVL-mode goes, we just have to change menu statements to
menu (nvl=True) and set the
n_mode('nvl') flag. Next up is making
n_mode('nvl') set itself automatically!
Life was drained from me and now my mind is not my own Someone has gone through my head and moved all my possessions The lies have shed and now understanding is my lonely throne After all, to be solitary is a madman's traditional profession But perhaps I was too quick to these melancholy moans I am not completely unaccompanied, I make that concession For in Hell there's a man who became my chaperone He held me under his wing until it became an oppression In madness and strength, no one could deny how I'd grown We are equal now and nothing can stop our succession We thrive among the thralls, depraved and the unknown Together we will enjoy the horrors of the world, each as each others obsession -- skyglitter