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

Cooking script help?

Asked by
shayner32 478 Trusted Moderation Voter
8 years ago

I'm trying to make it so that when a patty touches a grill, it will slowly cook, 5 stages in total. When it touches it though, it continues cooking regardless if I take it off the grill. Also, the prints from the onHit and onGone function are delayed.

Code:

touching = false

function cook(hit)
    if hit.stage.Value == 1 and touching == true then
        script.Parent.sizzle:Play()
        wait(4)     
        hit.BrickColor = BrickColor.new(18)
        hit.stage.Value = 2
        script.Parent.sizzle:Stop()
    end
    if hit.stage.Value == 2 and touching == true then
        script.Parent.sizzle:Play()
        wait(4)
        hit.BrickColor = BrickColor.new(217)
        hit.stage.Value = 3
        script.Parent.sizzle:Stop()
    end
    if hit.stage.Value == 3 and touching == true then
        script.Parent.sizzle:Play()
        wait(5)
        hit.BrickColor = BrickColor.new(26)
        hit.stage.Value = 4
        script.Parent.sizzle:Stop()
    end
    if hit.stage.Value == 4 and touching == true then
        script.Parent.sizzle:Play()
        wait(6)
        hit.BrickColor = BrickColor.new(1003)
        hit.stage.Value = 5
        hit.Fire.Enabled = true
        script.Parent.sizzle:Stop()
    end
end

function onHit(hit)
    if hit.Name == "Patty" then
        cook(hit)
        touching = true
        print(hit.Name.." is now touching")
    end
end

function onGone(hit)
    if hit.Name == "Patty" then
        touching = false
        print(hit.Name.." is no longer touching")
        script.Parent.sizzle:Stop()
        script.Parent.antistop.Disabled = true
        wait(0.01)
        script.Parent.antistop.Disabled = false
    end
end



script.Parent.Touched:connect(onHit)
script.Parent.TouchEnded:connect(onGone)

Like I said, it all works fine but it keeps cooking even if I take it off of the grill.

Edit: antistop is a script that manually loops the "sizzle" sound at a certain time in the audio. It works fine.

Answer this question