This commit is contained in:
Eric 2024-08-30 16:45:42 -07:00
parent e7f2368eec
commit 64c6613c23
No known key found for this signature in database
GPG Key ID: 89C93F0F8D6D5A98
9 changed files with 58 additions and 203 deletions

56
.efrocachemap generated
View File

@ -4096,26 +4096,26 @@
"build/assets/windows/Win32/ucrtbased.dll": "2def5335207d41b21b9823f6805997f1", "build/assets/windows/Win32/ucrtbased.dll": "2def5335207d41b21b9823f6805997f1",
"build/assets/windows/Win32/vc_redist.x86.exe": "b08a55e2e77623fe657bea24f223a3ae", "build/assets/windows/Win32/vc_redist.x86.exe": "b08a55e2e77623fe657bea24f223a3ae",
"build/assets/windows/Win32/vcruntime140d.dll": "865b2af4d1e26a1a8073c89acb06e599", "build/assets/windows/Win32/vcruntime140d.dll": "865b2af4d1e26a1a8073c89acb06e599",
"build/prefab/full/linux_arm64_gui/debug/ballisticakit": "c6d67ec79facefc5cad965530b23bcd8", "build/prefab/full/linux_arm64_gui/debug/ballisticakit": "512c99d6d32d3f7ca27de9d00b3f6bee",
"build/prefab/full/linux_arm64_gui/release/ballisticakit": "3d66a0cd0dd6e11c7f0bc9bca7c32918", "build/prefab/full/linux_arm64_gui/release/ballisticakit": "407a6d564f35c7db571702ef6996adc1",
"build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "3b57ad3a4c258a38022ff6760fb99273", "build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "03c278694182a2a7cd6e39d7cf0cdde8",
"build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "49494eff1ea0e26629b31d1962072f03", "build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "8c0f3132135f6a392b31dccce44ecc72",
"build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "7ec96c9d86bd7ab6a8972c486421037b", "build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "399783ec75c825a7c0ceffb6b66546a6",
"build/prefab/full/linux_x86_64_gui/release/ballisticakit": "8cfbdb28fcefb6746efcf45368e4d4c8", "build/prefab/full/linux_x86_64_gui/release/ballisticakit": "7d5f43f891ddbc0e68e1e4b924717941",
"build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "c4f03152366701177ac8df1b1216800e", "build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "97b462045118ca81436452c19e50ead3",
"build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "9c2a644cffb13828706d3a62fc93bea1", "build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "daedf2d4f2c7012f9f1146ef5e675a51",
"build/prefab/full/mac_arm64_gui/debug/ballisticakit": "82cb874a3aab2d3a86a446987686e50f", "build/prefab/full/mac_arm64_gui/debug/ballisticakit": "ef571b31a6175b391c70cde46587afc6",
"build/prefab/full/mac_arm64_gui/release/ballisticakit": "138da633cfcbc99d4a32632dfd20220e", "build/prefab/full/mac_arm64_gui/release/ballisticakit": "fcbe9cb15740f5569d32daaef838bae3",
"build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "7d26e8d3b9ca3ef030c31bd3219a81f6", "build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "06d8ed9ca06ed1fb12437708b117621f",
"build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "7d50251a8c2a865868f55fef1b1e7bbe", "build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "eff858f25a173f090731401c42fcfad7",
"build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "e823ba47693a1fa0dabdad310e56aee5", "build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "21401c4a1bb13c6a50fbcc2413a34bc6",
"build/prefab/full/mac_x86_64_gui/release/ballisticakit": "8787b88ac1276d15a93685dd4d192a82", "build/prefab/full/mac_x86_64_gui/release/ballisticakit": "a5f6bf1f1a675a60b43674cbe06ee740",
"build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "9e281fcbf8bdd498646646b3fed7257d", "build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "4965d74db093926f890d37a2d2bcb0cf",
"build/prefab/full/mac_x86_64_server/release/dist/ballisticakit_headless": "c6d5c81f924d607acc6c996989ba8726", "build/prefab/full/mac_x86_64_server/release/dist/ballisticakit_headless": "527d364caa4c68cb3a5e70575a834333",
"build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "d4ce0446eabed898120bb9306dbaae1c", "build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "f3e69ff8d4928b52fb301c911d6e01cb",
"build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "4bab9b11091309039860c712305f14a0", "build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "82dd100621de502523d9feca94de7fc5",
"build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "a7ae68ea69d0cf32842ca7d4559fd719", "build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "6c66e68c95330200d339ec5a44706491",
"build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "667491d9323656d8112f7f8df86821ef", "build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "f6903fb7071440ee807963cf34fd220f",
"build/prefab/lib/linux_arm64_gui/debug/libballisticaplus.a": "73ad3303fe1a82005918fbc5dae3446c", "build/prefab/lib/linux_arm64_gui/debug/libballisticaplus.a": "73ad3303fe1a82005918fbc5dae3446c",
"build/prefab/lib/linux_arm64_gui/release/libballisticaplus.a": "fa659b5d6119acba6570c92ce4d35ae2", "build/prefab/lib/linux_arm64_gui/release/libballisticaplus.a": "fa659b5d6119acba6570c92ce4d35ae2",
"build/prefab/lib/linux_arm64_server/debug/libballisticaplus.a": "73ad3303fe1a82005918fbc5dae3446c", "build/prefab/lib/linux_arm64_server/debug/libballisticaplus.a": "73ad3303fe1a82005918fbc5dae3446c",
@ -4132,14 +4132,14 @@
"build/prefab/lib/mac_x86_64_gui/release/libballisticaplus.a": "3e5c5fd0a09f55ba7b05ce1e2ec7171e", "build/prefab/lib/mac_x86_64_gui/release/libballisticaplus.a": "3e5c5fd0a09f55ba7b05ce1e2ec7171e",
"build/prefab/lib/mac_x86_64_server/debug/libballisticaplus.a": "1659535e95e3047fda529543e265ac97", "build/prefab/lib/mac_x86_64_server/debug/libballisticaplus.a": "1659535e95e3047fda529543e265ac97",
"build/prefab/lib/mac_x86_64_server/release/libballisticaplus.a": "3e5c5fd0a09f55ba7b05ce1e2ec7171e", "build/prefab/lib/mac_x86_64_server/release/libballisticaplus.a": "3e5c5fd0a09f55ba7b05ce1e2ec7171e",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "8452c85e5970578ecf49d0b3c48a518a", "build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "3193670862ed84af2f6bbf3dc7265137",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "1acf59d4e8e9267484e5635bee0730ea", "build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "5e45916a6cfb40a5667c691e507ea81d",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "65d344082b8282acb78193d3ddcd3751", "build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "419fba17d012361c3ca8174c44dffdb2",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "57ad999dcdb7b2810276ef52f8da7c2e", "build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "d895b4afb3bb74dd1c94595a126a2c24",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "ec35b5c459c74efb3bf0f9d1461a3936", "build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "56a67ab9520c07bc4be68162e78534b3",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "14ecbf98f8ff91e6dc27220563e566a5", "build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "40f942e6da490173c0e17fdf23e786e8",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "f8ac156a52ebf4a834f13b74cba4c260", "build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "3242b64140d0b0d6f7af09825d9489e0",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "c08e8ab8c1d1ccc533c1f44457cfe90e", "build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "5d41c8b29dc4e585b878c100e01e8af4",
"src/assets/ba_data/python/babase/_mgen/__init__.py": "f885fed7f2ed98ff2ba271f9dbe3391c", "src/assets/ba_data/python/babase/_mgen/__init__.py": "f885fed7f2ed98ff2ba271f9dbe3391c",
"src/assets/ba_data/python/babase/_mgen/enums.py": "cb299985623bbcc86015cb103a424ae6", "src/assets/ba_data/python/babase/_mgen/enums.py": "cb299985623bbcc86015cb103a424ae6",
"src/ballistica/base/mgen/pyembed/binding_base.inc": "efa61468cf098f77cc6a234461d8b86d", "src/ballistica/base/mgen/pyembed/binding_base.inc": "efa61468cf098f77cc6a234461d8b86d",

View File

@ -1,4 +1,4 @@
### 1.7.37 (build 21974, api 9, 2024-08-30) ### 1.7.37 (build 21976, api 9, 2024-08-30)
- Bumping api version to 9. As you'll see below, there's some UI changes that - Bumping api version to 9. As you'll see below, there's some UI changes that
will require a bit of work for any UI mods to adapt to. If your mods don't will require a bit of work for any UI mods to adapt to. If your mods don't
touch UI stuff at all you can simply bump your api version and call it a day. touch UI stuff at all you can simply bump your api version and call it a day.
@ -41,7 +41,7 @@
back-button handling are more automatic and windows don't have to hard-code back-button handling are more automatic and windows don't have to hard-code
where they came from. There are also other benefits such as better state where they came from. There are also other benefits such as better state
saving/restoring. When writing a MainWindow, pretty much all navigation should saving/restoring. When writing a MainWindow, pretty much all navigation should
only need too use methods: `can_change_main_window()`, `main_window_back()`, only need too use methods: `main_window_has_control()`, `main_window_back()`,
and `main_window_replace()`. and `main_window_replace()`.
- Finally got things updated so language testing works again, and made it a bit - Finally got things updated so language testing works again, and made it a bit
spiffier while at it. You now simply point the game at your test language and spiffier while at it. You now simply point the game at your test language and

View File

@ -52,7 +52,7 @@ if TYPE_CHECKING:
# Build number and version of the ballistica binary we expect to be # Build number and version of the ballistica binary we expect to be
# using. # using.
TARGET_BALLISTICA_BUILD = 21974 TARGET_BALLISTICA_BUILD = 21976
TARGET_BALLISTICA_VERSION = '1.7.37' TARGET_BALLISTICA_VERSION = '1.7.37'

View File

@ -99,7 +99,7 @@ class MainWindow(Window):
edit=self._root_widget, transition=self._main_window_transition_out edit=self._root_widget, transition=self._main_window_transition_out
) )
def can_change_main_window(self) -> bool: def main_window_has_control(self) -> bool:
"""Is this MainWindow allowed to change the global main window? """Is this MainWindow allowed to change the global main window?
It is a good idea to make sure this is True before calling It is a good idea to make sure this is True before calling
@ -118,12 +118,12 @@ class MainWindow(Window):
def main_window_back(self) -> None: def main_window_back(self) -> None:
"""Move back in the main window stack.""" """Move back in the main window stack."""
# Users should always check can_change_main_window() before # Users should always check main_window_has_control() before
# calling us. Error if it seems they did not. # calling us. Error if it seems they did not.
if not self.can_change_main_window(): if not self.main_window_has_control():
raise RuntimeError( raise RuntimeError(
'main_window_back() should only be called' 'main_window_back() should only be called'
' if can_change_main_window() returns True' ' if main_window_has_control() returns True'
' (it currently is False).' ' (it currently is False).'
) )
@ -137,13 +137,13 @@ class MainWindow(Window):
) -> None: ) -> None:
"""Replace ourself with a new MainWindow.""" """Replace ourself with a new MainWindow."""
# Users should always check can_change_main_window() before # Users should always check main_window_has_control() before
# creating new MainWindows and passing them in here. Error if it # creating new MainWindows and passing them in here. Error if it
# seems they did not. # seems they did not.
if not self.can_change_main_window(): if not self.main_window_has_control():
raise RuntimeError( raise RuntimeError(
'main_window_replace() should only be called' 'main_window_replace() should only be called'
' if can_change_main_window() returns True' ' if main_window_has_control() returns True'
' (it currently is False).' ' (it currently is False).'
) )

View File

@ -487,7 +487,7 @@ class MainMenuWindow(bui.MainWindow):
from bauiv1lib.confirm import QuitWindow from bauiv1lib.confirm import QuitWindow
# no-op if we're not currently in control. # no-op if we're not currently in control.
if not self.can_change_main_window(): if not self.main_window_has_control():
return return
# Note: Normally we should go through bui.quit(confirm=True) but # Note: Normally we should go through bui.quit(confirm=True) but
@ -500,7 +500,7 @@ class MainMenuWindow(bui.MainWindow):
from bauiv1lib.credits import CreditsWindow from bauiv1lib.credits import CreditsWindow
# no-op if we're not currently in control. # no-op if we're not currently in control.
if not self.can_change_main_window(): if not self.main_window_has_control():
return return
self.main_window_replace( self.main_window_replace(
@ -513,7 +513,7 @@ class MainMenuWindow(bui.MainWindow):
from bauiv1lib.helpui import HelpWindow from bauiv1lib.helpui import HelpWindow
# no-op if we're not currently in control. # no-op if we're not currently in control.
if not self.can_change_main_window(): if not self.main_window_has_control():
return return
self.main_window_replace( self.main_window_replace(
@ -580,7 +580,7 @@ class MainMenuWindow(bui.MainWindow):
from bauiv1lib.gather import GatherWindow from bauiv1lib.gather import GatherWindow
# no-op if we're not currently in control. # no-op if we're not currently in control.
if not self.can_change_main_window(): if not self.main_window_has_control():
return return
self.main_window_replace( self.main_window_replace(
@ -592,7 +592,7 @@ class MainMenuWindow(bui.MainWindow):
from bauiv1lib.watch import WatchWindow from bauiv1lib.watch import WatchWindow
# no-op if we're not currently in control. # no-op if we're not currently in control.
if not self.can_change_main_window(): if not self.main_window_has_control():
return return
self.main_window_replace( self.main_window_replace(
@ -604,7 +604,7 @@ class MainMenuWindow(bui.MainWindow):
from bauiv1lib.play import PlayWindow from bauiv1lib.play import PlayWindow
# no-op if we're not currently in control. # no-op if we're not currently in control.
if not self.can_change_main_window(): if not self.main_window_has_control():
return return
classic = bui.app.classic classic = bui.app.classic

View File

@ -541,7 +541,7 @@ class PlayWindow(bui.MainWindow):
# pylint: disable=cyclic-import # pylint: disable=cyclic-import
# no-op if we're not currently in control. # no-op if we're not currently in control.
if not self.can_change_main_window(): if not self.main_window_has_control():
return return
if self._is_main_menu: if self._is_main_menu:
@ -567,7 +567,7 @@ class PlayWindow(bui.MainWindow):
from bauiv1lib.coop.browser import CoopBrowserWindow from bauiv1lib.coop.browser import CoopBrowserWindow
# no-op if we're not currently in control. # no-op if we're not currently in control.
if not self.can_change_main_window(): if not self.main_window_has_control():
return return
plus = bui.app.plus plus = bui.app.plus
@ -588,7 +588,7 @@ class PlayWindow(bui.MainWindow):
from bauiv1lib.playlist.browser import PlaylistBrowserWindow from bauiv1lib.playlist.browser import PlaylistBrowserWindow
# no-op if we're not currently in control. # no-op if we're not currently in control.
if not self.can_change_main_window(): if not self.main_window_has_control():
return return
self._save_state() self._save_state()
@ -604,7 +604,7 @@ class PlayWindow(bui.MainWindow):
from bauiv1lib.playlist.browser import PlaylistBrowserWindow from bauiv1lib.playlist.browser import PlaylistBrowserWindow
# no-op if we're not currently in control. # no-op if we're not currently in control.
if not self.can_change_main_window(): if not self.main_window_has_control():
return return
self._save_state() self._save_state()

View File

@ -125,55 +125,11 @@ class StoreBrowserWindow(bui.MainWindow):
bui.containerwidget( bui.containerwidget(
edit=self._root_widget, on_cancel_call=self._back edit=self._root_widget, on_cancel_call=self._back
) )
# backbutton = bui.get_special_widget('back_button')
backbuttonspecial = True backbuttonspecial = True
else: else:
bui.containerwidget(edit=self._root_widget, cancel_button=btn) bui.containerwidget(edit=self._root_widget, cancel_button=btn)
# backbutton = self._back_button
backbuttonspecial = False backbuttonspecial = False
# self._ticket_count_text: bui.Widget | None = None
# self._get_tickets_button: bui.Widget | None = None
# if bool(False):
# if app.classic.allow_ticket_purchases:
# self._get_tickets_button = bui.buttonwidget(
# parent=self._root_widget,
# size=(210, 65),
# on_activate_call=self._on_get_more_tickets_press,
# autoselect=True,
# scale=0.9,
# text_scale=1.4,
# left_widget=backbutton,
# color=(0.7, 0.5, 0.85),
# textcolor=(0.2, 1.0, 0.2),
# label=bui.Lstr(resource='getTicketsWindow.titleText'),
# )
# else:
# self._ticket_count_text = bui.textwidget(
# parent=self._root_widget,
# size=(210, 64),
# color=(0.2, 1.0, 0.2),
# h_align='center',
# v_align='center',
# )
# Move this dynamically to keep it out of the way of the party icon.
# self._update_get_tickets_button_pos()
# self._get_ticket_pos_update_timer = bui.AppTimer(
# 1.0,
# bui.WeakCall(self._update_get_tickets_button_pos),
# repeat=True,
# )
# if self._get_tickets_button and not backbuttonspecial:
# bui.widget(
# edit=self._back_button, right_widget=self._get_tickets_button
# )
# self._ticket_text_update_timer = bui.AppTimer(
# 1.0, bui.WeakCall(self._update_tickets_text), repeat=True
# )
# self._update_tickets_text()
if ( if (
app.classic.platform in ['mac', 'ios'] app.classic.platform in ['mac', 'ios']
and app.classic.subplatform == 'appstore' and app.classic.subplatform == 'appstore'
@ -316,17 +272,6 @@ class StoreBrowserWindow(bui.MainWindow):
) )
self._update_tabs() self._update_tabs()
# if self._get_tickets_button:
# last_tab_button = self._tab_row.tabs[tabs_def[-1][0]].button
# bui.widget(
# edit=self._get_tickets_button, down_widget=last_tab_button
# )
# bui.widget(
# edit=last_tab_button,
# up_widget=self._get_tickets_button,
# right_widget=self._get_tickets_button,
# )
if uiscale is bui.UIScale.SMALL: if uiscale is bui.UIScale.SMALL:
first_tab_button = self._tab_row.tabs[tabs_def[0][0]].button first_tab_button = self._tab_row.tabs[tabs_def[0][0]].button
last_tab_button = self._tab_row.tabs[tabs_def[-1][0]].button last_tab_button = self._tab_row.tabs[tabs_def[-1][0]].button
@ -346,28 +291,6 @@ class StoreBrowserWindow(bui.MainWindow):
self._status_textwidget: bui.Widget | None = None self._status_textwidget: bui.Widget | None = None
self._restore_state() self._restore_state()
# def _update_get_tickets_button_pos(self) -> None:
# assert bui.app.classic is not None
# uiscale = bui.app.ui_v1.uiscale
# pos = (
# self._width
# - 252
# - (
# self._x_inset
# + (
# 47
# if uiscale is bui.UIScale.SMALL
# and bui.is_party_icon_visible()
# else 0
# )
# ),
# self._height - 70,
# )
# if self._get_tickets_button:
# bui.buttonwidget(edit=self._get_tickets_button, position=pos)
# if self._ticket_count_text:
# bui.textwidget(edit=self._ticket_count_text, position=pos)
def _restore_purchases(self) -> None: def _restore_purchases(self) -> None:
from bauiv1lib import account from bauiv1lib import account
@ -411,25 +334,6 @@ class StoreBrowserWindow(bui.MainWindow):
bui.textwidget(edit=tab_data['text'], text='') bui.textwidget(edit=tab_data['text'], text='')
bui.imagewidget(edit=tab_data['img'], opacity=0.0) bui.imagewidget(edit=tab_data['img'], opacity=0.0)
# def _update_tickets_text(self) -> None:
# from bauiv1 import SpecialChar
# if not self._root_widget:
# return
# plus = bui.app.plus
# assert plus is not None
# sval: str | bui.Lstr
# if plus.get_v1_account_state() == 'signed_in':
# sval = bui.charstr(SpecialChar.TICKET) + str(
# plus.get_v1_account_ticket_count()
# )
# else:
# sval = bui.Lstr(resource='getTicketsWindow.titleText')
# if self._get_tickets_button:
# bui.buttonwidget(edit=self._get_tickets_button, label=sval)
# if self._ticket_count_text:
# bui.textwidget(edit=self._ticket_count_text, text=sval)
def _set_tab(self, tab_id: TabID) -> None: def _set_tab(self, tab_id: TabID) -> None:
if self._current_tab is tab_id: if self._current_tab is tab_id:
return return
@ -491,7 +395,6 @@ class StoreBrowserWindow(bui.MainWindow):
window = self._window() window = self._window()
if window is not None and (window.request is self): if window is not None and (window.request is self):
window.request = None window.request = None
# noinspection PyProtectedMember
window._on_response(data) window._on_response(data)
# Kick off a server request. # Kick off a server request.
@ -601,8 +504,6 @@ class StoreBrowserWindow(bui.MainWindow):
from bauiv1lib import account from bauiv1lib import account
from bauiv1lib.confirm import ConfirmWindow from bauiv1lib.confirm import ConfirmWindow
# from bauiv1lib import gettickets
assert bui.app.classic is not None assert bui.app.classic is not None
store = bui.app.classic.store store = bui.app.classic.store
@ -1292,8 +1193,6 @@ class StoreBrowserWindow(bui.MainWindow):
for tab_id, tab in self._tab_row.tabs.items() for tab_id, tab in self._tab_row.tabs.items()
if sel == tab.button if sel == tab.button
] ]
# if sel == self._get_tickets_button:
# sel_name = 'GetTickets'
if sel == self._scrollwidget: if sel == self._scrollwidget:
sel_name = 'Scroll' sel_name = 'Scroll'
elif sel == self._back_button: elif sel == self._back_button:
@ -1327,8 +1226,6 @@ class StoreBrowserWindow(bui.MainWindow):
if self._show_tab is not None: if self._show_tab is not None:
current_tab = self._show_tab current_tab = self._show_tab
# if sel_name == 'GetTickets' and self._get_tickets_button:
# sel = self._get_tickets_button
if sel_name == 'Back': if sel_name == 'Back':
sel = self._back_button sel = self._back_button
elif sel_name == 'Scroll': elif sel_name == 'Scroll':
@ -1342,7 +1239,7 @@ class StoreBrowserWindow(bui.MainWindow):
else: else:
sel = self._tab_row.tabs[current_tab].button sel = self._tab_row.tabs[current_tab].button
# If we were requested to show a tab, select it too.. # If we were requested to show a tab, select it too.
if ( if (
self._show_tab is not None self._show_tab is not None
and self._show_tab in self._tab_row.tabs and self._show_tab in self._tab_row.tabs
@ -1354,63 +1251,21 @@ class StoreBrowserWindow(bui.MainWindow):
except Exception: except Exception:
logging.exception('Error restoring state for %s.', self) logging.exception('Error restoring state for %s.', self)
# def _on_get_more_tickets_press(self) -> None:
# # pylint: disable=cyclic-import
# from bauiv1lib.account import show_sign_in_prompt
# from bauiv1lib.gettickets import GetTicketsWindow
# # no-op if our underlying widget is dead or on its way out.
# if not self._root_widget or self._root_widget.transitioning_out:
# return
# plus = bui.app.plus
# assert plus is not None
# if plus.get_v1_account_state() != 'signed_in':
# show_sign_in_prompt()
# return
# self._save_state()
# bui.containerwidget(edit=self._root_widget, transition='out_left')
# window = GetTicketsWindow(
# from_modal_store=self._modal,
# store_back_location=self._back_location,
# )
# if not self._modal:
# assert bui.app.classic is not None
# bui.app.ui_v1.set_main_window(window, from_window=self)
def _back(self) -> None: def _back(self) -> None:
# pylint: disable=cyclic-import
# from bauiv1lib.coop.browser import CoopBrowserWindow
# from bauiv1lib.mainmenu import MainMenuWindow
# no-op if our underlying widget is dead or on its way out.
if not self._root_widget or self._root_widget.transitioning_out:
return
self._save_state()
if self._modal: if self._modal:
# no-op if our underlying widget is dead or on its way out.
if not self._root_widget or self._root_widget.transitioning_out:
return
self._save_state()
bui.containerwidget( bui.containerwidget(
edit=self._root_widget, transition=self._transition_out edit=self._root_widget, transition=self._transition_out
) )
else: else:
# no-op if we're not currently in control.
if not self.main_window_has_control():
return
self.main_window_back() self.main_window_back()
# if not self._modal:
# assert bui.app.classic is not None
# if self._back_location == 'CoopBrowserWindow':
# bui.app.ui_v1.set_main_window(
# CoopBrowserWindow(transition='in_left'),
# from_window=self,
# is_back=True,
# )
# else:
# bui.app.ui_v1.set_main_window(
# MainMenuWindow(transition='in_left'),
# from_window=self,
# is_back=True,
# is_top_level=True,
# )
if self._on_close_call is not None: if self._on_close_call is not None:
self._on_close_call() self._on_close_call()

View File

@ -39,7 +39,7 @@ auto main(int argc, char** argv) -> int {
namespace ballistica { namespace ballistica {
// These are set automatically via script; don't modify them here. // These are set automatically via script; don't modify them here.
const int kEngineBuildNumber = 21974; const int kEngineBuildNumber = 21976;
const char* kEngineVersion = "1.7.37"; const char* kEngineVersion = "1.7.37";
const int kEngineApiVersion = 9; const int kEngineApiVersion = 9;

View File

@ -683,7 +683,7 @@ void RootWidget::Setup() {
td.button = b; td.button = b;
td.y = 0.0f; td.y = 0.0f;
td.width = bd.width * 0.8f; td.width = bd.width * 0.8f;
td.text = "PlayerName"; td.text = "AccountName";
td.scale = 1.2f; td.scale = 1.2f;
td.depth_min = 0.3f; td.depth_min = 0.3f;
td.color_r = 0.5f; td.color_r = 0.5f;