public static void CallGathereditHandler(MPWorld world, GameObject obj, ref MPHitData hit) { var mpcattr = obj.GetComponent <MPColliderAttribute>(); if (mpcattr) { mpcattr.gatheredHitHandler(world, obj, ref hit); } }
public static void DefaultGatheredHitHandler(MPWorld world, GameObject obj, ref MPHitData hit) { float force = world.force; Vector3 vel = hit.velocity3; Rigidbody rb3d = obj.GetComponent <Rigidbody>(); if (rb3d) { rb3d.AddForceAtPosition(vel * force, hit.position3); } Rigidbody2D rb2d = obj.GetComponent <Rigidbody2D>(); if (rb2d) { rb2d.AddForceAtPosition(vel * force, hit.position3); } }