port: P3-c PythonExchange + exchange module (1:1 40250)

Copy PythonExchange.cpp/PythonExchangeModule.cpp verbatim, drop the pending
stand-in and the exchange module stub, register initTrade() after
initNonPlayer(). The fake server answers CG_EXCHANGE START with the partner's
item + gold and CANCEL with END; port.login_flow drives the exchange round-trip
through the Python exchange/net modules and uiexchange.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
shenlei
2026-09-24 00:59:05 +09:00
co-authored by Claude Opus 5.5
parent 9298500df9
commit 72b19b677d
14 changed files with 853 additions and 162 deletions
@@ -1,108 +0,0 @@
// Stand-in for the 40250 logic unit UserInterface/PythonExchange.cpp, not ported yet: the members the ported units
// reference, as platform_stub.py stubs. Delete this file in the commit that ports the unit into port/
// (docs/PORT-PLAN.md).
#include "UserInterface/StdAfx.h"
#include "UserInterface/PythonExchange.h"
#include "../../PlatformStub.h"
CPythonExchange::CPythonExchange()
{
MT_PLATFORM_STUB();
}
CPythonExchange::~CPythonExchange()
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::Clear() -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::Start() -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::End() -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::isTrading() -> bool
{
MT_PLATFORM_STUB();
return mt_platform_stub_return<bool>();
}
auto CPythonExchange::SetSelfName(const char *) -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::SetTargetName(const char *) -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::SetElkToTarget(DWORD) -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::SetElkToSelf(DWORD) -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::SetItemToTarget(DWORD, DWORD, BYTE) -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::SetItemToSelf(DWORD, DWORD, BYTE) -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::SetItemMetinSocketToTarget(int, int, DWORD) -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::SetItemMetinSocketToSelf(int, int, DWORD) -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::SetItemAttributeToTarget(int, int, BYTE, short) -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::SetItemAttributeToSelf(int, int, BYTE, short) -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::DelItemOfTarget(BYTE) -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::DelItemOfSelf(BYTE) -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::SetAcceptToTarget(BYTE) -> void
{
MT_PLATFORM_STUB();
}
auto CPythonExchange::SetAcceptToSelf(BYTE) -> void
{
MT_PLATFORM_STUB();
}