Are you having the touched event in a different script? If not, put in in another script. I think that tweening an object causes to script to finish the tween first before going to the next lines.
One method, if it hasn’t been mentioned already, that might work is making a copy of the part that you want to be touched, almost like a collide box and attach it using attachments to the actual tweening object, then check if anything is touching the “collide box”
Yes! That’s actually what I am doing right now! I just came to the realization that this might work right before you posted this. I think this is the best answer as of now.
Tweening doesn’t break the Touched event. The Touched event only fires for physics-based collisions where two parts intersect each other. Tweening relates to interpolation of a value, not to physics, which is why the Touched event doesn’t work.
You need to set up an artificial hitbox, much like what jay mentioned. You can also use a Region3 around each movement of your flying object to check if a foreign object is within the native object’s hitbox (use IgnoreList to ignore the character and object); if there is one, you can count this as a hit part.