/// <summary>
        /// Registers a PhysicsMover into the system
        /// </summary>
        public static void RegisterPhysicsMover(PhysicsMover mover)
        {
            PhysicsMovers.Add(mover);

            RigidbodyInterpolation2D interpMethod = (_internalInterpolationMethod == CharacterManagerInterpolationMethod.Unity) ? RigidbodyInterpolation2D.Interpolate : RigidbodyInterpolation2D.None;

            mover.Rigidbody.interpolation = interpMethod;
        }
    static int IntToEnum(IntPtr L)
    {
        int arg0 = (int)LuaDLL.lua_tonumber(L, 1);
        RigidbodyInterpolation2D o = (RigidbodyInterpolation2D)arg0;

        LuaScriptMgr.PushEnum(L, o);
        return(1);
    }
        /// <summary>
        /// Registers a KinematicCharacterMotor into the system
        /// </summary>
        public static void RegisterCharacterMotor(CharacterController2D motor)
        {
            CharacterMotors.Add(motor);

            RigidbodyInterpolation2D interpMethod = (_internalInterpolationMethod == CharacterManagerInterpolationMethod.Unity) ? RigidbodyInterpolation2D.Interpolate : RigidbodyInterpolation2D.None;

            motor.Rigidbody.interpolation = interpMethod;
        }
Пример #4
0
    public void RemoveRigidbody()
    {
        if (Rigidbody)
        {
            oldMass   = Rigidbody.mass;
            oldInterp = Rigidbody.interpolation;
        }

        Destroy(Rigidbody);
    }
Пример #5
0
 public Rigidbody2DSettings(Rigidbody2D rigidbody)
 {
     _rigidbody = rigidbody;
     _isKinematic = rigidbody.isKinematic;
     _velocity = rigidbody.velocity;
     _angularVelocity = rigidbody.angularVelocity;
     _mass = rigidbody.mass;
     _linearDrag = rigidbody.drag;
     _angularDrag = rigidbody.angularDrag;
     _gravityScale = rigidbody.gravityScale;
     _interpolate = rigidbody.interpolation;
     _collisionDetection = rigidbody.collisionDetectionMode;
     _sleepingMode = rigidbody.sleepMode;
     _constraints = rigidbody.constraints;
 }
Пример #6
0
 public RigidData(Rigidbody2D originalData)
 {
     angularDrag = originalData.angularDrag;
     centerOfMass = originalData.centerOfMass;
     collisionDetectionMode = originalData.collisionDetectionMode;
     constraints = originalData.constraints;
     drag = originalData.drag;
     freezeRotation = originalData.freezeRotation;
     gravityScale = originalData.gravityScale;
     inertia = originalData.inertia;
     interpolation = originalData.interpolation;
     isKinematic = originalData.isKinematic;
     mass = originalData.mass;
     simulated = originalData.simulated;
 }
Пример #7
0
    /// <summary>
    /// Sets the properties of this save state from those of the passed object.
    /// </summary>
    public void SetFrom(Rigidbody2D rb)
    {
        bodyType        = rb.bodyType;
        gravityScale    = rb.gravityScale;
        drag            = rb.drag;
        angularDrag     = rb.angularDrag;
        angularVelocity = rb.angularVelocity;
        mass            = rb.mass;
        inertia         = rb.inertia;
        rotation        = rb.rotation;

        freezeRotation = rb.freezeRotation;
        velocity       = rb.velocity;
        centerOfMass   = rb.centerOfMass;

        constraints   = rb.constraints;
        interpolation = rb.interpolation;
        position      = rb.position;
    }