I am experimenting with Pcall functions and I want mine to be able to return a different output, a little like how this function does here.
function GiveResult()
return 1
end
local a = GiveResult()
repeat wait() until a == 1 or a == 2 or a == 3
if a == 1 then
print("Player 1 wins")
elseif a == 2 then
print("Player 2 wins")
else
print("Nobody wins")
end
However, I want to make my game extra protective from exploiters by wrapping my Game script with a Pcall function. When the function fails, I want it to simply clone a new copy of itself and delete the old one to start over. Right now, I am trying to learn the ins and outs of Pcall functions before actually using them. I have tried to do the same thing that I did with the previous function with this Pcall function, but I never get an output. Why is that?
wait(5)
function BadPrint()
return 1
end
success, message = pcall(BadPrint)
if success then
if success == 1 then print(1) elseif success == 2 then print(2) end
else
wait(.1)
print("An error occurred: "..message)
local newScript = game.Lighting.Pcall:Clone()
newScript.Parent = game.Workspace
newScript.Disabled = false
script:Destroy()
end
Any help is much appreciated!
