Esempio n. 1
0
 public override void Initialize()
 {
     cOpenTorqueSplitDelegate    = OpenDiffTorqueSplit;
     cLockingTorqueSplitDelegate = LockingDiffTorqueSplit;
     cVLSDTorqueSplitDelegate    = VLSDTorqueSplit;
     cHLSDTorqueSplitDelegate    = HLSDTorqueSplit;
 }
Esempio n. 2
0
        public override void OnPreSolve()
        {
            base.OnPreSolve();

            _outputBIsNull = outputB == null;

            if (differentialType == Type.Open)
            {
                splitTorqueDelegate = cOpenTorqueSplitDelegate;
            }
            else if (differentialType == Type.Locked)
            {
                splitTorqueDelegate = cLockingTorqueSplitDelegate;
            }
            else if (differentialType == Type.ViscousLSD)
            {
                splitTorqueDelegate = cVLSDTorqueSplitDelegate;
            }
            else if (differentialType == Type.ClutchLSD)
            {
                splitTorqueDelegate = cHLSDTorqueSplitDelegate;
            }

            // No delegate assigned from external script, fallback to default.
            if (splitTorqueDelegate == null)
            {
                differentialType    = Type.Open;
                splitTorqueDelegate = cOpenTorqueSplitDelegate;
            }
        }