Professional Documents
Culture Documents
fe nameless animations v5
made by MyWorld#4430
discord.gg/pYVHtSJmEY
no hats needed, r15 supported
]]
local lp = game:GetService("Players").LocalPlayer
local rs, ws, sg = game:GetService("RunService"), game:GetService("Workspace"),
game:GetService("StarterGui")
local stepped, heartbeat, renderstepped = rs.Stepped, rs.Heartbeat,
rs.RenderStepped
local twait, tdelay, rad, inf, abs, clamp = task.wait, task.delay, math.rad,
math.huge, math.abs, math.clamp
local cf, v3 = CFrame.new, Vector3.new
local angles = CFrame.Angles
local v3_0, cf_0 = v3(0, 0, 0), cf(0, 0, 0)
local c = lp.Character
if not (c and c.Parent) then
return
end
c:GetPropertyChangedSignal("Parent"):Connect(function()
if not (c and c.Parent) then
c = nil
end
end)
if alignmode == 4 then
else
Part0.CustomPhysicalProperties = physp
if (alignmode == 1) or (alignmode == 2) then
local ape = Instance.new("AlignPosition")
ape.MaxForce, ape.MaxVelocity, ape.Responsiveness = inf, inf, inf
ape.ReactionForceEnabled, ape.RigidityEnabled,
ape.ApplyAtCenterOfMass = false, true, false
ape.Attachment0, ape.Attachment1, ape.Name = att0, att1,
"AlignPositionRtrue"
ape.Parent = att0
end
local ao = Instance.new("AlignOrientation")
ao.MaxAngularVelocity, ao.MaxTorque, ao.Responsiveness = inf, inf, inf
ao.PrimaryAxisOnly, ao.ReactionTorqueEnabled, ao.RigidityEnabled =
false, false, false
ao.Attachment0, ao.Attachment1 = att0, att1
ao.Parent = att0
end
att0:GetPropertyChangedSignal("Parent"):Connect(function()
Part0 = att0.Parent
if not isa(Part0, "BasePart") then
att0 = nil
if lostpart == Part0 then
lostpart = nil
end
Part0 = nil
end
end)
att0.Parent = Part0
att1:GetPropertyChangedSignal("Parent"):Connect(function()
Part1 = att1.Parent
if not isa(Part1, "BasePart") then
att1 = nil
Part1 = nil
end
end)
att1.Parent = Part1
end
if antiragdoll then
antiragdoll = function(v)
if isa(v, "HingeConstraint") or isa(v, "BallSocketConstraint") then
v.Parent = nil
end
end
for i, v in pairs(getdescendants(c)) do
antiragdoll(v)
end
c.DescendantAdded:Connect(antiragdoll)
end
if antirespawn then
respawnrequest()
end
if method == 0 then
twait(loadtime)
if not c then
return
end
end
if discharscripts then
for i, v in pairs(getdescendants(c)) do
if isa(v, "LocalScript") then
v.Disabled = true
end
end
elseif newanimate then
local animate = gp(c, "Animate", "LocalScript")
if animate and (not animate.Disabled) then
animate.Disabled = true
else
newanimate = false
end
end
if addtools then
for i, v in pairs(getchildren(addtools)) do
if isa(v, "Tool") then
v.Parent = c
end
end
end
pcall(function()
settings().Physics.AllowSleep = false
settings().Physics.PhysicsEnvironmentalThrottle =
Enum.EnviromentalPhysicsThrottle.Disabled
end)
local OLDscripts = {}
for i, v in pairs(getdescendants(c)) do
if v.ClassName == "Script" then
OLDscripts[v.Name] = true
end
end
local scriptNames = {}
for i, v in pairs(getdescendants(c)) do
if isa(v, "BasePart") then
local newName, exists = tostring(i), true
while exists do
exists = OLDscripts[newName]
if exists then
newName = newName .. "_"
end
end
table.insert(scriptNames, newName)
Instance.new("Script", v).Name = newName
end
end
if not c then
return
end
local head, torso, root = gp(c, "Head", "BasePart"), gp(c, "Torso", "BasePart")
or gp(c, "UpperTorso", "BasePart"), gp(c, "HumanoidRootPart", "BasePart")
if hatcollide then
pcall(destroy, torso)
pcall(destroy, root)
pcall(destroy, c:FindFirstChildOfClass("BodyColors") or gp(c, "Health",
"Script"))
end
for i, v in pairs(getchildren(c)) do
if v ~= model then
if addtools and isa(v, "Tool") then
for i1, v1 in pairs(getdescendants(v)) do
if v1 and v1.Parent and isa(v1, "BasePart") then
local bv = Instance.new("BodyVelocity")
bv.Velocity, bv.MaxForce, bv.P, bv.Name = v3_0, v3(1000,
1000, 1000), 1250, "bv_" .. v.Name
bv.Parent = v1
end
end
end
v.Parent = model
end
end
if breakjoints then
model:BreakJoints()
else
if head and torso then
for i, v in pairs(getdescendants(model)) do
if isa(v, "JointInstance") then
local save = false
if (v.Part0 == torso) and (v.Part1 == head) then
save = true
end
if (v.Part0 == head) and (v.Part1 == torso) then
save = true
end
if save then
if hedafterneck then
hedafterneck = v
end
else
pcall(destroy, v)
end
end
end
end
if method == 3 then
task.delay(loadtime, pcall, model.BreakJoints, model)
end
end
cl.Parent = ws
for i, v in pairs(getchildren(cl)) do
v.Parent = c
end
pcall(destroy, cl)
for i, v in pairs(getdescendants(c)) do
if v and v.Parent and (not v:IsDescendantOf(model)) then
if isa(v, "Decal") then
v.Transparency = 1
elseif isa(v, "BasePart") then
v.Transparency = 1
v.Anchored = false
elseif isa(v, "ForceField") then
v.Visible = false
elseif isa(v, "Sound") then
v.Playing = false
elseif isa(v, "BillboardGui") or isa(v, "SurfaceGui") or isa(v,
"ParticleEmitter") or isa(v, "Fire") or isa(v, "Smoke") or isa(v, "Sparkles") then
v.Enabled = false
end
end
end
if newanimate then
local animate = gp(c, "Animate", "LocalScript")
if animate then
animate.Disabled = false
end
end
if addtools then
for i, v in pairs(getchildren(c)) do
if isa(v, "Tool") then
v.Parent = addtools
end
end
end
ws.CurrentCamera.CameraSubject = hum1
local camSubCon = nil
local function camSubFunc()
camSubCon:Disconnect()
if c and hum1 then
ws.CurrentCamera.CameraSubject = hum1
end
end
camSubCon = renderstepped:Connect(camSubFunc)
if hum0 then
hum0:GetPropertyChangedSignal("Jump"):Connect(function()
if hum1 then
hum1.Jump = hum0.Jump
end
end)
else
respawnrequest()
end
end
local rb = Instance.new("BindableEvent", c)
rb.Event:Connect(function()
pcall(destroy, rb)
sg:SetCore("ResetButtonCallback", true)
if destroyhum then
if c then c:BreakJoints() end
return
end
if model and hum0 and (hum0.Health > 0) then
model:BreakJoints()
hum0.Health = 0
end
if antirespawn then
respawnrequest()
end
end)
sg:SetCore("ResetButtonCallback", rb)
tdelay(0, function()
while c do
if hum0 and hum1 then
hum1.Jump = hum0.Jump
end
wait()
end
sg:SetCore("ResetButtonCallback", true)
end)
local staticjoints = {}
local function animjoint(name, parent, Part0, Part1, fakejoint)
fakejoint.C0 = CFrame.new()
fakejoint.C1 = CFrame.new()
local joint = gp(parent, name, "Motor6D")
if joint then
for i, v in pairs(staticjoints) do
if (v.Part0 == Part0) and (v.Part1 == Part1) then
staticjoints[i] = nil
break
end
end
fakejoint.C0 = joint.C0
fakejoint.C1 = joint.C1
joint:Destroy()
joint = nil
end
name = randomstring()
local fix = nil
local con = nil
fix = function()
if not c then
return con:Disconnect()
end
if not joint then
joint = Instance.new("Weld")
name = randomstring()
joint.Changed:Connect(fix)
joint.Destroying:Connect(function() joint = nil fix() end)
end
if joint.Part0 ~= Part0 then
joint.Part0 = Part0
end
if joint.Part1 ~= Part1 then
joint.Part1 = Part1
end
if joint.C0 ~= fakejoint.C0 then
joint.C0 = fakejoint.C0
end
if joint.C1 ~= fakejoint.C1 then
joint.C1 = fakejoint.C1
end
if joint.Name ~= name then
name = randomstring()
joint.Name = name
end
if joint.Parent ~= parent then
joint.Parent = parent
end
end
con = stepped:Connect(fix)
end
for i, v in pairs(c:GetChildren()) do
if v:IsA("Accessory") then
local handle = gp(v, "Handle", "BasePart")
handle.Name = randomstring()
handle.Parent = c
v:Destroy()
end
end
local RootJoint = {}
local RightShoulder = {}
local LeftShoulder = {}
local RightHip = {}
local LeftHip = {}
local Neck = {}
for i, v in pairs(c:GetChildren()) do
if v:IsA("Model") and v:FindFirstChildOfClass("Humanoid") then
for i, v in pairs(v:GetDescendants()) do
if v:IsA("JointInstance") then
for i, v1 in pairs(staticjoints) do
if (v.Part0 == v1.Part0) and (v.Part1 == v1.Part1) then
staticjoints[i] = nil
end
end
end
end
end
end
for i, v in pairs(staticjoints) do
local Part0, Part1, C0, C1 = v.Part0, v.Part1, v.C0, v.C1
local fix, con, joint, name = nil, nil, nil, randomstring()
fix = function()
if not c then
return con:Disconnect()
end
if not joint then
joint = Instance.new("Weld")
name = randomstring()
joint.Changed:Connect(fix)
joint.Destroying:Connect(function() joint = nil fix() end)
end
if joint.Part0 ~= Part0 then
joint.Part0 = Part0
end
if joint.Part1 ~= Part1 then
joint.Part1 = Part1
end
if joint.C0 ~= C0 then
joint.C0 = C0
end
if joint.C1 ~= C1 then
joint.C1 = C1
end
if joint.Name ~= name then
name = randomstring()
joint.Name = name
end
if joint.Parent ~= c then
joint.Parent = c
end
end
con = stepped:Connect(fix)
end
local modes = {
[Enum.KeyCode.Q] = "laying",
[Enum.KeyCode.E] = "sit",
[Enum.KeyCode.R] = "rickroll",
[Enum.KeyCode.T] = "wave",
[Enum.KeyCode.Y] = "dab",
[Enum.KeyCode.U] = "blaze",
[Enum.KeyCode.P] = "T",
[Enum.KeyCode.F] = "float",
[Enum.KeyCode.G] = "floss",
[Enum.KeyCode.H] = "emote",
[Enum.KeyCode.J] = "pushups",
[Enum.KeyCode.K] = "kazotsky",
[Enum.KeyCode.L] = "L"
}
local uis, mode = game:GetService("UserInputService"), ""
local movementkeys = {
[Enum.KeyCode.W] = false,
[Enum.KeyCode.A] = false,
[Enum.KeyCode.S] = false,
[Enum.KeyCode.D] = false,
[Enum.KeyCode.Space] = false
}
uis.InputBegan:Connect(function(a, b)
if b then return end
a = a.KeyCode
if movementkeys[a] == false then
movementkeys[a] = true
return
end
if mode == modes[a] then
mode = ""
else
mode = modes[a] or mode
end
end)
uis.InputEnded:Connect(function(a)
if movementkeys[a.KeyCode] == true then
movementkeys[a.KeyCode] = false
end
end)
local legcfR, legcfL, legvec = cf(1, -1.5, 0), cf(-1, -1.5, 0), v3(0, -1.5, 0)
local function raycastlegs()
local rY, lY = raycast(ws, (cfr * legcfR).Position, legvec, raycastparams),
raycast(ws, (cfr * legcfL).Position, legvec, raycastparams)
return rY and (rY.Position.Y - (cfr.Y - 3)) or 0, lY and (lY.Position.Y -
(cfr.Y - 3)) or 0
end
end
else
else -- fall
RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0, 0) * euler(-
1.6580627893946132 + fw * 0.1, rt * -0.05, -3.141592653589793), deltaTime)
RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.5, 0) *
euler(4.014257279586958 - 0.08726646259971647 * sin((sine + 0.5) * 4),
1.7453292519943295 + 0.08726646259971647 * sin((sine + 0.25) * 4), -
1.5707963267948966), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1, 0) * euler(1.5707963267948966 -
0.08726646259971647 * sin((sine + 0.5) * 4), -1.6580627893946132 +
0.06981317007977318 * sin((sine + 0.25) * 4), 1.5707963267948966), deltaTime)
LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.5, 0) *
euler(4.014257279586958 - 0.08726646259971647 * sin((sine + 0.5) * 4), -
1.7453292519943295 - 0.08726646259971647 * sin((sine + 0.25) * 4),
1.5707963267948966), deltaTime)
Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.7453292519943295, 0, -
3.141592653589793 - rt), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(1, -1, 0) * euler(1.5707963267948966
- 0.08726646259971647 * sin((sine + 0.5) * 4), 1.6580627893946132 -
0.06981317007977318 * sin((sine + 0.25) * 4), -1.5707963267948966), deltaTime)
--Torso,0,0,0,4,-95,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,-
180,0,0,4,RightArm,1,0,0,4,230,-5,0.5,4,0.5,0,0,4,100,5,0.25,4,0,0,0,4,-
90,0,0,4,LeftLeg,-1,0,0,4,90,-5,0.5,4,-1,0,0,4,-
95,4,0.25,4,0,0,0,4,90,0,0,4,LeftArm,-1,0,0,4,230,-5,0.5,4,0.5,0,0,4,-100,-
5,0.25,4,0,0,0,4,90,0,0,4,Head,0,0,0,4,-100,0,0.5,4,1,0,0,4,0,0,0.25,4,0,0,0,4,-
180,0,0,4,RightLeg,1,0,0,4,90,-5,0.5,4,-1,0,0,4,95,-4,0.25,4,0,0,0,4,-90,0,0,4
end
end
end)