Hey! So I am trying to make destruction physics so when a house of tiny blocks are hit with a fireball, the blocks go everywhere. After they explode, I need them to become transparent, return to their original position, then become untransparent. The problem is that I cannot find a function that gets triggered whenever a blocks position changes as its position is being changed in physics. This prevents the functions like .Changed and . getpropertychangedsignal from being used. Is there a way to work around this?
You could either store the starting position of each part using a loop into an array or as an attribute, which you could then use as reference for returning each part back to their original position.
Alternatively, you could store the house, and replicate it into the workspace whenever you need the house to return back to to normal.
Do you mean individual parts (and sections) of the house need to be rebuilt, or as @D4_rrk said, the entire house needs to be rebuilt each time?
If there are no changes to the house then make a copy of it in ServerStorage, then when it gets blown up delete the model and clone in a new copy of the model.
If it’s a custom house, temporarily store a copy of it built then when it’s blown up clone that copy back into place.