Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

Script Ignores One Function But Follows Another?

Asked by
sammiya1 134
7 years ago
Edited 7 years ago
local ExteriorMain = script.Parent.Parent.Parent
local ExteriorMainOt = script.Parent.Parent.Parent.Parent.Parent.Class466F.ExteriorMain
local GearACC = ExteriorMain.VehicleSeat.ConfigValues:WaitForChild("GearACC")
local GearDEC = ExteriorMain.VehicleSeat.ConfigValues.GearDEC
local GearAR = ExteriorMain.VehicleSeat.ConfigValues.Accelerating

--------------------------------------------------
local DG1S = script.Parent.Parent.DeccelerateGear1
local DG2S = script.Parent.Parent.DeccelerateGear2
local DG3S = script.Parent.Parent.DeccelerateGear3
local DG4S = script.Parent.Parent.DeccelerateGear4
local DG5S = script.Parent.Parent.DeccelerateGear5
local DG6S = script.Parent.Parent.DeccelerateGear6
local DGFS = script.Parent.Parent.DeccelerateFinal
------------------------------------------------------
local ACS1 = script.Parent.Parent.AccelerateGear1
local ACS2 = script.Parent.Parent.AccelerateGear2
local ACS3 = script.Parent.Parent.AccelerateGear3
local ACS4 = script.Parent.Parent.AccelerateGear4
local ACS5 = script.Parent.Parent.AccelerateGear5
local ACS6 = script.Parent.Parent.AccelerateGear6
local ACSA = script.Parent.Parent.Ambient
-----------------------------------------------------
GearACC.Changed:connect(function(Y)
    GearDEC.Changed:connect(function(Yo)
        wait(0.3)
            if GearDEC.Value == 1 and GearAR.Value == false then
                DG1S:Play()
            DG2S:Stop()
                DG3S:Stop()
                    DG4S:Stop()
                        DG5S:Stop()
                            DG6S:Stop()
                                DGFS:Stop()
            ACS1:Stop()
                ACS2:Stop()
                    ACS3:Stop()
                        ACS4:Stop()
                            ACS5:Stop()
                                ACS6:Stop()
if GearACC.Value == 6 then 
for i = 0.8,0.6,0.1 do
ACSA.Volume = i
print("Gear6 braking enabled")
wait(0.2)
end
else
if GearACC.Value == 5 then 
for i = 0.6,0.4,0.1 do
ACSA.Volume = i
wait(0.2)
print("Gear5 braking enabled")
end
else
if GearACC.Value == 4 then 
for i = 0.6,0.4,0.1 do
ACSA.Volume = i
wait(0.2)
print("Gear4 braking enabled")
end
else
if GearACC.Value == 3 then 
for i = 0.4,0.2,0.1 do
ACSA.Volume = i
print("Gear3 braking enabled")
wait(0.2)
end
else
if GearACC.Value == 2 then 
for i = 0.2,0,0.1 do
ACSA.Volume = i
wait(0.2)
print("Gear2 braking enabled")
end
-----------
DG1S.TimePosition = 12
wait(1)
DG1S:Stop()
else
end
end
end
end
end
end
end)
end)


So this script simply should lower the volume of ACSA a sound part if GearDec a int value = 1 and the GearACC another int value object is either of the list ifs. Problem is the script ignores the ACC's and i thought putting a wait would help the script to wait abit so that vlaue changes but its still the same result. There is also no printed value for either in output or a reading. Not sure why since there is no errors. Halp Would be nice.

local ExteriorMain = script.Parent.Parent.Parent
    local ExteriorMainOt = script.Parent.Parent.Parent.Parent.Parent.Class466F.ExteriorMain
local GearACC = ExteriorMain.VehicleSeat.ConfigValues:WaitForChild("GearACC")
local GearDEC = ExteriorMain.VehicleSeat.ConfigValues.GearDEC   

        local GearAR = ExteriorMain.VehicleSeat.ConfigValues.Accelerating

local DG1S = script.Parent.Parent.DeccelerateGear1
local DG2S = script.Parent.Parent.DeccelerateGear2
    local DG3S = script.Parent.Parent.DeccelerateGear3
    local DG4S = script.Parent.Parent.DeccelerateGear4
        local DG5S = script.Parent.Parent.DeccelerateGear5
        local DG6S = script.Parent.Parent.DeccelerateGear6
        local DGFS = script.Parent.Parent.DeccelerateFinal

local ACS1 = script.Parent.Parent.AccelerateGear1
local ACS2 = script.Parent.Parent.AccelerateGear2
    local ACS3 = script.Parent.Parent.AccelerateGear3
    local ACS4 = script.Parent.Parent.AccelerateGear4
        local ACS5 = script.Parent.Parent.AccelerateGear5
        local ACS6 = script.Parent.Parent.AccelerateGear6
        local ACSA = script.Parent.Parent.Ambient


GearDEC.Changed:connect(function(Yo)
if (GearACC.Value == 3) and GearDEC.Value == 1 then
DG1S:Play()
-------------------------------------Stop Others
print("Gear2 braking enabled")
DG2S:Stop()
DG3S:Stop()
    DG4S:Stop()
    DG5S:Stop()
        DG6S:Stop()
        DGFS:Stop()
        ACS1:Stop()
            ACS2:Stop()
            ACS3:Stop()
                ACS4:Stop()
                ACS5:Stop()
                ACS6:Stop()
for i = 0.2,0,0.1 do
ACSA.Volume = i
wait(0.2)
end
    end
end)

Answer this question