(Folder: SurvivalBuildingSystem\Core\Modules\Build\Actors\)
That actor is used in place of just staticmesh, that actor store all specific snapping box, state, data etc.
Snaps variable store all snapping box (BoxCollision) with SnapRelation, snapID and Shape, and store in map sort by BuildPart, it make easier to get Snaps from one type.
To add new snaps, you need to add BoxCollision component on specific part actor (BP_SquareCeiling for Square Ceilings) and add it with info on Snaps variable (See Add Snaps).
If you need to add something when building spawning, you can edit SpawnEffect event on Event Graph, it's event so you can use spawn and delay, but if you just want to add sound or VFX, you can just add it on Data_Buildings in Spawn struct.
If you need to add something when building destroy, you can edit DestroyEffect event on Event Graph, it's event so you can use spawn and delay, but if you just want to add sound or VFX, you can just add it on Data_Buildings in Destroy struct.
And also have function to open and close door, that action just rotate the door to open or close it, but it's make with timeline, to make it smooth.
it's that why DoubleDoor don't have destruct actor in Data_Buildings, because it use same as BP_Door (x2)
BP_Building:
BP_Building is master hierarchy, parent of all building type actor like BP_Wall, each E_BuildPart have their own Building actor which is child of BP_Building.That actor is used in place of just staticmesh, that actor store all specific snapping box, state, data etc.
Snaps variable store all snapping box (BoxCollision) with SnapRelation, snapID and Shape, and store in map sort by BuildPart, it make easier to get Snaps from one type.
To add new snaps, you need to add BoxCollision component on specific part actor (BP_SquareCeiling for Square Ceilings) and add it with info on Snaps variable (See Add Snaps).
If you need to add something when building spawning, you can edit SpawnEffect event on Event Graph, it's event so you can use spawn and delay, but if you just want to add sound or VFX, you can just add it on Data_Buildings in Spawn struct.
If you need to add something when building destroy, you can edit DestroyEffect event on Event Graph, it's event so you can use spawn and delay, but if you just want to add sound or VFX, you can just add it on Data_Buildings in Destroy struct.
BP_Door:
BP_Door have Interact component (BoxCollision) to know where interaction trace line from PlayerCharacter need to hit to see interaction message.And also have function to open and close door, that action just rotate the door to open or close it, but it's make with timeline, to make it smooth.
BP_DoubleDoor:
BP_DoubleDoor have same Interact component and function from BP_Door, but use door staticmesh 2 times, one inverted, and rotate together to make double door,it's that why DoubleDoor don't have destruct actor in Data_Buildings, because it use same as BP_Door (x2)