diff --git a/.efrocachemap b/.efrocachemap index 15bf8e53..757e08de 100644 --- a/.efrocachemap +++ b/.efrocachemap @@ -3995,50 +3995,50 @@ "assets/src/ba_data/python/ba/_generated/__init__.py": "https://files.ballistica.net/cache/ba1/ee/e8/cad05aa531c7faf7ff7b96db7f6e", "assets/src/ba_data/python/ba/_generated/enums.py": "https://files.ballistica.net/cache/ba1/b2/e5/0ee0561e16257a32830645239f34", "ballisticacore-windows/Generic/BallisticaCore.ico": "https://files.ballistica.net/cache/ba1/89/c0/e32c7d2a35dc9aef57cc73b0911a", - "build/prefab/full/linux_arm64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/ad/15/3b9d4eb830dd3f65266b90544461", - "build/prefab/full/linux_arm64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/3f/94/ce703438b67755c530ca90d7147e", - "build/prefab/full/linux_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/57/49/aef9dbd58c9638d2f57c61fa9dee", - "build/prefab/full/linux_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/53/73/7aee5551f9aa8c60bfa36ce86889", - "build/prefab/full/linux_x86_64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/8d/cd/61b3022a6a3620bb9a0d288a3a07", - "build/prefab/full/linux_x86_64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/67/d3/7e7b3147c119bcf9edc62f271755", - "build/prefab/full/linux_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/41/81/b4225f4df31a6bb482eee912d1e7", - "build/prefab/full/linux_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/8a/3e/9a284ee8d8cb75fef73f31c95a8f", - "build/prefab/full/mac_arm64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/a5/a2/69829de7375f981ac01464d1271c", - "build/prefab/full/mac_arm64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/8f/de/c40022e95c0d51e3ea7d68713ac8", - "build/prefab/full/mac_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/2a/e3/74cdea89e9606f525ae01f5fb860", - "build/prefab/full/mac_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/c2/b3/8f5c7076b293ce6a961b23321ebe", - "build/prefab/full/mac_x86_64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/45/4b/43950780d121290a40cb444e86c4", - "build/prefab/full/mac_x86_64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/74/6c/5c8a7cab586c813a07d5180e25c2", - "build/prefab/full/mac_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/ca/36/94c0d402ec38ffdd74cd165f51c3", - "build/prefab/full/mac_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/b7/a9/14ea5150ad61a43b5780975551ac", - "build/prefab/full/windows_x86_gui/debug/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/23/72/2bdc1106cdf2aa163a591e7c47b8", - "build/prefab/full/windows_x86_gui/release/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/1e/d9/5a7fd190b86683bef223c1cdb0b6", - "build/prefab/full/windows_x86_server/debug/dist/BallisticaCoreHeadless.exe": "https://files.ballistica.net/cache/ba1/2e/f1/27b90831c9a25d2b9d06a266e931", - "build/prefab/full/windows_x86_server/release/dist/BallisticaCoreHeadless.exe": "https://files.ballistica.net/cache/ba1/17/ce/d3e33370c016fc8110e6dddd120f", - "build/prefab/lib/linux_arm64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/32/b0/df61f7b69d796fbdf2aa0d11974b", - "build/prefab/lib/linux_arm64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/42/31/a45e87e70e5d5232956586620f35", - "build/prefab/lib/linux_arm64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/94/5e/6ac9534c08e600201b04d28a6069", - "build/prefab/lib/linux_arm64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/5f/5d/52e74182f459f5b7b55ae07b36c6", - "build/prefab/lib/linux_x86_64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/7b/9d/367338622b31482a8ef87621f5aa", - "build/prefab/lib/linux_x86_64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/a8/18/4dff9ab6b2529d258a2ee5607d0c", - "build/prefab/lib/linux_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/79/b9/e5e9d0f92f82f6cf35abf0c049cf", - "build/prefab/lib/linux_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/4c/b4/2c65b84265e0b2d576317ca86e77", - "build/prefab/lib/mac_arm64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/d1/86/635b942e0837be18e6d9d859f2c4", - "build/prefab/lib/mac_arm64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/b0/f5/3da5acc926ca5e6c02307b8a16a6", - "build/prefab/lib/mac_arm64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/a3/51/d624ac150603304183ba23d369a2", - "build/prefab/lib/mac_arm64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/e2/51/5eb2216e4cdc531c500244316f1d", - "build/prefab/lib/mac_x86_64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/b1/2b/c72179ed1d11ae7e11f429b90ae9", - "build/prefab/lib/mac_x86_64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/52/78/cca5ff0fcc837467cd23239537c7", - "build/prefab/lib/mac_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/e7/6e/eb7102dd939e85172d729ba471b8", - "build/prefab/lib/mac_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/e7/92/b7c90b5dbf614aa056cf467f73e0", - "build/prefab/lib/windows/Debug_Win32/BallisticaCoreGenericInternal.lib": "https://files.ballistica.net/cache/ba1/cf/d9/52c1c145efa1a24ebf54dd71f691", - "build/prefab/lib/windows/Debug_Win32/BallisticaCoreGenericInternal.pdb": "https://files.ballistica.net/cache/ba1/31/15/ef849aeaf5a9cc2169e6ec4998c8", - "build/prefab/lib/windows/Debug_Win32/BallisticaCoreHeadlessInternal.lib": "https://files.ballistica.net/cache/ba1/86/a7/def29184cd6e947469726ae382e1", - "build/prefab/lib/windows/Debug_Win32/BallisticaCoreHeadlessInternal.pdb": "https://files.ballistica.net/cache/ba1/5f/30/42705d0b580994d1345c34651170", - "build/prefab/lib/windows/Release_Win32/BallisticaCoreGenericInternal.lib": "https://files.ballistica.net/cache/ba1/2f/b1/6a6e8cf45fc5afa4085bf90a526f", - "build/prefab/lib/windows/Release_Win32/BallisticaCoreGenericInternal.pdb": "https://files.ballistica.net/cache/ba1/7e/fb/e7eaee33c6196f9204a2997fc65c", - "build/prefab/lib/windows/Release_Win32/BallisticaCoreHeadlessInternal.lib": "https://files.ballistica.net/cache/ba1/5a/39/e00cddb91e8eca83b117235c1332", - "build/prefab/lib/windows/Release_Win32/BallisticaCoreHeadlessInternal.pdb": "https://files.ballistica.net/cache/ba1/07/dd/6e331996e6e6907f05a21abc20a6", + "build/prefab/full/linux_arm64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/15/a9/a9a878db308e8fb8e267d606a9f7", + "build/prefab/full/linux_arm64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/ea/05/dc05633b650cf96c75ac3ed1a61d", + "build/prefab/full/linux_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/4d/f6/d118bb50716ae27418bf756702c3", + "build/prefab/full/linux_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/30/a1/637841e59a1c277912aa6941a66f", + "build/prefab/full/linux_x86_64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/9e/f4/cc859bd7ef55b939e2090128f307", + "build/prefab/full/linux_x86_64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/12/c9/3301f4529de01e4a6fad66177b32", + "build/prefab/full/linux_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/79/37/7d7547882a64e6b2ce2881d5f2ad", + "build/prefab/full/linux_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/7b/8c/4606553615502fcd4a116c0d7fe2", + "build/prefab/full/mac_arm64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/1f/dc/501dfee10c4d4b04e8e7bbf60422", + "build/prefab/full/mac_arm64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/3a/33/69ab076cfff5b561dae8194b5360", + "build/prefab/full/mac_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/5a/12/81b9b1d949f44111680758020956", + "build/prefab/full/mac_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/ae/a0/1514d1520f12dc4e9c34316310c1", + "build/prefab/full/mac_x86_64_gui/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/49/6b/f44e345c4133418d816a94690d3b", + "build/prefab/full/mac_x86_64_gui/release/ballisticacore": "https://files.ballistica.net/cache/ba1/07/92/e54b6c94216fc811d2c5e3c385a3", + "build/prefab/full/mac_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/55/e1/2a35d261d1f7d29603220f456163", + "build/prefab/full/mac_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/e1/ef/ff3bfa49d2ba1c148dde704a4d87", + "build/prefab/full/windows_x86_gui/debug/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/06/b9/54708a2d4619f1cd3706fc79fd01", + "build/prefab/full/windows_x86_gui/release/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/01/24/143285e78761359b9dfa2a425a34", + "build/prefab/full/windows_x86_server/debug/dist/BallisticaCoreHeadless.exe": "https://files.ballistica.net/cache/ba1/ca/80/386a30050daa0eb1cec9b6fad36b", + "build/prefab/full/windows_x86_server/release/dist/BallisticaCoreHeadless.exe": "https://files.ballistica.net/cache/ba1/0b/6d/32eab56b5d6179fb2b3e9308e3d8", + "build/prefab/lib/linux_arm64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/bd/e9/558b331aa2cdde5b8814eeb5323d", + "build/prefab/lib/linux_arm64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/86/d2/d18cbc017a7d64001f96718cc5ed", + "build/prefab/lib/linux_arm64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/49/c2/a8970c6be16183a808c991510aaa", + "build/prefab/lib/linux_arm64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/06/70/9e5becbdf873ea42fae9541dd123", + "build/prefab/lib/linux_x86_64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/5d/7e/0dc09d6e811dc566ae3530794132", + "build/prefab/lib/linux_x86_64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/a3/47/f46d4455e6ee1ebb397508495d90", + "build/prefab/lib/linux_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/c9/56/f14a3725ad5410f373e3d7bad340", + "build/prefab/lib/linux_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/4c/32/de6296fdbd72d6a82d47a2403efd", + "build/prefab/lib/mac_arm64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/d2/1d/c111bdf386178fd46eff2c5a8cff", + "build/prefab/lib/mac_arm64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/3b/a5/e0aa43ca227c6bfa2ae8f44add14", + "build/prefab/lib/mac_arm64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/b5/6d/7506bdad0891a0e7cb6d04c6b018", + "build/prefab/lib/mac_arm64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/95/bc/affcb077742c90c9d51fd2dc4274", + "build/prefab/lib/mac_x86_64_gui/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/cd/c2/72b9276880eddb6121542c052b1d", + "build/prefab/lib/mac_x86_64_gui/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/c8/d2/5df66f66e26c1beb8a1e2b1f0613", + "build/prefab/lib/mac_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/7e/57/593e8ceeee37a65972f1fb30d2cd", + "build/prefab/lib/mac_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/2f/fc/a2ac394899e6527f8def0cad4d8a", + "build/prefab/lib/windows/Debug_Win32/BallisticaCoreGenericInternal.lib": "https://files.ballistica.net/cache/ba1/06/03/28c2d1732805a77f322e2d90b6d7", + "build/prefab/lib/windows/Debug_Win32/BallisticaCoreGenericInternal.pdb": "https://files.ballistica.net/cache/ba1/83/93/f88d485633c4307f4d64ba27c615", + "build/prefab/lib/windows/Debug_Win32/BallisticaCoreHeadlessInternal.lib": "https://files.ballistica.net/cache/ba1/2e/4a/dd9a19a2e3f475d39c1c2fd63c3a", + "build/prefab/lib/windows/Debug_Win32/BallisticaCoreHeadlessInternal.pdb": "https://files.ballistica.net/cache/ba1/13/7f/35479d1cdce4dc3a705e040be0d8", + "build/prefab/lib/windows/Release_Win32/BallisticaCoreGenericInternal.lib": "https://files.ballistica.net/cache/ba1/3d/ca/1f49d1c9ac5a158505de356cb650", + "build/prefab/lib/windows/Release_Win32/BallisticaCoreGenericInternal.pdb": "https://files.ballistica.net/cache/ba1/f2/87/eefb0be2571dd410a1f438baea45", + "build/prefab/lib/windows/Release_Win32/BallisticaCoreHeadlessInternal.lib": "https://files.ballistica.net/cache/ba1/3a/a2/fa5c7a6b624a96147b3f9f79ffce", + "build/prefab/lib/windows/Release_Win32/BallisticaCoreHeadlessInternal.pdb": "https://files.ballistica.net/cache/ba1/9c/96/ca2599d31f947eed5cdc26d64582", "src/ballistica/generated/python_embedded/binding.inc": "https://files.ballistica.net/cache/ba1/7d/3e/229a581cb2454ed856f1d8b564a7", "src/ballistica/generated/python_embedded/bootstrap.inc": "https://files.ballistica.net/cache/ba1/98/12/571b2160d69d42580e8f31fa6a8d" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 70701bdf..e8767974 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -### 1.7.7 (build 20798, api 7, 2022-09-09) +### 1.7.7 (build 20799, api 7, 2022-09-10) - Added `ba.app.meta.load_exported_classes()` for loading classes discovered by the meta subsystem cleanly in a background thread. - Improved logging of missing playlist game types. - Some ba.Lstr functionality can now be used in background threads. diff --git a/assets/src/ba_data/python/._bainternal_sources_hash b/assets/src/ba_data/python/._bainternal_sources_hash index 4f6f8751..595ac638 100644 --- a/assets/src/ba_data/python/._bainternal_sources_hash +++ b/assets/src/ba_data/python/._bainternal_sources_hash @@ -1 +1 @@ -64954916459680243860176377055051806996 \ No newline at end of file +250920245305497630480226719424525454078 \ No newline at end of file diff --git a/assets/src/ba_data/python/ba/_bootstrap.py b/assets/src/ba_data/python/ba/_bootstrap.py index 490f64f5..79ed2ff8 100644 --- a/assets/src/ba_data/python/ba/_bootstrap.py +++ b/assets/src/ba_data/python/ba/_bootstrap.py @@ -38,7 +38,7 @@ def bootstrap() -> None: # Give a soft warning if we're being used with a different binary # version than we expect. - expected_build = 20798 + expected_build = 20799 running_build: int = env['build_number'] if running_build != expected_build: print( diff --git a/ballisticacore-cmake/CMakeLists.txt b/ballisticacore-cmake/CMakeLists.txt index 0f58aa0a..c206b385 100644 --- a/ballisticacore-cmake/CMakeLists.txt +++ b/ballisticacore-cmake/CMakeLists.txt @@ -298,8 +298,6 @@ add_executable(ballisticacore ${BA_SRC_ROOT}/ballistica/dynamics/part.h ${BA_SRC_ROOT}/ballistica/dynamics/rigid_body.cc ${BA_SRC_ROOT}/ballistica/dynamics/rigid_body.h - ${BA_SRC_ROOT}/ballistica/game/account.cc - ${BA_SRC_ROOT}/ballistica/game/account.h ${BA_SRC_ROOT}/ballistica/game/client_controller_interface.h ${BA_SRC_ROOT}/ballistica/game/connection/connection.cc ${BA_SRC_ROOT}/ballistica/game/connection/connection.h @@ -335,6 +333,8 @@ add_executable(ballisticacore ${BA_SRC_ROOT}/ballistica/game/session/replay_client_session.h ${BA_SRC_ROOT}/ballistica/game/session/session.cc ${BA_SRC_ROOT}/ballistica/game/session/session.h + ${BA_SRC_ROOT}/ballistica/game/v1_account.cc + ${BA_SRC_ROOT}/ballistica/game/v1_account.h ${BA_SRC_ROOT}/ballistica/generic/base64.cc ${BA_SRC_ROOT}/ballistica/generic/base64.h ${BA_SRC_ROOT}/ballistica/generic/buffer.h diff --git a/ballisticacore-windows/Generic/BallisticaCoreGeneric.vcxproj b/ballisticacore-windows/Generic/BallisticaCoreGeneric.vcxproj index 06cae3fd..266f06d5 100644 --- a/ballisticacore-windows/Generic/BallisticaCoreGeneric.vcxproj +++ b/ballisticacore-windows/Generic/BallisticaCoreGeneric.vcxproj @@ -289,8 +289,6 @@ - - @@ -326,6 +324,8 @@ + + diff --git a/ballisticacore-windows/Generic/BallisticaCoreGeneric.vcxproj.filters b/ballisticacore-windows/Generic/BallisticaCoreGeneric.vcxproj.filters index 0db00d48..521f7a2f 100644 --- a/ballisticacore-windows/Generic/BallisticaCoreGeneric.vcxproj.filters +++ b/ballisticacore-windows/Generic/BallisticaCoreGeneric.vcxproj.filters @@ -301,12 +301,6 @@ ballistica\dynamics - - ballistica\game - - - ballistica\game - ballistica\game @@ -412,6 +406,12 @@ ballistica\game\session + + ballistica\game + + + ballistica\game + ballistica\generic diff --git a/ballisticacore-windows/Headless/BallisticaCoreHeadless.vcxproj b/ballisticacore-windows/Headless/BallisticaCoreHeadless.vcxproj index ccbacee1..fafb946a 100644 --- a/ballisticacore-windows/Headless/BallisticaCoreHeadless.vcxproj +++ b/ballisticacore-windows/Headless/BallisticaCoreHeadless.vcxproj @@ -284,8 +284,6 @@ - - @@ -321,6 +319,8 @@ + + diff --git a/ballisticacore-windows/Headless/BallisticaCoreHeadless.vcxproj.filters b/ballisticacore-windows/Headless/BallisticaCoreHeadless.vcxproj.filters index 0db00d48..521f7a2f 100644 --- a/ballisticacore-windows/Headless/BallisticaCoreHeadless.vcxproj.filters +++ b/ballisticacore-windows/Headless/BallisticaCoreHeadless.vcxproj.filters @@ -301,12 +301,6 @@ ballistica\dynamics - - ballistica\game - - - ballistica\game - ballistica\game @@ -412,6 +406,12 @@ ballistica\game\session + + ballistica\game + + + ballistica\game + ballistica\generic diff --git a/src/ballistica/ballistica.cc b/src/ballistica/ballistica.cc index 9e8a4227..8822fbb2 100644 --- a/src/ballistica/ballistica.cc +++ b/src/ballistica/ballistica.cc @@ -10,7 +10,7 @@ #include "ballistica/core/logging.h" #include "ballistica/core/thread.h" #include "ballistica/dynamics/bg/bg_dynamics_server.h" -#include "ballistica/game/account.h" +#include "ballistica/game/v1_account.h" #include "ballistica/graphics/graphics_server.h" #include "ballistica/internal/app_internal.h" #include "ballistica/media/media_server.h" @@ -22,7 +22,7 @@ namespace ballistica { // These are set automatically via script; don't modify them here. -const int kAppBuildNumber = 20798; +const int kAppBuildNumber = 20799; const char* kAppVersion = "1.7.7"; // Our standalone globals. @@ -30,7 +30,7 @@ const char* kAppVersion = "1.7.7"; // Everything else should go into App (or more ideally into a class). int g_early_log_writes{10}; -Account* g_account{}; +V1Account* g_v1_account{}; AppConfig* g_app_config{}; App* g_app{}; AppInternal* g_app_internal{}; @@ -103,7 +103,7 @@ auto BallisticaMain(int argc, char** argv) -> int { g_app_flavor = g_platform->CreateAppFlavor(); g_app_flavor->PostInit(); - g_account = new Account(); + g_v1_account = new V1Account(); g_utils = new Utils(); Scene::Init(); diff --git a/src/ballistica/ballistica.h b/src/ballistica/ballistica.h index 325b02a0..d8f15f8d 100644 --- a/src/ballistica/ballistica.h +++ b/src/ballistica/ballistica.h @@ -117,7 +117,7 @@ const float kGameStepSeconds = // Globals. extern int g_early_log_writes; -extern Account* g_account; +extern V1Account* g_v1_account; extern AppFlavor* g_app_flavor; extern AppConfig* g_app_config; extern App* g_app; diff --git a/src/ballistica/core/types.h b/src/ballistica/core/types.h index ffb27cf6..1143e129 100644 --- a/src/ballistica/core/types.h +++ b/src/ballistica/core/types.h @@ -34,7 +34,6 @@ typedef int64_t millisecs_t; // avoid pulling in their full headers as much as possible // to keep compile times down. -class Account; class AppFlavor; class AppConfig; class App; @@ -197,6 +196,7 @@ class Vector2f; class Vector3f; class Vector4f; class AppFlavorVR; +class V1Account; class VRGraphics; class Widget; diff --git a/src/ballistica/game/game.cc b/src/ballistica/game/game.cc index 31399a63..81bf71d8 100644 --- a/src/ballistica/game/game.cc +++ b/src/ballistica/game/game.cc @@ -7,7 +7,6 @@ #include "ballistica/audio/audio.h" #include "ballistica/core/thread.h" #include "ballistica/dynamics/bg/bg_dynamics.h" -#include "ballistica/game/account.h" #include "ballistica/game/connection/connection_set.h" #include "ballistica/game/connection/connection_to_client_udp.h" #include "ballistica/game/connection/connection_to_host_udp.h" @@ -19,6 +18,7 @@ #include "ballistica/game/session/host_session.h" #include "ballistica/game/session/net_client_session.h" #include "ballistica/game/session/replay_client_session.h" +#include "ballistica/game/v1_account.h" #include "ballistica/generic/json.h" #include "ballistica/generic/timer.h" #include "ballistica/graphics/graphics.h" @@ -271,10 +271,11 @@ void Game::PushSetV1LoginCall(V1AccountType account_type, V1LoginState account_state, const std::string& account_name, const std::string& account_id) { - thread()->PushCall([this, account_type, account_state, account_name, - account_id] { - g_account->SetLogin(account_type, account_state, account_name, account_id); - }); + thread()->PushCall( + [this, account_type, account_state, account_name, account_id] { + g_v1_account->SetLogin(account_type, account_state, account_name, + account_id); + }); } void Game::PushInitialScreenCreatedCall() { diff --git a/src/ballistica/game/player_spec.cc b/src/ballistica/game/player_spec.cc index c41c6f29..fc5b4502 100644 --- a/src/ballistica/game/player_spec.cc +++ b/src/ballistica/game/player_spec.cc @@ -3,8 +3,8 @@ #include "ballistica/game/player_spec.h" #include "ballistica/app/app.h" -#include "ballistica/game/account.h" #include "ballistica/game/game.h" +#include "ballistica/game/v1_account.h" #include "ballistica/generic/json.h" #include "ballistica/generic/utils.h" #include "ballistica/platform/platform.h" @@ -26,7 +26,8 @@ PlayerSpec::PlayerSpec(const std::string& s) { // Account type may technically be something we don't recognize, // but that's ok.. it'll just be 'invalid' to us in that case - account_type_ = Account::AccountTypeFromString(account_obj->valuestring); + account_type_ = + V1Account::AccountTypeFromString(account_obj->valuestring); success = true; } cJSON_Delete(root_obj); @@ -40,7 +41,7 @@ PlayerSpec::PlayerSpec(const std::string& s) { } auto PlayerSpec::GetDisplayString() const -> std::string { - return Account::AccountTypeToIconString(account_type_) + name_; + return V1Account::AccountTypeToIconString(account_type_) + name_; } auto PlayerSpec::GetShortName() const -> std::string { @@ -60,8 +61,8 @@ auto PlayerSpec::GetSpecString() const -> std::string { cJSON* root; root = cJSON_CreateObject(); cJSON_AddStringToObject(root, "n", name_.c_str()); - cJSON_AddStringToObject(root, "a", - Account::AccountTypeToString(account_type_).c_str()); + cJSON_AddStringToObject( + root, "a", V1Account::AccountTypeToString(account_type_).c_str()); cJSON_AddStringToObject(root, "sn", short_name_.c_str()); char* out = cJSON_PrintUnformatted(root); std::string out_s = out; @@ -76,10 +77,10 @@ auto PlayerSpec::GetSpecString() const -> std::string { auto PlayerSpec::GetAccountPlayerSpec() -> PlayerSpec { PlayerSpec spec; - if (g_account->GetLoginState() == V1LoginState::kSignedIn) { + if (g_v1_account->GetLoginState() == V1LoginState::kSignedIn) { spec.account_type_ = g_app->account_type; spec.name_ = - Utils::GetValidUTF8(g_account->GetLoginName().c_str(), "bsgaps"); + Utils::GetValidUTF8(g_v1_account->GetLoginName().c_str(), "bsgaps"); } else { // Headless builds fall back to V1 public-party name if that's available. if (g_buildconfig.headless_build() diff --git a/src/ballistica/game/account.cc b/src/ballistica/game/v1_account.cc similarity index 80% rename from src/ballistica/game/account.cc rename to src/ballistica/game/v1_account.cc index da5670c4..3b16bd91 100644 --- a/src/ballistica/game/account.cc +++ b/src/ballistica/game/v1_account.cc @@ -1,6 +1,6 @@ // Released under the MIT License. See LICENSE for details. -#include "ballistica/game/account.h" +#include "ballistica/game/v1_account.h" #include "ballistica/app/app.h" #include "ballistica/game/game.h" @@ -10,7 +10,7 @@ namespace ballistica { -auto Account::AccountTypeFromString(const std::string& val) -> V1AccountType { +auto V1Account::AccountTypeFromString(const std::string& val) -> V1AccountType { if (val == "Game Center") { return V1AccountType::kGameCenter; } else if (val == "Game Circle") { @@ -36,7 +36,7 @@ auto Account::AccountTypeFromString(const std::string& val) -> V1AccountType { } } -auto Account::AccountTypeToString(V1AccountType type) -> std::string { +auto V1Account::AccountTypeToString(V1AccountType type) -> std::string { switch (type) { case V1AccountType::kGameCenter: return "Game Center"; @@ -63,7 +63,7 @@ auto Account::AccountTypeToString(V1AccountType type) -> std::string { } } -auto Account::AccountTypeToIconString(V1AccountType type) -> std::string { +auto V1Account::AccountTypeToIconString(V1AccountType type) -> std::string { switch (type) { case V1AccountType::kTest: return g_game->CharStr(SpecialChar::kTestAccount); @@ -89,34 +89,34 @@ auto Account::AccountTypeToIconString(V1AccountType type) -> std::string { } } -Account::Account() = default; +V1Account::V1Account() = default; -auto Account::GetLoginName() -> std::string { +auto V1Account::GetLoginName() -> std::string { std::scoped_lock lock(mutex_); return login_name_; } -auto Account::GetLoginID() -> std::string { +auto V1Account::GetLoginID() -> std::string { std::scoped_lock lock(mutex_); return login_id_; } -auto Account::GetToken() -> std::string { +auto V1Account::GetToken() -> std::string { std::scoped_lock lock(mutex_); return token_; } -auto Account::GetExtra() -> std::string { +auto V1Account::GetExtra() -> std::string { std::scoped_lock lock(mutex_); return extra_; } -auto Account::GetExtra2() -> std::string { +auto V1Account::GetExtra2() -> std::string { std::scoped_lock lock(mutex_); return extra_2_; } -auto Account::GetLoginState(int* state_num) -> V1LoginState { +auto V1Account::GetLoginState(int* state_num) -> V1LoginState { std::scoped_lock lock(mutex_); if (state_num) { *state_num = login_state_num_; @@ -124,18 +124,18 @@ auto Account::GetLoginState(int* state_num) -> V1LoginState { return login_state_; } -void Account::SetExtra(const std::string& extra) { +void V1Account::SetExtra(const std::string& extra) { std::scoped_lock lock(mutex_); extra_ = extra; } -void Account::SetExtra2(const std::string& extra) { +void V1Account::SetExtra2(const std::string& extra) { std::scoped_lock lock(mutex_); extra_2_ = extra; } -void Account::SetToken(const std::string& account_id, - const std::string& token) { +void V1Account::SetToken(const std::string& account_id, + const std::string& token) { std::scoped_lock lock(mutex_); // Hmm, does this compare logic belong in here? if (login_id_ == account_id) { @@ -143,9 +143,9 @@ void Account::SetToken(const std::string& account_id, } } -void Account::SetLogin(V1AccountType account_type, V1LoginState login_state, - const std::string& login_name, - const std::string& login_id) { +void V1Account::SetLogin(V1AccountType account_type, V1LoginState login_state, + const std::string& login_name, + const std::string& login_id) { bool call_login_did_change = false; { std::scoped_lock lock(mutex_); @@ -181,7 +181,7 @@ void Account::SetLogin(V1AccountType account_type, V1LoginState login_state, } } -void Account::SetProductsPurchased(const std::vector& products) { +void V1Account::SetProductsPurchased(const std::vector& products) { std::scoped_lock lock(mutex_); std::unordered_map purchases_old = product_purchases_; product_purchases_.clear(); @@ -193,7 +193,7 @@ void Account::SetProductsPurchased(const std::vector& products) { } } -auto Account::GetProductPurchased(const std::string& product) -> bool { +auto V1Account::GetProductPurchased(const std::string& product) -> bool { std::scoped_lock lock(mutex_); auto i = product_purchases_.find(product); if (i == product_purchases_.end()) { diff --git a/src/ballistica/game/account.h b/src/ballistica/game/v1_account.h similarity index 92% rename from src/ballistica/game/account.h rename to src/ballistica/game/v1_account.h index 099e2ca2..d7c03345 100644 --- a/src/ballistica/game/account.h +++ b/src/ballistica/game/v1_account.h @@ -1,7 +1,7 @@ // Released under the MIT License. See LICENSE for details. -#ifndef BALLISTICA_GAME_ACCOUNT_H_ -#define BALLISTICA_GAME_ACCOUNT_H_ +#ifndef BALLISTICA_GAME_V1_ACCOUNT_H_ +#define BALLISTICA_GAME_V1_ACCOUNT_H_ #include #include @@ -13,9 +13,9 @@ namespace ballistica { /// Global account functionality. -class Account { +class V1Account { public: - Account(); + V1Account(); static auto AccountTypeFromString(const std::string& val) -> V1AccountType; static auto AccountTypeToString(V1AccountType type) -> std::string; static auto AccountTypeToIconString(V1AccountType type) -> std::string; @@ -63,4 +63,4 @@ class Account { } // namespace ballistica -#endif // BALLISTICA_GAME_ACCOUNT_H_ +#endif // BALLISTICA_GAME_V1_ACCOUNT_H_ diff --git a/src/ballistica/python/methods/python_methods_ui.cc b/src/ballistica/python/methods/python_methods_ui.cc index 71b2dedc..d249b519 100644 --- a/src/ballistica/python/methods/python_methods_ui.cc +++ b/src/ballistica/python/methods/python_methods_ui.cc @@ -4,9 +4,9 @@ #include "ballistica/app/app.h" #include "ballistica/app/app_flavor.h" -#include "ballistica/game/account.h" #include "ballistica/game/connection/connection_set.h" #include "ballistica/game/game.h" +#include "ballistica/game/v1_account.h" #include "ballistica/input/input.h" #include "ballistica/internal/app_internal.h" #include "ballistica/python/python.h" diff --git a/src/ballistica/python/python.cc b/src/ballistica/python/python.cc index a2b0f7ba..e7540d64 100644 --- a/src/ballistica/python/python.cc +++ b/src/ballistica/python/python.cc @@ -6,12 +6,12 @@ #include "ballistica/audio/audio.h" #include "ballistica/core/thread.h" #include "ballistica/dynamics/material/material.h" -#include "ballistica/game/account.h" #include "ballistica/game/friend_score_set.h" #include "ballistica/game/game_stream.h" #include "ballistica/game/host_activity.h" #include "ballistica/game/player.h" #include "ballistica/game/score_to_beat.h" +#include "ballistica/game/v1_account.h" #include "ballistica/graphics/graphics.h" #include "ballistica/input/device/joystick.h" #include "ballistica/input/device/keyboard_input.h"