local part3 = Instance.new("Part",owner.Character) part3.CanCollide = false part3.Name = "the" local wel = Instance.new("Weld",owner.Character.HumanoidRootPart) wel.Part0 = owner.Character.Head wel.Part1 = wel.Parent wel.C1 = CFrame.new(0,1,0) part3:SetNetworkOwner(owner) part3.Size = Vector3.new(0.5,2,0.5) owner.Character.HumanoidRootPart:SetNetworkOwner(owner) owner.Character.Humanoid.RequiresNeck = false owner.Character.Head.CanCollide = false owner.Character.HumanoidRootPart:SetNetworkOwner(owner) owner.Character.Torso:SetNetworkOwner(owner) owner.Character.Head:SetNetworkOwner(owner) for i,v in pairs(owner.Character:GetDescendants()) do pcall(function() v:SetNetworkOwner(owner) end) end owner.Character["Right Arm"]:Destroy() owner.Character["Left Arm"]:Destroy() local part4 = Instance.new("Part",owner.Character) part4.CanCollide = false part4.Name = "the2" part4:SetNetworkOwner(owner) part4.Size = Vector3.new(0.5,2,0.5) local mesh = Instance.new("SpecialMesh",part3) mesh.MeshId = "rbxassetid://6674278819" mesh.Offset = Vector3.new(0.5,0,0) local App = game:GetService("Players"):GetCharacterAppearanceAsync(owner.UserId) local col = App["Body Colors"].LeftArmColor part3.Color = col.Color mesh.Scale = Vector3.new(0.04,0.04,0.04) local bv = Instance.new("BodyVelocity",part3) bv.Velocity = Vector3.new() bv.MaxForce = Vector3.new(1,1,1) * math.huge local mesh2 = Instance.new("SpecialMesh",part4) mesh2.MeshId = "rbxassetid://6674278818" mesh2.Offset = Vector3.new(-0.5,0,0) local col = App["Body Colors"].RightArmColor part4.Color = col.Color mesh2.Scale = Vector3.new(0.04,0.04,0.04) local bv2 = Instance.new("BodyVelocity",part4) bv2.Velocity = Vector3.new() bv2.MaxForce = Vector3.new(1,1,1) * math.huge e = Instance.new("RemoteEvent",part3) weld2 = nil partta = {} anchors = {} netta = {} weld3 = nil partta2 = {} anchors2 = {} netta2 = {} e.OnServerEvent:Connect(function(_,wha,who,cf) if wha == "the" then local mod = who:FindFirstAncestorWhichIsA("Model") if mod and mod ~= workspace then for i,v in pairs(mod:GetDescendants()) do if v:IsA("BasePart") then table.insert(anchors,v.Anchored) table.insert(netta,v:GetNetworkOwner()) table.insert(partta,v) coroutine.wrap(function() wait(0.01) v.Anchored = false v:SetNetworkOwner(owner) end)() end end else table.insert(anchors,who.Anchored) table.insert(netta,who:GetNetworkOwner()) table.insert(partta,who) wait() who.Anchored = false who:SetNetworkOwner(owner) end weld2 = Instance.new("Weld",part3) local cfdif = part3.CFrame:Inverse() * who.CFrame weld2.Part0 = who weld2.Part1 = part3 task.wait() weld2.C0 = cfdif:Inverse() elseif wha == "fist" then weld2:Destroy() wait() for i,v in pairs(partta) do v:SetNetworkOwner(netta[i]) v.Anchored = anchors[i] end wait(0.01) netta = {} anchors = {} partta = {} elseif wha == "the2" then local mod = who:FindFirstAncestorWhichIsA("Model") if mod and mod ~= workspace then for i,v in pairs(mod:GetDescendants()) do if v:IsA("BasePart") then table.insert(anchors2,v.Anchored) table.insert(netta2,v:GetNetworkOwner()) table.insert(partta2,v) coroutine.wrap(function() wait(0.01) v.Anchored = false v:SetNetworkOwner(owner) end)() end end else table.insert(anchors2,who.Anchored) table.insert(netta2,who:GetNetworkOwner()) table.insert(partta2,who) wait() who.Anchored = false who:SetNetworkOwner(owner) end weld3 = Instance.new("Weld",part4) local cfdif = part4.CFrame:Inverse() * who.CFrame weld3.Part0 = who weld3.Part1 = part4 task.wait() weld3.C0 = cfdif:Inverse() elseif wha == "fist2" then weld3:Destroy() wait() for i,v in pairs(partta2) do v:SetNetworkOwner(netta2[i]) v.Anchored = anchors2[i] end wait(0.01) netta2 = {} anchors2 = {} partta2 = {} elseif wha == "headrot" then wel.C0 = cf end end) NLS([[ local pard = script.Parent local pard2 = owner.Character:WaitForChild("the2") local e = pard:FindFirstChildWhichIsA("RemoteEvent") mouse = owner:GetMouse() local active = true local what = nil local active2 = true local what2 = nil local part = Instance.new("Part",script) part.Transparency = 1 part.CanCollide = false part.Anchored = true part.Size = Vector3.new() local part6 = Instance.new("Part",script) part6.Transparency = 1 part6.CanCollide = false part6.Anchored = true part6.Size = Vector3.new() local part2 = Instance.new("Part",script) part2.CanCollide = false part2.Transparency = 1 part2.Size = Vector3.new(0.5,0.5,3) local part5 = Instance.new("Part",script) part5.CanCollide = false part5.Transparency = 1 part5.Size = Vector3.new(0.5,0.5,3) mouse.KeyDown:Connect(function(key) key = key:lower() if key == "q" and active then local params = RaycastParams.new() params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,part2,pard2} params.FilterType = Enum.RaycastFilterType.Blacklist local result2 = workspace:Raycast(pard.Position + pard.CFrame.rightVector * 0.5, pard.CFrame.upVector * -3, params) if result2 and result2.Instance then active = false e:FireServer("the",result2.Instance) if result2.Instance:FindFirstAncestorWhichIsA("Model") then what = result2.Instance:FindFirstAncestorWhichIsA("Model") else what = result2.Instance end end elseif key == "q" and not active then active = true e:FireServer("fist") what = nil elseif key == "e" and active2 then local params = RaycastParams.new() params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,part2,pard2} params.FilterType = Enum.RaycastFilterType.Blacklist local result2 = workspace:Raycast(pard2.Position + pard2.CFrame.rightVector * -0.5, pard2.CFrame.upVector * -3, params) if result2 and result2.Instance then active2 = false e:FireServer("the2",result2.Instance) if result2.Instance:FindFirstAncestorWhichIsA("Model") then what2 = result2.Instance:FindFirstAncestorWhichIsA("Model") else what2 = result2.Instance end end elseif key == "e" and not active2 then active2 = true e:FireServer("fist2") what2 = nil end end) local weld = Instance.new("Weld",part) weld.Part0 = part2 weld.Part1 = part weld.C0 = CFrame.new(1.5,1,2) local weld4 = Instance.new("Weld",part6) weld4.Part0 = part5 weld4.Part1 = part6 weld4.C0 = CFrame.new(-1.5,1,2) local bob = CFrame.new() local bob2 = CFrame.new() game:GetService("RunService").RenderStepped:Connect(function() pard.LocalTransparencyModifier = 0 pard2.LocalTransparencyModifier = 0 bob = bob:Lerp(workspace.CurrentCamera.CFrame.Rotation,0.5) bob2 = bob2:Lerp(owner.Character.HumanoidRootPart.CFrame.Rotation,0.5) local cfl = CFrame.new(0,-0.5,0) * bob:Inverse() * bob2 e:FireServer("headrot","nil",cfl) local params = RaycastParams.new() if what ~= nil and what2 ~= nil then params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,what:GetDescendants(),part2,pard2,what2:GetDescendants(),part5,part6} elseif what == nil and what2 ~= nil then params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,part2,pard2,what2:GetDescendants(),part5,part6} elseif what ~= nil and what2 == nil then params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,what:GetDescendants(),part2,pard2,part5,part6} else params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,part2,part5,pard2,part6} end params.FilterType = Enum.RaycastFilterType.Blacklist local po = CFrame.new(workspace.CurrentCamera.CFrame.Position) * CFrame.Angles(part2.CFrame:ToEulerAnglesXYZ()) local result = workspace:Raycast(po.Position + po.rightVector * -0.5, part2.CFrame.lookVector * 4, params) if result then local pos = CFrame.new(result.Position + po.rightVector * 0.5) * CFrame.Angles(workspace.CurrentCamera.CFrame:ToEulerAnglesXYZ()) * CFrame.new(0,0,4) part.CFrame = CFrame.new(pos.Position) * bob else part.CFrame = CFrame.new(workspace.CurrentCamera.CFrame.Position) * bob end local params = RaycastParams.new() if what ~= nil and what2 ~= nil then params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,what:GetDescendants(),part2,pard2,what2:GetDescendants(),part5,part6} elseif what == nil and what2 ~= nil then params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,part2,pard2,what2:GetDescendants(),part5,part6} elseif what ~= nil and what2 == nil then params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,what:GetDescendants(),part2,pard2,part5,part6} else params.FilterDescendantsInstances = {owner.Character:GetDescendants(),part,pard,part2,part5,pard2,part6} end params.FilterType = Enum.RaycastFilterType.Blacklist local po = CFrame.new(workspace.CurrentCamera.CFrame.Position) * CFrame.Angles(part5.CFrame:ToEulerAnglesXYZ()) local result = workspace:Raycast(po.Position + po.rightVector * 0.5, part5.CFrame.lookVector * 4, params) if result then local pos = CFrame.new(result.Position + po.rightVector * -0.5) * CFrame.Angles(workspace.CurrentCamera.CFrame:ToEulerAnglesXYZ()) * CFrame.new(0,0,4) part6.CFrame = CFrame.new(pos.Position) * bob else part6.CFrame = CFrame.new(workspace.CurrentCamera.CFrame.Position) * bob end pard.CFrame = part2.CFrame * CFrame.Angles(math.rad(90),0,0) pard2.CFrame = part5.CFrame * CFrame.Angles(math.rad(90),0,0) end) ]],part3)