So, I have a series of scripts using a remove event, and the only part of the event that doesn't work is changing the value of an IntValue.
The first script, which fires when you touch a part:
local event = game.ReplicatedStorage.OpenDoors
local DoorVal = 1
script.Parent.Touched:connect(function(hit)
if (hit.Parent) and (hit.Parent:FindFirstChild('Humanoid')) then
local Player = game.Players:GetPlayerFromCharacter(hit.Parent)
if (Player) then
event:FireClient(Player, "Door", DoorVal)
end
end
end)
It's basically sending a "Door" and a number to the client.
So then, it gets to here,
event = game.ReplicatedStorage.OpenDoors
event.OnClientEvent:connect(function(...)
local tuple = {...}
if tuple[1] == "Door" then
script.Parent.DoorValue.Value = tuple[2]
script.Parent.Label.Visible = true
else
if tuple[1] == "DoorStop" then
script.Parent.DoorValue.Value = 0
script.Parent.Label.Visible = false
end
end
end)
It does not register the tuple[2] as the DoorValue in the IntValue, and I know this is the error, because when I manually set it to 1 and test it in game, it works like a charm. Why isn't it registering tuple[2] as an IntValue?

4 comments
Your error may be that ROBLOX arrays start at arrayname[1] not arrayname[0]
What?
I'm not sure why is isn't working, but couldn't you just just set script.Parent.DoorValue.Value on line 6 to 1 in this case? Or is the second tuple argument required for some part of the script not shown?
It's supposed to send a value in tuple[2] to show which door to open on a KeyPress of e, but I didn't show that part because it's the value not changing, and not the KeyPress event.