Create a new component called Grabbable against a selected Mesh. (Could be added to every mesh item that we intend to allow to be grabbable)
With the component reference UPhysicsHandleComponent (Just searched on Unreal Docs)
With this added. associate the Player Pawn using GetWorld()->GetFirstPlayerController()->GetPawn();
With only the current knowledge of working with one item and trigger. If we consider multiple items into the trigger field I believe the best place to calculate the sum weight would be within the door component if statement. As its the door that must be opened and the requirement that must be met for it.
Maybe there is a way to use the GetWorld() to find the trigger volume object and associated parts that are within the trigger zone.
Associating weight, maybe within the component made for physics I could add a basic float variable that is exposed to the editor edit anywhere and maybe this property could be exposed to the door component code which allows us to create the sum.
This would allow the code to add up the sum weight and => than a target weight to allow the door to open. (as long as the weight remains).
Hope that makes some senseā¦