port: FlyingData/Instance/ObjectManager/FlyTrace + effect/fly modules (batch 2 P1)

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>
This commit is contained in:
shenlei
2026-09-24 00:12:19 +09:00
co-authored by Claude Opus 5.5
parent 05de621199
commit 9dcf34dffc
25 changed files with 2312 additions and 182 deletions
@@ -0,0 +1,128 @@
{
"reference": "GameLib/FlyingInstance.cpp",
"reference_sha256": "b58a421b74fa57b56710e5666728e7e8b16a2e2b073eeb2b349b3c20b8d00bff",
"priority": "P1",
"contracts": [],
"functions": {
"CFlyingInstance::CFlyingInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::CFlyingInstance"
]
},
"CFlyingInstance::~CFlyingInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::~CFlyingInstance"
]
},
"CFlyingInstance::__Initialize": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::__Initialize"
]
},
"CFlyingInstance::Clear": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::Clear"
]
},
"CFlyingInstance::Destroy": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::Destroy"
]
},
"CFlyingInstance::BuildAttachInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::BuildAttachInstance"
]
},
"CFlyingInstance::Create": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::Create"
]
},
"CFlyingInstance::__SetTargetDirection": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::__SetTargetDirection"
]
},
"CFlyingInstance::__SetTargetNormalizedDirection": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::__SetTargetNormalizedDirection"
]
},
"CFlyingInstance::SetFlyTarget": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::SetFlyTarget"
]
},
"CFlyingInstance::AdjustDirectionForHoming": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::AdjustDirectionForHoming"
]
},
"CFlyingInstance::UpdateAttachInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::UpdateAttachInstance"
]
},
"CFlyingInstance::Update": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::Update"
]
},
"CFlyingInstance::ClearAttachInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::ClearAttachInstance"
]
},
"CFlyingInstance::__Explode": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::__Explode"
]
},
"CFlyingInstance::__Bomb": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::__Bomb"
]
},
"CFlyingInstance::Render": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::Render"
]
},
"CFlyingInstance::RenderAttachInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::RenderAttachInstance"
]
},
"CFlyingInstance::SetDataPointer": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::SetDataPointer"
]
},
"CFlyingInstance::__SetDataPointer": {
"status": "PORTED",
"impl": [
"extension/src/port/GameLib/FlyingInstance.cpp:CFlyingInstance::__SetDataPointer"
]
}
}
}