Add batch pickup on the pickup key for the server mt_pickup command

Embedded module mt_pickup wraps GameWindow.PickUpItem (Z / `): with batch
pickup on it sends /mt_pickup 1 MASK (0.5 s gap, one in flight, presses
swallowed while waiting); after 3 s without a reply it notes once in chat
and falls back to the original single pickup. Settings window (on/off and
8 categories, persisted in mt_pickup.cfg) behind a "拾取" button under the
switchbot entry by the minimap.

Live tested against 203 (channel-5 test core, port 13040) with the macOS
native client.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
shenlei
2026-10-15 20:45:37 +09:00
co-authored by Claude Opus 5.5
parent 514eae6745
commit e22d7ba6fd
6 changed files with 374 additions and 1 deletions
+2
View File
@@ -1000,6 +1000,7 @@ namespace PythonBoot
#include "CalendarScript.inc"
#include "WikiEntryScript.inc"
#include "SwitchbotScript.inc"
#include "PickupScript.inc"
static void install_script_module(const char* c_szModule, const char* c_szScript)
{
@@ -1074,6 +1075,7 @@ bool RunMainScript(const char* lpCmdLine, std::string* error)
install_script_module("mt_calendar", c_szCalendarScript);
install_script_module("mt_wiki_entries", c_szWikiEntryScript);
install_script_module("mt_switchbot", c_szSwitchbotScript);
install_script_module("mt_pickup", c_szPickupScript);
if (g_touch_input)
install_script_module("mt_mobile_hud", c_szMobileHUDScript);
}