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

How do you make a character invisible,frozen,and non-collidable while being able to reset?

Asked by 11 years ago

This is the script that I thought of:

1hit = Workspace.WiseDumbledore
2for _,ch in ipairs(hit:GetChildren()) do
3if ch.className == 'Part' then
4ch.Transparency = 1
5ch.CanCollide = false
6ch.Anchored = true
7end
8end

This poses a few problems. When

1ch = hit.Head

or

1ch = hit.Torso

The line

1ch.CanCollide = false

will be non effective. Also the face will not be invisible. Others suggested:

1Workspace.WiseDumbledore: remove()

and

1Workspace.WiseDumbledore.Parent = "Lighting"

These scripts will not allow the target to reset. Please help.

Thanks WiseDumbledore

0
You want to take away the ability to reset? That's impossible. Shawnyg 4330 — 11y
0
Sorry, read that wrong. You can't take away the ability to reset without making a custom humanoid. PiggyJingles 358 — 11y
0
Actually, just rename the player's humanoid. That disables resetting. But, we are off topic here. That isn't what the OP wanted. Articulating 1335 — 11y
0
You guys dont get it. I want to do all that, while being able to reset, cause the last two scripts will not allow you to reset. WiseDumbledore 15 — 11y

3 answers

Log in to vote
1
Answered by 11 years ago
01local hitPart = Workspace.WiseDumbledore
02local player = Game.Players:GetPlayerFromCharacter(hitPart)
03if player then
04    for index, object in pairs(player.Character:GetChildren()) do
05        if object:IsA("BasePart") then
06            object.Transparency = 1
07            object.CanCollide = false
08            object.Anchored = true
09            if object:FindFirstChild("face") then
10                object.face.Transparency = 1
11            end
12        elseif object:IsA("Hat") and object:FindFirstChild("Handle") then
13            object.Handle.Transparency = 1
14            object.Handle.CanCollide = false
15            object.Handle.Anchored = true
16        end
17    end
18end
0
This does not work again, when your object gets to the head or torso, object.CanCollide = false is noneffective. Thanks WiseDumbledore 15 — 11y
Ad
Log in to vote
0
Answered by 7 years ago
Edited 7 years ago
1function onTouch(part)
2    local humanoid = part.Parent:FindFirstChild("Humanoid")
3    if (humanoid ~= nil) then   -- if a humanoid exists, then
4        humanoid.Parent.Torso.Anchored = true  
5    end
6end
7 
8script.Parent.Touched:connect(onTouch)

And for disable reset (Put in StarterGui and make sure it's a localscript)

1function onTouch(part)
2game:GetService("StarterGui"):SetCore("ResetButtonCallback", false)
3end
4 
5game.Workspace.Part.Touched:connect(onTouch)

Make sure the "Part" is changed to your bricks name

Log in to vote
-1
Answered by
MixCorp 70
11 years ago

This will work... You cant Move, or be interacted with. At the same time you CAN reset.

01function Freeze(char)
02if char and char:IsA("Model") then
03for i,v in pairs(char:children()) do
04if v.className == "Part" then
05v.Transparency = 1
06v.CanCollide = false
07end
08if v.className == "Hat" then
09v.Handle.Transparency = 1
10v.Handle.CanCollide = false
11v.Handle.Anchored = true
12end
13if v.Name == "Head" then
14v.face.Transparency = 1
15end
16end
17end
18end
19 
20--If you want to freeze a player, Do Freeze(game.Players.Roblox.Character)

Answer this question