mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-10-18 18:52:48 +00:00
The client (LWODestroyableComponent::LoadConfigData 0x00c44cb0) uses a level object's set_faction only when override_faction is absent or true; with override_faction=0 LoadDataFromTemplate (0x00c9f900) puts the DestructibleComponent factionList back. 2948 level objects have override_faction=0, and DLU applied their set_faction anyway. The resolution is now DestroyableComponent::GetLevelFactions, with tests. No wire change. In game: enemies and smashables placed in levels with a set_faction but override_faction=0 (most smashables, many enemies) are targeted and aggro as before for the common case; check a few enemies in AG/GF/FV still fight you and friendly objects are not attacked, and that smashables still smash and give credit. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
25 lines
784 B
CMake
25 lines
784 B
CMake
set(DCOMPONENTS_TESTS
|
|
"DeletionRestrictionTests.cpp"
|
|
"InventorySaveTests.cpp"
|
|
"DestroyableLevelConfigTests.cpp"
|
|
"VendorBuybackTests.cpp"
|
|
"RacingWrongWayTests.cpp"
|
|
"DestroyableComponentTests.cpp"
|
|
"PetComponentTests.cpp"
|
|
"SimplePhysicsComponentTests.cpp"
|
|
"SavingTests.cpp"
|
|
"ReplicaComponentOrderTests.cpp"
|
|
)
|
|
|
|
# Get the folder name and prepend it to the files above
|
|
get_filename_component(thisFolderName ${CMAKE_CURRENT_SOURCE_DIR} NAME)
|
|
list(TRANSFORM DCOMPONENTS_TESTS PREPEND "${thisFolderName}/")
|
|
|
|
# Export to parent scope
|
|
set(DCOMPONENTS_TESTS ${DCOMPONENTS_TESTS} PARENT_SCOPE)
|
|
|
|
# Copy test files to testing directory
|
|
add_subdirectory(TestData)
|
|
list(TRANSFORM COMPONENT_TEST_DATA PREPEND "${thisFolderName}/")
|
|
set(COMPONENT_TEST_DATA ${COMPONENT_TEST_DATA} PARENT_SCOPE)
|