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

How can I make my arms visible when zoomed in?

Asked by 9 years ago

My attempt is to go to StarterPlayer and make CameraMinDistance more than 10. (didnt work)

1 answer

Log in to vote
2
Answered by 9 years ago

First you create a local script and place it in startergui or starterpack

print("Hello World")

Then you create a variable for the player and getting his character

local player = game.Players.LocalPlayer
local character = player.Character

Now, you would want to clone each individual part of the player inside the camera

local player = game.Players.LocalPlayer
local character = player.Character
local camera = game.Workspace.CurrentCamera   -- Camera
local model = Instance.new("Model", camera)   -- where we will place the first person
local Children = character:GetChildren()
for i,Part in pairs(Children) do
    if Part:IsA("Part") then
local Clone = Part:Clone()
        Clone.Parent = model
    end
end

The Script on top will clone the body parts of the person and place it in the model but it just stand there, now we need to weld it and remove welds on specific parts of the cloned parts such as the torso and the root

local player = game.Players.LocalPlayer
local character = player.Character
local camera = game.Workspace.CurrentCamera   -- Camera
local model = Instance.new("Model", camera) 
model.Name = ""  -- where we will place the first person
local Children = character:GetChildren()
for i,Part in pairs(Children) do
    if Part:IsA("Part") then
        if Part.Name == "Torso" then
            local Clone = Part:Clone()
    Clone.Parent = model
    Clone:ClearAllChildren()
        local weld = Instance.new("Weld", Part)
        weld.Part0 = Part
weld.Part1 = Clone
        elseif Part.Name == "HumanoidRootPart" then
            return
    else
            local Clone = Part:Clone()
    Clone.Parent = model
        local weld = Instance.new("Weld", Part)
        weld.Part0 = Part
weld.Part1 = Clone
        end

    end
    if Part:IsA("Humanoid") then
        local Clone = Part:Clone()
    Clone.Parent = model
    Clone.MaxHealth = 0
    end
end

Now it will clone to the character but the first person has no clothes

local player = game.Players.LocalPlayer
local character = player.Character
local camera = game.Workspace.CurrentCamera   -- Camera
local model = Instance.new("Model", camera) 
model.Name = ""  -- where we will place the first person
local Children = character:GetChildren()
if game.Players.LocalPlayer.Character:FindFirstChild("Shirt") then 
    local shirt = game.Players.LocalPlayer.Character["Shirt"]:Clone()
    shirt.Parent = model
end
if game.Players.LocalPlayer.Character:FindFirstChild("Pants") then 
    local pants = game.Players.LocalPlayer.Character["Pants"]:Clone()
    pants.Parent = model
end
for i = 1, #Children do
 if Children[i]:IsA("CharacterMesh") then
    Children[i]:Clone().Parent = model
end
end
for i,Part in pairs(Children) do
    if Part:IsA("Part") then
        if Part.Name == "Torso" then
            local Clone = Part:Clone()
    Clone.Parent = model
    Clone:ClearAllChildren()
        local weld = Instance.new("Weld", Part)
        weld.Part0 = Part
weld.Part1 = Clone
        elseif Part.Name == "HumanoidRootPart" then
            return
    else
            local Clone = Part:Clone()
    Clone.Parent = model
    Clone.CanCollide = false
        local weld = Instance.new("Weld", Part)
        weld.Part0 = Part
weld.Part1 = Clone
        end
    end

        if Part:IsA("Humanoid") then
        local Clone = Part:Clone()
    Clone.Parent = model
    Clone.MaxHealth = 0
    end
end
if character:FindFirstChild("Shirt") then
    character.Shirt:Clone().Parent = model
elseif character:FindFirstChild("Pants") then
    character.Pants:Clone().Parent = model
end

The First Person works but you would want it to activate during the time that the player has loaded its appearance so you would need to disabled the local script then create a script with the following

game.Players.PlayerAdded:connect(function(player)
    player.CharacterAppearanceLoaded:connect(function()
        player.PlayerGui.LocalScript.Disabled = false
    end)
end)
Ad

Answer this question