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:
co-authored by
Claude Opus 5.5
parent
05de621199
commit
9dcf34dffc
@@ -5,40 +5,76 @@
|
||||
"contracts": [],
|
||||
"functions": {
|
||||
"CActorInstance::GetVirtualID": {
|
||||
"status": "TODO"
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/ActorInstanceData.cpp:CActorInstance::GetVirtualID"
|
||||
]
|
||||
},
|
||||
"CActorInstance::SetVirtualID": {
|
||||
"status": "TODO"
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/ActorInstanceData.cpp:CActorInstance::SetVirtualID"
|
||||
]
|
||||
},
|
||||
"CActorInstance::UpdateAttribute": {
|
||||
"status": "TODO"
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/ActorInstanceData.cpp:CActorInstance::UpdateAttribute"
|
||||
]
|
||||
},
|
||||
"CActorInstance::__CreateAttributeInstance": {
|
||||
"status": "TODO"
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/ActorInstanceData.cpp:CActorInstance::__CreateAttributeInstance"
|
||||
]
|
||||
},
|
||||
"CActorInstance::GetRace": {
|
||||
"status": "TODO"
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/ActorInstanceData.cpp:CActorInstance::GetRace"
|
||||
]
|
||||
},
|
||||
"CActorInstance::SetRace": {
|
||||
"status": "TODO"
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/ActorInstanceData.cpp:CActorInstance::SetRace"
|
||||
]
|
||||
},
|
||||
"CActorInstance::SetHair": {
|
||||
"status": "TODO"
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/ActorInstanceData.cpp:CActorInstance::SetHair"
|
||||
]
|
||||
},
|
||||
"CActorInstance::SetShape": {
|
||||
"status": "TODO"
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/ActorInstanceData.cpp:CActorInstance::SetShape"
|
||||
]
|
||||
},
|
||||
"CActorInstance::ChangeMaterial": {
|
||||
"status": "TODO"
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/ActorInstanceData.cpp:CActorInstance::ChangeMaterial"
|
||||
]
|
||||
},
|
||||
"CActorInstance::GetPartItemID": {
|
||||
"status": "TODO"
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/ActorInstanceData.cpp:CActorInstance::GetPartItemID"
|
||||
]
|
||||
},
|
||||
"CActorInstance::SetSpecularInfo": {
|
||||
"status": "TODO"
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/ActorInstanceData.cpp:CActorInstance::SetSpecularInfo"
|
||||
]
|
||||
},
|
||||
"CActorInstance::SetSpecularInfoForce": {
|
||||
"status": "TODO"
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/ActorInstanceData.cpp:CActorInstance::SetSpecularInfoForce"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
{
|
||||
"reference": "GameLib/FlyTrace.cpp",
|
||||
"reference_sha256": "4ab3192d471aa6db4f96db5df73a0598e9f273fd9712ed1df6fa37f74517ffb4",
|
||||
"priority": "P1",
|
||||
"contracts": [],
|
||||
"functions": {
|
||||
"CFlyTrace::DestroySystem": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyTrace.cpp:CFlyTrace::DestroySystem"
|
||||
]
|
||||
},
|
||||
"CFlyTrace::New": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyTrace.cpp:CFlyTrace::New"
|
||||
]
|
||||
},
|
||||
"CFlyTrace::Delete": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyTrace.cpp:CFlyTrace::Delete"
|
||||
]
|
||||
},
|
||||
"CFlyTrace::CFlyTrace": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyTrace.cpp:CFlyTrace::CFlyTrace"
|
||||
]
|
||||
},
|
||||
"CFlyTrace::~CFlyTrace": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyTrace.cpp:CFlyTrace::~CFlyTrace"
|
||||
]
|
||||
},
|
||||
"CFlyTrace::__Initialize": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyTrace.cpp:CFlyTrace::__Initialize"
|
||||
]
|
||||
},
|
||||
"CFlyTrace::Destroy": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyTrace.cpp:CFlyTrace::Destroy"
|
||||
]
|
||||
},
|
||||
"CFlyTrace::UpdateNewPosition": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyTrace.cpp:CFlyTrace::UpdateNewPosition"
|
||||
]
|
||||
},
|
||||
"CFlyTrace::Create": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyTrace.cpp:CFlyTrace::Create"
|
||||
]
|
||||
},
|
||||
"CFlyTrace::Update": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyTrace.cpp:CFlyTrace::Update"
|
||||
]
|
||||
},
|
||||
"CFlyTrace::Render": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyTrace.cpp:CFlyTrace::Render"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
{
|
||||
"reference": "GameLib/FlyingData.cpp",
|
||||
"reference_sha256": "2486eff11e613a658e4d5f3a1b212fe9933f1c092d3bc12f561923f181b81512",
|
||||
"priority": "P4",
|
||||
"contracts": [],
|
||||
"functions": {
|
||||
"CFlyingData::CFlyingData": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingData.cpp:CFlyingData::CFlyingData"
|
||||
]
|
||||
},
|
||||
"CFlyingData::__Initialize": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingData.cpp:CFlyingData::__Initialize"
|
||||
]
|
||||
},
|
||||
"CFlyingData::Destroy": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingData.cpp:CFlyingData::Destroy"
|
||||
]
|
||||
},
|
||||
"CFlyingData::~CFlyingData": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingData.cpp:CFlyingData::~CFlyingData"
|
||||
]
|
||||
},
|
||||
"CFlyingData::SetBombEffect": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingData.cpp:CFlyingData::SetBombEffect"
|
||||
]
|
||||
},
|
||||
"CFlyingData::GetAttachDataReference": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingData.cpp:CFlyingData::GetAttachDataReference"
|
||||
]
|
||||
},
|
||||
"CFlyingData::AttachFlyEffect": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingData.cpp:CFlyingData::AttachFlyEffect"
|
||||
]
|
||||
},
|
||||
"CFlyingData::RemoveAttach": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingData.cpp:CFlyingData::RemoveAttach"
|
||||
]
|
||||
},
|
||||
"CFlyingData::RemoveAllAttach": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingData.cpp:CFlyingData::RemoveAllAttach"
|
||||
]
|
||||
},
|
||||
"CFlyingData::DuplicateAttach": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingData.cpp:CFlyingData::DuplicateAttach"
|
||||
]
|
||||
},
|
||||
"CFlyingData::LoadScriptFile": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingData.cpp:CFlyingData::LoadScriptFile"
|
||||
]
|
||||
},
|
||||
"CFlyingData::SaveScriptFile": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingData.cpp:CFlyingData::SaveScriptFile"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
{
|
||||
"reference": "GameLib/FlyingObjectManager.cpp",
|
||||
"reference_sha256": "9b6ce94579bd3b536d12bf163175c171214250e4f88abbd03f5ebe076416b4e6",
|
||||
"priority": "P1",
|
||||
"contracts": [],
|
||||
"functions": {
|
||||
"CFlyingManager::CFlyingManager": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingObjectManager.cpp:CFlyingManager::CFlyingManager"
|
||||
]
|
||||
},
|
||||
"CFlyingManager::~CFlyingManager": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingObjectManager.cpp:CFlyingManager::~CFlyingManager"
|
||||
]
|
||||
},
|
||||
"CFlyingManager::__DestroyFlyingInstanceList": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingObjectManager.cpp:CFlyingManager::__DestroyFlyingInstanceList"
|
||||
]
|
||||
},
|
||||
"CFlyingManager::__DestroyFlyingDataMap": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingObjectManager.cpp:CFlyingManager::__DestroyFlyingDataMap"
|
||||
]
|
||||
},
|
||||
"CFlyingManager::DeleteAllInstances": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingObjectManager.cpp:CFlyingManager::DeleteAllInstances"
|
||||
]
|
||||
},
|
||||
"CFlyingManager::Destroy": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingObjectManager.cpp:CFlyingManager::Destroy"
|
||||
]
|
||||
},
|
||||
"CFlyingManager::RegisterFlyingData": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingObjectManager.cpp:CFlyingManager::RegisterFlyingData"
|
||||
]
|
||||
},
|
||||
"CFlyingManager::CreateFlyingInstanceFlyTarget": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingObjectManager.cpp:CFlyingManager::CreateFlyingInstanceFlyTarget"
|
||||
]
|
||||
},
|
||||
"CFlyingManager::Update": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingObjectManager.cpp:CFlyingManager::Update"
|
||||
]
|
||||
},
|
||||
"CFlyingManager::Render": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingObjectManager.cpp:CFlyingManager::Render"
|
||||
]
|
||||
},
|
||||
"CFlyingManager::RegisterIndexedFlyData": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingObjectManager.cpp:CFlyingManager::RegisterIndexedFlyData"
|
||||
]
|
||||
},
|
||||
"CFlyingManager::CreateIndexedFly": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/GameLib/FlyingObjectManager.cpp:CFlyingManager::CreateIndexedFly"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -104,7 +104,12 @@
|
||||
"test": "project/python_game_render_test.gd"
|
||||
},
|
||||
"CMapManager::GetTerrainHeight": {
|
||||
"status": "TODO"
|
||||
"status": "ADAPTED",
|
||||
"impl": [
|
||||
"extension/src/platform/pending/GameLib/MapManager.cpp:CMapManager::GetTerrainHeight"
|
||||
],
|
||||
"note": "CMapOutdoor::GetTerrainHeight: 40250 terrain triangle interpolation on packed height.raw. GetHeight forwards here until map objects are registered (CMapOutdoor::GetHeight's object half).",
|
||||
"test": "extension/tests/port_login_flow_test.cpp"
|
||||
},
|
||||
"CMapManager::GetWaterHeight": {
|
||||
"status": "TODO"
|
||||
|
||||
Reference in New Issue
Block a user