public virtual void FromStateToComponent(VehicleAbstractState state, VehicleEntity vehicle) { var comp = vehicle.GetDynamicData(); comp.Flag = (int)VehicleFlag.LocalSet; comp.IsAccelerated = state.IsAccelerated; comp.SteerInput = state.SteerInput; comp.ThrottleInput = state.ThrottleInput; comp.Position = state.BodyState.Position; comp.Rotation = state.BodyState.Rotation; comp.LinearVelocity = state.BodyState.LinearVelocity; comp.AngularVelocity = state.BodyState.AngularVelocity; comp.IsSleeping = state.BodyState.IsSleeping; var wheelCount = state.WheelStates.Length; var indexArray = VehicleIndexHelper.GetWheelIndexArray(); AssertUtility.Assert(wheelCount <= indexArray.Length); for (int i = 0; i < wheelCount; ++i) { var index = indexArray[i]; if (WheelEntityUtility.HasWheel(vehicle, index)) { SetWheel(vehicle, index, state.WheelStates[i]); } } }
public virtual void SetTo(VehicleAbstractState state) { state.IsSyncFlagSet = IsRemoteSet(); state.IsHornOn = IsHornOn; state.HandbrakeInput = HandbrakeInput; state.IsAccelerated = IsAccelerated; state.SteerInput = SteerInput; state.ThrottleInput = ThrottleInput; state.BodyState.Position = Position; state.BodyState.Rotation = Rotation; state.BodyState.LinearVelocity = LinearVelocity; state.BodyState.AngularVelocity = AngularVelocity; state.BodyState.IsSleeping = IsSleeping; var wheelStates = state.WheelStates; var wheelCount = wheelStates.Length; for (int i = 0; i < wheelCount; ++i) { var destState = wheelStates[i]; var sourceState = Wheels[i]; destState.ColliderSteerAngle = sourceState.ColliderSteerAngle; } }
public override void SetTo(VehicleAbstractState toState) { base.SetTo(toState); var state = (MotorState)toState; state.StuntInput = StuntInput; state.HandbrakeInput = HandbrakeInput; state.HorizontalShift = HorizontalShift; state.Crashed = Crashed; }
public override void FromStateToComponent(VehicleAbstractState state, VehicleEntity vehicle) { base.FromStateToComponent(state, vehicle); var comp = (CarDynamicDataComponent)vehicle.GetDynamicData(); var motorState = (MotorState)state; comp.BrakeInput = motorState.StuntInput; comp.HandbrakeInput = motorState.HandbrakeInput; comp.SteerAngle = motorState.HorizontalShift; comp.Crashed = motorState.Crashed; }
public override void FromStateToComponent(VehicleAbstractState state, VehicleEntity vehicle) { base.FromStateToComponent(state, vehicle); var fromState = (VehicleState)state; var comp = (CarDynamicDataComponent)vehicle.GetDynamicData(); comp.BrakeInput = fromState.BrakeInput; comp.HandbrakeInput = state.HandbrakeInput; comp.SteerAngle = fromState.SteerAngle; }
public override void SetTo(VehicleAbstractState toState) { base.SetTo(toState); var state = (VehicleState)toState; state.BrakeInput = BrakeInput; state.HandbrakeInput = HandbrakeInput; state.SteerAngle = SteerAngle; var wheelStates = state.WheelStates; var wheelCount = wheelStates.Length; for (int i = 0; i < wheelCount; ++i) { var destState = (WheelState)wheelStates[i]; var sourceState = (CarWheelInfo)Wheels[i]; destState.SteerAngle = sourceState.SteerAngle; } }