init offset = -1 style default: properties gui.text_properties() language gui.language style input: properties gui.text_properties("input", accent=True) adjust_spacing False style hyperlink_text: properties gui.text_properties("hyperlink", accent=True) hover_underline True style gui_text: properties gui.text_properties("interface") style button: properties gui.button_properties("button") style button_text is gui_text: properties gui.text_properties("button") yalign 0.5 style label_text is gui_text: properties gui.text_properties("label", accent=True) style prompt_text is gui_text: properties gui.text_properties("prompt") style bar: ysize gui.bar_size left_bar Frame("gui/bar/left.png", gui.bar_borders, tile=gui.bar_tile) right_bar Frame("gui/bar/right.png", gui.bar_borders, tile=gui.bar_tile) style new_bar: ysize gui.bar_size left_bar Frame("gui/bar/left_new.png", gui.bar_borders, tile=gui.bar_tile) right_bar Frame("gui/bar/right_new.png", gui.bar_borders, tile=gui.bar_tile) style stamina_bar: ysize gui.bar_size left_bar Frame("gui/bar/stamina_left.png", gui.bar_borders, tile=gui.bar_tile) right_bar Frame("gui/bar/stamina_right.png", gui.bar_borders, tile=gui.bar_tile) style vbar: xsize gui.bar_size top_bar Frame("gui/bar/top.png", gui.vbar_borders, tile=gui.bar_tile) bottom_bar Frame("gui/bar/bottom.png", gui.vbar_borders, tile=gui.bar_tile) style scrollbar: ysize gui.scrollbar_size base_bar Frame("gui/scrollbar/horizontal_[prefix_]bar.png", gui.scrollbar_borders, tile=gui.scrollbar_tile) thumb Frame("gui/scrollbar/horizontal_[prefix_]thumb.png", gui.scrollbar_borders, tile=gui.scrollbar_tile) style vscrollbar: xsize gui.scrollbar_size base_bar Frame("gui/scrollbar/vertical_[prefix_]bar.png", gui.vscrollbar_borders, tile=gui.scrollbar_tile) thumb Frame("gui/scrollbar/vertical_[prefix_]thumb.png", gui.vscrollbar_borders, tile=gui.scrollbar_tile) style slider: ysize gui.slider_size base_bar Frame("gui/slider/horizontal_[prefix_]bar.png", gui.slider_borders, tile=gui.slider_tile) thumb "gui/slider/horizontal_[prefix_]thumb.png" style vslider: xsize gui.slider_size base_bar Frame("gui/slider/vertical_[prefix_]bar.png", gui.vslider_borders, tile=gui.slider_tile) thumb "gui/slider/vertical_[prefix_]thumb.png" style frame: padding gui.frame_borders.padding background Frame("gui/frame.png", gui.frame_borders, tile=gui.frame_tile) screen say(who, what): style_prefix "say" window: id "window" if who is not None: window: id "namebox" style "namebox" text who id "who" text what id "what" if not renpy.variant("small"): add SideImage() xalign 0.0 yalign 1.0 init python: config.character_id_prefixes.append('namebox') style window is default style say_label is default style say_dialogue is default style say_thought is say_dialogue style namebox is default style namebox_label is say_label style window: xalign 0.5 xfill True yalign gui.textbox_yalign ysize gui.textbox_height background Image("gui/textbox.png", xalign=0.5, yalign=1.0) style block2_multiple2_say_window: xalign 0.5 xfill True yalign 1.08 ysize gui.textbox_height background None style namebox: xpos gui.name_xpos xanchor gui.name_xalign xsize gui.namebox_width ypos gui.name_ypos ysize gui.namebox_height background Frame("gui/namebox.png", gui.namebox_borders, tile=gui.namebox_tile, xalign=gui.name_xalign) padding gui.namebox_borders.padding style say_label: properties gui.text_properties("name", accent=True) xalign gui.name_xalign yalign 0.5 style say_dialogue: properties gui.text_properties("dialogue") xpos gui.dialogue_xpos xsize gui.dialogue_width ypos gui.dialogue_ypos screen input(prompt): style_prefix "input" window: has vbox: xalign gui.dialogue_text_xalign xpos gui.dialogue_xpos xsize gui.dialogue_width ypos gui.dialogue_ypos text prompt style "input_prompt" input id "input" style input_prompt is default style input_prompt: xalign gui.dialogue_text_xalign properties gui.text_properties("input_prompt") style input: xalign gui.dialogue_text_xalign xmaximum gui.dialogue_width screen choice(items): style_prefix "choice" $ space = (1 / len(items))+40 hbox spacing space: for n, i in enumerate(items, 1): key str(n) action i.action textbutton "{size=8}[n]{/size}" + i.caption action i.action screen choice(items): variant "small" style_prefix "choice" vpgrid: cols 2 xpos 40 ypos 670 xspacing 1480 yspacing 20 for i in items: textbutton i.caption: action i.action text_yalign .46 define config.narrator_menu = True style choice_hbox is hbox style choice_button is button style choice_button_text is button_text style choice_hbox: xalign 0.5 ypos 898 yanchor 0.5 style choice_button is default: properties gui.button_properties("choice_button") style choice_button_text is default: properties gui.button_text_properties("choice_button") screen quick_menu(): zorder 100 if quick_menu: hbox: style_prefix "quick" xalign 0.5 yalign 1.0 textbutton _("Skip") action Skip() alternate Skip(fast=True, confirm=True) textbutton _("Status") action ShowMenu() textbutton _("Patreon") action OpenURL("http://patreon.com/diogaoo") init python: config.overlay_screens.append("quick_menu") default quick_menu = False style quick_button is default style quick_button_text is button_text style quick_button: properties gui.button_properties("quick_button") style quick_button_text: properties gui.button_text_properties("quick_button") screen navigation(): vbox: style_prefix "navigation" xpos gui.navigation_xpos yalign 0.5 spacing gui.navigation_spacing if main_menu: if renpy.exists("saves/auto-1-LT1.save") or renpy.version("mobile"): textbutton _("Load Run") action ShowMenu("load"), FilePage("auto") textbutton _("New Run") action Start() textbutton _('Achievements') action ShowMenu("achievement_menu") textbutton _("Gallery") action Show("enemies_screen") textbutton _("Options") action ShowMenu("preferences") textbutton "{size=2}" action NullAction() textbutton _("Patreon") action OpenURL("http://patreon.com/diogaoo") textbutton _("Website") action OpenURL("http://diogaoo.com") textbutton "{size=2}" action NullAction() if not main_menu: text _(" ") text _(" ") textbutton _("Status") action ShowMenu('Status_screen') textbutton _("Enemies") action ShowMenu("enemies_screen") textbutton _('Achievements') action ShowMenu("achievement_menu") text _(" ") textbutton _("Main Menu") action MainMenu() textbutton _("Options") action ShowMenu("preferences") if renpy.variant("pc"): textbutton _("Quit") action Quit(confirm=not main_menu) style navigation_button is gui_button style navigation_button_text is gui_button_text style navigation_button: size_group "navigation" properties gui.button_properties("navigation_button") style navigation_button_text: properties gui.button_text_properties("navigation_button") screen main_menu(): tag menu add gui.main_menu_background frame: style "main_menu_frame" use navigation if gui.show_name: vbox: style "main_menu_vbox" text "[config.name!t]": style "main_menu_title" text "[config.version]": style "main_menu_version" style main_menu_frame is empty style main_menu_vbox is vbox style main_menu_text is gui_text style main_menu_title is main_menu_text style main_menu_version is main_menu_text style main_menu_frame: xsize 420 yfill True background "gui/overlay/main_menu.png" style main_menu_vbox: xalign 1.0 xoffset -30 xmaximum 1200 yalign 1.0 yoffset -30 style main_menu_text: properties gui.text_properties("main_menu", accent=True) style main_menu_title: properties gui.text_properties("title") style main_menu_version: properties gui.text_properties("version") screen game_menu(title, scroll, yinitial=0.0): style_prefix "game_menu" if main_menu: add gui.main_menu_background else: add gui.game_menu_background frame: style "game_menu_outer_frame" has hbox frame: style "game_menu_navigation_frame" frame: style "game_menu_content_frame" if scroll == "viewport": viewport: yinitial yinitial scrollbars "vertical" mousewheel True draggable True pagekeys True side_yfill True has vbox transclude elif scroll == "vpgrid": vpgrid: cols 1 yinitial yinitial scrollbars "vertical" mousewheel True draggable True pagekeys True side_yfill True transclude else: transclude use navigation textbutton _("Return"): style "return_button" action Return() label title if main_menu: key "game_menu" action ShowMenu("main_menu") style game_menu_outer_frame is empty style game_menu_navigation_frame is empty style game_menu_content_frame is empty style game_menu_viewport is gui_viewport style game_menu_side is gui_side style game_menu_scrollbar is gui_vscrollbar style game_menu_label is gui_label style game_menu_label_text is gui_label_text style return_button is navigation_button style return_button_text is navigation_button_text style game_menu_outer_frame: bottom_padding 45 top_padding 180 background "gui/overlay/game_menu.png" style game_menu_navigation_frame: xsize 420 yfill True style game_menu_content_frame: left_margin 60 right_margin 30 top_margin 15 style game_menu_viewport: xsize 1380 style game_menu_vscrollbar: unscrollable gui.unscrollable style game_menu_side: spacing 15 style game_menu_label: xpos 75 ysize 180 style game_menu_label_text: size gui.title_text_size color gui.accent_color yalign 0.5 style return_button: xpos gui.navigation_xpos yalign 1.0 yoffset -45 screen about(): tag menu use game_menu(_("About"), scroll="viewport"): style_prefix "about" vbox: label "[config.name!t]" text _("Version [config.version!t]\n") if gui.about: text "[gui.about!t]\n" text _("Made with {a=https://www.renpy.org/}Ren'Py{/a} [renpy.version_only].\n\n[renpy.license!t]") style about_label is gui_label style about_label_text is gui_label_text style about_text is gui_text style about_label_text: size gui.label_text_size screen save(): tag menu use file_slots(_("Save")) screen load(): tag menu use file_slots(_("Load")) screen file_slots(title): default page_name_value = FilePageNameInputValue(pattern=_("Page {}"), auto=_("Automatic save"), quick=_("Quick saves")) use game_menu(title): fixed: order_reverse True button: style "page_label" key_events True xalign 0.5 action page_name_value.Toggle() input: style "page_label_text" value page_name_value hbox: style_prefix "slot" xalign 0.5 yalign 0.3 button: action FileAction(1) has vbox add FileScreenshot(1) xalign 0.5 text FileTime(1, format=_("{#file_time}%A, %B %d %Y, %H:%M"), empty=_("empty slot")): style "slot_time_text" text FileSaveName(1): style "slot_name_text" key "save_delete" action FileDelete(1) hbox: style_prefix "page" xalign 0.5 yalign 1.0 spacing gui.page_spacing style page_label is gui_label style page_label_text is gui_label_text style page_button is gui_button style page_button_text is gui_button_text style slot_button is gui_button style slot_button_text is gui_button_text style slot_time_text is slot_button_text style slot_name_text is slot_button_text style page_label: xpadding 75 ypadding 5 style page_label_text: text_align 0.5 layout "subtitle" hover_color gui.hover_color style page_button: properties gui.button_properties("page_button") style page_button_text: properties gui.button_text_properties("page_button") style slot_button: properties gui.button_properties("slot_button") style slot_button_text: properties gui.button_text_properties("slot_button") screen preferences(): tag menu use game_menu(_("Options"), scroll="viewport"): vbox: hbox: box_wrap True if renpy.variant("pc") or renpy.variant("web"): vbox: style_prefix "radio" label _("Display") textbutton _("Window") action Preference("display", "window") textbutton _("Fullscreen") action Preference("display", "fullscreen") vbox: style_prefix "check" label _("Skip") textbutton _("Unseen Text") action Preference("skip", "toggle") textbutton _("After Choices") action Preference("after choices", "toggle") textbutton _("Transitions") action InvertSelected(Preference("transitions", "toggle")) vbox: style_prefix "check" label _("Tooltip") textbutton _("Fixed") action ToggleVariable("ttfixed", True, False) if renpy.variant("pc"): vbox: style_prefix "check" label _("Quick Time Event") textbutton _("Mouse") action SetVariable("mash_key", "mouseup_1") textbutton _("Spacebar") action SetVariable("mash_key", "K_SPACE") null height (4 * gui.pref_spacing) hbox: style_prefix "slider" box_wrap True vbox: if config.has_music: label _("Music Volume") hbox: bar value Preference("music volume") if config.has_sound: label _("Sound Effect Volume") hbox: bar value Preference("sound volume") if config.sample_sound: textbutton _("Test") action Play("sound", config.sample_sound) if config.has_voice: label _("Voice Volume") hbox: bar value Preference("voice volume") if config.sample_voice: textbutton _("Test") action Play("voice", config.sample_voice) if renpy.variant("pc") and main_menu: textbutton ("{color=FF0000}{b}Clear All Data{/b}{/color}") action SetVariable("alarm", 10), Show("delete_save_screen") ypos 80 style pref_label is gui_label style pref_label_text is gui_label_text style pref_vbox is vbox style radio_label is pref_label style radio_label_text is pref_label_text style radio_button is gui_button style radio_button_text is gui_button_text style radio_vbox is pref_vbox style check_label is pref_label style check_label_text is pref_label_text style check_button is gui_button style check_button_text is gui_button_text style check_vbox is pref_vbox style slider_label is pref_label style slider_label_text is pref_label_text style slider_slider is gui_slider style slider_button is gui_button style slider_button_text is gui_button_text style slider_pref_vbox is pref_vbox style mute_all_button is check_button style mute_all_button_text is check_button_text style pref_label: top_margin gui.pref_spacing bottom_margin 3 style pref_label_text: yalign 1.0 style pref_vbox: xsize 338 style radio_vbox: spacing gui.pref_button_spacing style radio_button: properties gui.button_properties("radio_button") foreground "gui/button/radio_[prefix_]foreground.png" style radio_button_text: properties gui.button_text_properties("radio_button") style check_vbox: spacing gui.pref_button_spacing style check_button: properties gui.button_properties("check_button") foreground "gui/button/check_[prefix_]foreground.png" style check_button_text: properties gui.button_text_properties("check_button") style slider_slider: xsize 525 style slider_button: properties gui.button_properties("slider_button") yalign 0.5 left_margin 15 style slider_button_text: properties gui.button_text_properties("slider_button") style slider_vbox: xsize 675 screen history(): predict False tag menu use game_menu(_("History"), scroll=("vpgrid" if gui.history_height else "viewport"), yinitial=1.0): style_prefix "history" for h in _history_list: window: has fixed: yfit True if h.who: label h.who: style "history_name" substitute False if "color" in h.who_args: text_color h.who_args["color"] $ what = renpy.filter_text_tags(h.what, allow=gui.history_allow_tags) text what: substitute False if not _history_list: label _("The dialogue history is empty.") define gui.history_allow_tags = { "alt", "noalt" } style history_window is empty style history_name is gui_label style history_name_text is gui_label_text style history_text is gui_text style history_text is gui_text style history_label is gui_label style history_label_text is gui_label_text style history_window: xfill True ysize gui.history_height style history_name: xpos gui.history_name_xpos xanchor gui.history_name_xalign ypos gui.history_name_ypos xsize gui.history_name_width style history_name_text: min_width gui.history_name_width text_align gui.history_name_xalign style history_text: xpos gui.history_text_xpos ypos gui.history_text_ypos xanchor gui.history_text_xalign xsize gui.history_text_width min_width gui.history_text_width text_align gui.history_text_xalign layout ("subtitle" if gui.history_text_xalign else "tex") style history_label: xfill True style history_label_text: xalign 0.5 screen help(): tag menu default device = "keyboard" use game_menu(_("Help"), scroll="viewport"): style_prefix "help" vbox: spacing 23 hbox: textbutton _("Keyboard") action SetScreenVariable("device", "keyboard") textbutton _("Mouse") action SetScreenVariable("device", "mouse") if GamepadExists(): textbutton _("Gamepad") action SetScreenVariable("device", "gamepad") if device == "keyboard": use keyboard_help elif device == "mouse": use mouse_help elif device == "gamepad": use gamepad_help screen keyboard_help(): hbox: label _("Enter") text _("Advances dialogue and activates the interface.") hbox: label _("Space") text _("Advances dialogue without selecting choices.") hbox: label _("Arrow Keys") text _("Navigate the interface.") hbox: label _("Escape") text _("Accesses the game menu.") hbox: label _("Ctrl") text _("Skips dialogue while held down.") hbox: label _("Tab") text _("Toggles dialogue skipping.") hbox: label _("Page Up") text _("Rolls back to earlier dialogue.") hbox: label _("Page Down") text _("Rolls forward to later dialogue.") hbox: label "H" text _("Hides the user interface.") hbox: label "S" text _("Takes a screenshot.") hbox: label "V" text _("Toggles assistive {a=https://www.renpy.org/l/voicing}self-voicing{/a}.") hbox: label "Shift+A" text _("Opens the accessibility menu.") screen mouse_help(): hbox: label _("Left Click") text _("Advances dialogue and activates the interface.") hbox: label _("Middle Click") text _("Hides the user interface.") hbox: label _("Right Click") text _("Accesses the game menu.") hbox: label _("Mouse Wheel Up\nClick Rollback Side") text _("Rolls back to earlier dialogue.") hbox: label _("Mouse Wheel Down") text _("Rolls forward to later dialogue.") screen gamepad_help(): hbox: label _("Right Trigger\nA/Bottom Button") text _("Advances dialogue and activates the interface.") hbox: label _("Left Trigger\nLeft Shoulder") text _("Rolls back to earlier dialogue.") hbox: label _("Right Shoulder") text _("Rolls forward to later dialogue.") hbox: label _("D-Pad, Sticks") text _("Navigate the interface.") hbox: label _("Start, Guide") text _("Accesses the game menu.") hbox: label _("Y/Top Button") text _("Hides the user interface.") textbutton _("Calibrate") action GamepadCalibrate() style help_button is gui_button style help_button_text is gui_button_text style help_label is gui_label style help_label_text is gui_label_text style help_text is gui_text style help_button: properties gui.button_properties("help_button") xmargin 12 style help_button_text: properties gui.button_text_properties("help_button") style help_label: xsize 375 right_padding 30 style help_label_text: size gui.text_size xalign 1.0 text_align 1.0 screen confirm(message, yes_action, no_action): modal True zorder 200 style_prefix "confirm" add "gui/overlay/confirm.png" frame: has vbox: xalign .5 yalign .5 spacing 45 label _(message): style "confirm_prompt" xalign 0.5 hbox: xalign 0.5 spacing 150 textbutton _("Yes") action yes_action textbutton _("No") action no_action key "game_menu" action no_action style confirm_frame is gui_frame style confirm_prompt is gui_prompt style confirm_prompt_text is gui_prompt_text style confirm_button is gui_medium_button style confirm_button_text is gui_medium_button_text style confirm_frame: background Frame([ "gui/confirm_frame.png", "gui/frame.png"], gui.confirm_frame_borders, tile=gui.frame_tile) padding gui.confirm_frame_borders.padding xalign .5 yalign .5 style confirm_prompt_text: text_align 0.5 layout "subtitle" style confirm_button: properties gui.button_properties("confirm_button") style confirm_button_text: properties gui.button_text_properties("confirm_button") screen skip_indicator(): zorder 100 style_prefix "skip" frame: has hbox: spacing 9 text _("Skipping") text "▸" at delayed_blink(0.0, 1.0) style "skip_triangle" text "▸" at delayed_blink(0.2, 1.0) style "skip_triangle" text "▸" at delayed_blink(0.4, 1.0) style "skip_triangle" transform delayed_blink(delay, cycle): alpha .5 pause delay block: linear .2 alpha 1.0 pause .2 linear .2 alpha 0.5 pause (cycle - .4) repeat style skip_frame is empty style skip_text is gui_text style skip_triangle is skip_text style skip_frame: ypos gui.skip_ypos background Frame("gui/skip.png", gui.skip_frame_borders, tile=gui.frame_tile) padding gui.skip_frame_borders.padding style skip_text: size gui.notify_text_size style skip_triangle: font "DejaVuSans.ttf" screen notify(message): zorder 100 style_prefix "notify" frame at notify_appear: text "[message!tq]" timer 1 action Hide('notify') transform notify_appear: on show: alpha 0 linear .25 alpha 1.0 on hide: linear .5 alpha 0.0 style notify_frame is empty style notify_text is gui_text style notify_frame: ypos 170 xalign .5 background Frame("gui/textbox.png", gui.notify_frame_borders, tile=gui.frame_tile) padding gui.notify_frame_borders.padding style notify_text: properties gui.text_properties("notify") screen new_version(): frame: xsize 600 xalign .5 ysize 300 yalign .5 text "{color=C0C0C0}Your data has been updated to {color=FFFFFF}{b}v[config.version]{/color}" size 24 xalign .5 yalign .15 text "{color=808080}This month's arena challenge is {color=FF0000}{b}"+str(arena_month_enemy).capitalize() xalign .5 yalign .28 textbutton ("{size=42}Play") action Return(True) xalign .5 yalign .57 textbutton ("{size=25}Patch Notes\n{size=12}Opens a browser window") action OpenURL("https://www.diogaoo.com/post/hero-corruption-2-v1-65-available-on-patreon") xalign .5 yalign .88 screen nvl(dialogue, items): window: style "nvl_window" has vbox: spacing gui.nvl_spacing if gui.nvl_height: vpgrid: cols 1 yinitial 1.0 use nvl_dialogue(dialogue) else: use nvl_dialogue(dialogue) for i in items: textbutton i.caption: action i.action style "nvl_button" add SideImage() xalign 0.0 yalign 1.0 screen nvl_dialogue(dialogue): for d in dialogue: window: id d.window_id has fixed: yfit gui.nvl_height is None if d.who is not None: text d.who: id d.who_id text d.what: id d.what_id define config.nvl_list_length = gui.nvl_list_length style nvl_window is default style nvl_entry is default style nvl_label is say_label style nvl_dialogue is say_dialogue style nvl_button is button style nvl_button_text is button_text style nvl_window: xfill True yfill True background "gui/nvl.png" padding gui.nvl_borders.padding style nvl_entry: xfill True ysize gui.nvl_height style nvl_label: xpos gui.nvl_name_xpos xanchor gui.nvl_name_xalign ypos gui.nvl_name_ypos yanchor 0.0 xsize gui.nvl_name_width min_width gui.nvl_name_width text_align gui.nvl_name_xalign style nvl_dialogue: xpos gui.nvl_text_xpos xanchor gui.nvl_text_xalign ypos gui.nvl_text_ypos xsize gui.nvl_text_width min_width gui.nvl_text_width text_align gui.nvl_text_xalign layout ("subtitle" if gui.nvl_text_xalign else "tex") style nvl_thought: xpos gui.nvl_thought_xpos xanchor gui.nvl_thought_xalign ypos gui.nvl_thought_ypos xsize gui.nvl_thought_width min_width gui.nvl_thought_width text_align gui.nvl_thought_xalign layout ("subtitle" if gui.nvl_text_xalign else "tex") style nvl_button: properties gui.button_properties("nvl_button") xpos gui.nvl_button_xpos xanchor gui.nvl_button_xalign style nvl_button_text: properties gui.button_text_properties("nvl_button") screen shop_screen(theme): modal True vbox: xalign .5 yalign .26 xsize 420 ysize ((len(shop_items)*40) + 360) frame: if theme == "blacksmith" or theme == "sell": text "{color=FFFF00}{size=20}Your Gold: {b}[gold]{/color}{/b}" xalign 0.5 yalign .05 for i in shop_items: textbutton shop_items[shop_items.index(i)]+": "+str(materials[shop_items[shop_items.index(i)]][0]) xalign .5 ypos 80+((shop_items.index(i))*50) action SetVariable("temp", i), Return(True) elif theme == "church": text "{color=FFFF00}{size=20}Your Gold: {b}[gold]{/color}{/b}" xalign 0.5 yalign .05 for i in shop_items: if i == "Corruption": textbutton shop_items[shop_items.index(i)]+": "+str(corruption) xalign .5 ypos 80+((shop_items.index(i))*50) action SetVariable("temp", "Corruption"), Return(True) else: textbutton shop_items[shop_items.index(i)]+": "+str(addictions[shop_items[shop_items.index(i)]]) xalign .5 ypos 80+((shop_items.index(i))*50) action SetVariable("temp", i), Return(True) elif theme == "refine": text "{color=00FFFF}{size=20}Iron: {b}"+str(materials["Iron"][0])+"{space=20}{/b}{color=BF7FFF}Jewel: {b}"+str(materials["Jewel"][0])+"{/color}{/b}" xalign 0.5 yalign .05 for i in shop_items: textbutton shop_items[shop_items.index(i)]+" +"+str(equipments[i][5]) xalign .5 ypos 80+((shop_items.index(i))*50) action SetVariable("temp", i), Return(True) else: text "{color=FFFF00}{size=20}Your Gold: {b}[gold]{/color}{/b}" xalign 0.5 yalign .05 for i in shop_items: textbutton shop_items[shop_items.index(i)] xalign .5 ypos 80+((shop_items.index(i))*50) action SetVariable("temp", i), Return(True) textbutton "Back" xalign .5 ypos ((len(shop_items)*40) + 270) action SetVariable("temp", "none"), Return(True) screen materials_shop(shopkeeper): default iron_cart = materials["Iron"][0] default wood_cart = materials["Wood"][0] default fabric_cart = materials["Fabric"][0] default plastic_cart = materials["Plastic"][0] default rubber_cart = materials["Rubber"][0] default jewel_cart = materials["Jewel"][0] default temp_gold = gold hbox: xalign .47 ypos -10 frame: background ("gui/hugeframe.png") xsize 1363 ysize 900 text "{color=FFFFFF}[shopkeeper]" size 56 xalign .27 yalign .1 text "{color=A0A0A0}Stock" size 16 xalign .398 yalign .25 text "{color=A0A0A0}Cost" size 16 xalign .492 yalign .25 add "gui/shop/iron_icon.png" xalign .09 yalign .3 text "{color=C0C0C0}Iron" size 42 xpos 200 yalign .3 xanchor 0 text "{color=C0C0C0}∞" size 42 xalign .4 yalign .305 text "{color=FFFF00}25" size 30 xalign .495 yalign .31 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .3 action SetLocalVariable("iron_cart", (iron_cart+1)), If(iron_cart+1 > materials["Iron"][0], true=[(SetLocalVariable("temp_gold", (temp_gold-25)))], false=[(SetLocalVariable("temp_gold", (temp_gold-10)))]) if backpack == True or iron_cart > materials["Iron"][0]: imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .3 action If(iron_cart >= 1, true=[SetLocalVariable("iron_cart", (iron_cart-1)), If(iron_cart > materials["Iron"][0], true=[(SetLocalVariable("temp_gold", (temp_gold+25)))], false=[(SetLocalVariable("temp_gold", (temp_gold+10)))])]) add "gui/shop/wood_icon.png" xalign .09 yalign .42 text "{color=C0C0C0}Wood" size 42 xpos 200 yalign .42 xanchor 0 text "{color=C0C0C0}∞" size 42 xalign .4 yalign .425 text "{color=FFFF00}25" size 30 xalign .495 yalign .425 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .42 action SetLocalVariable("wood_cart", (wood_cart+1)), If(wood_cart+1 > materials["Wood"][0], true=[(SetLocalVariable("temp_gold", (temp_gold-25)))], false=[(SetLocalVariable("temp_gold", (temp_gold-10)))]) if backpack == True or wood_cart > materials["Wood"][0]: imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .42 action If(wood_cart >= 1, true=[SetLocalVariable("wood_cart", (wood_cart-1)), If(wood_cart > materials["Wood"][0], true=[(SetLocalVariable("temp_gold", (temp_gold+25)))], false=[(SetLocalVariable("temp_gold", (temp_gold+10)))])]) add "gui/shop/fabric_icon.png" xalign .09 yalign .54 text "{color=C0C0C0}Fabric" size 42 xpos 200 yalign .54 xanchor 0 text "{color=C0C0C0}∞" size 42 xalign .4 yalign .54 text "{color=FFFF00}25" size 30 xalign .495 yalign .54 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .54 action SetLocalVariable("fabric_cart", (fabric_cart+1)), If(fabric_cart+1 > materials["Fabric"][0], true=[(SetLocalVariable("temp_gold", (temp_gold-25)))], false=[(SetLocalVariable("temp_gold", (temp_gold-10)))]) if backpack == True or fabric_cart > materials["Fabric"][0]: imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .54 action If(fabric_cart >= 1, true=[SetLocalVariable("fabric_cart", (fabric_cart-1)), If(fabric_cart > materials["Fabric"][0], true=[(SetLocalVariable("temp_gold", (temp_gold+25)))], false=[(SetLocalVariable("temp_gold", (temp_gold+10)))])]) add "gui/shop/plastic_icon.png" xalign .09 yalign .66 text "{color=C0C0C0}Plastic" size 42 xpos 200 yalign .66 xanchor 0 text "{color=C0C0C0}∞" size 42 xalign .4 yalign .66 text "{color=FFFF00}25" size 30 xalign .495 yalign .66 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .66 action SetLocalVariable("plastic_cart", (plastic_cart+1)), If(plastic_cart+1 > materials["Plastic"][0], true=[(SetLocalVariable("temp_gold", (temp_gold-25)))], false=[(SetLocalVariable("temp_gold", (temp_gold-10)))]) if backpack == True or plastic_cart > materials["Plastic"][0]: imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .66 action If(plastic_cart >= 1, true=[SetLocalVariable("plastic_cart", (plastic_cart-1)), If(plastic_cart > materials["Plastic"][0], true=[(SetLocalVariable("temp_gold", (temp_gold+25)))], false=[(SetLocalVariable("temp_gold", (temp_gold+10)))])]) add "gui/shop/rubber_icon.png" xalign .09 yalign .78 text "{color=C0C0C0}Rubber" size 42 xpos 200 yalign .78 xanchor 0 text "{color=C0C0C0}∞" size 42 xalign .4 yalign .775 text "{color=FFFF00}50" size 30 xalign .495 yalign .775 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .78 action SetLocalVariable("rubber_cart", (rubber_cart+1)), If(rubber_cart+1 > materials["Rubber"][0], true=[(SetLocalVariable("temp_gold", (temp_gold-50)))], false=[(SetLocalVariable("temp_gold", (temp_gold-25)))]) if backpack == True or rubber_cart > materials["Rubber"][0]: imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .78 action If(rubber_cart >= 1, true=[SetLocalVariable("rubber_cart", (rubber_cart-1)), If(rubber_cart > materials["Rubber"][0], true=[(SetLocalVariable("temp_gold", (temp_gold+50)))], false=[(SetLocalVariable("temp_gold", (temp_gold+25)))])]) add "gui/shop/jewel_icon.png" xalign .09 yalign .9 text "{color=C0C0C0}Jewel" size 42 xpos 200 yalign .9 xanchor 0 text "{color=C0C0C0}∞" size 42 xalign .4 yalign .895 text "{color=FFFF00}50" size 30 xalign .495 yalign .89 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .9 action SetLocalVariable("jewel_cart", (jewel_cart+1)), If(jewel_cart+1 > materials["Jewel"][0], true=[(SetLocalVariable("temp_gold", (temp_gold-50)))], false=[(SetLocalVariable("temp_gold", (temp_gold-25)))]) if backpack == True or jewel_cart > materials["Jewel"][0]: imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .9 action If(jewel_cart >= 1, true=[SetLocalVariable("jewel_cart", (jewel_cart-1)), If(jewel_cart > materials["Jewel"][0], true=[(SetLocalVariable("temp_gold", (temp_gold+50)))], false=[(SetLocalVariable("temp_gold", (temp_gold+25)))])]) text "{color=FFFFFF}[name]" size 52 xalign .75 yalign .08 add "gui/shop/gold_icon.png" xalign .71 yalign .15 if temp_gold >= 0: text "{color=FFFFFF}x{color=FFFF00} [temp_gold]" xalign .73 yalign .165 size 24 xanchor 0 else: text "{b}{color=FF0000}x [temp_gold]" xalign .73 yalign .165 size 24 xanchor 0 add "gui/shop/iron_icon.png" xalign .58 yalign .3 text "{color=C0C0C0}Iron{size=32} x {size=54}[iron_cart]" size 42 xalign .61 yalign .3 xanchor 0 add "gui/shop/wood_icon.png" xalign .58 yalign .42 text "{color=C0C0C0}Wood{size=32} x {size=54}[wood_cart]" size 42 xalign .61 yalign .42 xanchor 0 add "gui/shop/fabric_icon.png" xalign .58 yalign .54 text "{color=C0C0C0}Fabric{size=32} x {size=54}[fabric_cart]" size 42 xalign .61 yalign .54 xanchor 0 add "gui/shop/plastic_icon.png" xalign .58 yalign .66 text "{color=C0C0C0}Plastic{size=32} x {size=54}[plastic_cart]" size 42 xalign .61 yalign .66 xanchor 0 add "gui/shop/rubber_icon.png" xalign .58 yalign .78 text "{color=C0C0C0}Rubber{size=32} x {size=54}[rubber_cart]" size 42 xalign .61 yalign .78 xanchor 0 add "gui/shop/jewel_icon.png" xalign .58 yalign .9 text "{color=C0C0C0}Jewel{size=32} x {size=54}[jewel_cart]" size 42 xalign .61 yalign .9 xanchor 0 add "gui/shop_vborder.png" xalign .52 yalign .5 imagebutton idle "gui/button/cbutton.png" hover "gui/button/hover_cbutton.png" xalign .515 yalign 1.04 anchor (.5, .5) action If(temp_gold >= 0, true=[Function(apply_shop, iron_cart, wood_cart, fabric_cart, plastic_cart, rubber_cart, jewel_cart, temp_gold), Return()]) imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .515 yalign 1.12 anchor (.5, .5) action Return() screen favor_shop(): default tt = Tooltip(" ") default favor_cart_name = [] default favor_cart_amount = [] default item1_name = favor_shop_prize_pool_name[0] default item1_price = favor_prizes_dic[item1_name][1] default item1_stock = favor_shop_prize_pool_amount[0] default item2_name = favor_shop_prize_pool_name[1]+" T4" default item2_price = round(techniques_dic[item2_name.replace(" T4", "")][2]*0.5) default item2_stock = favor_shop_prize_pool_amount[1] default item3_name = favor_shop_prize_pool_name[2] default item3_price = favor_prizes_dic[item3_name][1] default item3_stock = favor_shop_prize_pool_amount[2] default item4_name = favor_shop_prize_pool_name[3] default item4_price = favor_prizes_dic[item4_name][1] default item4_stock = favor_shop_prize_pool_amount[3] default item5_name = favor_shop_prize_pool_name[4] default item5_price = favor_prizes_dic[item5_name][1] default item5_stock = favor_shop_prize_pool_amount[4] default item6_name = favor_shop_prize_pool_name[5] default item6_price = favor_prizes_dic[item6_name][1] default item6_stock = favor_shop_prize_pool_amount[5] default temp_favor = favor hbox: xalign .47 ypos -10 frame: background ("gui/hugeframe.png") xsize 1363 ysize 900 text "{color=FFFFFF}Queen" size 56 xalign .27 yalign .1 text "{color=A0A0A0}Stock" size 16 xalign .398 yalign .23 text "{color=A0A0A0}Cost" size 16 xalign .492 yalign .23 add "gui/shop/"+item1_name.lower().replace(" ", "")+"_icon.png" xalign .09 yalign .3 text "{color=C0C0C0}[item1_name]" size 26 xpos 190 yalign .3 text "{color=C0C0C0}[item1_stock]" size 42 xalign .4 yalign .295 text "{color=FFFF00}[item1_price]" size 30 xalign .495 yalign .3 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .29 action If(item1_stock > 0, true=[SetLocalVariable("item1_stock", (item1_stock - 1)), SetLocalVariable("temp_favor", (temp_favor - item1_price)), Function(add_to_cart, favor_cart_name, favor_cart_amount, item1_name)]) imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .29 action If(item1_stock < favor_shop_prize_pool_amount[0], true=[SetLocalVariable("item1_stock", (item1_stock + 1)), SetLocalVariable("temp_favor", (temp_favor + item1_price)), Function(remove_from_cart, favor_cart_name, favor_cart_amount, item1_name)]) add "gui/shop/scroll_icon.png" xalign .09 yalign .41 textbutton "{color=C0C0C0}{size=26}"+item2_name xpos 190 yalign .41 action NullAction() hovered tt.Action(techniques_dic[item2_name.replace(" T4", "")][0]) text "{color=C0C0C0}[item2_stock]" size 42 xalign .4 yalign .41 text "{color=FFFF00}[item2_price]" size 30 xalign .495 yalign .415 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .41 action If(item2_stock > 0, true=[SetLocalVariable("item2_stock", (item2_stock - 1)), SetLocalVariable("temp_favor", (temp_favor - item2_price)), Function(add_to_cart, favor_cart_name, favor_cart_amount, item2_name)]) imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .41 action If(item2_stock < favor_shop_prize_pool_amount[1], true=[SetLocalVariable("item2_stock", (item2_stock + 1)), SetLocalVariable("temp_favor", (temp_favor + item2_price)), Function(remove_from_cart, favor_cart_name, favor_cart_amount, item2_name)]) add "gui/shop/"+item3_name.lower().replace(" ", "")+"_icon.png" xalign .09 yalign .52 text "{color=C0C0C0}[item3_name]" size 26 xpos 190 yalign .52 text "{color=C0C0C0}[item3_stock]" size 42 xalign .4 yalign .52 text "{color=FFFF00}[item3_price]" size 30 xalign .495 yalign .52 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .52 action If(item3_stock > 0, true=[SetLocalVariable("item3_stock", (item3_stock - 1)), SetLocalVariable("temp_favor", (temp_favor - item3_price)), Function(add_to_cart, favor_cart_name, favor_cart_amount, item3_name)]) imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .52 action If(item3_stock < favor_shop_prize_pool_amount[2], true=[SetLocalVariable("item3_stock", (item3_stock + 1)), SetLocalVariable("temp_favor", (temp_favor + item3_price)), Function(remove_from_cart, favor_cart_name, favor_cart_amount, item3_name)]) add "gui/shop/"+item4_name.lower().replace(" ", "")+"_icon.png" xalign .09 yalign .63 text "{color=C0C0C0}[item4_name]" size 26 xpos 190 yalign .63 text "{color=C0C0C0}[item4_stock]" size 42 xalign .4 yalign .63 text "{color=FFFF00}[item4_price]" size 30 xalign .495 yalign .63 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .63 action If(item4_stock > 0, true=[SetLocalVariable("item4_stock", (item4_stock - 1)), SetLocalVariable("temp_favor", (temp_favor - item4_price)), Function(add_to_cart, favor_cart_name, favor_cart_amount, item4_name)]) imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .63 action If(item4_stock < favor_shop_prize_pool_amount[3], true=[SetLocalVariable("item4_stock", (item4_stock + 1)), SetLocalVariable("temp_favor", (temp_favor + item4_price)), Function(remove_from_cart, favor_cart_name, favor_cart_amount, item4_name)]) add "gui/shop/"+item5_name.lower().replace(" ", "")+"_icon.png" xalign .09 yalign .74 text "{color=C0C0C0}[item5_name]" size 26 xpos 190 yalign .74 text "{color=C0C0C0}[item5_stock]" size 42 xalign .4 yalign .74 text "{color=FFFF00}[item5_price]" size 30 xalign .495 yalign .735 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .74 action If(item5_stock > 0, true=[SetLocalVariable("item5_stock", (item5_stock - 1)), SetLocalVariable("temp_favor", (temp_favor - item5_price)), Function(add_to_cart, favor_cart_name, favor_cart_amount, item5_name)]) imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .74 action If(item5_stock < favor_shop_prize_pool_amount[4], true=[SetLocalVariable("item5_stock", (item5_stock + 1)), SetLocalVariable("temp_favor", (temp_favor + item5_price)), Function(remove_from_cart, favor_cart_name, favor_cart_amount, item5_name)]) add "gui/shop/"+item6_name.lower().replace(" ", "")+"_icon.png" xalign .09 yalign .85 text "{color=C0C0C0}[item6_name]" size 28 xpos 190 yalign .85 text "{color=C0C0C0}[item6_stock]" size 42 xalign .4 yalign .85 text "{color=FFFF00}[item6_price]" size 30 xalign .495 yalign .85 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .85 action If(item6_stock > 0, true=[SetLocalVariable("item6_stock", (item6_stock - 1)), SetLocalVariable("temp_favor", (temp_favor - item6_price)), Function(add_to_cart, favor_cart_name, favor_cart_amount, item6_name)]) imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .85 action If(item6_stock < favor_shop_prize_pool_amount[5], true=[SetLocalVariable("item6_stock", (item6_stock + 1)), SetLocalVariable("temp_favor", (temp_favor + item6_price)), Function(remove_from_cart, favor_cart_name, favor_cart_amount, item6_name)]) text "{color=A0A0A0}Restock in "+str(7-(day%7))+" days" size 18 xalign .27 yalign .96 text "{color=FFFFFF}[name]" size 52 xalign .75 yalign .08 add "gui/shop/favor_icon.png" xalign .71 yalign .15 if temp_favor >= 0: text "{color=FFFFFF}x{color=FFFF00} [temp_favor]" xalign .73 yalign .165 size 24 xanchor 0 else: text "{b}{color=FF0000}x [temp_favor]" xalign .73 yalign .165 size 24 xanchor 0 for i in favor_cart_name: if " T4" in favor_cart_name[favor_cart_name.index(i)]: add "gui/shop/scroll_icon.png" xalign .58 ypos (235 + favor_cart_name.index(i)*95) else: add "gui/shop/"+i.lower().replace(" ", "")+"_icon.png" xalign .58 ypos (235 + favor_cart_name.index(i)*95) text "{color=C0C0C0}[i] {size=24}x{/size}"+str(favor_cart_amount[favor_cart_name.index(i)]) size 32 xalign .61 ypos (250 + favor_cart_name.index(i)*95) xanchor 0 add "gui/shop_vborder.png" xalign .52 yalign .5 imagebutton idle "gui/button/cbutton.png" hover "gui/button/hover_cbutton.png" xalign .515 yalign 1.04 anchor (.5, .5) action If(temp_favor >= 0, true=[Function(apply_favor_shop, favor_cart_name, favor_cart_amount, temp_favor), Return()]) imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .515 yalign 1.12 anchor (.5, .5) action Return() if tt.value != " ": if ttfixed == True: frame: background Frame("gui/tooltip.png") xalign .5 yalign .16 text tt.value else: frame: background Frame("gui/tooltip.png") xpos x+100 ypos y+50 text tt.value screen potions_shop(greenpotion_price_now, pinkpotion_price_now, orangepotion_price_now): default potion_cart_name = [] default potion_cart_amount = [] default purplepotion_price = (day*5)+5 default redpotion_price = (day*5)+5 default greenpotion_price = greenpotion_price_now default pinkpotion_price = pinkpotion_price_now default orangepotion_price = orangepotion_price_now default purplepotion_cart = consumables["Purple Potion"] default redpotion_cart = consumables["Red Potion"] default greenpotion_cart = consumables["Green Potion"] default pinkpotion_cart = consumables["Pink Potion"] default orangepotion_cart = consumables["Orange Potion"] default temp_gold = gold hbox: xalign .47 ypos -10 frame: background ("gui/hugeframe.png") xsize 1363 ysize 900 text "{color=FFFFFF}Janna" size 56 xalign .27 yalign .1 text "{color=A0A0A0}Stock" size 16 xalign .398 yalign .25 text "{color=A0A0A0}Cost" size 16 xalign .492 yalign .25 add "gui/shop/purplepotion_icon.png" xalign .09 yalign .3 text "{color=C0C0C0}Purple Potion" size 28 xpos 190 yalign .31 text "{color=C0C0C0}∞" size 42 xalign .4 yalign .305 text "{color=FFFF00}[purplepotion_price]" size 30 xalign .495 yalign .31 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .3 action SetLocalVariable("purplepotion_cart", (purplepotion_cart+1)), SetLocalVariable("temp_gold", (temp_gold-purplepotion_price)) if purplepotion_cart > consumables["Purple Potion"]: imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .3 action SetLocalVariable("purplepotion_cart", (purplepotion_cart-1)), SetLocalVariable("temp_gold", (temp_gold+purplepotion_price)) add "gui/shop/redpotion_icon.png" xalign .09 yalign .42 text "{color=C0C0C0}Red Potion" size 28 xpos 190 yalign .42 text "{color=C0C0C0}∞" size 42 xalign .4 yalign .425 text "{color=FFFF00}[redpotion_price]" size 30 xalign .495 yalign .43 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .42 action SetLocalVariable("redpotion_cart", (redpotion_cart+1)), SetLocalVariable("temp_gold", (temp_gold-redpotion_price)) if redpotion_cart > consumables["Red Potion"]: imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .42 action SetLocalVariable("redpotion_cart", (redpotion_cart-1)), SetLocalVariable("temp_gold", (temp_gold+redpotion_price)) add "gui/shop/greenpotion_icon.png" xalign .09 yalign .54 text "{color=C0C0C0}Green Potion" size 28 xpos 190 yalign .54 text "{color=C0C0C0}∞" size 42 xalign .4 yalign .54 text "{color=FFFF00}[greenpotion_price]" size 30 xalign .495 yalign .54 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .54 action SetLocalVariable("greenpotion_cart", (greenpotion_cart+1)), SetLocalVariable("temp_gold", (temp_gold-greenpotion_price)), SetLocalVariable("greenpotion_price", (greenpotion_price+10)) if greenpotion_cart > consumables["Green Potion"]: imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .54 action SetLocalVariable("greenpotion_cart", (greenpotion_cart-1)), SetLocalVariable("temp_gold", (temp_gold+(greenpotion_price-10))), SetLocalVariable("greenpotion_price", (greenpotion_price-10)) add "gui/shop/pinkpotion_icon.png" xalign .09 yalign .665 text "{color=C0C0C0}Pink Potion" size 28 xpos 190 yalign .66 text "{color=C0C0C0}∞" size 42 xalign .4 yalign .655 text "{color=FFFF00}[pinkpotion_price]" size 30 xalign .495 yalign .66 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .66 action SetLocalVariable("pinkpotion_cart", (pinkpotion_cart+1)), SetLocalVariable("temp_gold", (temp_gold-pinkpotion_price)), SetLocalVariable("pinkpotion_price", (pinkpotion_price+10)) if pinkpotion_cart > consumables["Pink Potion"]: imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .66 action SetLocalVariable("pinkpotion_cart", (pinkpotion_cart-1)), SetLocalVariable("temp_gold", (temp_gold+(pinkpotion_price-10))), SetLocalVariable("pinkpotion_price", (pinkpotion_price-10)) add "gui/shop/orangepotion_icon.png" xalign .09 yalign .79 text "{color=C0C0C0}Orange Potion" size 28 xpos 190 yalign .78 text "{color=C0C0C0}∞" size 42 xalign .4 yalign .778 text "{color=FFFF00}[orangepotion_price]" size 30 xalign .495 yalign .777 imagebutton idle "gui/button/shop_right_button.png" hover "gui/button/hover_shop_right_button.png" xalign .445 yalign .78 action SetLocalVariable("orangepotion_cart", (orangepotion_cart+1)), SetLocalVariable("temp_gold", (temp_gold-orangepotion_price)), SetLocalVariable("orangepotion_price", (orangepotion_price+10)) if orangepotion_cart > consumables["Orange Potion"]: imagebutton idle "gui/button/shop_left_button.png" hover "gui/button/hover_shop_left_button.png" xalign .35 yalign .78 action SetLocalVariable("orangepotion_cart", (orangepotion_cart-1)), SetLocalVariable("temp_gold", (temp_gold+(orangepotion_price-10))), SetLocalVariable("orangepotion_price", (orangepotion_price-10)) add "gui/shop/purplepotion_icon.png" xalign .58 yalign .3 text "{color=C0C0C0}Purple Potion{size=32} x {size=54}[purplepotion_cart]" size 42 xalign .61 yalign .3 xanchor 0 add "gui/shop/redpotion_icon.png" xalign .58 yalign .42 text "{color=C0C0C0}Red Potion{size=32} x {size=54}[redpotion_cart]" size 42 xalign .61 yalign .42 xanchor 0 add "gui/shop/greenpotion_icon.png" xalign .58 yalign .54 text "{color=C0C0C0}Green Potion{size=32} x {size=54}[greenpotion_cart]" size 42 xalign .61 yalign .54 xanchor 0 add "gui/shop/pinkpotion_icon.png" xalign .58 yalign .66 text "{color=C0C0C0}Pink Potion{size=32} x {size=54}[pinkpotion_cart]" size 42 xalign .61 yalign .66 xanchor 0 add "gui/shop/orangepotion_icon.png" xalign .58 yalign .78 text "{color=C0C0C0}Orange Potion{size=32} x {size=54}[orangepotion_cart]" size 42 xalign .61 yalign .78 xanchor 0 text "{color=FFFFFF}[name]" size 52 xalign .75 yalign .08 add "gui/shop/gold_icon.png" xalign .71 yalign .15 if temp_gold >= 0: text "{color=FFFFFF}x{color=FFFF00} [temp_gold]" xalign .73 yalign .165 size 24 xanchor 0 else: text "{b}{color=FF0000}x [temp_gold]" xalign .73 yalign .165 size 24 xanchor 0 for i in potion_cart_name: add "gui/shop/"+i.lower().replace(" ", "")+"_icon.png" xalign .58 ypos (235 + potion_cart_name.index(i)*80) text "{color=C0C0C0}[i] {size=24}x{/size}"+str(potion_cart_amount[potion_cart_name.index(i)]) size 32 xalign .61 ypos (250 + potion_cart_name.index(i)*80) xanchor 0 add "gui/shop_vborder.png" xalign .52 yalign .5 imagebutton idle "gui/button/cbutton.png" hover "gui/button/hover_cbutton.png" xalign .515 yalign 1.04 anchor (.5, .5) action If(temp_gold >= 0, true=[Function(apply_potion_shop, purplepotion_cart, redpotion_cart, greenpotion_cart, orangepotion_cart, pinkpotion_cart, temp_gold), Return()]) imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .515 yalign 1.12 anchor (.5, .5) action Return() screen currency_screen(type): frame: background Solid('#000000ff') xsize 160 ysize 70 xalign .15 yalign .01 if type == "favor": add "gui/shop/favor_icon.png" ypos -6 text "{color=FFFFFF}x{color=FFFF00} [favor]" xalign .88 yalign .5 size 24 else: add "gui/shop/gold_icon.png" ypos -6 text "{color=FFFFFF}x{color=FFFF00} [gold]" xalign .88 yalign .5 size 24 screen Status_screen(): tag menu $ x, y = pygame.mouse.get_pos() $ store.mousex = x $ store.mousey = y default tt = Tooltip(" ") use game_menu(_("Status")): frame: background Frame("gui/status_detail1b.png") xsize 425 ysize 400 xalign 0.2 text "{b}{size=22}{color=00A2FF}[name]{/b}" xalign .5 ypos -18 text "{color=A9E0FF}{size=28}Fame: [tfame]" xalign .5 yalign .1 if persistent.Difficulty == 0: text "{size=18}{color=00FF00}Easy mode{/color}{/size}" xalign .5 yalign .2 elif persistent.Difficulty == 1: text "{color=FFFFFF}{size=18}Normal mode{/size}" xalign .5 yalign .2 else: text "{size=18}{color=FF0000}Hard mode{/color}{/size}" xalign .5 yalign .2 text "{size=24}{color=A0A0A0}Level: {size=28}{color=AAAAAA}{b}[level]{/color}" xalign .5 yalign .38 text "{size=16}{color=909090}To next level: [rexp]{/color}{/size}" xalign .5 yalign .58 bar value exp range (level*10) xalign 0.5 anchor (.5, .5) yalign .68 xmaximum 300 right_bar "gui/progress_bar.png" left_bar "gui/progress_bar_fill.png" imagebutton idle "gui/button/att_status_button.png" hover "gui/button/hover_att_status_button.png" xalign .5 anchor (.5, .5) yalign 0.83 action SetVariable("bpoints", points), SetVariable("backatt", att[:]), SetVariable("bcatt", catt[:]), Show('Att_screen') if current_quest != "None" and current_quest != "Cooldown": textbutton "{size=16}{color=C8C800}Current quest: [current_quest] ([quest_current_counter]/[quest_max_counter])" xalign .5 yalign .97 action NullAction() hovered tt.Action(quests_dic[current_quest][0]) frame: background Frame("gui/status_detail1.png") xsize 425 ysize 400 xalign 0.8 yalign 0 text "{b}{color=BD00FF}{size=20}CORRUPTION: {size=24}[corruption]{/b}" xalign .49 ypos -18 hbox: xsize 425 ysize 400 if persistent.LShemale == True: text "{size=20}Vaginal Addiction:{vspace=35}Anal Addiction:{vspace=35}Blowjob Addiction:{vspace=35}Titjob Addiction:{vspace=35}Foreplay Addiction:{vspace=35}Shemale Addiction:{/size}" xalign 0.33 ycenter .5 text "{size=20}{color=BD00FF}"+str(addictions["Vaginal"])+"{vspace=35}"+str(addictions["Anal"])+"{vspace=35}"+str(addictions["Blowjob"])+"{vspace=35}"+str(addictions["Titjob"])+"{vspace=35}"+str(addictions["Foreplay"])+"{vspace=35}"+str(addictions["Shemale"])+"{/color}" xalign 0.33 ycenter .5 else: text "{size=20}Vaginal Addiction:{vspace=40}Anal Addiction:{vspace=40}Blowjob Addiction:{vspace=40}Titjob Addiction:{vspace=40}Foreplay Addiction:{/size}" xalign 0.33 ycenter .5 text "{size=20}{color=BD00FF}"+str(addictions["Vaginal"])+"{vspace=40}"+str(addictions["Anal"])+"{vspace=40}"+str(addictions["Blowjob"])+"{vspace=40}"+str(addictions["Titjob"])+"{vspace=40}"+str(addictions["Foreplay"])+"{/color}{/size}" xalign 0.33 ycenter .5 frame: background Frame("gui/status_detail2.png") xsize 1400 ysize 151 yalign 0.65 has vpgrid: xfill True xsize 1400 ysize 151 ypos 15 cols 5 for j in gtraits: hbox: xalign .5 textbutton j: text_style "gtraitstatusbutton" action NullAction() hovered tt.Action(gtraits_dic[j][0]) frame: background Frame("gui/status_detail3.png") xsize 1400 ysize 211 yalign 1.0 has vpgrid: xfill True xsize 1400 ysize 211 ypos 15 cols 5 for i in btraits: hbox: xalign .5 textbutton i: text_style "btraitstatusbutton" action NullAction() hovered tt.Action(btraits_dic[i][0]) if tt.value != " ": if ttfixed == True: frame: background Frame("gui/tooltip.png") xalign .65 yalign .58 text tt.value else: frame: background Frame("gui/tooltip.png") xpos x-100 ypos y text tt.value screen enemies_screen(): tag menu use game_menu(_("Enemies")): frame: background None padding (20, 20, 20, 20) align (0.0, 0.0) ysize 1080 imagebutton auto "images/Base/forest_%s.jpg" action ShowMenu("Forest_Screen") textbutton _("Forest") action ShowMenu("Forest_Screen") ypos 120 xpos 40 imagebutton auto "images/Base/plains_%s.jpg" action ShowMenu("Plains_Screen") ypos 240 textbutton _("Plains") action ShowMenu("Plains_Screen") ypos 360 xpos 46 imagebutton auto "images/Base/outskirts_%s.jpg" action ShowMenu("Outskirts_Screen") ypos 480 textbutton _("Outskirts") action ShowMenu("Outskirts_Screen") ypos 600 xpos 20 imagebutton auto "images/Base/deep_forest_%s.jpg" action ShowMenu("DeepForest_Screen") xpos 250 textbutton _("Deep Forest") action ShowMenu("DeepForest_Screen") ypos 120 xpos 242 imagebutton auto "images/Base/meadow_%s.jpg" action ShowMenu("Meadow_Screen") ypos 240 xpos 250 textbutton _("Meadow") action ShowMenu("Meadow_Screen") ypos 360 xpos 278 imagebutton auto "images/Base/swamp_%s.jpg" action ShowMenu("Swamp_Screen") xpos 500 textbutton _("Swamp") action ShowMenu("Swamp_Screen") ypos 120 xpos 538 imagebutton auto "images/Base/coast_%s.jpg" action ShowMenu("Coast_Screen") ypos 240 xpos 500 textbutton _("Coast") action ShowMenu("Coast_Screen") ypos 360 xpos 542 imagebutton auto "images/Base/Jungle_%s.jpg" action ShowMenu("Jungle_Screen") xpos 750 textbutton _("Jungle") action ShowMenu("Jungle_Screen") ypos 120 xpos 805 imagebutton auto "images/Base/Beach_%s.jpg" action ShowMenu("Beach_Screen") ypos 240 xpos 750 textbutton _("Beach") action ShowMenu("Beach_Screen") ypos 360 xpos 794 imagebutton auto "images/Base/bonus_%s.png" action ShowMenu("Bonus_Screen") ypos 680 xpos 1200 textbutton _("Mountains") action ShowMenu("Mountains_Screen") ypos 120 xpos 1010 imagebutton auto "images/Base/mountains_%s.jpg" action ShowMenu("Mountains_Screen") xpos 1000 screen Forest_Screen(): tag menu use game_menu(_("Forest")): frame: background None padding (20, 20, 20, 20) align (0.0, 0.0) ysize 1080 if persistent.Anastasia >= 1: imagebutton idle "images/Enemies/Anastasia/anastasiaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Anastasia"), ShowMenu("enemy_profile_screen", anastasia, persistent.Anastasia) textbutton "Anastasia" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Anastasia"), ShowMenu("enemy_profile_screen", anastasia, persistent.Anastasia) ypos 120 xpos 15 if persistent.Laura >= 1: imagebutton idle "images/Enemies/Laura/lauraicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Laura"), ShowMenu("enemy_profile_screen", laura, persistent.Laura) xpos 250 textbutton "Laura" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Laura"), ShowMenu("enemy_profile_screen", laura, persistent.Laura) ypos 120 xpos 300 if persistent.Kali >= 1: imagebutton idle "images/Enemies/Kali/kaliicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Kali"), ShowMenu("enemy_profile_screen", kali, persistent.Kali) xpos 500 textbutton "Kali" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Kali"), ShowMenu("enemy_profile_screen", kali, persistent.Kali) ypos 120 xpos 565 if persistent.Allie >= 1: imagebutton idle "images/Enemies/Allie/allieicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Allie"), ShowMenu("enemy_profile_screen", allie, persistent.Allie) xpos 750 textbutton "Allie" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Allie"), ShowMenu("enemy_profile_screen", allie, persistent.Allie) ypos 120 xpos 815 if persistent.Samantha >= 1: imagebutton idle "images/Enemies/Samantha/samanthaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Samantha"), ShowMenu("enemy_profile_screen", samantha, persistent.Samantha) xpos 1000 ypos -24 textbutton "Samantha" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Samantha"), ShowMenu("enemy_profile_screen", samantha, persistent.Samantha) ypos 120 xpos 980 if persistent.Olivia >= 1: imagebutton idle "images/Enemies/Olivia/oliviaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Olivia"), ShowMenu("enemy_profile_screen", olivia, persistent.Olivia) ypos 250 xpos 300 textbutton "Olivia" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Olivia"), ShowMenu("enemy_profile_screen", olivia, persistent.Olivia) ypos 370 xpos 365 if persistent.Angie >= 1: imagebutton idle "images/Enemies/Angie/angieicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Angie"), ShowMenu("enemy_profile_screen", angie, persistent.Angie) ypos 250 xpos 700 textbutton "Angie" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Angie"), ShowMenu("enemy_profile_screen", angie, persistent.Angie) ypos 370 xpos 750 if persistent.Mila >= 1: imagebutton idle "images/Enemies/Mila/milaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Mila"), ShowMenu("enemy_profile_screen", mila, persistent.Mila) ypos 500 xpos 300 textbutton "Mila" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Mila"), ShowMenu("enemy_profile_screen", mila, persistent.Mila) ypos 620 xpos 365 if persistent.Sigrid >= 1: imagebutton idle "images/Enemies/Sigrid/sigridicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Sigrid"), ShowMenu("enemy_profile_screen", sigrid, persistent.Sigrid) ypos 500 xpos 700 textbutton "Sigrid" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Sigrid"), ShowMenu("enemy_profile_screen", sigrid, persistent.Sigrid) ypos 620 xpos 750 screen Plains_Screen(): tag menu use game_menu(_("Plains")): frame: background None padding (20, 20, 20, 20) align (0.0, 0.0) ysize 1080 if persistent.Liz >= 1: imagebutton idle "images/Enemies/Liz/lizicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Liz"), ShowMenu("enemy_profile_screen", liz, persistent.Liz) textbutton "Liz" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Liz"), ShowMenu("enemy_profile_screen", liz, persistent.Liz) ypos 120 xpos 75 if persistent.Bonnie >= 1: imagebutton idle "images/Enemies/Bonnie/bonnieicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Bonnie"), ShowMenu("enemy_profile_screen", bonnie, persistent.Bonnie) xpos 250 textbutton "Bonnie" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Bonnie"), ShowMenu("enemy_profile_screen", bonnie, persistent.Bonnie) ypos 120 xpos 290 if persistent.Natasha >= 1: imagebutton idle "images/Enemies/Natasha/natashaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Natasha"), ShowMenu("enemy_profile_screen", natasha, persistent.Natasha) xpos 500 textbutton "Natasha" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Natasha"), ShowMenu("enemy_profile_screen", natasha, persistent.Natasha) ypos 120 xpos 530 if persistent.Nicole >= 1: imagebutton idle "images/Enemies/Nicole/nicoleicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Nicole"), ShowMenu("enemy_profile_screen", nicole, persistent.Nicole) xpos 750 textbutton "Nicole" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Nicole"), ShowMenu("enemy_profile_screen", nicole, persistent.Nicole) ypos 120 xpos 794 if persistent.Michelle >= 1: imagebutton idle "images/Enemies/Michelle/michelleicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Michelle"), ShowMenu("enemy_profile_screen", michelle, persistent.Michelle) xpos 1045 textbutton "Michelle" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Michelle"), ShowMenu("enemy_profile_screen", michelle, persistent.Michelle) ypos 120 xpos 1075 if persistent.Rebecca >= 1: imagebutton idle "images/Enemies/Rebecca/rebeccaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Rebecca"), ShowMenu("enemy_profile_screen", rebecca, persistent.Rebecca) ypos 250 xpos 500 textbutton "Rebecca" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Rebecca"), ShowMenu("enemy_profile_screen", rebecca, persistent.Rebecca) ypos 370 xpos 525 if persistent.BonnienNina >= 1: imagebutton idle "images/Enemies/BonnienNina/bonnienninaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "BonnienNina"), ShowMenu("enemy_profile_screen", bonniennina, persistent.BonnienNina) ypos 500 xpos 250 textbutton "Bonnie n Nina" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "BonnienNina"), ShowMenu("enemy_profile_screen", bonniennina, persistent.BonnienNina) ypos 620 xpos 230 if persistent.Cassandra >= 1: imagebutton idle "images/Enemies/Cassandra/cassandraicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Cassandra"), ShowMenu("enemy_profile_screen", cassandra, persistent.Cassandra) ypos 500 xpos 750 textbutton "Cassandra" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Cassandra"), ShowMenu("enemy_profile_screen", cassandra, persistent.Cassandra) ypos 620 xpos 760 screen Outskirts_Screen(): tag menu use game_menu(_("Outskirts")): frame: background None padding (20, 20, 20, 20) align (0.0, 0.0) ysize 1080 if persistent.Tinky >= 1: imagebutton idle "images/Enemies/Tinky/tinkyicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Tinky"), ShowMenu("enemy_profile_screen", tinky, persistent.Tinky) textbutton "Tinky" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Tinky"), ShowMenu("enemy_profile_screen", tinky, persistent.Tinky) ypos 120 xpos 48 if persistent.Laura >= 1: imagebutton idle "images/Enemies/Laura/lauraicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Laura"), ShowMenu("enemy_profile_screen", laura, persistent.Laura) xpos 250 textbutton "Laura" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Laura"), ShowMenu("enemy_profile_screen", laura, persistent.Laura) ypos 120 xpos 300 if persistent.Kali >= 1: imagebutton idle "images/Enemies/Kali/kaliicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Kali"), ShowMenu("enemy_profile_screen", kali, persistent.Kali) xpos 500 textbutton "Kali" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Kali"), ShowMenu("enemy_profile_screen", kali, persistent.Kali) ypos 120 xpos 565 if persistent.Allie >= 1: imagebutton idle "images/Enemies/Allie/allieicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Allie"), ShowMenu("enemy_profile_screen", allie, persistent.Allie) xpos 750 textbutton "Allie" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Allie"), ShowMenu("enemy_profile_screen", allie, persistent.Allie) ypos 120 xpos 815 if persistent.Samantha >= 1: imagebutton idle "images/Enemies/Samantha/samanthaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Samantha"), ShowMenu("enemy_profile_screen", samantha, persistent.Samantha) xpos 1000 ypos -24 textbutton "Samantha" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Samantha"), ShowMenu("enemy_profile_screen", samantha, persistent.Samantha) ypos 120 xpos 980 if persistent.Olivia >= 1: imagebutton idle "images/Enemies/Olivia/oliviaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Olivia"), ShowMenu("enemy_profile_screen", olivia, persistent.Olivia) ypos 250 xpos 550 textbutton "Olivia" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Olivia"), ShowMenu("enemy_profile_screen", olivia, persistent.Olivia) ypos 370 xpos 546 if persistent.AstridnAri >= 1: imagebutton idle "images/Enemies/AstridnAri/astridnariicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "AstridnAri"), ShowMenu("enemy_profile_screen", astridnari, persistent.AstridnAri) ypos 500 xpos 250 textbutton "Astrid n Ari" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "AstridnAri"), ShowMenu("enemy_profile_screen", astridnari, persistent.AstridnAri) ypos 620 xpos 250 screen DeepForest_Screen(): tag menu use game_menu(_("Deep Forest")): frame: background None padding (20, 20, 20, 20) align (0.0, 0.0) ysize 1080 if persistent.Amy >= 1: imagebutton idle "images/Enemies/Amy/amyicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Amy"), ShowMenu("enemy_profile_screen", amy, persistent.Amy) textbutton "Amy" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Amy"), ShowMenu("enemy_profile_screen", amy, persistent.Amy) ypos 120 xpos 55 if persistent.Hannah >= 1: imagebutton idle "images/Enemies/Hannah/hannahicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Hannah"), ShowMenu("enemy_profile_screen", hannah, persistent.Hannah) xpos 250 textbutton "Hannah" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Hannah"), ShowMenu("enemy_profile_screen", hannah, persistent.Hannah) ypos 120 xpos 280 if persistent.Maya >= 1: imagebutton idle "images/Enemies/Maya/mayaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Maya"), ShowMenu("enemy_profile_screen", maya, persistent.Maya) xpos 515 textbutton "Maya" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Maya"), ShowMenu("enemy_profile_screen", maya, persistent.Maya) ypos 120 xpos 569 if persistent.Megan >= 1: imagebutton idle "images/Enemies/Megan/meganicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Megan"), ShowMenu("enemy_profile_screen", megan, persistent.Megan) xpos 780 textbutton "Megan" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Megan"), ShowMenu("enemy_profile_screen", megan, persistent.Megan) ypos 120 xpos 824 if persistent.Rei >= 1: imagebutton idle "images/Enemies/Rei/reiicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Rei"), ShowMenu("enemy_profile_screen", rei, persistent.Rei) xpos 1045 textbutton "Rei" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Rei"), ShowMenu("enemy_profile_screen", rei, persistent.Rei) ypos 120 xpos 1115 if persistent.Serena >= 1: imagebutton idle "images/Enemies/Serena/serenaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Serena"), ShowMenu("enemy_profile_screen", serena, persistent.Serena) ypos 250 xpos 550 textbutton "Serena" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Serena"), ShowMenu("enemy_profile_screen", serena, persistent.Serena) ypos 398 xpos 545 if persistent.Claire >= 1: imagebutton idle "images/Enemies/Claire/claireicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Claire"), ShowMenu("enemy_profile_screen", claire, persistent.Claire) ypos 500 xpos 300 textbutton "Claire" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Claire"), ShowMenu("enemy_profile_screen", claire, persistent.Claire) ypos 620 xpos 348 if persistent.Lexi >= 1: imagebutton idle "images/Enemies/Lexi/lexiicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Lexi"), ShowMenu("enemy_profile_screen", lexi, persistent.Claire) ypos 500 xpos 700 textbutton "Lexi" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Lexi"), ShowMenu("enemy_profile_screen", lexi, persistent.Lexi) ypos 620 xpos 760 screen Meadow_Screen(): tag menu use game_menu(_("Meadow")): frame: background None padding (20, 20, 20, 20) align (0.0, 0.0) ysize 1080 if persistent.Tess >= 1: imagebutton idle "images/Enemies/Tess/tessicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Tess"), ShowMenu("enemy_profile_screen", tess, persistent.Tess) textbutton "Tess" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Tess"), ShowMenu("enemy_profile_screen", tess, persistent.Tess) ypos 120 xpos 52 if persistent.Chelsea >= 1: imagebutton idle "images/Enemies/Chelsea/chelseaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Chelsea"), ShowMenu("enemy_profile_screen", chelsea, persistent.Chelsea) xpos 250 textbutton "Chelsea" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Chelsea"), ShowMenu("enemy_profile_screen", chelsea, persistent.Chelsea) ypos 120 xpos 280 if persistent.BalletSisters >= 1: imagebutton idle "images/Enemies/BalletSisters/balletsistersicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "BalletSisters"), ShowMenu("enemy_profile_screen", balletsisters, persistent.BalletSisters) xpos 515 textbutton "Ballet Sisters" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "BalletSisters"), ShowMenu("enemy_profile_screen", balletsisters, persistent.BalletSisters) ypos 120 xpos 500 if persistent.Gwen >= 1: imagebutton idle "images/Enemies/Gwen/gwenicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Gwen"), ShowMenu("enemy_profile_screen", gwen, persistent.Gwen) xpos 780 textbutton "Gwen" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Gwen"), ShowMenu("enemy_profile_screen", gwen, persistent.Gwen) ypos 120 xpos 824 if persistent.Molly >= 1: imagebutton idle "images/Enemies/Molly/mollyicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Molly"), ShowMenu("enemy_profile_screen", molly, persistent.Molly) xpos 1045 textbutton "Molly" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Molly"), ShowMenu("enemy_profile_screen", molly, persistent.Molly) ypos 120 xpos 1100 if persistent.Felicia >= 1: imagebutton idle "images/Enemies/Felicia/feliciaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Felicia"), ShowMenu("enemy_profile_screen", felicia, persistent.Felicia) ypos 250 xpos 550 textbutton "Felicia" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Felicia"), ShowMenu("enemy_profile_screen", felicia, persistent.Felicia) ypos 370 xpos 554 if persistent.Esperanza >= 1: imagebutton idle "images/Enemies/Esperanza/esperanzaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Esperanza"), ShowMenu("enemy_profile_screen", esperanza, persistent.Esperanza) ypos 500 xpos 300 textbutton "Esperanza" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Esperanza"), ShowMenu("enemy_profile_screen", esperanza, persistent.Esperanza) ypos 620 xpos 309 if persistent.Celeste >= 1: imagebutton idle "images/Enemies/Celeste/celesteicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Celeste"), ShowMenu("enemy_profile_screen", celeste, persistent.Celeste) ypos 500 xpos 700 textbutton "Celeste" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Celeste"), ShowMenu("enemy_profile_screen", celeste, persistent.Celeste) ypos 620 xpos 730 screen Swamp_Screen(): tag menu use game_menu(_("Swamp")): frame: background None padding (20, 20, 20, 20) align (0.0, 0.0) ysize 1080 if persistent.April >= 1: imagebutton idle "images/Enemies/April/aprilicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "April"), ShowMenu("enemy_profile_screen", april, persistent.April) textbutton "April" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "April"), ShowMenu("enemy_profile_screen", april, persistent.April) ypos 120 xpos 55 if persistent.Kendra >= 1: imagebutton idle "images/Enemies/Kendra/kendraicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Kendra"), ShowMenu("enemy_profile_screen", kendra, persistent.Kendra) xpos 250 textbutton "Kendra" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Kendra"), ShowMenu("enemy_profile_screen", kendra, persistent.Kendra) ypos 120 xpos 292 if persistent.Charlotte >= 1: imagebutton idle "images/Enemies/Charlotte/charlotteicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Charlotte"), ShowMenu("enemy_profile_screen", charlotte, persistent.Charlotte) xpos 515 textbutton "Charlotte" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Charlotte"), ShowMenu("enemy_profile_screen", charlotte, persistent.Charlotte) ypos 120 xpos 534 if persistent.Dixie >= 1: imagebutton idle "images/Enemies/Dixie/dixieicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Dixie"), ShowMenu("enemy_profile_screen", dixie, persistent.Dixie) xpos 780 textbutton "Dixie" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Dixie"), ShowMenu("enemy_profile_screen", dixie, persistent.Dixie) ypos 120 xpos 830 if persistent.Paige >= 1: imagebutton idle "images/Enemies/Paige/paigeicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Paige"), ShowMenu("enemy_profile_screen", paige, persistent.Paige) xpos 1045 textbutton "Paige" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Paige"), ShowMenu("enemy_profile_screen", paige, persistent.Paige) ypos 120 xpos 1100 if persistent.Cindy >= 1: imagebutton idle "images/Enemies/Cindy/cindyicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Cindy"), ShowMenu("enemy_profile_screen", cindy, persistent.Cindy) ypos 250 xpos 515 textbutton "Cindy" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Cindy"), ShowMenu("enemy_profile_screen", cindy, persistent.Cindy) ypos 370 xpos 555 if persistent.Victoria >= 1: imagebutton idle "images/Enemies/Victoria/victoriaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Victoria"), ShowMenu("enemy_profile_screen", victoria, persistent.Victoria) ypos 500 xpos 300 textbutton "Victoria" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Victoria"), ShowMenu("enemy_profile_screen", victoria, persistent.Victoria) ypos 620 xpos 330 if persistent.LucynAngel >= 1: imagebutton idle "images/Enemies/LucynAngel/LucynAngelicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "LucynAngel"), ShowMenu("enemy_profile_screen", lucynangel, persistent.LucynAngel) ypos 500 xpos 700 textbutton "Lucy n Angel" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "LucynAngel"), ShowMenu("enemy_profile_screen", lucynangel, persistent.LucynAngel) ypos 620 xpos 688 screen Coast_Screen(): tag menu use game_menu(_("Coast")): frame: background None padding (20, 20, 20, 20) align (0.0, 0.0) ysize 1080 if persistent.Stacy >= 1: imagebutton idle "images/Enemies/Stacy/stacyicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Stacy"), ShowMenu("enemy_profile_screen", stacy, persistent.Stacy) textbutton "Stacy" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Stacy"), ShowMenu("enemy_profile_screen", stacy, persistent.Stacy) ypos 120 xpos 55 if persistent.Frederika >= 1: imagebutton idle "images/Enemies/Frederika/frederikaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Frederika"), ShowMenu("enemy_profile_screen", frederika, persistent.Kendra) xpos 250 textbutton "Frederika" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Frederika"), ShowMenu("enemy_profile_screen", frederika, persistent.Frederika) ypos 120 xpos 270 if persistent.DannienDebbie >= 1: imagebutton idle "images/Enemies/DannienDebbie/danniendebbieicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "DannienDebbie"), ShowMenu("enemy_profile_screen", danniendebbie, persistent.DannienDebbie) xpos 515 textbutton "Dannie n Debbie" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "DannienDebbie"), ShowMenu("enemy_profile_screen", danniendebbie, persistent.DannienDebbie) ypos 120 xpos 470 if persistent.Teresa >= 1: imagebutton idle "images/Enemies/Teresa/teresaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Teresa"), ShowMenu("enemy_profile_screen", teresa, persistent.Dixie) xpos 780 textbutton "Teresa" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Teresa"), ShowMenu("enemy_profile_screen", teresa, persistent.Teresa) ypos 120 xpos 822 if persistent.Taylor >= 1: imagebutton idle "images/Enemies/Taylor/tayloricon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Taylor"), ShowMenu("enemy_profile_screen", taylor, persistent.Paige) xpos 1045 textbutton "Taylor" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Taylor"), ShowMenu("enemy_profile_screen", taylor, persistent.Taylor) ypos 120 xpos 1100 if persistent.Elena >= 1: imagebutton idle "images/Enemies/Elena/elenaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Elena"), ShowMenu("enemy_profile_screen", elena, persistent.Elena) ypos 250 xpos 515 textbutton "Elena" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Elena"), ShowMenu("enemy_profile_screen", elena, persistent.Elena) ypos 370 xpos 557 if persistent.Kate >= 1: imagebutton idle "images/Enemies/Kate/kateicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Kate"), ShowMenu("enemy_profile_screen", kate, persistent.Kate) xpos 500 ypos 500 textbutton "Kate" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Kate"), ShowMenu("enemy_profile_screen", kate, persistent.Kate) xpos 560 ypos 620 screen Jungle_Screen(): tag menu use game_menu(_("Jungle")): frame: background None padding (20, 20, 20, 20) align (0.0, 0.0) ysize 1080 if persistent.Polly >= 1: imagebutton idle "images/Enemies/Polly/pollyicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Polly"), ShowMenu("enemy_profile_screen", polly, persistent.Polly) textbutton "Polly" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Polly"), ShowMenu("enemy_profile_screen", polly, persistent.Polly) ypos 120 xpos 60 if persistent.Bianca >= 1: imagebutton idle "images/Enemies/Bianca/biancaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Bianca"), ShowMenu("enemy_profile_screen", bianca, persistent.Bianca) xpos 250 textbutton "Bianca" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Bianca"), ShowMenu("enemy_profile_screen", bianca, persistent.Bianca) ypos 120 xpos 294 if persistent.Gabby >= 1: imagebutton idle "images/Enemies/Gabby/gabbyicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Gabby"), ShowMenu("enemy_profile_screen", gabby, persistent.Gabby) xpos 500 textbutton "Gabby" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Gabby"), ShowMenu("enemy_profile_screen", gabby, persistent.Gabby) ypos 120 xpos 535 if persistent.Caroline >= 1: imagebutton idle "images/Enemies/Caroline/carolineicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Caroline"), ShowMenu("enemy_profile_screen", caroline, persistent.Caroline) xpos 750 textbutton "Caroline" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Caroline"), ShowMenu("enemy_profile_screen", caroline, persistent.Caroline) ypos 120 xpos 780 if persistent.Emily >= 1: imagebutton idle "images/Enemies/Emily/emilyicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Emily"), ShowMenu("enemy_profile_screen", emily, persistent.Emily) xpos 1000 textbutton "Emily" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Emily"), ShowMenu("enemy_profile_screen", emily, persistent.Emily) ypos 120 xpos 1055 if persistent.Dakota >= 1: imagebutton idle "images/Enemies/Dakota/dakotaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Dakota"), ShowMenu("enemy_profile_screen", dakota, persistent.Dakota) ypos 250 xpos 515 textbutton "Dakota" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Dakota"), ShowMenu("enemy_profile_screen", dakota, persistent.Dakota) ypos 370 xpos 550 if persistent.Isabel >= 1: imagebutton idle "images/Enemies/Isabel/isabelicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Isabel"), ShowMenu("enemy_profile_screen", isabel, persistent.Isabel) xpos 250 ypos 500 textbutton "Isabel" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Isabel"), ShowMenu("enemy_profile_screen", isabel, persistent.Isabel) xpos 290 ypos 620 if persistent.CutieLavender >= 1: imagebutton idle "images/Enemies/CutieLavender/cutielavendericon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "CutieLavender"), ShowMenu("enemy_profile_screen", cutielavender, persistent.CutieLavender) ypos 500 xpos 750 textbutton "CutieLavender" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "CutieLavender"), ShowMenu("enemy_profile_screen", cutielavender, persistent.CutieLavender) ypos 620 xpos 720 screen Beach_Screen(): tag menu use game_menu(_("Beach")): frame: background None padding (20, 20, 20, 20) align (0.0, 0.0) ysize 1080 if persistent.Josie >= 1: imagebutton idle "images/Enemies/Josie/josieicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Josie"), ShowMenu("enemy_profile_screen", josie, persistent.Josie) textbutton "Josie" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Josie"), ShowMenu("enemy_profile_screen", josie, persistent.Josie) ypos 120 xpos 60 if persistent.Penelope >= 1: imagebutton idle "images/Enemies/Penelope/penelopeicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Penelope"), ShowMenu("enemy_profile_screen", penelope, persistent.Penelope) xpos 250 textbutton "Penelope" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Penelope"), ShowMenu("enemy_profile_screen", penelope, persistent.Penelope) ypos 120 xpos 270 if persistent.Verona >= 1: imagebutton idle "images/Enemies/Verona/veronaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Verona"), ShowMenu("enemy_profile_screen", verona, persistent.Verona) xpos 500 textbutton "Verona" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Verona"), ShowMenu("enemy_profile_screen", verona, persistent.Verona) ypos 120 xpos 535 if persistent.Maddie >= 1: imagebutton idle "images/Enemies/Maddie/maddieicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Maddie"), ShowMenu("enemy_profile_screen", maddie, persistent.Maddie) xpos 750 textbutton "Maddie" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Maddie"), ShowMenu("enemy_profile_screen", maddie, persistent.Maddie) ypos 120 xpos 780 if persistent.Jackie >= 1: imagebutton idle "images/Enemies/Jackie/jackieicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Jackie"), ShowMenu("enemy_profile_screen", jackie, persistent.Jackie) xpos 1000 textbutton "Jackie" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Jackie"), ShowMenu("enemy_profile_screen", jackie, persistent.Jackie) ypos 120 xpos 1052 if persistent.Autumn >= 1: imagebutton idle "images/Enemies/Autumn/autumnicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Autumn"), ShowMenu("enemy_profile_screen", autumn, persistent.Autumn) ypos 250 xpos 515 textbutton "Autumn" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Autumn"), ShowMenu("enemy_profile_screen", autumn, persistent.Autumn) ypos 370 xpos 550 if persistent.EricanMargot >= 1: imagebutton idle "images/Enemies/EricanMargot/ericanmargoticon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "EricanMargot"), ShowMenu("enemy_profile_screen", ericanmargot, persistent.EricanMargot) xpos 750 ypos 500 textbutton "Erica n Margot" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "EricanMargot"), ShowMenu("enemy_profile_screen", ericanmargot, persistent.EricanMargot) xpos 725 ypos 620 if persistent.Elisa >= 1: imagebutton idle "images/Enemies/Elisa/elisaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Elisa"), ShowMenu("enemy_profile_screen", elisa, persistent.Elisa) xpos 250 ypos 500 textbutton "Elisa" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Elisa"), ShowMenu("enemy_profile_screen", elisa, persistent.Elisa) xpos 300 ypos 620 screen Mountains_Screen(): tag menu use game_menu(_("Mountains")): frame: background None padding (20, 20, 20, 20) align (0.0, 0.0) ysize 1080 if persistent.Nancy >= 1: imagebutton idle "images/Enemies/Nancy/nancyicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Nancy"), ShowMenu("enemy_profile_screen", nancy, persistent.Nancy) textbutton "Nancy" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Nancy"), ShowMenu("enemy_profile_screen", nancy, persistent.Nancy) ypos 120 xpos 45 if persistent.Desiree >= 1: imagebutton idle "images/Enemies/Desiree/desireeicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Desiree"), ShowMenu("enemy_profile_screen", desiree, persistent.Desiree) xpos 250 textbutton "Desiree" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Desiree"), ShowMenu("enemy_profile_screen", desiree, persistent.Desiree) ypos 120 xpos 280 if persistent.Annie >= 1: imagebutton idle "images/Enemies/Annie/annieicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Annie"), ShowMenu("enemy_profile_screen", annie, persistent.Annie) xpos 500 textbutton "Annie" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Annie"), ShowMenu("enemy_profile_screen", annie, persistent.Annie) ypos 120 xpos 548 if persistent.Suzanne >= 1: imagebutton idle "images/Enemies/Suzanne/suzanneicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Suzanne"), ShowMenu("enemy_profile_screen", suzanne, persistent.Suzanne) xpos 750 textbutton "Suzanne" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Suzanne"), ShowMenu("enemy_profile_screen", suzanne, persistent.Suzanne) ypos 120 xpos 780 if persistent.Ines >= 1: imagebutton idle "images/Enemies/Ines/inesicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Ines"), ShowMenu("enemy_profile_screen", ines, persistent.Ines) xpos 1000 textbutton "Ines" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Ines"), ShowMenu("enemy_profile_screen", ines, persistent.Ines) ypos 120 xpos 1052 if persistent.Brittney >= 1: imagebutton idle "images/Enemies/Brittney/brittneyicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Brittney"), ShowMenu("enemy_profile_screen", brittney, persistent.Brittney) ypos 250 xpos 515 textbutton "Brittney" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Brittney"), ShowMenu("enemy_profile_screen", brittney, persistent.Brittney) ypos 370 xpos 550 if persistent.Tiffany >= 1: imagebutton idle "images/Enemies/Tiffany/tiffanyicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Tiffany"), ShowMenu("enemy_profile_screen", tiffany, persistent.Tiffany) ypos 500 xpos 750 textbutton "Tiffany" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Tiffany"), ShowMenu("enemy_profile_screen", tiffany, persistent.Tiffany) ypos 620 xpos 790 screen Bonus_Screen(): tag menu use game_menu(_("Bonus")): frame: background None padding (20, 20, 20, 20) align (0.0, 0.0) ysize 1080 if persistent.Gabrielle >= 1: imagebutton idle "images/Enemies/Gabrielle/gabrielleicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Gabrielle"), ShowMenu("enemy_profile_screen", gabrielle, persistent.Gabrielle, True) textbutton "Gabrielle" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Gabrielle"), ShowMenu("enemy_profile_screen", gabrielle, persistent.Gabrielle, True) ypos 120 xpos 20 if persistent.Melissa >= 1: imagebutton idle "images/Enemies/Melissa/melissaicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Melissa"), ShowMenu("enemy_profile_screen", melissa, persistent.Melissa, True) xpos 250 textbutton "Melissa" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Melissa"), ShowMenu("enemy_profile_screen", melissa, persistent.Melissa, True) ypos 120 xpos 292 if persistent.Marie >= 1: imagebutton idle "images/Enemies/Marie/marieicon.jpg" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Marie"), ShowMenu("enemy_profile_screen", marie, persistent.Marie, True) xpos 500 textbutton "Marie" action SetVariable("pic_type_BE_mode", False), Function(get_number_of_pics_in_gallery, "Marie"), ShowMenu("enemy_profile_screen", marie, persistent.Marie, True) ypos 120 xpos 550 screen enemy_profile_screen(profile, ndefeated, bonus_enemy=False): tag menu if type(profile[9]) is tuple: $ enemy_type_text = "" for i in profile[9]: $ enemy_type_text += i+", " else: $ enemy_type_text = (profile[9]) use game_menu(_(profile[0])): frame: background None padding (20, 20, 20, 20) align (0.0, 0,0) ysize 1080 add "gui/profile_vborder.png" xalign .5 yalign .74 xanchor .5 yanchor .5 text "{size=28}{color=FFFFFF}[ndefeated] Defeated{b}\n{size=18}"+str(temp_defeated_enemy[profile[0]])+" defeated as [name]{vspace=8}{size=18}{color=FF0000}HP: [profile[1]]{/color}{/size}{size=18}{space=20}{color=FFFFFF}Attack: [profile[2]]{/b}\n{color=F5B6FF}Enemy Type: "+enemy_type_text.rstrip(", ")+"{/color}\n{color=B87838}{size=18}Found more often at {b}[profile[3][0]]:00{/b} and {b}[profile[3][1]]:00{/b}{/color}\n{color=B9B9B9}{size=18}Model: [profile[4]]{/color}" xpos -20 yalign .765 if ndefeated >= 3: text "{b}[profile[5]]{/b} EXP\n{color=FFFF00}{b}[profile[6]]{/b} Gold{/color}" xpos 712 ypos 740 if profile[7] != None: text "{color=00FFFF}40% chance: {b}[profile[7]]{/b}{/color}" xpos 712 ypos 800 if profile[8] != None: text "{color=E08000}20% chance: {b}[profile[8]]{/b} Recipe{/color}" xpos 712 ypos 820 if ndefeated >= 5 or bonus_enemy: if pic_type_BE_mode == False: add "images/Enemies/"+profile[0].replace(" ","")+"/"+profile[0].replace(" ","")+"[pic].webp" xalign .5 yalign .23 xanchor .5 yanchor .5 else: add "images/Enemies/"+profile[0].replace(" ","")+"/p"+profile[0].replace(" ","")+"[pic].webp" xalign .5 yalign .23 xanchor .5 yanchor .5 if pic > 1: textbutton _("Back") action SetScreenVariable("pic", (pic-1)) xalign .45 ypos 680 if pic < npics: textbutton _("Next") action SetScreenVariable("pic", (pic+1)) xalign .55 ypos 680 if profile[0] in persistent.extra_pics: textbutton "Bad End" action ToggleVariable("pic_type_BE_mode", True, False), SetScreenVariable("pic", 1), Function(get_number_of_pics_in_gallery, profile[0].lower().replace(" ", "")) xalign .9 ypos 680 else: add "images/Base/noimage.png" xalign .5 yalign .23 xanchor .5 yanchor .5 screen buffs(): zorder 1 $ x, y = pygame.mouse.get_pos() $ store.mousex = x $ store.mousey = y default tt = Tooltip(" ") add "gui/buffwindow.png" align (0.018, 0.1) add "gui/debuffwindow.png" align (0.983, 0.1) vbar value corruption_meter range 8 right_bar Frame("gui/corruption_increase.png") left_bar None align (0.983, 0.1) xmaximum 200 ymaximum 600 vbar value corruption_meter range 8 right_bar Frame("gui/corruption_increase.png") left_bar None align (0.018, 0.1) xmaximum 200 ymaximum 600 for i in debuff: if i == "Charmed": textbutton '{font=Dripping.ttf}{color=FF00FF}[i] [debuff_charmed]{/font}{/color}': xpos 1793 ypos (100+(debuff.index(i)*60)) text_size 38 xcenter .5 action NullAction() hovered tt.Action(debuffs_dic[i]) elif i == "Horny": textbutton '{font=Dripping.ttf}{color=FF00FF}[i] [debuff_horny]{/font}{/color}': xpos 1793 ypos (100+(debuff.index(i)*60)) text_size 38 xcenter .5 action NullAction() hovered tt.Action(debuffs_dic[i]) else: textbutton '{font=Dripping.ttf}{color=FF00FF}[i]{/font}{/color}': xpos 1793 ypos (100+(debuff.index(i)*60)) text_size 38 xcenter .5 action NullAction() hovered tt.Action(debuffs_dic[i]) for j in buff: textbutton '{font=Mangonel.ttf}{color=#00A2FF}[j]{/font}{/color}': xpos 130 ypos (110+(buff.index(j)*60)) text_size 24 xcenter .5 action NullAction() hovered tt.Action(buffs_dic[j]) for k in technique_buff: textbutton '{font=Mangonel.ttf}{color=#00A2FF}[k]{/font}{/color}': xpos 130 ypos (110+(len(buff)*60)+(list(technique_buff).index(k)*60)) text_size 24 xcenter .5 action NullAction() hovered tt.Action("{color=5A96C8}"+technique_buff[k][2]+"{/color}\n{color=808080}Turns Left: {b}"+str(technique_buff[k][0])+"{/b}{/color}") if tt.value != " ": if ttfixed == True: frame: background Frame("gui/tooltip.png") xalign .5 yalign .1 text tt.value size 24 else: frame: background Frame("gui/tooltip.png") xpos x ypos y text tt.value size 24 screen craft: frame: xsize 500 xalign .5 ysize ((len(recipes)*30) + 300) yalign .5 text "{color=00FFFF}Fabric: [materials[Fabric][0]] Plastic: [materials[Plastic][0]] Wood: [materials[Wood][0]] Iron: [materials[Iron][0]]{/color}" xalign .5 ypos 10 text "{color=BF7FFF}Rubber: [materials[Rubber][0]] Jewel: [materials[Jewel][0]]{/color}" xalign .5 ypos 40 for i in recipes: textbutton recipes[recipes.index(i)] xalign .5 ypos (((recipes.index(i))+2)*40) action SetVariable("temp", i), Return(True) textbutton "Back" xalign .5 ypos (((len(recipes))*50)+100) action Jump("blacksmith") screen maps_screen(maps_for_sale): hbox: xalign .47 ypos -10 xsize 1363 ysize 900 frame: background ("gui/hugeframe.png") padding (100, 40, 20, 20) yfill True hbox: xalign .5 ypos 30 text "{color=FFFF00}{size=24}Gold: {size=26}{b}[gold]{/b}" vpgrid: xpos 20 ypos 100 cols 5 spacing 40 for n, i in enumerate(maps_for_sale, 1): if i not in areas and areas_dic[i][1] != 0: vbox: text "{color=C0C0C0}{size=18}Difficulty: {/size}{color=FFFFFF}"+ (str(areas_dic[i][0])) xalign .5 imagebutton idle ("images/Base/"+ i.lower().replace(" ", "_") +"_idle.jpg") action Call("buy_map", i) xalign .5 key str(n) action Call("buy_map", i) textbutton "{size=13}[n]{size=28}" + i + "{/size}" action Call("buy_map", i) xalign .5 text "{color=C0C0C0}{vspace=10}Cost: {color=FFFF00}" + (str(areas_dic[i][1])) xalign .5 ypos -20 screen explore_screen(area_list): hbox: xalign .5 yalign .21 xsize 1100 ysize 726 frame: background ("gui/bigframe.png") padding (90, 50, 20, 20) yfill True hbox: xalign .5 ypos 40 if potion_counter >= 2: text "{color=7AA9FF}{size=28}{b}Laboratory Nearby{/color}" xpos -20 ypos -10 else: text "{color=C0C0C0}{size=32}Where to?{/color}" xpos -20 ypos -10 vpgrid: xpos 20 ypos 100 cols 4 xspacing 40 yspacing 60 for n, i in enumerate(area_list, 2): if n > 9: pass # <<>>> vbox: ysize 230 text "{color=C0C0C0}{size=18}Difficulty: {/size}{color=FFFFFF}"+ (str(areas_dic[i][0])) xalign .5 imagebutton idle ("images/Base/"+ i.lower().replace(" ", "_") +"_idle.jpg") action Call("exploring", i) xalign .5 for enemy in reversed(enemies_by_area[i]): if enemy[3][0] <= time <= enemy[3][1]: if "Boss" in enemy[9]: text "{b}{color=FF0000}"+str(enemy[0]) xalign .5 size 18 pass # <<>>> else: text "{color=909090}rate up:" xalign .5 size 10 text "{color=D5B1DC}"+str(enemy[0]) xalign .5 ypos -2 size 18 pass # <<>>> key str(n) action Call("exploring", i) textbutton "{size=13}[n]{size=28}" + i + "{/size}" action Call("exploring", i) xalign .5 ypos -5 screen city_screen(): modal True hbox: xalign .47 ypos -10 xsize 1363 ysize 900 frame: background ("gui/hugeframe.png") padding (100, 40, 20, 20) yfill True hbox: xalign .5 ypos 40 text "{color=C0C0C0}{size=32}City{/color}" xpos -20 vpgrid: xpos 20 ypos 100 cols 5 spacing 40 for n, i in enumerate(city_areas, 1): vbox: ysize 230 if i == "Recipe Store" and day%3 != 0: imagebutton idle ("images/City/recipe_store_closed.jpg") action Hide("city_screen"), Jump(i.lower().replace(" ", "_")) xalign .5 key str(n) action Hide("city_screen"), Jump(i.lower().replace(" ", "_")) textbutton "{size=13}[n]{size=25}" + i + "{/size}" action Hide("city_screen"), Jump(i.lower().replace(" ", "_")) xalign .5 ypos -30 else: imagebutton idle ("images/City/"+ i.lower().replace(" ", "_") +".jpg") action Hide("city_screen"), Jump(i.lower().replace(" ", "_")) xalign .5 key str(n) action Hide("city_screen"), Jump(i.lower().replace(" ", "_")) textbutton "{size=13}[n]{size=25}" + i + "{/size}" action Hide("city_screen"), Jump(i.lower().replace(" ", "_")) xalign .5 ypos -30 vbox: ysize 230 imagebutton idle ("images/City/base_icon.jpg") action Hide("city_screen"), Function(skip_time, 2), Jump("base") xalign .5 key str(0) action Hide("city_screen"), Function(skip_time, 2), Jump("base") textbutton "{size=13}"+str(0)+"{size=25}Base{/size}" action Hide("city_screen"), Function(skip_time, 2), Jump("base") xalign .5 ypos -32 screen equips_screen(theme): modal True frame: background ("gui/simple_frame.png") xsize 1100 xalign .5 ysize 726 yalign .2 xpadding 4 xfill True vpgrid: xsize 1110 ysize 694 xpos 20 ypos 20 cols 1 spacing 30 draggable True mousewheel True if len(theme) >= 5: scrollbars "vertical" for equip in theme: if equipments[equip][2] == "Acess": $ temp2 = round(0.1*(equipments[str(equip)][5])**2 + 0.6965*(equipments[str(equip)][5]) + 0.0458) hbox: frame: background ("gui/scroll_shop_detail1.png") xsize 1050 ysize 151 text "{color=C0C0C0}"+equip size 32 xpos 20 yalign .1 text "{color=808080}"+equipments[equip][6] size 17 xpos 50 ypos 50 textbutton "Equip" action SetVariable("temp", equip), Return() xalign .9 yalign .95 imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .52 yalign 1.15 anchor (.5, .5) action Jump("backpack") screen recipes_screen(theme): modal True frame: background ("gui/simple_frame.png") xsize 1100 xalign .5 ysize 726 yalign .2 xpadding 4 xfill True vpgrid: xsize 1110 ysize 694 xpos 20 ypos 20 cols 1 spacing 30 draggable True mousewheel True if len(theme) >= 5: scrollbars "vertical" for equip in theme: if equipments[equip][2] == "Acess": $ temp2 = round(0.1*(equipments[str(equip)][5])**2 + 0.6965*(equipments[str(equip)][5]) + 0.0458) hbox: frame: background ("gui/scroll_shop_detail1.png") xsize 1050 ysize 151 text "{color=C0C0C0}"+equip size 32 xpos 20 yalign .1 text "{color=808080}"+equipments[equip][6] size 17 xpos 50 ypos 50 textbutton "Inspect" action SetVariable("temp", equip), Return() xalign .89 yalign .95 imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .52 yalign 1.15 anchor (.5, .5) action Jump("backpack") screen backpack_screen(): default tt = Tooltip(" ") frame: background ("gui/bigframe.png") padding (100, 40, 20, 20) xsize 1100 xalign .5 ysize 726 yalign .2 xpadding 4 xfill True hbox: xalign .5 ypos 30 text "{color=C0C0C0}{size=32}Backpack{/color}" hbox: yalign .16 xalign .5 spacing 5 text "{size=28}{color=FFFF00}Gold {color=808008}:" yalign .9 text "{size=28}{color=FFFF00}{b}"+str(gold) yalign .9 vbox: yalign .3 xalign .25 text "{color=FF0000}Weapon" xalign .5 textbutton (str(weapon)): xalign .5 hovered tt.Action("{color=C0C0C0}"+equipments[str(weapon)][6]) action NullAction() vbox: yalign .3 xalign .75 text "{color=00FFFF}Acessory" xalign .5 if acess != None: textbutton (str(acess)+"+"+(str(equipments[str(acess)][5]))): xalign .5 hovered tt.Action("{color=C0C0C0}"+equipments[str(acess)][6]) action NullAction() else: textbutton (str(acess)): xalign .5 hovered tt.Action("{color=C0C0C0}"+equipments[str(acess)][6]) action NullAction() add ("gui/backpack_hborder.png") yalign .6 xalign .5 hbox: yalign .71 xalign .68 spacing 5 for potion in consumables: if "Potion" in potion: add ("gui/shop/"+ potion.lower().replace(" ", "") +"_icon.png") text "{color=808008}x" yalign .9 text "{size=28}{color=C0C0C0}"+str(consumables[potion]) yalign .9 text "{space=40}" add ("gui/backpack_hborder.png") yalign .8 xalign .5 hbox: yalign .92 xalign .68 spacing 5 for material in materials: add ("gui/shop/"+ material.lower() +"_icon.png") text "{color=808008}x" yalign .9 text "{size=28}{color=C0C0C0}"+str(materials[material][0]) yalign .9 text "{space=40}" if tt.value != " ": if ttfixed == True: frame: background Frame("gui/tooltip.png") xalign .5 yalign .4 text tt.value else: frame: background Frame("gui/tooltip.png") xpos x+100 ypos y+50 text tt.value screen use_technique(): modal True frame: background ("gui/simple_frame.png") xsize 1100 xalign .5 ysize 726 yalign .2 xpadding 4 xfill True vpgrid: xsize 1110 ysize 694 xpos 20 ypos 20 cols 1 spacing 30 draggable True mousewheel True if len(techniques) >= 5: scrollbars "vertical" for n, tech in enumerate(techniques, 1): hbox: frame: background ("gui/scroll_shop_detail1.png") xsize 1000 ysize 151 key str(n) action If(ap >= techniques[tech][2], true=[(SetVariable("ap", ap - techniques[tech][2])), Call("use_technique", tech)]) text "{color=C0C0C0}{size=8}"+str(n)+"{/size}"+tech size 32 xpos 20 yalign .1 hbox: yalign .5 xsize 750 text "{color=808080}"+get_technique_description(tech, (techniques[tech][1])) size 18 xpos 50 yalign .6 text "{color=FFFFFF}Tier: "+str(techniques[tech][0]) size 20 xalign .98 yalign .1 text "{color=64C6FE}AP Cost: "+str(techniques[tech][2]) size 16 xalign .98 yalign .62 if techniques_dic[tech][3] == "Support": text "{color=2AD52A}Support Technique" size 16 xalign .5 yalign .1 elif techniques_dic[tech][3] == "Offensive": text "{color=D52A2A}Offensive Technique" size 16 xalign .5 yalign .1 text "{color=A0A0A0}Current Proficiency: {b}"+str(techniques[tech][1])+"%{/b}" size 16 xpos 50 yalign .9 textbutton "Use" action If(ap >= techniques[tech][2], true=[(SetVariable("ap", ap - techniques[tech][2])), Call("use_technique", tech)]) xalign .98 yalign .95 for i in range(0, (int((level/5)+1) - len(techniques))): hbox: frame: background ("gui/technique_slot.png") xsize 1000 ysize 151 text "{color=808080}Empty Slot" size 32 xpos 20 yalign .1 text "{color=808080}Learn a new technique at the training camp to use it in battle" size 18 xpos 50 yalign .6 key str(0) action Hide("use_technique"), Jump("player_turn") imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .52 yalign 1.151 anchor (.5, .5) action Hide("use_technique"), Jump("player_turn") screen backpack_scrolls(): modal True default tt = Tooltip(" ") frame: background ("gui/simple_frame.png") xsize 1100 xalign .5 ysize 726 yalign .2 xpadding 4 xfill True vpgrid: xsize 1110 ysize 694 xpos 20 ypos 20 cols 1 spacing 30 draggable True mousewheel True if ((len(x))+len(y)) >= 5: scrollbars "vertical" for technique in y: hbox: frame: background ("gui/scroll_shop_detail1.png") xsize 1000 ysize 151 text "{color=C0C0C0}"+technique size 32 xpos 20 yalign .1 hbox: xpos 50 yalign .55 xsize 750 textbutton "{color=808080}{size=18}"+get_technique_description(technique, (techniques[technique][1])) hovered tt.Action(techniques_dic[technique][5]) action NullAction() text "{color=FFFFFF}Tier: "+str(techniques[technique][0]) size 20 xalign .98 yalign .1 text "{color=64C6FE}AP Cost: "+str(techniques[technique][2]) size 16 xalign .98 yalign .62 text "{color=A0A0A0}Current Proficiency: {b}"+str(techniques[technique][1])+"%{/b}" size 16 xpos 50 yalign .9 if techniques_dic[technique][3] == "Support": text "{color=2AD52A}Support Technique" size 16 xalign .5 yalign .1 elif techniques_dic[technique][3] == "Offensive": text "{color=D52A2A}Offensive Technique" size 16 xalign .5 yalign .1 textbutton "Technique" action NullAction() xalign .98 yalign .95 for i in range(0, (int((level/5)+1) - len(techniques))): hbox: frame: background ("gui/technique_slot.png") xsize 1000 ysize 151 text "{color=808080}Empty Slot" size 32 xpos 20 yalign .1 text "{color=808080}Learn a new technique at the training camp to use it in battle" size 18 xpos 50 yalign .6 for technique in x: hbox: frame: background ("gui/scroll_shop_detail2.png") xsize 1000 ysize 151 text "{color=C0C0C0}"+technique size 32 xpos 20 yalign .1 hbox: xpos 50 yalign .55 xsize 750 textbutton "{color=808080}{size=18}"+(techniques_dic[technique][0]) hovered tt.Action(techniques_dic[technique][5]) action NullAction() text "{b}{color=FFFFFF}Tier: "+str(scrolls[technique]) size 20 xalign .98 yalign .1 if techniques_dic[technique][3] == "Support": text "{color=2AD52A}Support Technique" size 16 xalign .5 yalign .1 elif techniques_dic[technique][3] == "Offensive": text "{color=D52A2A}Offensive Technique" size 16 xalign .5 yalign .1 textbutton "Scroll" action NullAction() xalign .98 yalign .95 imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .52 yalign 1.152 anchor (.5, .5) action Return() if tt.value != " ": if ttfixed == True: frame: background Frame("gui/tooltip.png") xalign .5 yalign .79 text tt.value else: frame: background Frame("gui/tooltip.png") xpos x+100 ypos y+50 text tt.value screen first_technique(profs, first_techs_list): modal True default tt = Tooltip(" ") text "{color=C0C0C0}Choose your first Technique" xalign .5 yalign .1 size 28 frame: background ("gui/simple_frame.png") xsize 1100 xalign .5 ysize 726 yalign .5 xpadding 4 xfill True has vpgrid: xsize 1110 ysize 694 xpos 20 ypos 20 cols 1 spacing 30 draggable True mousewheel True for tech in first_techs_list: hbox: xpos 20 frame: background ("gui/scroll_shop_detail1.png") xsize 1050 ysize 151 text "{color=C0C0C0}"+tech size 32 xpos 20 yalign .1 hbox: xpos 50 yalign .55 xsize 750 textbutton "{color=808080}{size=18}"+get_technique_description(tech, profs[first_techs_list.index(tech)]) hovered tt.Action(techniques_dic[tech][5]) action NullAction() text "{color=FFFFFF}Tier: 1" size 20 xalign .9 yalign .1 text "{color=64C6FE}AP Cost: "+str(int(techniques_dic[tech][1]*(1 - (profs[first_techs_list.index(tech)] / 100) * 0.5))) size 16 xalign .9 yalign .62 text "{color=A0A0A0}Initial Proficiency: {b}"+str(profs[first_techs_list.index(tech)])+"%{/b}" size 16 xpos 20 yalign .9 if techniques_dic[tech][3] == "Support": text "{color=2AD52A}Support Technique" size 16 xalign .5 yalign .1 elif techniques_dic[tech][3] == "Offensive": text "{color=D52A2A}Offensive Technique" size 16 xalign .5 yalign .1 textbutton "Choose" action Function(learn_technique, tech, 1, profs[first_techs_list.index(tech)], int(techniques_dic[tech][1]*(1 - (profs[first_techs_list.index(tech)] / 100) * 0.5))), Function(gain_scroll, tech, 1), Jump("startrun") xalign .9 yalign .95 if tt.value != " ": if ttfixed == True: frame: background Frame("gui/tooltip.png") xalign .5 yalign .04 text tt.value else: frame: background Frame("gui/tooltip.png") xpos x+100 ypos y+50 text tt.value screen scroll_shop(): modal True default tt = Tooltip(" ") frame: background ("gui/simple_frame.png") xsize 1100 xalign .5 ysize 726 yalign .2 xpadding 4 xfill True vpgrid: xsize 1110 ysize 694 xpos 20 ypos 20 cols 1 spacing 30 draggable True mousewheel True if len(scrolls_for_sale) >= 5: scrollbars "vertical" for scroll in scrolls_for_sale: if scroll[0] in scrolls and scroll[1] > scrolls[scroll[0]]: hbox: frame: background ("gui/scroll_shop_detail1.png") xsize 1050 ysize 151 text "{color=C0C0C0}"+scroll[0] size 32 xpos 20 yalign .1 hbox: xpos 50 yalign .6 xsize 750 textbutton "{color=808080}{size=18}"+techniques_dic[scroll[0]][0] hovered tt.Action(techniques_dic[scroll[0]][5]) action NullAction() text "{color=FFFFFF}Tier: "+str(scrolls[scroll[0]])+" > "+str(scroll[1]) size 20 xalign .9 yalign .1 text "{color=64C6FE}AP Cost: "+str(+techniques_dic[scroll[0]][1]) size 16 xalign .9 yalign .3 text "{color=FFFF00}"+str(+techniques_dic[scroll[0]][2]*scroll[1])+" Gold" size 16 xalign .9 yalign .62 if scroll[0] in techniques: text "{color=A0A0A0}Current Proficiency: {b}"+str(techniques[scroll[0]][1])+"%{/b}" size 16 xpos 50 yalign .9 if techniques_dic[scroll[0]][3] == "Support": text "{color=2AD52A}Support Technique" size 16 xalign .5 yalign .1 elif techniques_dic[scroll[0]][3] == "Offensive": text "{color=D52A2A}Offensive Technique" size 16 xalign .5 yalign .1 textbutton "Upgrade" action If(gold >= techniques_dic[scroll[0]][2]*scroll[1], true=[Function(gain_scroll, scroll[0], scroll[1]), Function(decrease_gold, techniques_dic[scroll[0]][2]*scroll[1]), SetVariable("temp", scroll[0])], false=[SetVariable("temp", "None")]), Hide("scroll_shop") xalign .9 yalign .95 for scroll in scrolls_for_sale: if scroll[0] not in scrolls: hbox: frame: background ("gui/scroll_shop_detail1.png") xsize 1050 ysize 151 text "{color=C0C0C0}"+scroll[0] size 32 xpos 20 yalign .1 hbox: xpos 50 yalign .6 xsize 750 textbutton "{color=808080}{size=18}"+techniques_dic[scroll[0]][0] hovered tt.Action(techniques_dic[scroll[0]][5]) action NullAction() text "{color=FFFFFF}Tier: "+str(scroll[1]) size 20 xalign .9 yalign .1 text "{color=64C6FE}AP Cost: "+str(+techniques_dic[scroll[0]][1]) size 16 xalign .9 yalign .3 text "{color=FFFF00}"+str(+techniques_dic[scroll[0]][2]*scroll[1])+" Gold" size 16 xalign .9 yalign .62 if techniques_dic[scroll[0]][3] == "Support": text "{color=2AD52A}Support Technique" size 16 xalign .5 yalign .1 elif techniques_dic[scroll[0]][3] == "Offensive": text "{color=D52A2A}Offensive Technique" size 16 xalign .5 yalign .1 textbutton "Buy" action If(gold >= techniques_dic[scroll[0]][2]*scroll[1], true=[Function(gain_scroll, scroll[0], scroll[1]), Function(decrease_gold, techniques_dic[scroll[0]][2]*scroll[1]), SetVariable("temp", scroll[0])]), Hide("scroll_shop") xalign .9 yalign .95 for scroll in scrolls_for_sale: if scroll[0] in scrolls and scroll[1] <= scrolls[scroll[0]]: hbox: frame: background ("gui/scroll_shop_detail1.png") xsize 1050 ysize 151 text "{color=C0C0C0}"+scroll[0] size 32 xpos 20 yalign .1 hbox: xpos 50 yalign .6 xsize 750 textbutton "{color=808080}{size=18}"+techniques_dic[scroll[0]][0] hovered tt.Action(techniques_dic[scroll[0]][5]) action NullAction() text "{color=FFFFFF}Tier: "+str(scroll[1]) size 20 xalign .9 yalign .1 text "{color=64C6FE}AP Cost: "+str(+techniques_dic[scroll[0]][1]) size 16 xalign .9 yalign .3 text "{color=FFFF00}"+str(+techniques_dic[scroll[0]][2]*scroll[1])+" Gold" size 16 xalign .9 yalign .62 if scroll[0] in techniques: text "{color=A0A0A0}Current Proficiency: {b}"+str(techniques[scroll[0]][1])+"%{/b}" size 16 xpos 50 yalign .9 if techniques_dic[scroll[0]][3] == "Support": text "{color=2AD52A}Support Technique" size 16 xalign .5 yalign .1 elif techniques_dic[scroll[0]][3] == "Offensive": text "{color=D52A2A}Offensive Technique" size 16 xalign .5 yalign .1 imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .5 yalign 1.152 anchor (.5, .5) action Hide("scroll_shop"), Jump("training_camp") if tt.value != " ": if ttfixed == True: frame: background Frame("gui/tooltip.png") xalign .5 yalign .79 text tt.value else: frame: background Frame("gui/tooltip.png") xpos x+100 ypos y+50 text tt.value screen learn_technique(): modal True frame: background ("gui/simple_frame.png") xsize 1100 xalign .5 ysize 726 yalign .2 xpadding 4 xfill True vpgrid: xsize 1110 ysize 694 xpos 20 ypos 20 cols 1 spacing 30 draggable True mousewheel True if ((len(x))+len(y)) >= 5: scrollbars "vertical" for technique in x: hbox: frame: background ("gui/scroll_shop_detail1.png") xsize 1000 ysize 151 text "{color=C0C0C0}"+technique size 32 xpos 20 yalign .1 text "{color=808080}"+str(techniques_dic[technique][5]) size 18 xpos 50 yalign .6 if technique in techniques: text "{b}{color=FFFFFF}Tier: "+str(techniques[technique][0])+" > "+str(scrolls[technique]) size 20 xalign .98 yalign .1 else: text "{color=FFFFFF}Tier: "+str(scrolls[technique]) size 20 xalign .98 yalign .1 if technique in techniques: text "{color=D5D52A}Cost: "+str(int(((techniques_dic[technique][2]*scrolls[technique]) - (techniques_dic[technique][2]*techniques[technique][0]))*0.75)) size 16 xalign .965 yalign .62 else: text "{color=D5D52A}Cost: "+str(int((techniques_dic[technique][2]*scrolls[technique])*0.75)) size 16 xalign .965 yalign .62 if techniques_dic[technique][3] == "Support": text "{color=2AD52A}Support Technique" size 16 xalign .5 yalign .1 elif techniques_dic[technique][3] == "Offensive": text "{color=D52A2A}Offensive Technique" size 16 xalign .5 yalign .1 if technique in techniques: textbutton "Learn" action If(gold >= int(((techniques_dic[technique][2]*scrolls[technique]) - (techniques_dic[technique][2]*techniques[technique][0]))*0.75), true=[Function(decrease_gold, int(((techniques_dic[technique][2]*scrolls[technique]) - (techniques_dic[technique][2]*techniques[technique][0]))*0.75)), SetVariable("temp2", technique), Return(technique)]) xalign .98 yalign .95 elif technique not in techniques: if (int((level/5)+1) - len(techniques)) > 0: textbutton "Learn" action If(gold >= int((techniques_dic[technique][2]*scrolls[technique])*0.75), true=[Function(decrease_gold, int((techniques_dic[technique][2]*scrolls[technique])*0.75)), SetVariable("temp2", technique), Return(technique)]) xalign .98 yalign .95 for technique in y: hbox: frame: background ("gui/scroll_shop_detail2.png") xsize 1000 ysize 151 text "{color=C0C0C0}"+technique size 32 xpos 20 yalign .1 text "{color=808080}"+str(techniques_dic[technique][5]) size 18 xpos 50 yalign .6 text "{color=FFFFFF}Tier: "+str(techniques[technique][0]) size 20 xalign .98 yalign .1 text "{color=D5D52A}Cost: "+str(int((techniques_dic[technique][2]*techniques[technique][0])*0.5)) size 16 xalign .965 yalign .62 text "{color=A0A0A0}Current Proficiency: {b}"+str(techniques[technique][1])+"%{/b}" size 16 xpos 50 yalign .9 if techniques_dic[technique][3] == "Support": text "{color=2AD52A}Support Technique" size 16 xalign .5 yalign .1 elif techniques_dic[technique][3] == "Offensive": text "{color=D52A2A}Offensive Technique" size 16 xalign .5 yalign .1 textbutton "Train" action If(gold >= int((techniques_dic[technique][2]*techniques[technique][0])*0.5), true=[Function(decrease_gold, int((techniques_dic[technique][2]*techniques[technique][0])*0.5)), SetVariable("temp2", technique), Return(technique)]) xalign .98 yalign .95 imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .52 yalign 1.152 anchor (.5, .5) action SetVariable("temp2", "None"), Return() screen choose_curse(): modal True frame: background None xsize 1220 xalign .5 ysize 726 yalign .3 xpadding 4 xfill True has vpgrid: xsize 1220 ysize 694 ypos 63 cols 3 spacing 63 draggable True mousewheel True for curse in curse_options: vbox: xpos 20 frame: background ("gui/curse_box.png") xsize 350 ysize 530 imagebutton: idle "gui/button/curse_box_imagebutton.png" hover "gui/button/curse_box_imagebutton_hovered.png" xpos -31 ypos -43 action Return(curse) text "{color=C0C0C0}"+curse size 28 xalign .5 yalign .15 hbox: xsize 300 xpos 10 ysize 200 yalign .5 text "{color=808080}"+get_curse_description(curse, curses[curse]+1) size 18 xalign .5 text "{color=A0A0A0}Lv "+str(curses[curse]) size 26 xalign .5 yalign .9 screen museum_shop(available_pictures, picture_prices): modal True frame: background ("gui/simple_frame.png") xsize 1100 xalign .5 ysize 726 yalign .2 xpadding 4 xfill True vpgrid: xsize 1110 ysize 694 xpos 20 ypos 20 cols 4 xspacing 45 yspacing 20 draggable True mousewheel True if len(available_pictures) >= 8: scrollbars "vertical" for album in available_pictures: vbox: xsize 230 imagebutton idle ("images/Enemies/"+album.replace(" ", "")+"/"+album.lower().replace(" ", "")+"icon.jpg") action If(persistent.fame >= picture_prices[available_pictures.index(album)], true=[Function(decrease_persistent_fame, picture_prices[available_pictures.index(album)]), Function(buy_pictures_from_museum, album), Hide("museum_shop")]) xalign .5 textbutton "{size=24}"+album+"{/size}" xalign .5 action If(persistent.fame >= picture_prices[available_pictures.index(album)], true=[Function(decrease_persistent_fame, picture_prices[available_pictures.index(album)]), Function(buy_pictures_from_museum, album), Hide("museum_shop")]) textbutton "{size=20}"+str(picture_prices[available_pictures.index(album)])+" Fame{/size}" xalign .5 ypos -10 action If(persistent.fame >= picture_prices[available_pictures.index(album)], true=[Function(decrease_persistent_fame, picture_prices[available_pictures.index(album)]), Function(buy_pictures_from_museum, album), Hide("museum_shop")]) imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .5 yalign 1.151 anchor (.5, .5) action Hide("museum_shop"), Jump("museum") screen museum_enemy_gallery(unlocked_albums): modal True frame: background ("gui/simple_frame.png") xsize 1100 xalign .5 ysize 726 yalign .2 xpadding 4 xfill True vpgrid: xsize 1110 ysize 694 xpos 20 ypos 20 cols 4 xspacing 45 yspacing 20 draggable True mousewheel True if len(unlocked_albums) >= 8: scrollbars "vertical" for album in unlocked_albums: vbox: xsize 230 imagebutton idle ("images/Enemies/"+album.replace(" ", "")+"/"+album.lower().replace(" ", "")+"icon.jpg") xalign .5 action SetVariable("temp2", "Enemy"), Return(album) textbutton "{size=24}"+album+"{/size}" xalign .5 action SetVariable("temp2", "Enemy"), Return(album) if album in persistent.extra_pics: textbutton "{size=20}Bad End{/size}" xalign .5 action SetVariable("temp2", "BE"), Return(album) imagebutton idle "gui/button/enemies_button.png" hover "gui/button/hover_enemies_button.png" xalign .3 yalign 1.07 anchor (.5, .5) action NullAction() imagebutton idle "gui/button/events_button.png" hover "gui/button/hover_events_button.png" xalign .5 yalign 1.07 anchor (.5, .5) action Show("museum_event_gallery", unlocked_albums=get_unlocked_albums("Events")), Hide("museum_enemy_gallery") imagebutton idle "gui/button/dungeons_button.png" hover "gui/button/hover_dungeons_button.png" xalign .7 yalign 1.07 anchor (.5, .5) action Show("museum_dungeon_gallery", unlocked_albums=get_unlocked_albums("Dungeons")), Hide("museum_enemy_gallery") imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .5 yalign 1.151 anchor (.5, .5) action Hide("museum_enemy_gallery"), Jump("museum") screen museum_dungeon_gallery(unlocked_albums): modal True frame: background ("gui/simple_frame.png") xsize 1100 xalign .5 ysize 726 yalign .2 xpadding 4 xfill True vpgrid: xsize 1110 ysize 694 xpos 20 ypos 20 cols 4 xspacing 45 yspacing 20 draggable True mousewheel True if len(unlocked_albums) >= 8: scrollbars "vertical" for album in unlocked_albums: vbox: xsize 212 imagebutton idle ("images/Events/Facility/"+album.lower().replace(" ", "_")+"1_icon.jpg") action SetVariable("temp2", "Dungeon"), Return(album), Hide("museum_dungeon_gallery") textbutton "{size=24}"+album+"{/size}" xalign .5 action NullAction() imagebutton idle "gui/button/enemies_button.png" hover "gui/button/hover_enemies_button.png" xalign .3 yalign 1.07 anchor (.5, .5) action Show("museum_enemy_gallery", unlocked_albums=get_unlocked_albums("Enemies")), Hide("museum_dungeon_gallery") imagebutton idle "gui/button/events_button.png" hover "gui/button/hover_events_button.png" xalign .5 yalign 1.07 anchor (.5, .5) action Show("museum_event_gallery", unlocked_albums=get_unlocked_albums("Events")), Hide("museum_dungeon_gallery") imagebutton idle "gui/button/dungeons_button.png" hover "gui/button/hover_dungeons_button.png" xalign .7 yalign 1.07 anchor (.5, .5) action NullAction() imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .5 yalign 1.151 anchor (.5, .5) action Hide("museum_dungeon_gallery"), Jump("museum") screen museum_event_gallery(unlocked_albums): modal True frame: background ("gui/simple_frame.png") xsize 1100 xalign .5 ysize 726 yalign .2 xpadding 4 xfill True vpgrid: xsize 1110 ysize 694 xpos 20 ypos 20 cols 4 xspacing 45 yspacing 20 draggable True mousewheel True if len(unlocked_albums) >= 8: scrollbars "vertical" for album in unlocked_albums: vbox: xsize 212 imagebutton idle ("images/Events/"+album.replace("Event", "")+"/"+album.replace("Event", "").lower()+"1_icon.jpg") action SetVariable("temp2", "Event"), Return(album), Hide("museum_event_gallery") textbutton "{size=24}"+album.replace("Event", "")+"{/size}" xalign .5 action NullAction() imagebutton idle "gui/button/enemies_button.png" hover "gui/button/hover_enemies_button.png" xalign .3 yalign 1.07 anchor (.5, .5) action Show("museum_enemy_gallery", unlocked_albums=get_unlocked_albums("Enemies")), Hide("museum_event_gallery") imagebutton idle "gui/button/events_button.png" hover "gui/button/hover_events_button.png" xalign .5 yalign 1.07 anchor (.5, .5) action NullAction() imagebutton idle "gui/button/dungeons_button.png" hover "gui/button/hover_dungeons_button.png" xalign .7 yalign 1.07 anchor (.5, .5) action Show("museum_dungeon_gallery", unlocked_albums=get_unlocked_albums("Dungeons")), Hide("museum_event_gallery") imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .5 yalign 1.151 anchor (.5, .5) action Hide("museum_event_gallery"), Jump("museum") screen consum_screen(): hbox: xsize 1100 xalign .5 ysize 726 yalign .2 xfill True frame: background ("gui/bigframe.png") padding (100, 40, 20, 20) hbox: xalign .5 ypos 30 text "{color=C0C0C0}{size=32}Consumables{/color}" vpgrid: ypos 100 cols 4 spacing 20 for n, i in enumerate(consumables.keys(), 1): if consumables[i] > 0: vbox: xsize 220 ysize 100 imagebutton idle ("images/Base/"+ i.lower().replace(" ", "") + "_icon.png") action SetVariable("potted", True), Call("use_consum", i) xalign .5 key str(n) action SetVariable("potted", True), Call("use_consum", i) textbutton "{size=11}[n]{size=22}[i]: {b}" + str(consumables[i]) action SetVariable("potted", True), Call("use_consum", i) xalign .5 screen Att_screen: $ x, y = pygame.mouse.get_pos() $ store.mousex = x $ store.mousey = y default tt = Tooltip(" ") frame: background Solid('#000000ff') text "{size=40}{b}{color=AE60AE}[points] {/b}{/color}{color=FFFFFF}{size=25}Remaining Points{/size}" xalign .07 yalign .07 add "gui/att_vborder.png" xalign .5 yalign .5 add "gui/att_border.png" xalign .5 yalign .12 add "gui/att_detail.png" xalign .5 yalign .5 text "{color=FFFFFF}{size=30}Attributes{/size}{/color}" xalign .5 yalign .18 text "{color=707070}Current{/color}" xpos 400 ypos 240 text "{color=707070}Cost{/color}" xpos 700 ypos 240 text "{color=FFFFFF}{size=50}STR{/size}" xalign .1 yalign .3 if disableatt != 2: imagebutton: idle "gui/button/att_button.png" hover "gui/button/hover_att_button.png" anchor .5, .5 xalign .27 yalign .3 action Function(increase_att_one, 0) hovered tt.Action("Increase Attack by +0.2") imagebutton idle "gui/button/att_button_minus.png" hover "gui/button/hover_att_button_minus.png" xalign .17 yalign .3 action Function(decrease_att_one, 0) imagebutton idle "gui/button/att_button_plus_5.png" hover "gui/button/hover_att_button_plus_5.png" xalign .46 yalign .3 action Function(increase_att_five, 0) text "{size=70}{color=606060}[catt[0]]{/size}{/color}" xpos 630 ypos 295 text "{color=FFFFFF}{size=70}[att[0]]{/size}" xpos 410 ypos 295 text "{color=FFFFFF}{size=50}AGI{/size}" xalign .1 yalign .40 if disableatt != 2: imagebutton: idle "gui/button/att_button.png" hover "gui/button/hover_att_button.png" anchor .5, .5 xalign .27 yalign .4 action Function(increase_att_one, 1) hovered tt.Action("Increase Stamina Regeneration{vspace=10}Increase chance of successfully escaping") imagebutton idle "gui/button/att_button_minus.png" hover "gui/button/hover_att_button_minus.png" xalign .17 yalign .4 action Function(decrease_att_one, 1) imagebutton idle "gui/button/att_button_plus_5.png" hover "gui/button/hover_att_button_plus_5.png" xalign .46 yalign .4 action Function(increase_att_five, 1) text "{size=70}{color=404040}[catt[1]]{/size}" xpos 630 ypos 395 text "{color=FFFFFF}{size=70}[att[1]]{/size}" xpos 410 ypos 395 text "{color=FFFFFF}{size=50}VIT{/size}" xalign .1 yalign .50 if disableatt != 2: imagebutton: idle "gui/button/att_button.png" hover "gui/button/hover_att_button.png" anchor .5, .5 xalign .27 yalign .5 action Function(increase_att_one, 2) hovered tt.Action("Increase Maximum HP by 5{vspace=10}Increases side jobs efficiency") imagebutton idle "gui/button/att_button_minus.png" hover "gui/button/hover_att_button_minus.png" xalign .17 yalign .5 action Function(decrease_att_one, 2) imagebutton idle "gui/button/att_button_plus_5.png" hover "gui/button/hover_att_button_plus_5.png" xalign .46 yalign .5 action Function(increase_att_five, 2) text "{size=70}{color=404040}[catt[2]]{/size}" xpos 630 ypos 494 text "{color=FFFFFF}{size=70}[att[2]]{/size}" xpos 410 ypos 494 text "{color=FFFFFF}{size=50}INT{/size}" xalign .1 yalign .6 if disableatt != 2: imagebutton: idle "gui/button/att_button.png" hover "gui/button/hover_att_button.png" anchor .5, .5 xalign .27 yalign .6 action Function(increase_att_one, 3) hovered tt.Action("Increase Maximum Lust by 5{vspace=10}Increase Maximum AP by +0.25") imagebutton idle "gui/button/att_button_minus.png" hover "gui/button/hover_att_button_minus.png" xalign .17 yalign .6 action Function(decrease_att_one, 3) imagebutton idle "gui/button/att_button_plus_5.png" hover "gui/button/hover_att_button_plus_5.png" xalign .46 yalign .6 action Function(increase_att_five, 3) text "{size=70}{color=404040}[catt[3]]{/size}" xpos 630 ypos 593 text "{color=FFFFFF}{size=70}[att[3]]{/size}" xpos 410 ypos 593 text "{color=FFFFFF}{size=50}CON{/size}" xalign .1 yalign .7 if disableatt != 2: imagebutton: idle "gui/button/att_button.png" hover "gui/button/hover_att_button.png" anchor .5, .5 xalign .27 yalign .7 action Function(increase_att_one, 4) hovered tt.Action("Decrease Lust Damage{vspace=10}Increase Resistance to various debuffs") imagebutton idle "gui/button/att_button_minus.png" hover "gui/button/hover_att_button_minus.png" xalign .17 yalign .7 action Function(decrease_att_one, 4) imagebutton idle "gui/button/att_button_plus_5.png" hover "gui/button/hover_att_button_plus_5.png" xalign .46 yalign .7 action Function(increase_att_five, 4) text "{color=FFFFFF}{size=70}{color=404040}[catt[4]]{/size}" xpos 630 ypos 692 text "{color=FFFFFF}{size=70}[att[4]]{/size}" xpos 410 ypos 692 for i in range(0, 5): text "{color=FFFFFF}{size=34}+{/size}" xpos 505 ypos 315+(i*99) text [str(bonusatt[i])] xpos 532 ypos 315+(i*99) size 36 color "#ffffff" text "{size=52}{color=6FE5FF}"+str(int(attack))+"{size=22}."+str(attack).split('.')[1]+"0{/size}" xpos 1050 ypos 320 text "{size=38}{color=58838C}Attack{/size}" xpos 1240 ypos 328 add "gui/att_border2.png" xpos 1370 ypos 370 anchor (.5, .5) text "{size=52}{color=6FE5FF}"+str(int(staregen))+"{size=22}."+str(staregen).split('.')[1]+"%{/size}" xpos 1050 ypos 402 text "{size=38}{color=58838C}Stamina Regeneration{/size}" xpos 1240 ypos 410 add "gui/att_border2.png" xpos 1370 ypos 452 anchor (.5, .5) text "{size=52}{color=6FE5FF}[mhp]{/size}" xpos 1050 ypos 480 text "{size=38}{color=58838C}Maximum HP{/size}" xpos 1240 ypos 485 add "gui/att_border2.png" xpos 1370 ypos 530 anchor (.5, .5) text "{size=52}{color=6FE5FF}[mlust]{/size}" xpos 1050 ypos 560 text "{size=38}{color=58838C}Maximum Lust{/size}" xpos 1240 ypos 566 add "gui/att_border2.png" xpos 1370 ypos 610 anchor (.5, .5) text "{size=52}{color=6FE5FF}"+str(int(addrest))+"{size=22}."+str(addrest).split('.')[1]+"%{/size}" xpos 1050 ypos 640 text "{size=38}{color=58838C}Addiction Resistance{/size}" xpos 1240 ypos 650 add "gui/att_border2.png" xpos 1370 ypos 690 anchor (.5, .5) text "{size=52}{color=6FE5FF}"+str(int(correst))+"{size=22}."+str(correst).split('.')[1]+"%{/size}" xpos 1050 ypos 710 text "{size=38}{color=58838C}Corruption Resistance{/size}" xpos 1240 ypos 720 add "gui/att_border2.png" xpos 1370 ypos 760 anchor (.5, .5) if disableatt == 0: imagebutton idle "gui/button/reset_button.png" hover "gui/button/hover_reset_button.png" xalign .4 yalign .95 anchor (.5, .5) action Function(resetatt) imagebutton idle "gui/button/cbutton.png" hover "gui/button/hover_cbutton.png" insensitive "gui/button/ins_cbutton.png" xalign .6 yalign .95 anchor (.5, .5) action Jump("first_tech") elif disableatt == 1: imagebutton idle "gui/button/reset_button.png" hover "gui/button/hover_reset_button.png" xalign .4 yalign .95 anchor (.5, .5) action Function(resetatt) imagebutton idle "gui/button/cbutton.png" hover "gui/button/hover_cbutton.png" xalign .6 yalign .95 anchor (.5, .5) action Hide("Att_screen") else: imagebutton idle "gui/button/cbutton.png" hover "gui/button/hover_cbutton.png" xalign .5 yalign .95 anchor (.5, .5) action Hide("Att_screen") if tt.value != " ": if ttfixed == True: frame: background Frame("gui/tooltip.png") xalign .5 yalign .04 text tt.value else: frame: background Frame("gui/tooltip.png") xpos x+100 ypos y+50 text tt.value screen Traits_screen(): $ x, y = pygame.mouse.get_pos() $ store.mousex = x $ store.mousey = y default tt = Tooltip(" ") text "{size=40}{color=8F76BA}Personality Points: [personality_points]{/color}{/size}" xalign .5 yalign .065 add "gui/att_border.png" xalign .5 yalign .11 text "{size=26}Negative Traits{/size}" xalign .5 yalign .15 add "gui/traits_detail1.png" xalign .5 yalign .23 hbox: xsize 1600 ysize 240 xalign .62 yalign .26 vpgrid: xfill True cols 5 for i in persistent.btraits_pool: hbox: xalign .5 xcenter .5 xpos 140 textbutton (i+" {size=16}(+"+str(btraits_dic[i][1])+")"): text_style "btraitbutton" hovered tt.Action(btraits_dic[i][0]) action AddToSet(btraits, i), SetVariable("personality_points", (personality_points + btraits_dic[i][1])), tt.Action(" ") text "{size=26}{color=0073B6}Positive Traits{/size}" xalign .5 yalign .53 add "gui/traits_detail2.png" xalign .5 yalign .79 hbox: xsize 1600 ysize 240 xalign .58 yalign .73 vpgrid: xfill True cols 5 for j in persistent.gtraits_pool: hbox: xalign .5 xcenter .5 xpos 140 textbutton (j+" {size=16}(-"+str(gtraits_dic[j][1]+len(gtraits)*3)+")"): text_style "gtraitbutton" hovered tt.Action(gtraits_dic[j][0]) action AddToSet(gtraits, j), SetVariable("personality_points", (personality_points - (gtraits_dic[j][1]+len(gtraits)*3))), tt.Action(" ") imagebutton idle "gui/button/reset_button2.png" hover "gui/button/hover_reset_button2.png" xalign .3 yalign .93 action Function(resettraits) imagebutton idle "gui/button/rbutton.png" hover "gui/button/hover_rbutton.png" xalign .7 yalign .93 action Function(RandomTraits) imagebutton idle "gui/button/cbutton.png" hover "gui/button/hover_cbutton.png" insensitive "gui/button/ins_cbutton.png" xalign .5 yalign .94 action If(personality_points >= 0, true=(Jump("att"))) if tt.value != " ": if ttfixed == True: frame: background Frame("gui/tooltip.png") xalign .5 yalign .51 text tt.value else: frame: background Frame("gui/tooltip.png") xpos x+100 ypos y+50 text tt.value screen tower_screen(): modal True hbox: xalign .47 ypos -10 xsize 1363 ysize 900 frame: background ("gui/hugeframe.png") padding (20, 40, 20, 20) text "{color=C0C0C0}{size=38}Tower Challenge{/color}" anchor (.5, .5) xalign .52 yalign .04 if tower_boss_rush == False: text "{color=B0B0B0}{size=42}Enemy Base HP" xalign .265 yalign .16 xanchor .5 imagebutton idle "gui/button/att_button_minus.png" hover "gui/button/hover_att_button_minus.png" xalign .15 yalign .25 action If(tower_base_hp > 120, true=[SetVariable("tower_base_hp", (tower_base_hp - 5)), SetVariable("tower_fame_multiplier", (tower_fame_multiplier - 0.01))]) text "{color=FF0000}{size=58}[tower_base_hp]{/color}" xalign .265 yalign .25 xanchor .5 imagebutton idle "gui/button/att_button_plus.png" hover "gui/button/hover_att_button_plus.png" xalign .35 yalign .25 action SetVariable("tower_base_hp", (tower_base_hp + 5)), SetVariable("tower_fame_multiplier", (tower_fame_multiplier + 0.01)) text "{color=B0B0B0}{size=40}Boss Frequency" xalign .75 yalign .16 xanchor .5 text "{color=B90000}{size=16}Higher than 5 Disables Tower Achievements and Record Saving" xalign .75 yalign .204 xanchor .5 imagebutton idle "gui/button/att_button_minus.png" hover "gui/button/hover_att_button_minus.png" xalign .59 yalign .25 action If(tower_boss_frequency > 2, true=[SetVariable("tower_boss_frequency", (tower_boss_frequency - 1)), SetVariable("tower_fame_multiplier", (tower_fame_multiplier + 0.20))]) text "{size=32}{color=B0B0B0}Every {color=FF0000}[tower_boss_frequency]{/color} Encounters" xalign .75 yalign .25 xanchor .5 imagebutton idle "gui/button/att_button_plus.png" hover "gui/button/hover_att_button_plus.png" xalign .94 yalign .25 action SetVariable("tower_boss_frequency", (tower_boss_frequency + 1)), SetVariable("tower_fame_multiplier", (tower_fame_multiplier - 0.20)) text "{color=B0B0B0}{size=40}Enemy Bonus HP" xalign .265 yalign .4 xanchor .5 imagebutton idle "gui/button/att_button_minus.png" hover "gui/button/hover_att_button_minus.png" xalign .15 yalign .49 action If(tower_hp_bonus > 0, true=[SetVariable("tower_hp_bonus", (tower_hp_bonus - 5)), SetVariable("tower_fame_multiplier", (tower_fame_multiplier - 0.02))]) text "{color=FF0000}{size=58}+[tower_hp_bonus]{/color}" xalign .26 yalign .49 xanchor .5 imagebutton idle "gui/button/att_button_plus.png" hover "gui/button/hover_att_button_plus.png" xalign .35 yalign .49 action SetVariable("tower_hp_bonus", (tower_hp_bonus + 5)), SetVariable("tower_fame_multiplier", (tower_fame_multiplier + 0.02)) text "{color=B0B0B0}{size=24}Replenish {color=45FF00}Stamina{/color} After Encounter{vspace=5}{size=16}{color=B90000}Disables Tower Achievements and Record Saving" xalign .78 yalign .485 xanchor .5 imagebutton: xalign .59 yalign .49 if tower_replenish_stamina: idle "gui/button/checkbox_checked.png" else: idle "gui/button/checkbox.png" action ToggleVariable("tower_replenish_stamina", True, False), If(tower_replenish_stamina, true=[SetVariable("tower_fame_multiplier", (tower_fame_multiplier + 0.50))], false=[SetVariable("tower_fame_multiplier", (tower_fame_multiplier - 0.50))]) text "{color=B0B0B0}{size=32}Boss Rush Mode" xalign .53 yalign .69 xanchor .5 imagebutton: xalign .39 yalign .7 if tower_boss_rush: idle "gui/button/checkbox_checked.png" else: idle "gui/button/checkbox.png" action ToggleVariable("tower_boss_rush", True, False), If(tower_boss_rush, true=[SetVariable("tower_fame_multiplier", (tower_fame_multiplier - 1))], false=[SetVariable("tower_fame_multiplier", (tower_fame_multiplier - (((tower_base_hp-120)/5)*0.01)+((5-tower_boss_frequency)*-0.2)+1)), SetVariable("tower_boss_frequency", 5), SetVariable("tower_base_hp", 120)]) text "{color=9A9A9A}{size=30}Fame Multiplier: "+"{:.2f}".format(tower_fame_multiplier)+"x" xalign .525 yalign 0.835 imagebutton idle "gui/button/cbutton.png" hover "gui/button/hover_cbutton.png" insensitive "gui/button/ins_cbutton.png" xalign .52 yalign 0.88 anchor (.5, .5) action If(tower_fame_multiplier > 0.01 ,true=Return()) imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .52 yalign 1.033 anchor (.5, .5) action Hide("tower_screen"), Jump("base") if tower_replenish_stamina == True or tower_boss_frequency > 5: text "{color=FF0000}{b}Tower Related Achievements and Record Saving Disabled" xalign .525 yalign 0.955 else: text "{color=00B900}Tower Related Achievements and Record Saving Enabled" xalign .525 yalign 0.955 screen curses_screen(): modal True frame: background ("gui/simple_frame.png") xsize 1100 xalign .5 ysize 726 yalign .2 xpadding 4 xfill True vpgrid: xsize 1110 ysize 694 xpos 20 ypos 20 cols 1 spacing 30 draggable True mousewheel True scrollbars "vertical" for curse in curses.keys(): if curses[curse] > 0: hbox: frame: background ("gui/scroll_shop_detail1.png") xsize 1050 ysize 151 text "{color=C0C0C0}"+curse size 32 xpos 20 yalign .1 text "{color=808080}"+get_curse_description(curse, curses[curse]) size 18 xpos 50 yalign .6 text "{color=C0C0C0}Lv "+str(curses[curse]) size 32 xalign .9 yalign .1 imagebutton idle "gui/button/back_button.png" hover "gui/button/hover_back_button.png" xalign .52 yalign 1.15 anchor (.5, .5) action Hide("curses_screen"), Jump("tower_next_encounter_player_choice") screen end_run_screen(): frame: background ("gui/hugeframe.png") xsize 1363 xalign .46 ysize 900 ypos -12 text "{color=C0C0C0}{size=38}[name]{/color}" xalign .5 yalign .1 text "{color=808080}Run started {/color}{color=00A2FF}"+str(format_time(final_time)[0])+"{/color}{color=808080} hours and {/color}{color=00A2FF}"+str(format_time(final_time)[1])+"{/color}{color=808080} minutes ago" xalign .5 yalign .2 text "{color=808080}Level Reached: {color=00A2FF}"+str(level) xpos 200 yalign .3 text "{color=808080}Days Survived: {color=00A2FF}"+str(day) xpos 800 yalign .3 text "{color=808080}Enemies Defeated: {color=00A2FF}"+str(final_enemies_defeated) xpos 200 yalign .35 if final_enemies_defeated >= day*4: add "gui/s_rank.png" xpos 450 yalign .34 elif final_enemies_defeated >= day*3: add "gui/a_rank.png" xpos 450 yalign .34 elif final_enemies_defeated >= day*2: add "gui/b_rank.png" xpos 450 yalign .34 else: add "gui/c_rank.png" xpos 450 yalign .34 text "{color=808080}Total Damage dealt: {color=00A2FF}"+str(final_damage_dealt) xpos 800 yalign .35 if final_damage_dealt >= (500*(day**1.2)): add "gui/s_rank.png" xpos 1080 yalign .34 elif final_damage_dealt >= (400*(day**1.2)): add "gui/a_rank.png" xpos 1080 yalign .34 elif final_damage_dealt >= (300*(day**1.2)): add "gui/b_rank.png" xpos 1080 yalign .34 else: add "gui/c_rank.png" xpos 1080 yalign .34 text "{color=808080}Potion Laboratories found: {color=00A2FF}"+str(final_potions_found) xpos 200 yalign .4 if final_potions_found > day: add "gui/s_rank.png" xpos 530 yalign .39 elif final_potions_found > day*0.8: add "gui/a_rank.png" xpos 530 yalign .39 elif final_potions_found > day*0.6: add "gui/b_rank.png" xpos 530 yalign .39 else: add "gui/c_rank.png" xpos 530 yalign .39 text "{color=808080}Total Consumables used: {color=00A2FF}"+str(final_consum_used) xpos 800 yalign .4 if final_consum_used >= day*1.5: add "gui/s_rank.png" xpos 1110 yalign .39 elif final_consum_used >= day*1.25: add "gui/a_rank.png" xpos 1110 yalign .39 elif final_consum_used >= day: add "gui/b_rank.png" xpos 1110 yalign .39 else: add "gui/c_rank.png" xpos 1110 yalign .39 text "{color=808080}Sidejobs Completed: {color=00A2FF}"+str(final_sidejobs_completed) xpos 200 yalign .45 if final_sidejobs_completed >= day-2: add "gui/s_rank.png" xpos 470 yalign .44 elif final_sidejobs_completed > (day*0.8)-2: add "gui/a_rank.png" xpos 470 yalign .44 elif final_sidejobs_completed > (day*0.75)-2: add "gui/b_rank.png" xpos 470 yalign .44 else: add "gui/c_rank.png" xpos 470 yalign .44 text "{color=808080}Gold Gained: {color=00A2FF}"+str(final_gold_gained) xpos 800 yalign .45 if final_gold_gained >= (20*(day**1.25)): add "gui/s_rank.png" xpos 990 yalign .44 elif final_gold_gained > (15*(day**1.25)): add "gui/a_rank.png" xpos 990 yalign .44 elif final_gold_gained > (10*(day**1.25)): add "gui/b_rank.png" xpos 990 yalign .44 else: add "gui/c_rank.png" xpos 990 yalign .44 text "{color=808080}Favor Gained: {color=00A2FF}"+str(final_favor_gained) xpos 200 yalign .5 if final_favor_gained >= day*0.7: add "gui/s_rank.png" xpos 390 yalign .49 elif final_favor_gained > day*0.5: add "gui/a_rank.png" xpos 390 yalign .49 elif final_favor_gained > day*0.25: add "gui/b_rank.png" xpos 390 yalign .49 else: add "gui/c_rank.png" xpos 390 yalign .49 text "{color=808080}Techniques Used: {color=00A2FF}"+str(final_techniques_used) xpos 800 yalign .5 if final_techniques_used >= day*1.8: add "gui/s_rank.png" xpos 1030 yalign .49 elif final_techniques_used > day*1.4: add "gui/a_rank.png" xpos 1030 yalign .49 elif final_techniques_used > day: add "gui/b_rank.png" xpos 1030 yalign .49 else: add "gui/c_rank.png" xpos 1030 yalign .49 text "{color=808080}Most Increased Addiction: {/color}"+str(get_final_most_increased_addiction()[0]) xpos 200 yalign .6 text "{color=808080}Amount: {/color}"+str(get_final_most_increased_addiction()[1]) xpos 200 yalign .63 text "{color=808080}Most Addiction Gained from: {/color}"+str(get_final_most_addiction_gain_from_enemy()[0]) xpos 800 yalign .6 text "{color=808080}Amount gained: {/color}"+str(get_final_most_addiction_gain_from_enemy()[1]) xpos 800 yalign .63 text "{color=808080}Most Lust Damage dealt by: {/color}"+str(get_final_most_lust_damage_from_enemy()[0]) xpos 200 yalign .7 text "{color=808080}Lust Gained: {/color}"+str(get_final_most_lust_damage_from_enemy()[1]) xpos 200 yalign .73 text "{color=808080}First Orgasm: {/color}"+str(final_first_orgasm[0]) xpos 800 yalign .7 text "{color=808080}Day: {/color}"+str(final_first_orgasm[1]) xpos 800 yalign .73 text "---------- All time records -----------" xalign .5 yalign .82 text "{color=808080}Most Orgasms Caused by: {/color}"+str(get_final_most_climaxes()[0]) xpos 200 yalign .89 text "{color=808080}Orgasm Amount: {/color}"+str(get_final_most_climaxes()[1]) xpos 200 yalign .92 text "{color=808080}Most Heroes Broken by: {/color}"+str(get_final_most_broken_heroes()[0]) xpos 800 yalign .89 text "{color=808080}Broken Heroes: {/color}"+str(get_final_most_broken_heroes()[1]) xpos 800 yalign .92 screen end_arena_screen(enemy_name, this_enemy_hp): modal True frame: background ("gui/simple_frame.png") xsize 1100 xalign .5 ysize 726 yalign .2 xpadding 4 xfill True text "{color=C0C0C0}{size=38}"+str(enemy_name.capitalize())+" Defeated{/color}" xalign .5 yalign .05 text "{color=808080}Heroes Required: "+str(len(persistent.arena_heroes))+"{/color}{color=808080}" xalign .5 yalign .15 vpgrid: xsize 1110 ysize 500 xpos 54 ypos 220 cols 3 spacing 30 draggable True mousewheel True if len(persistent.arena_heroes) > 6: scrollbars "vertical" for i in persistent.arena_heroes: vbox: xalign .5 xcenter .5 xsize 320 ysize 250 text "{color=C0C0C0}"+str((list(persistent.arena_heroes).index(i))+1)+"° Try: {b}"+i+"{/b}{/color}" text "{color=505050}"+str(persistent.arena_heroes[i][1]) ypos -35 text "{color=808080}Damage dealt: {/color}{color=FF0000}"+str(persistent.arena_heroes[i][0])+"{/color}" ypos -60 text "{color=808080}Contribution: {/color}{color=C12A2A}"+str(int((persistent.arena_heroes[i][0]/this_enemy_hp)*100))+"%" ypos -95 imagebutton idle "gui/button/cbutton.png" hover "gui/button/hover_cbutton.png" xalign .52 yalign 1.161 anchor (.5, .5) action Function(clear_arena_records), Hide("end_arena_screen"), Return() style pref_vbox: variant "medium" xsize 675 style window: variant "small" background "gui/phone/textbox.png" style radio_button: variant "small" foreground "gui/phone/button/radio_[prefix_]foreground.png" style check_button: variant "small" foreground "gui/phone/button/check_[prefix_]foreground.png" style nvl_window: variant "small" background "gui/phone/nvl.png" style main_menu_frame: variant "small" background "gui/phone/overlay/main_menu.png" style game_menu_outer_frame: variant "small" background "gui/phone/overlay/game_menu.png" style game_menu_navigation_frame: variant "small" xsize 510 style game_menu_content_frame: variant "small" top_margin 0 style pref_vbox: variant "small" xsize 600 style bar: variant "small" ysize gui.bar_size left_bar Frame("gui/phone/bar/left.png", gui.bar_borders, tile=gui.bar_tile) right_bar Frame("gui/phone/bar/right.png", gui.bar_borders, tile=gui.bar_tile) style vbar: variant "small" xsize gui.bar_size top_bar Frame("gui/phone/bar/top.png", gui.vbar_borders, tile=gui.bar_tile) bottom_bar Frame("gui/phone/bar/bottom.png", gui.vbar_borders, tile=gui.bar_tile) style scrollbar: variant "small" ysize gui.scrollbar_size base_bar Frame("gui/phone/scrollbar/horizontal_[prefix_]bar.png", gui.scrollbar_borders, tile=gui.scrollbar_tile) thumb Frame("gui/phone/scrollbar/horizontal_[prefix_]thumb.png", gui.scrollbar_borders, tile=gui.scrollbar_tile) style vscrollbar: variant "small" xsize gui.scrollbar_size base_bar Frame("gui/phone/scrollbar/vertical_[prefix_]bar.png", gui.vscrollbar_borders, tile=gui.scrollbar_tile) thumb Frame("gui/phone/scrollbar/vertical_[prefix_]thumb.png", gui.vscrollbar_borders, tile=gui.scrollbar_tile) style slider: variant "small" ysize gui.slider_size base_bar Frame("gui/phone/slider/horizontal_[prefix_]bar.png", gui.slider_borders, tile=gui.slider_tile) thumb "gui/phone/slider/horizontal_[prefix_]thumb.png" style vslider: variant "small" xsize gui.slider_size base_bar Frame("gui/phone/slider/vertical_[prefix_]bar.png", gui.vslider_borders, tile=gui.slider_tile) thumb "gui/phone/slider/vertical_[prefix_]thumb.png" style slider_vbox: variant "small" xsize None style slider_slider: variant "small" xsize 900 transform alpha_dissolve: alpha 0.0 linear 0.5 alpha 1.0 on hide: linear 0.5 alpha 0 screen countdown: timer 0.01 repeat True action If(alarm > 0, true=SetVariable('alarm', alarm - 1), false=[SetVariable("result", False), Return(False)]) bar value alarm range timer_range xalign 0.5 ypos 870 ysize 55 xmaximum 1920 at alpha_dissolve screen overwhelmed(difficulty=0): timer 0.01 repeat True action SetVariable('alarm', alarm - 2), If(alarm < 0, true=[SetVariable("result", False), Return(False), Hide("overwhelmed")]), If(alarm > 500, true=[SetVariable("result", True), Return(True), Hide("overwhelmed")]) key mash_key action SetVariable("alarm", alarm + (int((hp/(mhp/100))*1.5)*((att[2]+bonusatt[2])*0.5/(day+difficulty)))) bar value alarm range timer_range xalign 0.5 ypos 870 ysize 55 xmaximum 1920 at alpha_dissolve screen grabbed(): timer 0.05 repeat True action SetVariable("sta", min(100, int(sta+staregen*0.1))), If(alarm>=500, true=[SetVariable("result", True), Hide("grabbed")]) key mash_key action If(sta > 10, true=[SetVariable("alarm", alarm + ((1-(lust/mlust))*20)), SetVariable("sta", max(0, sta-10))]) bar value alarm range timer_range xalign 0.5 ypos 870 ysize 35 style "new_bar" xmaximum 1920 at alpha_dissolve bar value sta range msta xalign 0.5 ypos 905 ysize 20 style "stamina_bar" xmaximum 1920 at alpha_dissolve screen training(difficulty=1): timer 0.001 repeat True action If(training_arrow_move_right == True, true=[SetVariable('alarm', alarm + difficulty)], false=[SetVariable('alarm', alarm - difficulty)]), If(alarm > 799, true=[SetVariable("training_arrow_move_right", False)]), If(alarm < 1, true=[SetVariable("training_arrow_move_right", True)]) timer 0.01 repeat True action SetVariable('timer_range', timer_range + 0.01) text "{color=9A9A9A}{size=30}Time: "+"{:.2f}".format(timer_range) xalign .5 yalign .2 key mash_key action SetVariable("result", abs(alarm-400)), Return(abs(alarm-400)), Hide("training") add "gui/training_bar.png" at training_bar bar value StaticValue(alarm, 800): xalign 0.5 yalign 0.427 xmaximum 40 ymaximum 200 left_gutter 0 right_gutter 0 thumb "gui/training_arrow.png" thumb_shadow None transform training_bar(): subpixel True yalign .4 xalign .5 anchor (.5, .5) screen training2_timer(timer_speed): timer 0.01 repeat True action SetVariable('timer_range', timer_range + timer_speed) text "{color=9A9A9A}{size=30}Time: "+"{:.2f}".format(timer_range) xalign .5 yalign .2 screen training2(circle_position_x, circle_position_y): imagebutton idle "gui/training_circle.png" action SetVariable("result", True), Hide("training2") xpos circle_position_x ypos circle_position_y screen delete_save_screen: frame: xsize 800 xalign .5 ysize 400 yalign .5 text "{size=30}{b}{color=FF0000}WARNING{/size}{/b}{/color}" xalign .5 ypos 40 text "{size=28}{color=FFFFFF}This will delete all your progress{/size}" xalign .5 ypos 100 text "{size=16}{color=FFFFFF}Skill Tree, Fame, Gallery, Achievements and Highscores will be cleared{/size}" xalign .5 ypos 155 text "{size=16}{color=FFFFFF}There is no benefit. Unless you want to change the difficulty or toggle Shemales{/size}" xalign .5 ypos 185 text "{size=28}{color=FF0000}Are you sure you want to do this?{/color}" xalign .5 ypos 240 if alarm > 0: textbutton ("Delete Save ("+str(alarm)+")") action None xalign .3 ypos 300 else: textbutton ("Delete Save") action Function(delete_save), Hide("delete_save_screen") xalign .3 ypos 300 textbutton ("Back") action Hide("delete_save_screen") xalign .7 ypos 300 timer 1.0 repeat True action If(alarm > 0, true=SetVariable("alarm", alarm - 1)) screen shemale_opt: frame: xsize 800 xalign .5 ysize 350 yalign .5 text "{color=FFFFFF}{size=32}Do you want {color=F000FF}Shemales{/color} {color=00FF00}ON{/color} or {color=FF0000}OFF?{/size}{/color}" xalign .5 ypos 60 text "{color=FFFFFF}Currently when {color=FF0000}OFF{/color}, {color=F000FF}11 encounters{/color} will be {color=FF0000}removed{/color}" xalign .5 ypos 110 text "{size=20}{color=707070}This option{/color} {color=C87070}CANNOT{/color} {color=707070}be changed later{/size}{/color}" xalign .5 ypos 160 textbutton _("ON") action SetVariable("persistent.LShemale", True), Return(True) xpos 150 ypos 210 textbutton _("OFF") action SetVariable("persistent.LShemale", False), Return(True) xpos 550 ypos 210 screen difficulty_opt: $ x, y = pygame.mouse.get_pos() $ store.mousex = x $ store.mousey = y default tt = Tooltip(" ") frame: xsize 450 xalign .5 ysize 450 yalign .5 text "{size=32}Choose the Difficulty" xalign .5 ypos 30 text "{size=20}{color=707070}This option{/color} {color=C87070}CANNOT{/color} {color=707070}be changed later{/size}{/color}" xalign .5 ypos 75 text "{size=16}{color=707070}Achievements will be{/color} {color=C87070}DISABLED{/color} {color=707070}on easy mode{/size}{/color}" xalign .5 ypos 110 textbutton _("Easy"): action SetVariable("persistent.Difficulty", 0), Return(True) xalign .5 ypos 170 xanchor .5 hovered tt.Action("{space=48}{color=9A9A9A}{b}EXP{/b} gain{/color}{color=00FF00} +60%{/color}\n{space=48}{color=C00000}Enemy HP{/color} {color=00FF00}-20%{/color}\n{color=FF0000}Achievements Disabled{/color}") textbutton _("Normal"): action SetVariable("persistent.Difficulty", 1), Return(True) xalign .5 ypos 250 xanchor .5 textbutton _("Hard"): action SetVariable("persistent.Difficulty", 2), Return(True) xalign .5 ypos 330 xanchor .5 hovered tt.Action("{space=90}{color=9A9A9A}{b}Fame{/b} Gain{color=00FF00} +25%{/color}\n{space=96}{color=C00000}Enemy HP +20%{/color}\n{color=FF0000}{space=14}Some girls have different moves\nIncreased {color=C8C800}gold drop{/color} {color=FF0000}when defeated{/color}") if tt.value != " ": if ttfixed == True: frame: background Frame("gui/tooltip.png") xalign .5 yalign .8 text tt.value else: frame: background Frame("gui/tooltip.png") xpos x+100 ypos y+50 text tt.value screen debuff_notify_screen(message="Gained Debuff !"): zorder 100 frame at debuff_notify_appear: background "gui/dbffnotification.png" align (0.8, 0.05) has hbox: xsize 300 ysize 118 vbox: yalign .48 xalign 1.02 text str(message): color '#ff00ff' size 50 font "dripping.ttf" timer 1 action Hide('debuff_notify_screen') transform debuff_notify_appear: subpixel True on show: xoffset +160.0 alpha 1.0 easein 0.2 xoffset 5.0 easeout 0.1 xoffset 0.0 on hide: easein 0.2 xoffset 5.0 easeout 0.1 xoffset +320.0 alpha 0.0 screen buff_notify_screen(message="Gained buff !"): zorder 100 frame at buff_notify_appear: background "gui/bffnotification.png" align (0.14, 0.05) has hbox: xsize 300 ysize 118 vbox: yalign .55 xalign 1.01 text str(message): color '#00A2ff' size 30 font "Mangonel.ttf" timer 1 action Hide('buff_notify_screen') transform buff_notify_appear: subpixel True on show: xoffset -160.0 alpha 1.0 easein 0.2 xoffset 5.0 easeout 0.1 xoffset 0.0 on hide: easein 0.2 xoffset 5.0 easeout 0.1 xoffset -320.0 alpha 0.0 screen add_notify_screen(message="NoMessage"): zorder 100 frame at add_notify_appear: background "gui/notification.png" align (0.5, 0.785) has hbox: xsize 300 ysize 65 vbox: xalign .48 yalign .5 text str(message): color '#ff24c8' size 20 timer 1 action Hide('add_notify_screen') transform add_notify_appear: subpixel True on show: yoffset -160.0 alpha 0.8 easein 0.2 yoffset 5.0 easeout 0.1 yoffset 0.0 on hide: easein 0.2 yoffset 5.0 easeout 0.05 yoffset +30.0 alpha 0.0 screen corr_notify_screen(message="Corruption Increased !"): zorder 100 frame at corr_notify_appear: background "gui/notification.png" align (0.5, 0.708) has hbox: xsize 300 ysize 65 vbox: xalign .5 yalign .5 text str(message): color '#c637ff' size 20 timer 1.5 action Hide('corr_notify_screen') transform corr_notify_appear: subpixel True on show: yoffset -160.0 alpha 0.8 easein 0.2 yoffset 5.0 easeout 0.1 yoffset 0.0 on hide: easein 0.2 yoffset 5.0 easeout 0.05 yoffset +80.0 alpha 0.0 screen lostatt_notify_screen(stat): zorder 100 frame at lostatt_notify_appear: background "gui/notification.png" align (0.5, 0.63) has hbox: xsize 300 ysize 60 vbox: yalign .6 xalign .5 text str("{b}"+str(stat)+"{/b}" + " Decreased !"): color '#e490fd' size 20 timer 2.8 action Hide('lostatt_notify_screen') transform lostatt_notify_appear: subpixel True on show: yoffset -640.0 alpha 0.8 easein 2 yoffset -20.0 on hide: easeout 0.3 yoffset +200 alpha 0.0 screen addtrait_notify_screen(ntrait): zorder 100 frame at addtrait_notify_appear: background "gui/tnotification.png" align (0.491, 0.54) has hbox: xsize 300 ysize 100 vbox: xalign .6 yalign .5 text str("New Trait Developed!"): color '#8F76BA' size 20 xalign .5 text str("{b}"+ntrait+"{/b}"): color '#937db9' size 19 xalign .5 timer 3 action Hide('addtrait_notify_screen') transform addtrait_notify_appear: subpixel True on show: yoffset 500.0 alpha .7 easein 1.5 yoffset -20.0 on hide: easeout 0.5 yoffset +300 alpha 0.0 screen ready_screen(): zorder 100 frame at ready_position: background "gui/ready.png" align (0.5, 0.5) hbox: xsize 1400 ysize 870 timer 1 action Hide('ready_screen') transform ready_position: subpixel True on show: xoffset +300.0 alpha 1 easein 0.1 xoffset 40.0 easeout 0.9 xoffset -80.0 on hide: easeout 0.1 xoffset -300.0 alpha 0.0 screen distracted_screen(number): zorder 100 frame at big_number_position: background "gui/big"+str(number)+".png" align (0.5, 0.5) hbox: xsize 1400 ysize 870 timer 0.5 action Hide('distracted_screen') transform big_number_position: subpixel True on show: yoffset -160.0 alpha 1 easein 0.2 yoffset 5.0 easeout 0.1 yoffset 0.0 on hide: easeout 0.1 yoffset 160.0 alpha 0.0 screen dodging_screen(circle_objective, hit_circle_speed): zorder 100 timer 0.001 repeat True action If(hit_circle_size > 0, true=SetVariable('hit_circle_size', hit_circle_size - hit_circle_speed)) add "gui/hitcircle.png" at hit_circle(hit_circle_size) add "gui/bigcircle.png" at hit_circle(circle_objective) if (hit_circle_size >= circle_objective*0.82) and (hit_circle_size <= circle_objective*1.18): key mash_key: action SetVariable("result", True), Return(True), Hide("dodging_screen") else: key mash_key: action SetVariable("result", False), Return(False), Hide("dodging_screen") transform hit_circle(hit_circle_size): subpixel True yalign .4 xalign .5 anchor (.5, .5) zoom hit_circle_size screen input_sequence_screen(letters_to_press, letters_pressed): zorder 100 hbox: xalign .5 yalign .5 for letter in letters_pressed: add "gui/arrow_"+letter+"_gray.png" for letter in letters_to_press: add "gui/arrow_"+letter+"_white.png" key letters_to_press[0] action RemoveFromSet(letters_to_press, letters_to_press[0]), AddToSet(letters_pressed, letters_to_press[0]), If((len(letters_to_press) <= 1), true=[Hide("input_sequence_screen"), Return(True)]) if letters_to_press[0] != "input_up": key "input_up" action Return(False) if letters_to_press[0] != "input_left": key "input_left" action Return(False) if letters_to_press[0] != "input_right": key "input_right" action Return(False) if letters_to_press[0] != "input_down": key "input_down" action Return(False) screen stacy_comments(): for k, v in stacy_comments.items(): text '{size=18}{b}{color=CC00CC}{font=DejaVuSans.ttf}[k]{/color}{/b}{/size}{/font}': xpos v[0] ypos v[1] xcenter .5 timer 0.01 repeat True action If(v[3] > 0, true=[Function(SetDictVariable, stacy_comments, k, 3, v[3]-1), Function(SetDictVariable, stacy_comments, k, 1, v[1]-v[2])], false=Function(RemoveFromDict, stacy_comments, k)) timer (max(0.3, (10-stacy_fame*0.09))) repeat True action Function(add_stacy_comment) screen facility_map_screen(): frame: background ("gui/minimap.png") xsize 200 xalign .78 ysize 726 yalign .08 xfill True for vision in map_player_vision: add "gui/events/map_room_vision.png" xpos vision[0] ypos vision[1] for room in facility_map_discovered: add "gui/events/map_room.png" xpos room[0] ypos room[1] add "gui/events/map_player.png" xpos map_player[0] ypos map_player[1] if (map_enemy_1[0], map_enemy_1[1]) in map_player_vision: add "gui/events/map_enemy.png" xpos map_enemy_1[0] ypos map_enemy_1[1] if (map_enemy_2[0], map_enemy_2[1]) in map_player_vision: add "gui/events/map_enemy.png" xpos map_enemy_2[0] ypos map_enemy_2[1] if stage >= 80 and (map_enemy_3[0], map_enemy_3[1]) in map_player_vision: add "gui/events/map_enemy.png" xpos map_enemy_3[0] ypos map_enemy_3[1] screen quick_att_check_notification(att_name, att_value, does_the_check_succeded): default y_position = 850 if does_the_check_succeded: text "{color=00FF00}{b}"+att_name+" check succeded ! ("+str(att_value)+"){/b}{/color}" at alpha_vertical_disappear: ypos y_position xalign .5 else: text "{color=FF0000}{b}"+att_name+" check failed... ("+str(att_value)+"){/b}{/color}" at alpha_vertical_disappear: ypos y_position xalign .5 timer 0.01 repeat True action If(y_position > 800, true=[SetScreenVariable("y_position", y_position-1)], false=[Hide("quick_att_check_notification")]) screen quick_add_check_notification(add_name, add_value, does_the_check_succeded): default y_position = 850 if does_the_check_succeded: text "{color=00FF00}{b}"+add_name+" check succeded ! ("+str(add_value)+"){/b}{/color}" at alpha_vertical_disappear: ypos y_position xalign .5 else: text "{color=FF0000}{b}"+add_name+" check failed... ("+str(add_value)+"){/b}{/color}" at alpha_vertical_disappear: ypos y_position xalign .5 timer 0.01 repeat True action If(y_position > 800, true=[SetScreenVariable("y_position", y_position-1)], false=[Hide("quick_add_check_notification")]) screen floating_text(text_to_display): default y_position = 850 text text_to_display at alpha_vertical_disappear: ypos y_position xalign .5 timer 0.01 repeat True action If(y_position > 750, true=[SetScreenVariable("y_position", y_position-1)], false=[Hide("floating_text")]) transform alpha_vertical_disappear: on hide: linear 2.0 alpha 0.0 yoffset -120 screen cum_screen(): add "images/diogaoo/cum_screen.png": alpha (cum_screen_alpha) xalign .5 timer 0.01 repeat True action If(cum_screen_alpha > 0, true=[SetVariable("cum_screen_alpha", cum_screen_alpha-0.005)], false=[Hide("cum_screen")]) screen achievement_menu(): tag menu use game_menu(_("Achievements | {:01d}/{}".format(len(persistent.my_achievements), len(achievement_name) if len(persistent.my_achievements) == len(achievement_name) else len(achievement_name) - 1)), scroll="viewport"): style_prefix "achievements" frame: background None padding (20, 20, 20, 20) align (0.0, 0.0) has vpgrid: cols 2 spacing 10 for t in persistent.my_achievements: if achievement.has(t.name): frame: background Solid('#08A') has hbox: yalign 0.5 xysize (100, 100) add t.image size (100, 100) yalign 0.5 null width 20 vbox: spacing 0 yfill False text t.name style 'achievements_label' color '#000' text t.message color '#000' for v in achievement_name.values(): if not achievement.has(v[0]): if v[3] != 'platinum': frame: has hbox: yalign 0.5 xysize (100, 100) add 'gui/achievements/locked_achievement.png' size (100, 100) yalign 0.5 null width 20 vbox: spacing 0 yfill False if v[3] is None: text str(v[0]) style 'achievements_label' color '#FFF3' text str(v[1]) color '#FFF3' else: text _('Hidden Achievement') style 'achievements_label' color '#FFF3' init python: def achievement_notification_show(): store.achievement_is_done = False if achievement_notification_list: store.achievement_notification_list.pop(0) def achievement_notification_done(): if not achievement_notification_list: store.achievement_is_done = True config.overlay_screens.append("achievement_notification_catcher") def passive_function(): if len(persistent.my_achievements) >= (len(achievement_name) - 1): Achievement.add(achievement_platinum) define config.periodic_callback = passive_function default achievement_notification_list = [] default achievement_is_done = False screen achievement_notification_catcher(): if len(achievement_notification_list) > 0 and not renpy.get_screen('achievement_notification'): timer 1.0 repeat True: action [SetVariable('achievement_is_done', False), Show('achievement_notification')] if not achievement_is_done: timer 4.0 repeat True: action If(len(achievement_notification_list) > 0, true=[Hide("achievement_notification"), Function(achievement_notification_show)], false=[Function(achievement_notification_done)]) screen achievement_notification(): zorder 100 if achievement_notification_list: frame at achievement_appear: background "gui/achievnotification.png" align (0.5, 0.0) padding (100, 15, 20, 20) has hbox: xysize (100, 100) add achievement_notification_list[0].image null width 20 vbox: yalign 0.5 xminimum 340 xmaximum 440 yfill False xfill False text str(achievement_notification_list[0].name): color '#fcaaff' size 25 text str(achievement_notification_list[0].message): style 'victory_message_text' size 16 style victory_message_text: color "#fcaaff" size 20 transform achievement_appear: subpixel True on show: yoffset -160.0 alpha 0.8 easein 0.2 yoffset 5.0 easeout 0.1 yoffset 0.0 on hide: yoffset 0.0 easein 0.2 yoffset 5.0 easeout 0.1 yoffset -160.0 alpha 0.0 style achievements_vbox is vbox style achievements_text is text style achievements_frame is frame style achievements_vbox: minimum (330, 100) maximum (360, 100) spacing 2 yfill False style achievements_label: size 28 outlines [(1, '#00000022', 0, 1)] yalign 0.5 style achievements_text: size 16 yalign 0.5 style achievements_locked_text: antialias True color "#555555" size 16 style achievements_frame: background Solid('#444444') minimum (500, 140) align (0.5, 0.5) padding (15, 15, 15, 15) transform tutorial_corner: xalign -0.17 yalign 1.3 transform right_center: xalign 0.85 yalign 0.5 transform left_center: xalign 0.15 yalign 0.5 transform top_right: xalign .825 yalign .03 style btraitbutton: size 22 color "#cc00ff" hover_color "#ff80ff" insensitive_color "#535353" style btraitstatusbutton: size 20 color "#cc00ff" hover_color "#ff80ff" style gtraitbutton: size 22 color "#0066ff" hover_color "#8082ff" insensitive_color "#535353" style gtraitstatusbutton: size 20 color "#0066ff" hover_color "#8082ff" style defaultbutton: size 30 color "#535353" hover_color "#999999" # Decompiled by unrpyc: https://github.com/CensoredUsername/unrpyc