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

I need a part that cancollide = true if it's under 50 speed, and cancollide = false if it's over?

Asked by
cc0de 35
8 years ago

Basically it's designed for a vehicle, if the vehicle is going over 50 SPS, the part detects it and cancollide = false, and back to cancollide = true if it's under. Except this doesn't happen. What have I done wrong?

P = script.Parent
Player = game.Players.LocalPlayer
Human = Player.Character
Torso = Human.Torso


while true do
    wait(.05)
    local intSpeed = math.floor((Torso.Velocity.magnitude)/1.6)
    if Torso.Velocity ==  > 50  then P.CanCollide = false
        if Torso.Velocity == < 50 then P.CanCollide = true
end
end

1 answer

Log in to vote
0
Answered by 8 years ago

On line 10 and 11, you use == > and == <. These are not valid operators.

Use >= for "Greater or equal to"

And <= for "Smaller or equal to"

Also you seem to be missing some ends.

Try this:

P = script.Parent
Player = game.Players.LocalPlayer
Human = Player.Character
Torso = Human.Torso


while true do
    wait(.05)
    local intSpeed = math.floor((Torso.Velocity.magnitude)/1.6)
    if Torso.Velocity >= 50  then P.CanCollide = false end
    if Torso.Velocity <= 50 then P.CanCollide = true end
end
0
Thanks, no errors. It's localscript now, but It's not doing anything when i weld it to a vehicle. Why? cc0de 35 — 8y
0
Should be a normal script..? darkelementallord 686 — 8y
Ad

Answer this question