Verbatim copies of the 40250 flying-object units and the effect/fly Python modules replace the pending CFlyingManager stand-in and the two module stubs; initeffect/initfly run after initnet as in 40250 and the flying manager gets the background as its map manager. CMapManager::GetTerrainHeight is added over the native height tiles. login_flow checks playersettingmodule registered the indexed fly data. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
54 lines
1.8 KiB
C
54 lines
1.8 KiB
C
#pragma once
|
|
// PORT: a partial mirror of 40250 UserInterface/StdAfx.h.
|
|
//
|
|
// The original is the precompiled header of the whole client: it includes eterLib, eterPythonLib,
|
|
// gameLib, scriptLib, milesLib, EffectLib, PRTerrainLib and SpeedTreeLib's StdAfx.h, plus <dshow.h>
|
|
// and <qedit.h>, Locale.h and GameType.h. Only scriptLib exists in the port tree today, so this file
|
|
// carries the part the ported units actually use and grows with the 2V slices that bring the rest
|
|
// (docs/PORT-PLAN.md 批次 2V0-2V3).
|
|
|
|
#include "../ScriptLib/StdAfx.h"
|
|
#include "../GameLib/StdAfx.h" // 40250 PCH order: GameLib types precede UserInterface/GameType.h.
|
|
#include "../GameLib/RaceData.h"
|
|
#include "../EterPythonLib/StdAfx.h"
|
|
#include "Locale.h" // Before GameType.h, as in 40250: Locale_inc.h's feature macros shape its tables.
|
|
#include "GameType.h" // 40250's UserInterface precompiled header supplies these item types.
|
|
#include "../EterBase/tea.h"
|
|
#include <dinput.h>
|
|
|
|
// 40250's Windows PCH also includes DirectShow. The macOS UI adapter owns the video backend;
|
|
// these opaque interfaces are only pointer members in PythonApplication.h.
|
|
#ifndef _WIN32
|
|
struct IBaseFilter;
|
|
struct ISampleGrabber;
|
|
struct IMediaControl;
|
|
struct IMediaEventEx;
|
|
struct IVideoWindow;
|
|
struct IBasicVideo;
|
|
#endif
|
|
|
|
#define APP_NAME "Metin 2"
|
|
|
|
enum
|
|
{
|
|
POINT_MAX_NUM = 255,
|
|
CHARACTER_NAME_MAX_LEN = 24,
|
|
#if defined(LOCALE_SERVICE_JAPAN)
|
|
PLAYER_NAME_MAX_LEN = 16,
|
|
#else
|
|
PLAYER_NAME_MAX_LEN = 12,
|
|
#endif
|
|
};
|
|
|
|
// The Python module initializers RunMainScript calls, each defined in its own Python*Module.cpp.
|
|
// Listed here as 40250 lists them; only the ported ones are defined.
|
|
void initpack();
|
|
void initapp();
|
|
void initchr();
|
|
void initchrmgr();
|
|
void initPlayer();
|
|
void initChat();
|
|
void initnet();
|
|
void initeffect();
|
|
void initfly();
|