Fix conflicting properties (by Gouvernathor)

big work
what was reliable before is now not, in recent versions of renpy, which is why we added that new config (which I put in say.rpy, but it can be moved somewhere else)
Also fixes the game_menu's title position, incidentally

some changes are incompatible with my diary and achievement branches, respectively, they will need to be merged with a bit of manual care
This commit is contained in:
LoafyLemon 2024-03-25 14:57:36 +00:00
parent b62b7bcc3a
commit 38d2494bc3
21 changed files with 66 additions and 85 deletions

View File

@ -105,7 +105,7 @@ label hermione_intro_E1:
zoom 1.0 zoom 1.0
align (0.5, 0.5) align (0.5, 0.5)
pos (-520, -70) pos (-520, -70)
easein_quad 3.0 align (0.0, 0.0) pos (0, 0) zoom 0.5 easein_quad 3.0 anchor (0.0, 0.0) pos (0, 0) zoom 0.5
menu: menu:
"\"Good morning, Hermione.\"" if d_flag_01: "\"Good morning, Hermione.\"" if d_flag_01:

View File

@ -85,7 +85,7 @@ label luna_intro_E1:
show CG luna as cg zorder 17: show CG luna as cg zorder 17:
subpixel True subpixel True
zoom 1.0 zoom 1.0
easein_quad 3.0 align (.0, .0) pos (0, 0) zoom 0.5 # pos (0, 0) not necessary in next renpy version easein_quad 3.0 anchor (.0, .0) pos (0, 0) zoom 0.5 # use align (0, 0) in next renpy version
gen "What are you doing in my office?" gen "What are you doing in my office?"
gen "Did Snape send you here? Surely--" gen "Did Snape send you here? Surely--"

View File

@ -176,9 +176,9 @@ screen game_menu(title, scroll=None, yinitial=0.0):
padding (15, 15, 15, 15) padding (15, 15, 15, 15)
transclude transclude
use navigation(title) use navigation(title):
label title anchor (0.5, 0.5) align (0.9, 0.15) label title xalign .5
if main_menu and not title == "Updater": if main_menu and not title == "Updater":
key "game_menu" action ShowMenu("main_menu") key "game_menu" action ShowMenu("main_menu")
@ -229,7 +229,7 @@ screen navigation(title=None):
default show_quick_start = False default show_quick_start = False
default show_dev_start = False default show_dev_start = False
default is_sensitive = not bool(title == "Updater") default is_sensitive = title != "Updater"
key "keydown_K_LSHIFT" action SetLocalVariable("show_quick_start", True) key "keydown_K_LSHIFT" action SetLocalVariable("show_quick_start", True)
key "keyup_K_LSHIFT" action SetLocalVariable("show_quick_start", False) key "keyup_K_LSHIFT" action SetLocalVariable("show_quick_start", False)

View File

@ -44,7 +44,7 @@ screen say(who, what, side_image=None, icon=None):
ypos 1000 ypos 1000
if side_image: if side_image:
add side_image yalign 1.0 yanchor 1.0 zoom 0.5 add side_image yalign 1.0 zoom 0.5
else: else:
add SideImage() add SideImage()
@ -213,8 +213,9 @@ screen choice(items, menu_yalign=.6):
hbox: hbox:
spacing 2 spacing 2
xpos choice_width - 5 xpos choice_width - 5
align (1.0, 0.5) xanchor 1.
for i in range(0, max_progress): yalign .5
for i in range(max_progress):
if i < len(progress): if i < len(progress):
add progress[i] add progress[i]
else: else:

View File

@ -173,8 +173,8 @@ screen achievement_window(msg="", title="", icon=None, xpos=0, ypos=60):
ypos 12 ypos 12
spacing 10 spacing 10
xalign 0.5 xalign 0.5
text title size 18 xalign 0.5 xanchor 0.5 text title size 18 xalign 0.5
text msg size 14 xalign 0.5 xanchor 0.5 text msg size 14 xalign 0.5
timer 6.0 action Hide("achievement_window") timer 6.0 action Hide("achievement_window")
transform rotate_circular(t=7): transform rotate_circular(t=7):

View File

@ -134,7 +134,6 @@ screen book_menu(page, pages, title, page_title, page_text, page_overflow):
imagebutton: imagebutton:
pos (878, 100) pos (878, 100)
ysize 400 ysize 400
xalign 1.0
# Next # Next
if page < pages: if page < pages:
idle Transform("interface/book/hover.webp", alpha=0) idle Transform("interface/book/hover.webp", alpha=0)

View File

@ -133,10 +133,10 @@ screen credits(credits=credits_text, duration=credits_duration, chibis=credits_c
zoom 0.5 zoom 0.5
if left: if left:
pos (20, config.screen_height - 20) pos (20, config.screen_height - 20)
align (0.0, 1.0) anchor (0.0, 1.0)
else: else:
pos (config.screen_width - 20, config.screen_height - 20) pos (config.screen_width - 20, config.screen_height - 20)
align (1.0, 1.0) anchor (1.0, 1.0)
text credits: text credits:
at credits_scroll(duration) at credits_scroll(duration)

View File

@ -268,9 +268,9 @@ screen inventory_menu(xx, yy):
# Gold & Tokens # Gold & Tokens
null height 16 null height 16
text "{color=#daa520}Gold{/color} {outlinecolor=#ffffff00}[game.gold]{/outlinecolor}" size 12 outlines [ (2, "#000", 0, 0) ] xalign 0.1 xanchor 0 text "{color=#daa520}Gold{/color} {outlinecolor=#ffffff00}[game.gold]{/outlinecolor}" size 12 outlines [ (2, "#000", 0, 0) ] xpos 0.1 xanchor 0
add gui.format("interface/achievements/{}/spacer_left.webp") add gui.format("interface/achievements/{}/spacer_left.webp")
text "{color=#2055da}Tokens{/color} {outlinecolor=#ffffff00}[tokens]{/outlinecolor}" size 12 outlines [ (2, "#000", 0, 0) ] xalign 0.1 xanchor 0 text "{color=#2055da}Tokens{/color} {outlinecolor=#ffffff00}[tokens]{/outlinecolor}" size 12 outlines [ (2, "#000", 0, 0) ] xpos 0.1 xanchor 0
add gui.format("interface/achievements/{}/spacer_left.webp") add gui.format("interface/achievements/{}/spacer_left.webp")
vbox: vbox:
@ -357,16 +357,16 @@ screen inventory_menuitem(xx, yy):
text str(it_item.owned) size 10 align (0.1, 0.1) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] text str(it_item.owned) size 10 align (0.1, 0.1) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ]
elif current_category == "Decorations": elif current_category == "Decorations":
if it_item.in_use: if it_item.in_use:
add "interface/topbar/icon_check.webp" anchor (1.0, 1.0) align (1.0, 1.0) offset (-3, -3) zoom 0.5 add "interface/topbar/icon_check.webp" align (1.0, 1.0) offset (-3, -3) zoom 0.5
elif current_category in ("Books", "Quest Items"): elif current_category in ("Books", "Quest Items"):
if it_item.used: if it_item.used:
add "interface/topbar/icon_check.webp" anchor (1.0, 1.0) align (1.0, 1.0) offset (-3, -3) zoom 0.5 add "interface/topbar/icon_check.webp" align (1.0, 1.0) offset (-3, -3) zoom 0.5
if inventory_mode == 1 and (not it_item.givable or not states.active_girl in it_item.usable_on): if inventory_mode == 1 and (not it_item.givable or not states.active_girl in it_item.usable_on):
add "#b2000040" add "#b2000040"
if menu_items_length <= 0: if menu_items_length <= 0:
text "Nothing here yet" align (0.5, 0.5) anchor (0.5, 0.5) size 24 text "Nothing here yet" align (0.5, 0.5) size 24
if current_item: if current_item:
frame: frame:
@ -386,10 +386,10 @@ screen inventory_menuitem(xx, yy):
text "[current_item.owned]" size 14 align (0.1, 0.1) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] text "[current_item.owned]" size 14 align (0.1, 0.1) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ]
elif current_category == "Decorations": elif current_category == "Decorations":
if current_item.in_use: if current_item.in_use:
add "interface/topbar/icon_check.webp" anchor (1.0, 1.0) align (1.0, 1.0) offset (-6, -6) add "interface/topbar/icon_check.webp" align (1.0, 1.0) offset (-6, -6)
elif current_category in ("Books", "Quest Items"): elif current_category in ("Books", "Quest Items"):
if current_item.used: if current_item.used:
add "interface/topbar/icon_check.webp" anchor (1.0, 1.0) align (1.0, 1.0) offset (-6, -6) add "interface/topbar/icon_check.webp" align (1.0, 1.0) offset (-6, -6)
if inventory_mode == 1 and (not current_item.givable or not states.active_girl in current_item.usable_on): if inventory_mode == 1 and (not current_item.givable or not states.active_girl in current_item.usable_on):
add "#b2000040" add "#b2000040"

View File

@ -397,10 +397,8 @@ screen map_screen_characters():
if states.her.map_location == "forest": # Mark forest event. if states.her.map_location == "forest": # Mark forest event.
add "interface/achievements/glow.webp" xycenter (her_map_xpos, her_map_ypos) zoom 0.15 alpha 0.5 at rotate_circular add "interface/achievements/glow.webp" xycenter (her_map_xpos, her_map_ypos) zoom 0.15 alpha 0.5 at rotate_circular
imagebutton: imagebutton:
xpos her_map_xpos xcenter her_map_xpos
ypos her_map_ypos ycenter her_map_ypos
xalign 0.5
yalign 0.5
idle "interface/map/name_hermione.webp" idle "interface/map/name_hermione.webp"
hover "interface/map/name_hermione_hover.webp" hover "interface/map/name_hermione_hover.webp"
hovered SetScreenVariable("ball_hint", "summon_hermione") hovered SetScreenVariable("ball_hint", "summon_hermione")
@ -410,10 +408,8 @@ screen map_screen_characters():
#Luna #Luna
if states.lun.unlocked: if states.lun.unlocked:
imagebutton: imagebutton:
xpos lun_map_xpos xcenter lun_map_xpos
ypos lun_map_ypos ycenter lun_map_ypos
xalign 0.5
yalign 0.5
idle "interface/map/name_luna.webp" idle "interface/map/name_luna.webp"
hover "interface/map/name_luna_hover.webp" hover "interface/map/name_luna_hover.webp"
hovered SetScreenVariable("ball_hint", "summon_luna") hovered SetScreenVariable("ball_hint", "summon_luna")
@ -423,10 +419,8 @@ screen map_screen_characters():
#Astoria #Astoria
if states.ast.unlocked: if states.ast.unlocked:
imagebutton: imagebutton:
xpos ast_map_xpos xcenter ast_map_xpos
ypos ast_map_ypos ycenter ast_map_ypos
xalign 0.5
yalign 0.5
idle "interface/map/name_astoria.webp" idle "interface/map/name_astoria.webp"
hover "interface/map/name_astoria_hover.webp" hover "interface/map/name_astoria_hover.webp"
hovered SetScreenVariable("ball_hint", "summon_astoria") hovered SetScreenVariable("ball_hint", "summon_astoria")
@ -436,10 +430,8 @@ screen map_screen_characters():
#Susan #Susan
if states.sus.unlocked: if states.sus.unlocked:
imagebutton: imagebutton:
xpos sus_map_xpos xcenter sus_map_xpos
ypos sus_map_ypos ycenter sus_map_ypos
xalign 0.5
yalign 0.5
idle "interface/map/name_susan.webp" idle "interface/map/name_susan.webp"
hover "interface/map/name_susan_hover.webp" hover "interface/map/name_susan_hover.webp"
hovered SetScreenVariable("ball_hint", "summon_susan") hovered SetScreenVariable("ball_hint", "summon_susan")
@ -449,10 +441,8 @@ screen map_screen_characters():
#Cho #Cho
if states.cho.unlocked: if states.cho.unlocked:
imagebutton: imagebutton:
xpos cho_map_xpos xcenter cho_map_xpos
ypos cho_map_ypos ycenter cho_map_ypos
xalign 0.5
yalign 0.5
idle "interface/map/name_cho.webp" idle "interface/map/name_cho.webp"
hover "interface/map/name_cho_hover.webp" hover "interface/map/name_cho_hover.webp"
hovered SetScreenVariable("ball_hint", "summon_cho") hovered SetScreenVariable("ball_hint", "summon_cho")
@ -462,10 +452,8 @@ screen map_screen_characters():
#Snape #Snape
if states.sna.unlocked: if states.sna.unlocked:
imagebutton: imagebutton:
xpos sna_map_xpos xcenter sna_map_xpos
ypos sna_map_ypos ycenter sna_map_ypos
xalign 0.5
yalign 0.5
idle "interface/map/name_snape.webp" idle "interface/map/name_snape.webp"
hover "interface/map/name_snape_hover.webp" hover "interface/map/name_snape_hover.webp"
hovered SetScreenVariable("ball_hint", "summon_snape") hovered SetScreenVariable("ball_hint", "summon_snape")
@ -475,10 +463,8 @@ screen map_screen_characters():
#Tonks #Tonks
if states.ton.unlocked: if states.ton.unlocked:
imagebutton: imagebutton:
xpos ton_map_xpos xcenter ton_map_xpos
ypos ton_map_ypos ycenter ton_map_ypos
xalign 0.5
yalign 0.5
idle "interface/map/name_tonks.webp" idle "interface/map/name_tonks.webp"
hover "interface/map/name_tonks_hover.webp" hover "interface/map/name_tonks_hover.webp"
hovered SetScreenVariable("ball_hint", "summon_tonks") hovered SetScreenVariable("ball_hint", "summon_tonks")

View File

@ -41,7 +41,6 @@ screen close_button(xoffset=0, yoffset=0, action=Return("Close"), key=["game_men
imagebutton: imagebutton:
keyboard_focus False keyboard_focus False
xalign 1.0 xalign 1.0
xanchor 1.0
offset (xoffset, yoffset) offset (xoffset, yoffset)
idle gui.format("interface/topbar/buttons/{}/ui_close.webp") idle gui.format("interface/topbar/buttons/{}/ui_close.webp")
hover image_hover(gui.format("interface/topbar/buttons/{}/ui_close.webp")) hover image_hover(gui.format("interface/topbar/buttons/{}/ui_close.webp"))

View File

@ -261,9 +261,9 @@ screen stats_menuitem(current_category, current_item, stats_flags):
if current_subcategory == "overview": if current_subcategory == "overview":
if stats_flags[current_category]: if stats_flags[current_category]:
text current_item["name"] size 20 xalign 0.5 xanchor 0.5 ypos 5 text current_item["name"] size 20 xalign 0.5 ypos 5
else: else:
text "???" size 20 xalign 0.5 xanchor 0.5 ypos 5 text "???" size 20 xalign 0.5 ypos 5
vbox: vbox:
xoffset 10 xoffset 10

View File

@ -118,7 +118,6 @@ screen ui_points():
xalign 0.5 xalign 0.5
xsize 162 xsize 162
ysize 64 ysize 64
xanchor 0.5
if not persistent.toggle_points and not toggle_points: if not persistent.toggle_points and not toggle_points:
add "interface/topbar/slytherin.webp" yanchor housepoints_y[slytherin_place] add "interface/topbar/slytherin.webp" yanchor housepoints_y[slytherin_place]
@ -209,7 +208,6 @@ screen ui_menu():
add gui.format("interface/topbar/{}/menu.webp") add gui.format("interface/topbar/{}/menu.webp")
vbox: vbox:
xanchor 0.5
xalign 0.5 xalign 0.5
ypos 15 ypos 15
textbutton "Save" action ShowMenu("save") background None xalign 0.5 text_outlines [ (2, "#00000080", 1, 0) ] textbutton "Save" action ShowMenu("save") background None xalign 0.5 text_outlines [ (2, "#00000080", 1, 0) ]

View File

@ -343,7 +343,7 @@ screen advance_deck():
screen card_end_message(message): screen card_end_message(message):
zorder 15 zorder 15
text "{color=#FFF}{size=+40}[message]{/size}{/color}" xpos 540 ypos 300 xalign 0.5 yalign 0.5 outlines [ (5, "#000", 0, 0) ] text "{color=#FFF}{size=+40}[message]{/size}{/color}" xcenter 540 ycenter 300 outlines [ (5, "#000", 0, 0) ]
screen rules_display(game_rules_list): screen rules_display(game_rules_list):
tag rules tag rules

View File

@ -111,7 +111,7 @@ screen deck_builder_screen():
#Page info #Page info
$ str_currentpage = currentpage+1 $ str_currentpage = currentpage+1
$ str_currentpage_max = int(math.ceil((len(unlocked_cards)-1)/card_shown)+1.0) $ str_currentpage_max = int(math.ceil((len(unlocked_cards)-1)/card_shown)+1.0)
text "{color=#FFFFFF}{size=-5}Page [str_currentpage]/[str_currentpage_max]{/size}{/color}" xpos 215 ypos 360 text_align 0.5 xalign 0.5 text "{color=#FFFFFF}{size=-5}Page [str_currentpage]/[str_currentpage_max]{/size}{/color}" xcenter 215 ypos 360 text_align 0.5
#Gallery button #Gallery button
imagebutton: imagebutton:
@ -161,7 +161,7 @@ screen deck_builder_gallery():
use cardrender(card, 18+80*col, 67+125*row, False, cardzoom=0.25, color=card_exist(unlocked_cards, card)) use cardrender(card, 18+80*col, 67+125*row, False, cardzoom=0.25, color=card_exist(unlocked_cards, card))
imagebutton: imagebutton:
anchor (1.0, 0.0) yanchor 0.0
ypos 18 ypos 18
xalign 0.98 xalign 0.98
@ -277,22 +277,22 @@ screen deck_builder_tutorial():
add "images/cardgame/guide/[deck_guide_helper].webp" xpos 600 ypos 250 add "images/cardgame/guide/[deck_guide_helper].webp" xpos 600 ypos 250
if deck_guide_helper == "numbers_guide": if deck_guide_helper == "numbers_guide":
add "images/cardgame/guide/[deck_guide_helper].webp" xpos 540 ypos 300 xalign 0.5 yalign 0.5 add "images/cardgame/guide/[deck_guide_helper].webp" xcenter 540 ycenter 300
if deck_guide_helper == "tier_guide": if deck_guide_helper == "tier_guide":
add "images/cardgame/guide/[deck_guide_helper].webp" xpos 500 ypos 200 xanchor 0.5 add "images/cardgame/guide/[deck_guide_helper].webp" xcenter 500 ypos 200
if deck_guide_helper == "cho_stage2": if deck_guide_helper == "cho_stage2":
add "images/cardgame/guide/[deck_guide_helper].webp" xpos 540 ypos 300 xalign 0.5 yalign 0.5 add "images/cardgame/guide/[deck_guide_helper].webp" xcenter 540 ycenter 300
if deck_guide_helper == "cho_stage3": if deck_guide_helper == "cho_stage3":
add "images/cardgame/guide/[deck_guide_helper].webp" xpos 540 ypos 300 xalign 0.5 yalign 0.5 add "images/cardgame/guide/[deck_guide_helper].webp" xcenter 540 ycenter 300
if deck_guide_helper == "cho_stage4": if deck_guide_helper == "cho_stage4":
add "images/cardgame/guide/[deck_guide_helper].webp" xpos 540 ypos 300 xalign 0.5 yalign 0.5 add "images/cardgame/guide/[deck_guide_helper].webp" xcenter 540 ycenter 300
if deck_guide_helper == "fight_guide": if deck_guide_helper == "fight_guide":
add "images/cardgame/guide/[deck_guide_helper].webp" xpos 540 ypos 360 xalign 0.5 add "images/cardgame/guide/[deck_guide_helper].webp" xcenter 540 ypos 360
##Back button ##Back button
#imagebutton: #imagebutton:

View File

@ -163,9 +163,9 @@ screen mirror_menuitem(xx, yy):
xfill True xfill True
action Return(["select", ev]) action Return(["select", ev])
if is_unlocked and not ev.seen: if is_unlocked and not ev.seen:
text "NEW" style "wardrobe_item_caption" anchor (1.0, 1.0) align (1.0, 1.0) offset (-5, -5) text "NEW" style "wardrobe_item_caption" align (1.0, 1.0) offset (-5, -5)
if ev.played: if ev.played:
add "interface/topbar/icon_check.webp" anchor (1.0, 1.0) align (1.0, 1.0) offset (-5, -5) zoom 0.7 add "interface/topbar/icon_check.webp" align (1.0, 1.0) offset (-5, -5) zoom 0.7
vbox: vbox:
text ev.name text ev.name
text "By {}".format(authors) size 10 text "By {}".format(authors) size 10
@ -173,7 +173,7 @@ screen mirror_menuitem(xx, yy):
if menu_items_length <= 0: if menu_items_length <= 0:
text "Nothing here yet" align (0.5, 0.5) anchor (0.5, 0.5) size 24 text "Nothing here yet" align (0.5, 0.5) size 24
if current_item: if current_item:
frame: frame:

View File

@ -91,7 +91,8 @@ screen puzzle_minigame():
vbox: vbox:
yanchor 0.0 yanchor 0.0
align (0.5, 0.85) ypos 0.85
xalign .5
textbutton "-Hint-" xalign 0.5 action ToggleScreenVariable("hint", True, False) textbutton "-Hint-" xalign 0.5 action ToggleScreenVariable("hint", True, False)
if tries >= 75: if tries >= 75:
textbutton "-Force it open-" xalign 0.5 action Return(False) at pulse_hover textbutton "-Force it open-" xalign 0.5 action Return(False) at pulse_hover

View File

@ -41,7 +41,6 @@ define config.version = "1.46"
define compatible_version = 1.451 define compatible_version = 1.451
define config.name = "Witch Trainer Silver" define config.name = "Witch Trainer Silver"
# Application window settings # Application window settings
define config.window_title = f"{config.name} (v{config.version}{' PRE-RELEASE' if prerelease else ''}) ({get_renderer()}) ({renpy.bits}-bit)" define config.window_title = f"{config.name} (v{config.version}{' PRE-RELEASE' if prerelease else ''}) ({get_renderer()}) ({renpy.bits}-bit)"
define config.window_icon = "gui/icon.webp" define config.window_icon = "gui/icon.webp"
@ -128,6 +127,9 @@ define config.enter_replay_transition = None
define config.exit_replay_transition = None define config.exit_replay_transition = None
define config.say_attribute_transition = d3 define config.say_attribute_transition = d3
# Engine Compatibility
define config.check_conflicting_properties = True
# Python # Python
define config.open_file_encoding = "utf-8" define config.open_file_encoding = "utf-8"

View File

@ -156,9 +156,8 @@ screen desk_menu():
#Book #Book
if item_store_intro_done: if item_store_intro_done:
add "interface/desk/book.webp" xalign 1.0 xpos 1080 ypos 0 add "interface/desk/book.webp" xalign 1.0 ypos 0
imagebutton: imagebutton:
xpos 1080
ypos 0 ypos 0
xalign 1.0 xalign 1.0
idle "interface/desk/book.webp" idle "interface/desk/book.webp"
@ -169,9 +168,8 @@ screen desk_menu():
action Return("inventory") action Return("inventory")
#Tissue Box #Tissue Box
add "interface/desk/tissues.webp" xalign 1.0 xpos 1080 ypos 320 add "interface/desk/tissues.webp" xalign 1.0 ypos 320
imagebutton: imagebutton:
xpos 1080
ypos 320 ypos 320
xalign 1.0 xalign 1.0
idle "interface/desk/tissues.webp" idle "interface/desk/tissues.webp"
@ -186,7 +184,7 @@ screen desk_menu():
imagebutton: imagebutton:
xpos -10 xpos -10
ypos 0 ypos 0
xalign 0.0 xanchor 0.0
idle "interface/desk/work.webp" idle "interface/desk/work.webp"
hover "interface/desk/work_hover.webp" hover "interface/desk/work_hover.webp"
hovered SetScreenVariable("ball_hint", "work") hovered SetScreenVariable("ball_hint", "work")
@ -197,8 +195,6 @@ screen desk_menu():
#Cards #Cards
if states.cardgame.unlocked: #Or letter_cards_unlock.read #Day 26+ if states.cardgame.unlocked: #Or letter_cards_unlock.read #Day 26+
imagebutton: imagebutton:
xpos 0
ypos 600
xalign 0.0 xalign 0.0
yalign 1.0 yalign 1.0
idle "interface/desk/cards.webp" idle "interface/desk/cards.webp"

View File

@ -227,17 +227,17 @@ screen shop_item_menuitem(xx, yy):
if menu_items[i].currency == "tokens": if menu_items[i].currency == "tokens":
if tokens >= menu_items[i].price: if tokens >= menu_items[i].price:
text "{color=#2055da}T{/color} [price]" size 10 align (0.95, 0.95) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] text "{color=#2055da}T{/color} [price]" size 10 pos (0.95, 0.95) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ]
else: else:
text "{color=#2055da}T{/color} {color=#ff0000}[price]{/color}" size 10 align (0.95, 0.95) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] text "{color=#2055da}T{/color} {color=#ff0000}[price]{/color}" size 10 pos (0.95, 0.95) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ]
else: else:
if game.gold >= menu_items[i].price: if game.gold >= menu_items[i].price:
text "{color=#daa520}G{/color} [price]" size 10 align (0.95, 0.95) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] text "{color=#daa520}G{/color} [price]" size 10 pos (0.95, 0.95) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ]
else: else:
text "{color=#daa520}G{/color} {color=#ff0000}[price]{/color}" size 10 align (0.95, 0.95) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] text "{color=#daa520}G{/color} {color=#ff0000}[price]{/color}" size 10 pos (0.95, 0.95) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ]
if menu_items_length <= 0: if menu_items_length <= 0:
text "Nothing here yet" align (0.5, 0.5) anchor (0.5, 0.5) size 24 text "Nothing here yet" align (0.5, 0.5) size 24
if current_item: if current_item:
frame: frame:
@ -258,14 +258,14 @@ screen shop_item_menuitem(xx, yy):
if current_item.currency == "tokens": if current_item.currency == "tokens":
if tokens >= current_item.price: if tokens >= current_item.price:
text "{color=#2055da}T{/color} [current_item.price]" size 14 align (0.9, 0.9) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] text "{color=#2055da}T{/color} [current_item.price]" size 14 pos (0.9, 0.9) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ]
else: else:
text "{color=#2055da}T{/color} {color=#ff0000}[current_item.price]{/color}" size 14 align (0.90, 0.90) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] text "{color=#2055da}T{/color} {color=#ff0000}[current_item.price]{/color}" size 14 pos (0.90, 0.90) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ]
else: else:
if game.gold >= current_item.price: if game.gold >= current_item.price:
text "{color=#daa520}G{/color} [current_item.price]" size 14 align (0.9, 0.9) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] text "{color=#daa520}G{/color} [current_item.price]" size 14 pos (0.9, 0.9) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ]
else: else:
text "{color=#daa520}G{/color} {color=#ff0000}[current_item.price]{/color}" size 14 align (0.90, 0.90) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] text "{color=#daa520}G{/color} {color=#ff0000}[current_item.price]{/color}" size 14 pos (0.90, 0.90) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ]
add gui.format("interface/achievements/{}/highlight.webp") pos (112, 375) add gui.format("interface/achievements/{}/highlight.webp") pos (112, 375)
add gui.format("interface/achievements/{}/spacer.webp") pos (120, 398) add gui.format("interface/achievements/{}/spacer.webp") pos (120, 398)

View File

@ -441,7 +441,7 @@ screen editor():
drag: drag:
pos (50, 50) pos (50, 50)
maximum (500, 500) ymaximum 500
xsize 500 xsize 500
frame: frame:

Some files were not shown because too many files have changed in this diff Show More