Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ const Be::ClassInfo* EveChildContainer::ExposeToBlue()
StartControllers,
"Start all controllers" )

MAP_PROPERTY_READONLY( "partTag", GetPartTag, "Part tag for multi-part space objects" )
MAP_PROPERTY_PERSISTED( "partTag", GetPartTag, SetPartTag, "Part tag for multi-part space objects" )
MAP_METHOD_AND_WRAP( "GetParent", GetParent, "Returns the parent space object child in the hierarchy" )
MAP_METHOD_AND_WRAP( "GetOwner", GetOwner, "Returns the owner space object" )
EXPOSURE_END()
Expand Down
7 changes: 6 additions & 1 deletion trinity/Eve/SpaceObject/Children/EveChildMesh.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ EveChildMesh::EveChildMesh( IRoot* lockobj ) :
PARENTLOCK( m_attachments ),
PARENTLOCK( m_lights ),
PARENTLOCK( m_overlayEffects ),
PARENTLOCK( m_ownedLocatorSets ),
m_display( true ),
m_inheritOverlayEffects( true ),
m_isVisible( false ),
Expand Down Expand Up @@ -2078,7 +2079,11 @@ void EveChildMesh::CollectOwnedGeometry( TriBatchType type, const Matrix& parent

void EveChildMesh::SetOwnedLocatorSets( const std::vector<EveLocatorSetsPtr>& sets )
{
m_ownedLocatorSets = sets;
m_ownedLocatorSets.Clear();
for( const auto& entry : sets )
{
m_ownedLocatorSets.Append( entry );
}
InvalidateOwnerMergedLocators( LocatorInvalidationReason::StructureChanged );
}

Expand Down
2 changes: 1 addition & 1 deletion trinity/Eve/SpaceObject/Children/EveChildMesh.h
Original file line number Diff line number Diff line change
Expand Up @@ -324,7 +324,7 @@ BLUE_CLASS( EveChildMesh ) :
void ReleaseBvhVisualization();
TriGeometryResPtr m_bvhVisualizationGeometry;

std::vector<EveLocatorSetsPtr> m_ownedLocatorSets;
PEveLocatorSetsVector m_ownedLocatorSets;

// armor/hull damage owned by this part, renders whether or not it is attached to a ship
EveDamageOverlayPtr m_damageOverlay;
Expand Down
4 changes: 3 additions & 1 deletion trinity/Eve/SpaceObject/Children/EveChildMesh_Blue.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ const Be::ClassInfo* EveChildMesh::ExposeToBlue()
MAP_ATTRIBUTE( "inheritOverlayEffects", m_inheritOverlayEffects, "If true, the parent space object's overlay effects (e.g. cloak) also render over this child mesh.", Be::READWRITE | Be::PERSIST )
MAP_ATTRIBUTE( "overlayEffects", m_overlayEffects, "Overlay effects owned by this child mesh. Rendered over the child's mesh areas, underneath any inherited parent overlay effects.", Be::READ | Be::PERSIST )
MAP_ATTRIBUTE( "damageOverlay", m_damageOverlay, "Armor/hull damage owned by this part. Renders whether or not the part is attached to a ship.", Be::READWRITE | Be::PERSIST )
MAP_ATTRIBUTE( "ownedLocatorSets", m_ownedLocatorSets, "Locator sets owned by this part, in part-local space. Merged into the owning space object's locator view.", Be::PERSISTONLY )
MAP_ATTRIBUTE( "armorDamageShader", m_armorDamageShader, "Armor damage shader for this part, pushed to the part's damage overlay when it is created.", Be::READWRITE | Be::PERSIST )
MAP_ATTRIBUTE( "castShadow", m_castShadow, "", Be::READWRITE | Be::PERSIST | Be::NOTIFY )
MAP_ATTRIBUTE( "updateAnimation", m_updateAnimation, "Should the object update its animation updater every frame", Be::READWRITE | Be::PERSIST )
MAP_ATTRIBUTE( "mesh", m_mesh, "", Be::READWRITE | Be::PERSIST | Be::NOTIFY )
Expand Down Expand Up @@ -93,7 +95,7 @@ const Be::ClassInfo* EveChildMesh::ExposeToBlue()
"GetMorphTargetWeight( name )\n\n"
"Returns the weight of the morph target. Returns 0 if no morph target with that name was found.\n"
":param name: morph target name\n" )
MAP_PROPERTY_READONLY( "partTag", GetPartTag, "Part tag for multi-part space objects" )
MAP_PROPERTY_PERSISTED( "partTag", GetPartTag, SetPartTag, "Part tag for multi-part space objects" )
MAP_METHOD_AND_WRAP( "GetParent", GetParent, "Returns the parent space object child in the hierarchy" )
MAP_METHOD_AND_WRAP( "GetOwner", GetOwner, "Returns the owner space object" )
EXPOSURE_END()
Expand Down
2 changes: 1 addition & 1 deletion trinity/Eve/SpaceObject/EveSpaceObject2.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3534,8 +3534,8 @@ EveDamageOverlayPtr EveSpaceObject2::EnsureChildDamageOverlay( const LocatorSour
BeClasses->CopyTo( flickerCurve->GetRootObject(), (IRoot**)&flickerCopy );
overlay->SetHullDamageFlickerCurve( flickerCopy );
}
overlay->SetSeed( m_impactOverlay->GetSeed() + range.owner->GetPartTag() );
}
overlay->SetSeed( m_impactOverlay->GetSeed() + range.owner->GetPartTag() );
overlay->SetDamageLocatorCount( uint32_t( range.count ) );
int rangeStart = min( int32_t( m_damageLocatorEnabled.size() ), range.start );
int rangeEnd = min( int32_t( m_damageLocatorEnabled.size() ), range.start + range.count );
Expand Down
1 change: 0 additions & 1 deletion trinity/Eve/SpaceObjectFactory/EveSOF.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -286,7 +286,6 @@ IRootPtr EveSOF::BuildFromDNA( const char* dnaString )
if( layoutContainer->m_objects.size() != 0 )
{
newObj->AddToEffectChildrenList( layoutContainer );
newObj->RunDamageLocatorFilter();
}

// EveShip2-specific setups
Expand Down