im trying to make that cool effect where it copies all of the character body parts and leaves a trail
(can’t find example of it)
local run = game:GetService("RunService")
local character = script.Parent
character.Archivable = true
run.RenderStepped:Connect(function()
local model = Instance.new("Model")
model.Parent = workspace
for _, part in pairs(character:GetChildren()) do
if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
local clone = part:Clone()
clone.Anchored = true
clone.CanCollide = false
clone.CanTouch = false
clone.CanQuery = false
clone.Transparency = .5
clone.CastShadow = false
clone.Parent = model
end
end
end)
another idea is you can clone the parts inside your character then immediately take them out of your character so it doesn’t confuse the game, then make modifications (cancollide = false, anchored = true)
Tested in studio, the bug is actually a quirk I experienced a while ago, when you clone the individual parts the welds/Motor6Ds are still joined to the initial instance. Using :BreakJoints will actually do the trick.
local run = game:GetService("RunService")
local character = script.Parent
character.Archivable = true
while true do
local model = Instance.new("Model")
model.Parent = workspace
for _, part in pairs(character:GetChildren()) do
if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
local clone = part:Clone()
clone.Anchored = true
clone.CanCollide = false
clone.CanTouch = false
clone.CanQuery = false
clone.Transparency = .5
clone.CastShadow = false
clone.Parent = model
clone:BreakJoints()
end
end
task.wait(0.1)
end
local character = script.Parent
character.Archivable = true
while wait(0.1) do
local model = Instance.new(“Model”)
model.Parent = workspace
for _, part in pairs(character:GetChildren()) do
if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
local pfokder = instance.new(“folder”)
Pfokder.parent = workspace
local clone = part:Clone()
clone.Anchored = true
clone.CanCollide = false
clone.CanTouch = false
clone.CanQuery = false
clone.Transparency = .5
clone.CastShadow = false
clone.parent = pfokder
end
end
sorry i was not been on dev forum in a while, but yeah i had in mind of doing that
however, i can’t add the humanoid back in otherwise the parts will have collisions again for some stupid reason
local run = game:GetService("RunService")
local character = script.Parent
character.Archivable = true
run.Heartbeat:Connect(function()
local model = Instance.new("Model")
model.Parent = workspace
local humanoid = Instance.new("Humanoid")
humanoid:SetStateEnabled(Enum.HumanoidStateType.Physics, true)
humanoid:ChangeState(Enum.HumanoidStateType.Physics)
humanoid.Parent = model
for _, part in pairs(character:GetChildren()) do
if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
local clone = part:Clone()
for _, joint in pairs(clone:GetChildren()) do
if joint:IsA("Motor6D") then
joint:Destroy()
end
end
clone.Anchored = true
clone.CanCollide = false
clone.Transparency = .5
clone.CastShadow = false
clone.Parent = model
end
end
end)