Gravity Files Remake Code ›
Rigidbody2D rb = GetComponent<Rigidbody2D>(); velocityBeforeFlip = rb.velocity; // After one physics frame, reapply (simplified) Invoke(nameof(ApplyStoredVelocity), 0.02f);
public class GravityManager : MonoBehaviour gravity files remake code
public class MomentumPreserver : MonoBehaviour Rigidbody2D rb = GetComponent<
if (Time.time - lastFlipTime < flipCooldown) return; currentGravity = (currentGravity == GravityDirection.Down) ? GravityDirection.Up : GravityDirection.Down; Physics2D.gravity = (currentGravity == GravityDirection.Down) ? Vector2.down * gravityStrength : Vector2.up * gravityStrength; lastFlipTime = Time.time; EventManager.TriggerGravityFlip(); velocityBeforeFlip = rb.velocity