This works when a Value Change to Flaps - 1 The Sounds successfully Stops when the CurrentAngle pass > -0.24
But in the Next Setting such as Flaps - 2 The sounds do Play, But does not stop when the Motor Reaches pass CurrentAngle > -0.34 Are Value Maybe not Be the best way to Make the Sound Play functions work?
local FlapsValue = script.Parent.Parent.Parent.FlapSetting
local MainMotorPose = script.Parent.Parent.Parent.Parent.Body.AVI_MSDLL
local FlapModule = script.Parent.Parent.Parent.FlapsPanel.Left.Inboard
local FM1 = MainMotorPose.Flaps_Motor1
local FM2 = MainMotorPose.Flaps_Motor2
local FM3 = MainMotorPose.Flaps_Motor3
local FM4 = MainMotorPose.Flaps_Motor4
FlapsValue.Changed:Connect(function()
if FlapsValue.Value == 1 then
print('Flaps - 1')
FM1.Loop:Stop()
FM1.Start:Play()
FM2.Loop:Stop()
FM2.Start:Play()
FM3.Loop:Stop()
FM3.Start:Play()
FM4.Loop:Stop()
FM4.Start:Play()
wait(1)
FM1.Loop:Play()
FM2.Loop:Play()
FM3.Loop:Play()
FM4.Loop:Play()
repeat wait() until FlapModule.A.Motor.CurrentAngle > -0.24
FM1.Loop:Stop()
FM1.Stop:Play()
FM2.Loop:Stop()
FM2.Stop:Play()
FM3.Loop:Stop()
FM3.Stop:Play()
FM4.Loop:Stop()
FM4.Stop:Play()
end
if FlapsValue.Value == 2 then
print('Flaps - 2')
FM1.Loop:Stop()
FM1.Start:Play()
FM2.Loop:Stop()
FM2.Start:Play()
FM3.Loop:Stop()
FM3.Start:Play()
FM4.Loop:Stop()
FM4.Start:Play()
wait(1)
FM1.Loop:Play()
FM2.Loop:Play()
FM3.Loop:Play()
FM4.Loop:Play()
repeat wait() until FlapModule.A.Motor.CurrentAngle > -0.34
FM1.Loop:Stop()
FM1.Stop:Play()
FM2.Loop:Stop()
FM2.Stop:Play()
FM3.Loop:Stop()
FM3.Stop:Play()
FM4.Loop:Stop()
FM4.Stop:Play()
end
if FlapsValue.Value == 3 then
print('Flaps - 3')
FM1.Loop:Stop()
FM1.Start:Play()
FM2.Loop:Stop()
FM2.Start:Play()
FM3.Loop:Stop()
FM3.Start:Play()
FM4.Loop:Stop()
FM4.Start:Play()
wait(1)
FM1.Loop:Play()
FM2.Loop:Play()
FM3.Loop:Play()
FM4.Loop:Play()
repeat wait() until FlapModule.A.Motor.CurrentAngle > -0.44
FM1.Loop:Stop()
FM1.Stop:Play()
FM2.Loop:Stop()
FM2.Stop:Play()
FM3.Loop:Stop()
FM3.Stop:Play()
FM4.Loop:Stop()
FM4.Stop:Play()
end
if FlapsValue.Value == 4 then
print('Flaps - 2')
FM1.Loop:Stop()
FM1.Start:Play()
FM2.Loop:Stop()
FM2.Start:Play()
FM3.Loop:Stop()
FM3.Start:Play()
FM4.Loop:Stop()
FM4.Start:Play()
wait(1)
FM1.Loop:Play()
FM2.Loop:Play()
FM3.Loop:Play()
FM4.Loop:Play()
repeat wait() until FlapModule.A.Motor.CurrentAngle > -0.54
FM1.Loop:Stop()
FM1.Stop:Play()
FM2.Loop:Stop()
FM2.Stop:Play()
FM3.Loop:Stop()
FM3.Stop:Play()
FM4.Loop:Stop()
FM4.Stop:Play()
end
if FlapsValue.Value == 0 then
print('Flaps - 0 [Retracting & Stowed]')
FM1.Loop:Stop()
FM1.Start:Play()
FM2.Loop:Stop()
FM2.Start:Play()
FM3.Loop:Stop()
FM3.Start:Play()
FM4.Loop:Stop()
FM4.Start:Play()
wait(1)
FM1.Loop:Play()
FM2.Loop:Play()
FM3.Loop:Play()
FM4.Loop:Play()
repeat wait() until FlapModule.A.Motor.CurrentAngle < -0.01
FM1.Loop:Stop()
FM1.Stop:Play()
FM2.Loop:Stop()
FM2.Stop:Play()
FM3.Loop:Stop()
FM3.Stop:Play()
FM4.Loop:Stop()
FM4.Stop:Play()
end
end)
