added warning that chests may be lost if playing with no chest slots open.

This commit is contained in:
Eric Froemling 2025-01-31 17:02:23 -08:00
parent 6a2eedced7
commit 8e9e7563cc
No known key found for this signature in database
7 changed files with 60 additions and 42 deletions

48
.efrocachemap generated
View File

@ -4171,22 +4171,22 @@
"build/assets/windows/Win32/pythonw.exe": "60f972a154dd6af1b4a67a23bcd89a92",
"build/assets/windows/Win32/pythonw_d.exe": "440ba78327698a2706fe7a0eb358dfe8",
"build/assets/windows/Win32/vc_redist.x86.exe": "91f13ae4b9f4dee9430a9d9b0c8b2afa",
"build/prefab/full/linux_arm64_gui/debug/ballisticakit": "2c6cb9b1a60721c6e3bc49d51324b264",
"build/prefab/full/linux_arm64_gui/release/ballisticakit": "3f40c4809c3eed59cf398f75552f93f2",
"build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "e3dbbf5683e49a5829c5ed97589a441c",
"build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "512c51c4e2d87d18cfbef728c513b599",
"build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "9e3431cd1f17a29cee173035b924c91a",
"build/prefab/full/linux_x86_64_gui/release/ballisticakit": "79487768b9e12f4399e389204c816035",
"build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "7a9b37a71f7e6e16ff86ca0ccfb70006",
"build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "15aca3bfda739d6b59e439bb8b5abd49",
"build/prefab/full/mac_arm64_gui/debug/ballisticakit": "f591aa149a7641efaf13f31ca5c13a3f",
"build/prefab/full/mac_arm64_gui/release/ballisticakit": "5ee15c691e032e9b9515436b1a8a3381",
"build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "08d9cc8785012a56d6998f5e1bedb395",
"build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "6eae82a42b6380321af37b6ad56dbd58",
"build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "8a4e8dedfd25672c8edd8d1b3fa95983",
"build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "e473df2b31df114791c5354d036874fb",
"build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "cd9c8f057578e77633cd1bb005101ed6",
"build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "f8ae613ced94412159b569c41a0b04c2",
"build/prefab/full/linux_arm64_gui/debug/ballisticakit": "e9b65e2ecc15bb4c6657c0a684eba1d9",
"build/prefab/full/linux_arm64_gui/release/ballisticakit": "a254053e7f58e3da2dbb4d45c2ef310f",
"build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "ccc36d009bc0fd7548b31ecb3c591025",
"build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "b9a9812927a25bc9f2d58f2aa14dd073",
"build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "095a15043434cfa6bca1c2469f395f0b",
"build/prefab/full/linux_x86_64_gui/release/ballisticakit": "7a5ed0add2617f6a7c1322fffe577f9f",
"build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "02cc384ae2c3b30e7fe52f9eaa28ae2d",
"build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "b70d7556c1a73e79ee07e40c0ff8fa1b",
"build/prefab/full/mac_arm64_gui/debug/ballisticakit": "79ca4ab042690182c69333d93b4e6d4a",
"build/prefab/full/mac_arm64_gui/release/ballisticakit": "8a4deacb894a249cc1bc08cab046c511",
"build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "90914d56ef9fe32bbbe4e9882a205b7c",
"build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "f76dbcf7ff4095aeda7e34238f1ef2bc",
"build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "60c8eea0253d2617b074879326ddf1d9",
"build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "9083b099418c54cb2187bef6891df2e8",
"build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "dea224a60ef7c246a4f0951689f2624d",
"build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "f34e9ec8f91cfca5b3ff4190b2fb54e1",
"build/prefab/lib/linux_arm64_gui/debug/libballisticaplus.a": "5c7b118a1780cbf24c8b4bf6fd30ddb0",
"build/prefab/lib/linux_arm64_gui/release/libballisticaplus.a": "69a28ff5f0d1fb79a012449c90e3c0d0",
"build/prefab/lib/linux_arm64_server/debug/libballisticaplus.a": "5c7b118a1780cbf24c8b4bf6fd30ddb0",
@ -4199,14 +4199,14 @@
"build/prefab/lib/mac_arm64_gui/release/libballisticaplus.a": "593606fabbdd503bab555d49b7963ad1",
"build/prefab/lib/mac_arm64_server/debug/libballisticaplus.a": "07143cfbe795a2cbaa47a09daf1261b3",
"build/prefab/lib/mac_arm64_server/release/libballisticaplus.a": "593606fabbdd503bab555d49b7963ad1",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "acac11988d2398cf81dfff6f71b996b8",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "6064f56716c207ccfb92e1f1373ae27f",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "e5aae9b24f08f986addfbf3abab00753",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "d739db63385da53768343959c6c358aa",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "c30bd265c24d338a76a834b3eaf5dcda",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "739279114a1e77ca06990939bf6ad09e",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "ece94e57b0ddd1722c543ede09ed3973",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "1109fef5c7a8f3c30847a002f5447f51",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "f737f347dac174866c6ec2a5f16dc029",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "fa5d0866d5951bfd5965f020fad5deef",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "a1ccea4ec4184ebb805c8643708c8a1b",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "c94ed3fe1006e9d9142d4020e416ebfa",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "a9c4f66ee4f5c95f0d738688a846c48e",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "5794e420e44048078ee3e641468d662c",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "34034aa12539cf62b130d7d9e035d5aa",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "30636d0ebb461f97fe2900a3e3ad45d7",
"src/assets/ba_data/python/babase/_mgen/__init__.py": "f885fed7f2ed98ff2ba271f9dbe3391c",
"src/assets/ba_data/python/babase/_mgen/enums.py": "794d258d59fd17a61752843a9a0551ad",
"src/ballistica/base/mgen/pyembed/binding_base.inc": "06042d31df0ff9af96b99477162e2a91",

View File

@ -1,4 +1,4 @@
### 1.7.37 (build 22261, api 9, 2025-01-31)
### 1.7.37 (build 22262, api 9, 2025-01-31)
- 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
touch UI stuff at all you can simply bump your api version and call it a day.

View File

@ -199,6 +199,7 @@ class ClassicAppMode(babase.AppMode):
if account is None:
classic.gold_pass = False
classic.chest_dock_full = False
classic.remove_ads = False
self._account_data_sub = None
_baclassic.set_root_ui_account_values(
@ -274,6 +275,12 @@ class ClassicAppMode(babase.AppMode):
assert classic is not None
classic.remove_ads = val.remove_ads
classic.gold_pass = val.gold_pass
classic.chest_dock_full = (
chest0 is not None
and chest1 is not None
and chest2 is not None
and chest3 is not None
)
_baclassic.set_root_ui_account_values(
tickets=val.tickets,

View File

@ -77,6 +77,7 @@ class ClassicAppSubsystem(babase.AppSubsystem):
# Classic-specific account state.
self.remove_ads = False
self.gold_pass = False
self.chest_dock_full = False
# Main Menu.
self.main_menu_did_initial_transition = False

View File

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

View File

@ -9,6 +9,7 @@ from __future__ import annotations
import logging
from typing import TYPE_CHECKING, override
import bauiv1 as bui
if TYPE_CHECKING:
@ -1001,6 +1002,30 @@ class CoopBrowserWindow(bui.MainWindow):
def run_game(
self, game: str, origin_widget: bui.Widget | None = None
) -> None:
"""Run the provided game."""
from efro.util import strict_partial
from bauiv1lib.confirm import ConfirmWindow
classic = bui.app.classic
assert classic is not None
if classic.chest_dock_full:
ConfirmWindow(
bui.Lstr(resource='chests.slotsFullWarningText'),
width=550,
height=140,
ok_text=bui.Lstr(resource='continueText'),
origin_widget=origin_widget,
action=strict_partial(
self._run_game, game=game, origin_widget=origin_widget
),
)
else:
self._run_game(game=game, origin_widget=origin_widget)
def _run_game(
self, game: str, origin_widget: bui.Widget | None = None
) -> None:
"""Run the provided game."""
# pylint: disable=cyclic-import
@ -1040,21 +1065,6 @@ class CoopBrowserWindow(bui.MainWindow):
)
return
# if required_purchases and not all(
# plus.get_v1_account_product_purchased(p)
# for p in required_purchases
# ):
# if plus.get_v1_account_state() != 'signed_in':
# show_sign_in_prompt()
# else:
# # Hmm just ask about the first I guess.. They can pop
# # this window back up to the next if they purchase the
# # first.
# PurchaseWindow(
# items=[required_purchases[0]], origin_widget=origin_widget
# )
# return
self._save_state()
if bui.app.classic.launch_coop_game(game, args=args):

View File

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