Merge main into feature/ava2-unlock
Conflicts resolved by keeping both sides: AVA2 attribute lock materials (50348/50349) and battle pass tickets from main alongside the unlock branch's costume enchants, talismans and new rings. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -48,6 +48,9 @@
|
||||
#include "UserInterface/CRenderTargetManager.h"
|
||||
#include "EterBase/Timer.h"
|
||||
#include "PythonBoot.h"
|
||||
#ifdef MT_HAS_MESHPORT
|
||||
#include "transport.h"
|
||||
#endif
|
||||
#include "../UserInterface/UserInterface.h"
|
||||
#include "PythonHost.h"
|
||||
#include "../EterLib/UIRenderCommands.h"
|
||||
@@ -252,6 +255,10 @@ void* fiber_main(void*)
|
||||
}
|
||||
|
||||
void init_2v0_gameplay_stubs();
|
||||
void StopAccountRegistration(); // PORT: drain registration before networking teardown.
|
||||
#ifdef MT_HAS_MESHPORT
|
||||
void initMeshPort();
|
||||
#endif
|
||||
|
||||
namespace PythonBoot
|
||||
{
|
||||
@@ -901,6 +908,9 @@ bool run_main_script_body(const char* lpCmdLine, std::string* error)
|
||||
initChat();
|
||||
initTextTail();
|
||||
initnet();
|
||||
#ifdef MT_HAS_MESHPORT
|
||||
initMeshPort();
|
||||
#endif
|
||||
initMiniMap();
|
||||
initEvent();
|
||||
initeffect();
|
||||
@@ -1021,6 +1031,10 @@ namespace PythonBoot
|
||||
#include "CostumeAttrScript.inc"
|
||||
#include "PendantScript.inc"
|
||||
#include "RingsScript.inc"
|
||||
#include "ItemActionsScript.inc"
|
||||
#ifdef MT_HAS_MESHPORT
|
||||
#include "MeshPortScript.inc"
|
||||
#endif
|
||||
|
||||
static void install_script_module(const char* c_szModule, const char* c_szScript)
|
||||
{
|
||||
@@ -1076,6 +1090,9 @@ bool RunMainScript(const char* lpCmdLine, std::string* error)
|
||||
{
|
||||
install_script_module("mt_autohunt", c_szAutoHuntScript);
|
||||
install_script_module("mt_register", c_szRegisterScript);
|
||||
#ifdef MT_HAS_MESHPORT
|
||||
install_script_module("mt_meshport", c_szMeshPortScript);
|
||||
#endif
|
||||
install_script_module("mt_framerate", c_szFrameRateOptionScript);
|
||||
install_script_module("mt_uiscale", c_szUIScaleOptionScript);
|
||||
install_script_module("mt_inventory", c_szInventoryPagesScript);
|
||||
@@ -1110,6 +1127,7 @@ bool RunMainScript(const char* lpCmdLine, std::string* error)
|
||||
install_script_module("mt_costume_attr", c_szCostumeAttrScript);
|
||||
install_script_module("mt_pendant", c_szPendantScript);
|
||||
install_script_module("mt_rings", c_szRingsScript);
|
||||
install_script_module("mt_item_actions", c_szItemActionsScript);
|
||||
if (g_touch_input)
|
||||
install_script_module("mt_mobile_hud", c_szMobileHUDScript);
|
||||
}
|
||||
@@ -1214,6 +1232,10 @@ void Stop()
|
||||
" getattr(_mm.mouseController, 'cursorDict', {}).clear()\n");
|
||||
PyGILState_Release(gil);
|
||||
}
|
||||
StopAccountRegistration();
|
||||
#ifdef MT_HAS_MESHPORT
|
||||
mt::meshport::shutdown(); // PORT: join SDK worker and stop mesh before Python/platform teardown.
|
||||
#endif
|
||||
g_launcher->Clear();
|
||||
g_game_singletons.reset();
|
||||
g_game_application.reset();
|
||||
|
||||
Reference in New Issue
Block a user