I have this quest system with a gui and it functions fine but the player can keep doing the quest even if it has been completed. Theres a gui on the bottom left which says "-[NONE]" until a quest has been activated. So theres a block and when I touch it then the NONE would change to the value I put in for the quest(for example: Retrieve the boot). There is also a finish block to complete the quest rewarding the player and this causes the gui to change to "-[Compelted]." I only want the quest to start if the gui says "-[NONE]" so the player can't keep doing the quest giving them an ongoing reward. I tried using an if statement like: if player.Quest2.Value == "-[NONE]" then ... but I'm not sure where this would go and if this is the proper command to use. I'm a beginner and this so if what I'm doing wrong is obvious I'm sorry.
Quest Activator:
script.Parent.Touched:connect(function(k) if k and k.Parent.Humanoid then game.Players[k.Parent.Name].Quest2.Value = script.quest2.Value wait(3) end end)