What's wrong with my script? Only the first print statement is processed.
function onTouched(hit)
if script.CoolDown.Value == false then
script.CoolDown.Value = true
print("1")
if hit.Name == "Engine" then
print("2")
if workspace.TrashcanLocation.Value == 0 then
print("3")
workspace.TrashcanLocation.Value = 1
print("4")
end
end
wait(1)
script.CoolDown.Value = false
end
end
script.Parent.Touched:connect(onTouched)
This server script is inside of a trigger. When a part named "Engine" touches the trigger, it changes a value to 1 if it was previously 0.

4 comments
Use some print blocks to make sure it is getting past the if blocks. For example, put "print('part is named engine')" after the first if statement and "print('changing value to 1')" after the next if statement. That may help you figure out your problem
This is so weird. I added print statements all over the code and none of them are processed! The script isn't disabled, so I don't know what the problem is here!
For some reason, "1" is printed on the client, and then "1" and "2" are printed on the server. This is so frustrating!!
THE PLOT THICKENS! I added an elseif then print statement, and for some reason, the script refuses to believe that the value is 0!