0% found this document useful (0 votes)
428 views32 pages

Nameless Animations V5

This document provides instructions for using a reanimation script called "fe nameless animations v5". It describes how to configure various reanimation settings and parameters, including the reanimation method, align position mode, parts to reclaim control over if lost, and more. The full script is also included to reanimate a player character after death while preserving movement and preventing clipping through surfaces.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
428 views32 pages

Nameless Animations V5

This document provides instructions for using a reanimation script called "fe nameless animations v5". It describes how to configure various reanimation settings and parameters, including the reanimation method, align position mode, parts to reclaim control over if lost, and more. The full script is also included to reanimate a player character after death while preserving movement and preventing clipping through surfaces.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 32

--[[

fe nameless animations v5
made by MyWorld#4430
discord.gg/pYVHtSJmEY
no hats needed, r15 supported
]]

if "u wanna use myworlds reanimation" then


--reanimate by MyWorld#4430 discord.gg/pYVHtSJmEY
local v3_net, v3_808 = Vector3.new(0, 25.1, 0), Vector3.new(8, 0, 8)
local function getNetlessVelocity(realPartVelocity)
local mag = realPartVelocity.Magnitude
if mag > 1 then
local unit = realPartVelocity.Unit
if (unit.Y > 0.25) or (unit.Y < -0.75) then
return unit * (25.1 / unit.Y)
end
end
return v3_net + realPartVelocity * v3_808
end
local simradius = "shp" --simulation radius (net bypass) method
--"shp" - sethiddenproperty
--"ssr" - setsimulationradius
--false - disable
local simrad = 1000 --simulation radius value
local healthHide = false --moves your head away every 3 seconds so players dont
see your health bar (alignmode 4 only)
local reclaim = true --if you lost control over a part this will move your
primary part to the part so you get it back (alignmode 4)
local novoid = true --prevents parts from going under
workspace.FallenPartsDestroyHeight if you control them (alignmode 4 only)
local physp = nil --PhysicalProperties.new(0.01, 0, 1, 0, 0) --
sets .CustomPhysicalProperties to this for each part
local noclipAllParts = false --set it to true if you want noclip
local antiragdoll = true --removes hingeConstraints and ballSocketConstraints
from your character
local newanimate = false --disables the animate script and enables after
reanimation
local discharscripts = true --disables all localScripts parented to your
character before reanimation
local R15toR6 = true --tries to convert your character to r6 if its r15
local hatcollide = false --makes hats cancollide (credit to ShownApe) (works
only with reanimate method 0)
local humState16 = true --enables collisions for limbs before the humanoid dies
(using hum:ChangeState)
local addtools = false --puts all tools from backpack to character and lets you
hold them after reanimation
local hedafterneck = true --disable aligns for head and enable after neck or
torso is removed
local loadtime = game:GetService("Players").RespawnTime + 0.5 --anti respawn
delay
local method = 3 --reanimation method
--methods:
--0 - breakJoints (takes [loadtime] seconds to load)
--1 - limbs
--2 - limbs + anti respawn
--3 - limbs + breakJoints after [loadtime] seconds
--4 - remove humanoid + breakJoints
--5 - remove humanoid + limbst
local alignmode = 4 --AlignPosition mode
--modes:
--1 - AlignPosition rigidity enabled true
--2 - 2 AlignPositions rigidity enabled both true and false
--3 - AlignPosition rigidity enabled false
--4 - CFrame
local flingpart = "HumanoidRootPart" --name of the part or the hat used for
flinging
--the fling function
--usage: fling(target, duration, velocity)
--target can be set to: basePart, CFrame, Vector3, character model or humanoid
(flings at mouse.Hit if argument not provided))
--duration (fling time in seconds) can be set to a number or a string
convertable to the number (0.5s if not provided),
--velocity (fling part rotation velocity) can be set to a vector3 value
(Vector3.new(20000, 20000, 20000) if not provided)

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)

local clone, destroy, getchildren, getdescendants, isa = c.Clone, c.Destroy,


c.GetChildren, c.GetDescendants, c.IsA

local function gp(parent, name, className)


if typeof(parent) == "Instance" then
for i, v in pairs(getchildren(parent)) do
if (v.Name == name) and isa(v, className) then
return v
end
end
end
return nil
end

local fenv = getfenv()

local shp = fenv.sethiddenproperty or fenv.set_hidden_property or


fenv.set_hidden_prop or fenv.sethiddenprop
local ssr = fenv.setsimulationradius or fenv.set_simulation_radius or
fenv.set_sim_radius or fenv.setsimradius or fenv.setsimrad or fenv.set_sim_rad
healthHide = healthHide and ((method == 0) or (method == 3)) and gp(c, "Head",
"BasePart")

local reclaim, lostpart = reclaim and c.PrimaryPart, nil

local function align(Part0, Part1)

local att0 = Instance.new("Attachment")


att0.Position, att0.Orientation, att0.Name = v3_0, v3_0, "att0_" ..
Part0.Name
local att1 = Instance.new("Attachment")
att1.Position, att1.Orientation, att1.Name = v3_0, v3_0, "att1_" ..
Part1.Name

if alignmode == 4 then

local hide = false


if Part0 == healthHide then
healthHide = false
tdelay(0, function()
while twait(2.9) and Part0 and c do
hide = #Part0:GetConnectedParts() == 1
twait(0.1)
hide = false
end
end)
end

local rot = rad(0.05)


local con0, con1 = nil, nil
con0 = stepped:Connect(function()
if not (Part0 and Part1) then return con0:Disconnect() and
con1:Disconnect() end
Part0.RotVelocity = Part1.RotVelocity
end)
local lastpos = Part0.Position
con1 = heartbeat:Connect(function(delta)
if not (Part0 and Part1 and att1) then return con0:Disconnect() and
con1:Disconnect() end
if (not Part0.Anchored) and (Part0.ReceiveAge == 0) then
if lostpart == Part0 then
lostpart = nil
end
rot = -rot
local newcf = Part1.CFrame * att1.CFrame * angles(0, 0, rot)
if Part1.Velocity.Magnitude > 0.01 then
Part0.Velocity = getNetlessVelocity(Part1.Velocity)
else
Part0.Velocity = getNetlessVelocity((newcf.Position -
lastpos) / delta)
end
lastpos = newcf.Position
if lostpart and (Part0 == reclaim) then
newcf = lostpart.CFrame
elseif hide then
newcf += v3(0, 3000, 0)
end
if novoid and (newcf.Y < ws.FallenPartsDestroyHeight + 0.1)
then
newcf += v3(0, ws.FallenPartsDestroyHeight + 0.1 - newcf.Y,
0)
end
Part0.CFrame = newcf
elseif (not Part0.Anchored) and (abs(Part0.Velocity.X) < 45) and
(abs(Part0.Velocity.Y) < 25) and (abs(Part0.Velocity.Z) < 45) then
lostpart = Part0
end
end)

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

if (alignmode == 2) or (alignmode == 3) then


local apd = Instance.new("AlignPosition")
apd.MaxForce, apd.MaxVelocity, apd.Responsiveness = inf, inf, inf
apd.ReactionForceEnabled, apd.RigidityEnabled,
apd.ApplyAtCenterOfMass = false, false, false
apd.Attachment0, apd.Attachment1, apd.Name = att0, att1,
"AlignPositionRfalse"
apd.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

local con0, con1 = nil, nil


local vel = Part0.Velocity
con0 = renderstepped:Connect(function()
if not (Part0 and Part1) then return con0:Disconnect() and
con1:Disconnect() end
Part0.Velocity = vel
end)
local lastpos = Part0.Position
con1 = heartbeat:Connect(function(delta)
if not (Part0 and Part1) then return con0:Disconnect() and
con1:Disconnect() end
vel = Part0.Velocity
if Part1.Velocity.Magnitude > 0.01 then
Part0.Velocity = getNetlessVelocity(Part1.Velocity)
else
Part0.Velocity = getNetlessVelocity((Part0.Position -
lastpos) / delta)
end
lastpos = Part0.Position
end)

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

local function respawnrequest()


local ccfr, c = ws.CurrentCamera.CFrame, lp.Character
lp.Character = nil
lp.Character = c
local con = nil
con = ws.CurrentCamera.Changed:Connect(function(prop)
if (prop ~= "Parent") and (prop ~= "CFrame") then
return
end
ws.CurrentCamera.CFrame = ccfr
con:Disconnect()
end)
end

local destroyhum = (method == 4) or (method == 5)


local breakjoints = (method == 0) or (method == 4)
local antirespawn = (method == 0) or (method == 2) or (method == 3)

hatcollide = hatcollide and (method == 0)

addtools = addtools and lp:FindFirstChildOfClass("Backpack")

if type(simrad) ~= "number" then simrad = 1000 end


if shp and (simradius == "shp") then
tdelay(0, function()
while c do
shp(lp, "SimulationRadius", simrad)
heartbeat:Wait()
end
end)
elseif ssr and (simradius == "ssr") then
tdelay(0, function()
while c do
ssr(simrad)
heartbeat:Wait()
end
end)
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

local hum = c:FindFirstChildOfClass("Humanoid")


if hum then
for i, v in pairs(hum:GetPlayingAnimationTracks()) do
v:Stop()
end
end
c.Archivable = true
local cl = clone(c)
if hum and humState16 then
hum:ChangeState(Enum.HumanoidStateType.Physics)
if destroyhum then
twait(1.6)
end
end
if destroyhum then
pcall(destroy, hum)
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

local model = Instance.new("Model", c)


model:GetPropertyChangedSignal("Parent"):Connect(function()
if not (model and model.Parent) then
model = nil
end
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)

local uncollide, noclipcon = nil, nil


if noclipAllParts then
uncollide = function()
if c then
for i, v in pairs(getdescendants(c)) do
if isa(v, "BasePart") then
v.CanCollide = false
end
end
else
noclipcon:Disconnect()
end
end
else
uncollide = function()
if model then
for i, v in pairs(getdescendants(model)) do
if isa(v, "BasePart") then
v.CanCollide = false
end
end
else
noclipcon:Disconnect()
end
end
end
noclipcon = stepped:Connect(uncollide)
uncollide()

for i, scr in pairs(getdescendants(model)) do


if (scr.ClassName == "Script") and table.find(scriptNames, scr.Name) then
local Part0 = scr.Parent
if isa(Part0, "BasePart") then
for i1, scr1 in pairs(getdescendants(c)) do
if (scr1.ClassName == "Script") and (scr1.Name == scr.Name) and
(not scr1:IsDescendantOf(model)) then
local Part1 = scr1.Parent
if (Part1.ClassName == Part0.ClassName) and (Part1.Name ==
Part0.Name) then
align(Part0, Part1)
pcall(destroy, scr)
pcall(destroy, scr1)
break
end
end
end
end
end
end

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

local hum0, hum1 = model:FindFirstChildOfClass("Humanoid"),


c:FindFirstChildOfClass("Humanoid")
if hum0 then
hum0:GetPropertyChangedSignal("Parent"):Connect(function()
if not (hum0 and hum0.Parent) then
hum0 = nil
end
end)
end
if hum1 then
hum1:GetPropertyChangedSignal("Parent"):Connect(function()
if not (hum1 and hum1.Parent) then
hum1 = nil
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)

R15toR6 = R15toR6 and hum1 and (hum1.RigType == Enum.HumanoidRigType.R15)


if R15toR6 then
local part = gp(c, "HumanoidRootPart", "BasePart") or gp(c, "UpperTorso",
"BasePart") or gp(c, "LowerTorso", "BasePart") or gp(c, "Head", "BasePart") or
c:FindFirstChildWhichIsA("BasePart")
if part then
local cfr = part.CFrame
local R6parts = {
head = {
Name = "Head",
Size = v3(2, 1, 1),
R15 = {
Head = 0
}
},
torso = {
Name = "Torso",
Size = v3(2, 2, 1),
R15 = {
UpperTorso = 0.2,
LowerTorso = -0.8
}
},
root = {
Name = "HumanoidRootPart",
Size = v3(2, 2, 1),
R15 = {
HumanoidRootPart = 0
}
},
leftArm = {
Name = "Left Arm",
Size = v3(1, 2, 1),
R15 = {
LeftHand = -0.849,
LeftLowerArm = -0.174,
LeftUpperArm = 0.415
}
},
rightArm = {
Name = "Right Arm",
Size = v3(1, 2, 1),
R15 = {
RightHand = -0.849,
RightLowerArm = -0.174,
RightUpperArm = 0.415
}
},
leftLeg = {
Name = "Left Leg",
Size = v3(1, 2, 1),
R15 = {
LeftFoot = -0.85,
LeftLowerLeg = -0.29,
LeftUpperLeg = 0.49
}
},
rightLeg = {
Name = "Right Leg",
Size = v3(1, 2, 1),
R15 = {
RightFoot = -0.85,
RightLowerLeg = -0.29,
RightUpperLeg = 0.49
}
}
}
for i, v in pairs(getchildren(c)) do
if isa(v, "BasePart") then
for i1, v1 in pairs(getchildren(v)) do
if isa(v1, "Motor6D") then
v1.Part0 = nil
end
end
end
end
part.Archivable = true
for i, v in pairs(R6parts) do
local part = clone(part)
part:ClearAllChildren()
part.Name, part.Size, part.CFrame, part.Anchored,
part.Transparency, part.CanCollide = v.Name, v.Size, cfr, false, 1, false
for i1, v1 in pairs(v.R15) do
local R15part = gp(c, i1, "BasePart")
local att = gp(R15part, "att1_" .. i1, "Attachment")
if R15part then
local weld = Instance.new("Weld")
weld.Part0, weld.Part1, weld.C0, weld.C1, weld.Name = part,
R15part, cf(0, v1, 0), cf_0, "Weld_" .. i1
weld.Parent = R15part
R15part.Massless, R15part.Name = true, "R15_" .. i1
R15part.Parent = part
if att then
att.Position = v3(0, v1, 0)
att.Parent = part
end
end
end
part.Parent = c
R6parts[i] = part
end
local R6joints = {
neck = {
Parent = R6parts.torso,
Name = "Neck",
Part0 = R6parts.torso,
Part1 = R6parts.head,
C0 = cf(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0),
C1 = cf(0, -0.5, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
},
rootJoint = {
Parent = R6parts.root,
Name = "RootJoint" ,
Part0 = R6parts.root,
Part1 = R6parts.torso,
C0 = cf(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0),
C1 = cf(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
},
rightShoulder = {
Parent = R6parts.torso,
Name = "Right Shoulder",
Part0 = R6parts.torso,
Part1 = R6parts.rightArm,
C0 = cf(1, 0.5, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0),
C1 = cf(-0.5, 0.5, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
},
leftShoulder = {
Parent = R6parts.torso,
Name = "Left Shoulder",
Part0 = R6parts.torso,
Part1 = R6parts.leftArm,
C0 = cf(-1, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0),
C1 = cf(0.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
},
rightHip = {
Parent = R6parts.torso,
Name = "Right Hip",
Part0 = R6parts.torso,
Part1 = R6parts.rightLeg,
C0 = cf(1, -1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0),
C1 = cf(0.5, 1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
},
leftHip = {
Parent = R6parts.torso,
Name = "Left Hip" ,
Part0 = R6parts.torso,
Part1 = R6parts.leftLeg,
C0 = cf(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0),
C1 = cf(-0.5, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
}
}
for i, v in pairs(R6joints) do
local joint = Instance.new("Motor6D")
for prop, val in pairs(v) do
joint[prop] = val
end
R6joints[i] = joint
end
if hum1 then
hum1.RigType, hum1.HipHeight = Enum.HumanoidRigType.R6, 0
end
end
end

local torso1 = torso


torso = gp(c, "Torso", "BasePart") or ((not R15toR6) and gp(c, torso.Name,
"BasePart"))
if (typeof(hedafterneck) == "Instance") and head and torso and torso1 then
local conNeck, conTorso, conTorso1 = nil, nil, nil
local aligns = {}
local function enableAligns()
conNeck:Disconnect()
conTorso:Disconnect()
conTorso1:Disconnect()
for i, v in pairs(aligns) do
v.Enabled = true
end
end
conNeck = hedafterneck.Changed:Connect(function(prop)
if table.find({"Part0", "Part1", "Parent"}, prop) then
enableAligns()
end
end)
conTorso = torso:GetPropertyChangedSignal("Parent"):Connect(enableAligns)
conTorso1 = torso1:GetPropertyChangedSignal("Parent"):Connect(enableAligns)
for i, v in pairs(getdescendants(head)) do
if isa(v, "AlignPosition") or isa(v, "AlignOrientation") then
i = tostring(i)
aligns[i] = v
v:GetPropertyChangedSignal("Parent"):Connect(function()
aligns[i] = nil
end)
v.Enabled = false
end
end
end

local flingpart0 = gp(model, flingpart, "BasePart") or gp(gp(model, flingpart,


"Accessory"), "Handle", "BasePart")
local flingpart1 = gp(c, flingpart, "BasePart") or gp(gp(c, flingpart,
"Accessory"), "Handle", "BasePart")

local fling = function() end


if flingpart0 and flingpart1 then
flingpart0:GetPropertyChangedSignal("Parent"):Connect(function()
if not (flingpart0 and flingpart0.Parent) then
flingpart0 = nil
fling = function() end
end
end)
flingpart0.Archivable = true
flingpart1:GetPropertyChangedSignal("Parent"):Connect(function()
if not (flingpart1 and flingpart1.Parent) then
flingpart1 = nil
fling = function() end
end
end)
local att0 = gp(flingpart0, "att0_" .. flingpart0.Name, "Attachment")
local att1 = gp(flingpart1, "att1_" .. flingpart1.Name, "Attachment")
if att0 and att1 then
att0:GetPropertyChangedSignal("Parent"):Connect(function()
if not (att0 and att0.Parent) then
att0 = nil
fling = function() end
end
end)
att1:GetPropertyChangedSignal("Parent"):Connect(function()
if not (att1 and att1.Parent) then
att1 = nil
fling = function() end
end
end)
local lastfling = nil
local mouse = lp:GetMouse()
fling = function(target, duration, rotVelocity)
if typeof(target) == "Instance" then
if isa(target, "BasePart") then
target = target.Position
elseif isa(target, "Model") then
target = gp(target, "HumanoidRootPart", "BasePart") or
gp(target, "Torso", "BasePart") or gp(target, "UpperTorso", "BasePart") or
target:FindFirstChildWhichIsA("BasePart")
if target then
target = target.Position
else
return
end
elseif isa(target, "Humanoid") then
target = target.Parent
if not (target and isa(target, "Model")) then
return
end
target = gp(target, "HumanoidRootPart", "BasePart") or
gp(target, "Torso", "BasePart") or gp(target, "UpperTorso", "BasePart") or
target:FindFirstChildWhichIsA("BasePart")
if target then
target = target.Position
else
return
end
else
return
end
elseif typeof(target) == "CFrame" then
target = target.Position
elseif typeof(target) ~= "Vector3" then
target = mouse.Hit
if target then
target = target.Position
else
return
end
end
if target.Y < ws.FallenPartsDestroyHeight + 5 then
target = v3(target.X, ws.FallenPartsDestroyHeight + 5,
target.Z)
end
lastfling = target
if type(duration) ~= "number" then
duration = tonumber(duration) or 0.5
end
if typeof(rotVelocity) ~= "Vector3" then
rotVelocity = v3(20000, 20000, 20000)
end
if not (target and flingpart0 and flingpart1 and att0 and att1)
then
return
end
flingpart0.Archivable = true
local flingpart = clone(flingpart0)
flingpart.Transparency = 1
flingpart.CanCollide = false
flingpart.Name = "flingpart_" .. flingpart0.Name
flingpart.Anchored = true
flingpart.Velocity = v3_0
flingpart.RotVelocity = v3_0
flingpart.Position = target
flingpart:GetPropertyChangedSignal("Parent"):Connect(function()
if not (flingpart and flingpart.Parent) then
flingpart = nil
end
end)
flingpart.Parent = flingpart1
if flingpart0.Transparency > 0.5 then
flingpart0.Transparency = 0.5
end
att1.Parent = flingpart
local con = nil
local rotchg = v3(0, rotVelocity.Unit.Y * -1000, 0)
con = heartbeat:Connect(function(delta)
if target and (lastfling == target) and flingpart and
flingpart0 and flingpart1 and att0 and att1 then
flingpart.Orientation += rotchg * delta
flingpart0.RotVelocity = rotVelocity
else
con:Disconnect()
end
end)
if alignmode ~= 4 then
local con = nil
con = renderstepped:Connect(function()
if flingpart0 and target then
flingpart0.RotVelocity = v3_0
else
con:Disconnect()
end
end)
end
twait(duration)
if lastfling ~= target then
if flingpart then
if att1 and (att1.Parent == flingpart) then
att1.Parent = flingpart1
end
pcall(destroy, flingpart)
end
return
end
target = nil
if not (flingpart and flingpart0 and flingpart1 and att0 and att1)
then
return
end
flingpart0.RotVelocity = v3_0
att1.Parent = flingpart1
pcall(destroy, flingpart)
end
end
end

--lp:GetMouse().Button1Down:Connect(fling) --click fling


end

local walkSpeed, jumpPower = 16, 50

local plrs = game:GetService("Players")


local c = plrs.LocalPlayer.Character
if not c then return end
local ws = game:GetService("Workspace")
local raycast = ws.Raycast
c.AncestryChanged:Connect(function()
if not c:IsDescendantOf(ws) then
c = nil
end
end)
local rs = game:GetService("RunService")
local stepped, renderstepped, heartbeat = rs.Stepped, rs.RenderStepped,
rs.Heartbeat
local function gp(parent, name, classname)
if typeof(parent) == "Instance" then
for i, v in pairs(parent:GetChildren()) do
if (v.Name == name) and v:IsA(classname) then
return v
end
end
end
return nil
end

local mrandom, schar, supper = math.random, string.char, string.upper


local function randomstring(length)
if type(length) ~= "number" then
length = mrandom(8, 15)
end
local ret = ""
for i=1, length do
if mrandom(1, 2) == 1 then
ret = ret .. schar(mrandom(97, 122))
else
ret = ret .. supper(schar(mrandom(97, 122)))
end
end
return ret
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

local function part(name, main)


local part = gp(c, name, "BasePart")
if not part then
part = Instance.new("Part")
part.Size = Vector3.new(1, 1, 1)
end
local size = part.Size
part.Destroying:Connect(function()
part = nil
c = nil
end)
if not main then
name = randomstring()
end
local con = nil
con = stepped:Connect(function()
if not part then
return con:Disconnect()
end
part.Transparency = 1
part.Name = name
part.Size = size
part.CanCollide = true
part.Anchored = main
part.Parent = c
end)
return part
end

local function addjoint(v)


table.insert(staticjoints, {C0 = v.C0, C1 = v.C1, Part0 = v.Part0, Part1 =
v.Part1})
end
for i, v in pairs(c:GetDescendants()) do
if v:IsA("JointInstance") then
pcall(addjoint, v)
end
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 Torso = part("Torso", false)


local RightArm = part("Right Arm", false)
local LeftArm = part("Left Arm", false)
local LeftLeg = part("Left Leg", false)
local RightLeg = part("Right Leg", false)
local Head = part("Head", false)
local HumanoidRootPart = part("HumanoidRootPart", true)

local RootJoint = {}
local RightShoulder = {}
local LeftShoulder = {}
local RightHip = {}
local LeftHip = {}
local Neck = {}

animjoint("Neck", Torso, Torso, Head, Neck)


animjoint("RootJoint", HumanoidRootPart, HumanoidRootPart, Torso, RootJoint)
animjoint("Right Shoulder", Torso, Torso, RightArm, RightShoulder)
animjoint("Left Shoulder", Torso, Torso, LeftArm, LeftShoulder)
animjoint("Right Hip", Torso, Torso, RightLeg, RightHip)
animjoint("Left Hip", Torso, Torso, LeftLeg, LeftHip)

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

local hum = c:FindFirstChildOfClass("Humanoid")


if hum then
hum:Destroy()
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 animate = gp(a, "Animate", "LocalScript")


if animate then animate:Destroy() 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 cf, v3 = CFrame.new, Vector3.new


local v3_0, v3_101, v3_010, v3_d, v3_u = v3(0, 0, 0), v3(1, 0, 1), v3(0, 1, 0),
v3(0, -10000, 0), v3(0, 10000, 0)
local vel, cfr, raycastresult, onground = v3_0, HumanoidRootPart.CFrame, nil, true

local raycastparams = RaycastParams.new()


raycastparams.FilterType = Enum.RaycastFilterType.Blacklist
local rayfilter = {}
local characters = {}
local function refreshrayfilter()
for i, v in pairs(rayfilter) do
if not table.find(characters, v) then
rayfilter[i] = nil
end
end
for i, v in pairs(characters) do
if not table.find(rayfilter, v) then
table.insert(rayfilter, v)
end
end
raycastparams.FilterDescendantsInstances = rayfilter
end
local function oncharacter(plr, c)
characters[plr] = c
refreshrayfilter()
end
local function onplayer(v)
oncharacter(v, v.Character)
v.CharacterAdded:Connect(function(c)
oncharacter(v, c)
end)
end
for i, v in pairs(plrs:GetPlayers()) do onplayer(v) end
plrs.PlayerAdded:Connect(onplayer)
plrs.PlayerRemoving:Connect(function(v)
oncharacter(v, nil)
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

local euler, sin, sine, abs, clamp = CFrame.fromEulerAnglesXYZ, math.sin, 0,


math.abs, math.clamp
local con = nil
con = renderstepped:Connect(function(deltaTime)
if not c then
return con:Disconnect()
end
raycastresult = raycast(ws, cfr.Position, v3_d, raycastparams)
if raycastresult then
onground = (cfr.Y - raycastresult.Position.Y) < 3.01
if onground then
vel = v3(0, (raycastresult.Position.Y + 3 - cfr.Y) * 0.5 /
deltaTime, 0)
if cfr.Y + vel.Y * deltaTime > raycastresult.Position.Y + 3 then
vel = v3_0
cfr += v3(0, raycastresult.Position.Y + 3 - cfr.Y, 0)
end
if movementkeys[Enum.KeyCode.Space] then
vel = v3(0, jumpPower, 0)
end
else
vel -= v3_010 * deltaTime * 196.2
if cfr.Y + vel.Y * deltaTime < raycastresult.Position.Y then
vel = v3(0, (raycastresult.Position.Y + 3 - cfr.Y) /
deltaTime, 0)
end
end
else
onground = false
raycastresult = raycast(ws, cfr.Position + v3_u, v3_d, raycastparams)
if raycastresult then
vel = v3(0, 65, 0)
cfr += v3(0, raycastresult.Position.Y + 3 - cfr.Y, 0)
else
vel += v3_010 * deltaTime * 50
end
end
vel *= v3_010
local xzvel, camcf = v3_0, ws.CurrentCamera.CFrame
if movementkeys[Enum.KeyCode.W] then
xzvel += (camcf.LookVector * v3_101).Unit
end
if movementkeys[Enum.KeyCode.S] then
xzvel -= (camcf.LookVector * v3_101).Unit
end
if movementkeys[Enum.KeyCode.A] then
xzvel -= (camcf.RightVector * v3_101).Unit
end
if movementkeys[Enum.KeyCode.D] then
xzvel += (camcf.RightVector * v3_101).Unit
end
if xzvel.Magnitude ~= 0 then
cfr = cfr:Lerp(cf(cfr.Position, cfr.Position + xzvel), deltaTime * 10)
xzvel = xzvel.Unit * walkSpeed
end
if uis.MouseBehavior == Enum.MouseBehavior.LockCenter then
cfr = cf(cfr.Position, cfr.Position + camcf.LookVector * v3_101)
end
vel += xzvel
cfr += vel * deltaTime
HumanoidRootPart.CFrame, HumanoidRootPart.Velocity,
HumanoidRootPart.RotVelocity, HumanoidRootPart.Anchored = cfr, vel, v3_0, true
local hum = c:FindFirstChildOfClass("Humanoid")
if not hum then
hum = Instance.new("Humanoid")
for i, v in pairs(Enum.HumanoidStateType:GetEnumItems()) do
pcall(hum.SetStateEnabled, v, false)
end
hum.Name = randomstring()
hum.Parent = c
end
for i, v in pairs(hum:GetPlayingAnimationTracks()) do v:Stop() end
ws.CurrentCamera.CameraSubject = hum
sine += deltaTime
deltaTime = clamp(deltaTime * 10, 0, 1)
if vel.Magnitude < 0.01 then --idle

if mode == "" then

local rY, lY = raycastlegs()


RightShoulder.C0 = RightShoulder.C0:Lerp(cf(0.9999998807907104,
0.4999999403953552, -2.765073337516225e-32) * euler(-1.5707963267948966,
1.3962634015954636 + 0.08726646259971647 * sin((sine + 1) * 2),
1.5707963267948966), deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 1.1739236345820182e-24 + 0.1 *
sin((sine + 0.35) * 2), 0.1 * sin(sine * 2)) * euler(-1.5707963267948966 +
0.08726646259971647 * sin(sine * 2), 0.017453292519943295 * sin(sine * 2), -
2.792526803190927), deltaTime)
LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-0.9999998807907104,
0.4999999403953552, -1.2568507556530796e-32) * euler(1.5707963267948966, -
1.3962634015954636 + 0.08726646259971647 * sin((sine + 1) * 2),
1.2217304763960306), deltaTime)
Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.5707963267948966 +
0.08726646259971647 * sin((sine - 0.375) * 2), 0, 2.792526803190927 +
0.5235987755982988 * sin(sine * 0.6)), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(0.9999998807907104, -
1.100000023841858 - 0.1 * sin((sine + 0.35) * 2) + rY, rY * -0.5) * euler(-
1.0471975511965976 - 0.08726646259971647 * sin(sine * 2), 1.3962634015954636,
1.3962634015954636), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1.100000023841858 - 0.1 *
sin((sine + 0.35) * 2) + lY, lY * -0.5) * euler(-1.7453292519943295 -
0.08726646259971647 * sin(sine * 2), -1.3962634015954636, -1.3962634015954636),
deltaTime)
--RightArm,0.9999998807907104,0,0,2,-
90,0,0,2,0.4999999403953552,0,0,2,80,5,1,2,-2.765073337516225e-
32,0,0,2,90,0,0,2,Torso,0,0,0,2,-90,5,0,2,1.1739236345820182e-
24,0.1,0.35,2,0,1,0,2,0,0.1,0,2,-160,0,0,2,Fedora_Handle,8.657480066176504e-
09,0,0,2,-6,0,0,2,-0.15052366256713867,0,0,2,0,0,0,2,-
0.010221302509307861,0,0,2,0,0,0,2,LeftArm,-
0.9999998807907104,0,0,2,90,0,0,2,0.4999999403953552,0,0,2,-80,5,1,2,-
1.2568507556530796e-32,0,0,2,70,0,0,2,Head,0,0,0,2,-90,5,-
0.375,2,1,0,0,2,0,0,0,2,0,0,0,2,160,30,0,0.6,RightLeg,0.9999998807907104,0,0,2,-
60,-5,0,2,-1.100000023841858,-0.1,0.35,2,80,0,0,2,0,0,0,2,80,0,0,2,LeftLeg,-
1,0,0,2,-100,-5,0,2,-1.100000023841858,-0.1,0.35,2,-80,0,0,2,0,0,0,2,-80,0,0,2

elseif mode == "laying" then

LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.75, -0.2) *


euler(2.705260340591211 - 0.08726646259971647 * sin((sine + 0.1) * 2), -
2.792526803190927, -0.6981317007977318), deltaTime)
RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.75, -0.2) *
euler(2.705260340591211 - 0.08726646259971647 * sin((sine + 0.1) * 2),
2.792526803190927, 0.6981317007977318), deltaTime)
Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.9198621771937625 -
0.10471975511965978 * sin((sine + 0.3) * 2), 0, 3.141592653589793), deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(0, -2.45 - 0.05 * sin(sine * 2), 0)
* euler(0.03490658503988659 * sin(sine * 2), 0, 3.141592653589793), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(1, -1, 0) * euler(1.3962634015954636
- 0.03490658503988659 * sin(sine * 2), 1.3089969389957472, -0.9599310885968813),
deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1, 0) * euler(1.5707963267948966 -
0.03490658503988659 * sin(sine * 2), -1.3089969389957472, 1.5707963267948966),
deltaTime)
--LeftArm,-1,0,0,2,155,-5,0.1,2,0.75,0,0,2,-160,0,0,2,-0.2,0,0,2,-
40,0,0,2,RightArm,1,0,0,2,155,-5,0.1,2,0.75,0,0,2,160,0,0,2,-
0.2,0,0,2,40,0,0,2,Head,0,0,0,2,-110,-6,0.3,2,1,0,0,2,-
0,0,0,2,0,0,0,2,180,0,0,2,Torso,0,0,0,2,0,2,0,2,-2.45,-0.05,0,2,-
0,0,0,2,0,0,0,2,180,0,0,2,RightLeg,1,0,0,2,80,-2,0,2,-1,0,0,2,75,0,0,2,0,0,0,2,-
55,0,0,2,LeftLeg,-1,0,0,2,90,-2,0,2,-1,0,0,2,-75,0,0,2,0,0,0,2,90,0,0,2

elseif mode == "sit" then

LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-0.9, 0.4 + 0.1 * sin(sine *


2), 0.3 - 0.15 * sin(sine * 2)) * euler(-1.0471975511965976 - 0.12217304763960307 *
sin(sine * 2), -1.3962634015954636, -0.6981317007977318), deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(0, -1.85 - 0.1 * sin((sine + 0.2) *
2), 0) * euler(-1.3962634015954636 + 0.03490658503988659 * sin(sine * 2), -
0.08726646259971647, 3.141592653589793), deltaTime)
RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.4 + 0.1 * sin(sine *
2), 0.2 - 0.15 * sin(sine * 2)) * euler(0.6108652381980153 - 0.12217304763960307 *
sin(sine * 2), 1.2217304763960306, -0.7853981633974483), deltaTime)
Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.6580627893946132 -
0.03490658503988659 * sin((sine + 0.6) * 2), 0.10471975511965978 +
0.06981317007977318 * sin(sine * 0.66), 3.141592653589793 + 0.3490658503988659 *
sin(sine * 0.66)), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(1, 0.2 + 0.15 * sin((sine + 0.2) *
2), -0.7 + 0.1 * sin(sine * 2)) * euler(1.4835298641951802 + 0.03490658503988659 *
sin(sine * 2), 1.4835298641951802, -1.5707963267948966), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -0.75 + 0.1 * sin((sine + 0.2) *
2), -0.5) * euler(1.3962634015954636 - 0.03490658503988659 * sin(sine * 2), -
1.6580627893946132, 0), deltaTime)
--LeftArm,-0.9,0,0,2,-60,-7,0,2,0.4,0.1,0,2,-80,0,0,2,0.3,-0.15,0,2,-
40,0,0,2,Torso,0,0,0,2,-80,2,0,2,-1.85,-0.1,0.2,2,-
5,0,0,2,0,0,0,2,180,0,0,2,RightArm,1,0,0,2,35,-7,0,2,0.4,0.1,0,2,70,0,0,2,0.2,-
0.15,0,2,-45,0,0,2,Head,0,0,0,2,-95,-
2,0.6,2,1,0,0,2,6,4,0,0.66,0,0,0,2,180,20,0,0.66,RightLeg,1,0,0,2,85,2,0,2,0.2,0.15
,0.2,2,85,0,0,2,-0.7,0.1,0,2,-90,0,0,2,LeftLeg,-1,0,0,2,80,-2,0,2,-0.75,0.1,0.2,2,-
95,0,0,2,-0.5,0,0,2,0,0,0,2

elseif mode == "rickroll" then

RightHip.C0 = RightHip.C0:Lerp(cf(1, -0.9 - 0.2 * sin(sine * 2), 0) *


euler(1.5707963267948966, 1.6580627893946132 - 0.17453292519943295 * sin(sine +
0.8), -1.5707963267948966), deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(0.3 * sin(sine + 0.8), -0.1 + 0.2 *
sin(sine * 2), 0) * euler(-1.5707963267948966, 0, -3.141592653589793), deltaTime)
Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.5707963267948966 +
0.08726646259971647 * sin((sine - 0.5) * 2), 0.08726646259971647 * sin(sine - 1), -
3.141592653589793 + 0.2617993877991494 * sin(sine * 5)), deltaTime)
LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1 + 0.1 * sin(sine * 7), 0.2
- 0.1 * sin(sine + 0.8), -0.25) * euler(1.5707963267948966 + 0.5235987755982988 *
sin(sine * 7), -0.6981317007977318, 0.3490658503988659 * sin(sine * 7)), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -0.9 - 0.2 * sin(sine * 2), 0) *
euler(1.5707963267948966, -1.6580627893946132 - 0.17453292519943295 * sin(sine +
0.8), 1.5707963267948966), deltaTime)
RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1 + 0.1 * sin(sine * 7),
0.2 + 0.1 * sin(sine + 0.8), -0.25) * euler(1.5707963267948966 - 0.5235987755982988
* sin(sine * 7), 0.6981317007977318, 0.3490658503988659 * sin(sine * 7)),
deltaTime)
--RightLeg,1,0,0,1,90,0,0,1,-0.9,-0.2,0,2,95,-10,0.8,1,0,0,0,1,-
90,0,0,1,Torso,0,0.3,0.8,1,-90,0,0,1,-0.1,0.2,0,2,0,0,0,1,0,0,0,1,-
180,0,0,1,Head,0,0,0,1,-90,5,-0.5,2,1,0,0,1,0,5,-1,1,0,0,0,1,-
180,15,0,5,Fedora_Handle,8.657480066176504e-09,0,0,1,-6,0,0,1,-
0.15052366256713867,0,0,1,0,0,0,1,-0.010221302509307861,0,0,1,0,0,0,1,LeftArm,-
1,0.1,0,7,90,30,0,7,0.2,-0.1,0.8,1,-40,0,0,1,-0.25,0,0,1,0,20,0,7,LeftLeg,-
1,0,0,1,90,0,0,1,-0.9,-0.2,0,2,-95,-
10,0.8,1,0,0,0,1,90,0,0,1,RightArm,1,0.1,0,7,90,-30,0,7,0.2,0.1,0.8,1,40,0,0,1,-
0.25,0,0,1,-0,20,0,7

elseif mode == "wave" then

LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.5, 0) *


euler(1.5707963267948966, -1.6580627893946132 + 0.08726646259971647 * sin((sine -
0.3) * 4), 1.5707963267948966), deltaTime)
RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1 + 0.15 * sin((sine - 0.4)
* 4), 1.42, 0) * euler(1.5707963267948966, 1.4835298641951802 - 0.3490658503988659
* sin((sine - 0.4) * 4), 1.5707963267948966), deltaTime)
Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.4835298641951802,
0.04363323129985824 - 0.08726646259971647 * sin((sine + 0.1) * 4), -
3.141592653589793 + 0.04363323129985824 * sin(sine * 4)), deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(0.1 * sin(sine * 4), 0, 0) *
euler(-1.5707963267948966, -0.08726646259971647 + 0.08726646259971647 * sin(sine *
4), -3.141592653589793), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(1, -1.1 + 0.1 * sin(sine * 4), 0) *
euler(1.5707963267948966, 1.5707963267948966 + 0.08726646259971647 * sin(sine * 4),
-1.5707963267948966), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1 - 0.02 * sin(sine * 4), -0.925 -
0.07 * sin(sine * 4), 0) * euler(1.5707963267948966, -1.7453292519943295 +
0.08726646259971647 * sin(sine * 4), 1.5707963267948966), deltaTime)
--LeftArm,-1,0,0,4,90,0,0,4,0.5,0,0,4,-95,5,-
0.3,4,0,0,0,4,90,0,0,4,RightArm,1,0.15,-0.4,4,90,0,0,4,1.42,0,0,4,85,-20,-
0.4,4,0,0,0,4,90,0,0,4,Head,0,0,0,4,-85,0,0,4,1,0,0,4,2.5,-5,0.1,4,0,0,0,4,-
180,2.5,0,4,Torso,0,0.1,0,4,-90,0,0,4,0,0,0,4,-5,5,0,4,0,0,0,4,-
180,0,0,4,RightLeg,1,0,0,4,90,0,0,4,-1.1,0.1,0,4,90,5,0,4,0,0,0,4,-
90,0,0,4,LeftLeg,-1,-0.02,0,4,90,0,0,4,-0.925,-0.07,0,4,-100,5,0,4,0,0,0,4,90,0,0,4

elseif mode == "dab" then

LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1.5, 0.5, 0) * euler(-


1.7453292519943295, 0.17453292519943295 - 0.04363323129985824 * sin(sine * 2), -
1.4835298641951802), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(1, -0.9000000953674316 - 0.1 *
sin(sine * 2), 0) * euler(-1.3962634015954636, 1.3962634015954636,
1.5707963267948966), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1.0000001192092896 - 0.1 *
sin(sine * 2), 0) * euler(-1.5707963267948966, -1.3962634015954636, -
1.5707963267948966), deltaTime)
Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-2.0943951023931953 +
0.08726646259971647 * sin((sine - 1) * 2), -0.08726646259971647,
2.792526803190927), deltaTime)
RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 1.2000000476837158, 0) *
euler(2.6179938779914944 + 0.08726646259971647 * sin((sine - 1) * 2),
0.6981317007977318, -1.3962634015954636), deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0.1 * sin(sine * 2), 0) *
euler(-1.6580627893946132, 0.08726646259971647, 3.0543261909900767), deltaTime)
--LeftArm,-1.5,0,0,2,-100,0,0,2,0.5,0,0,2,10,-2.5,0,2,0,0,0,2,-
85,0,0,2,RightLeg,1,0,0,2,-80,0,0,2,-0.9000000953674316,-
0.1,0,2,80,0,0,2,0,0,0,2,90,0,0,2,LeftLeg,-1,0,0,2,-90,0,0,2,-1.0000001192092896,-
0.1,0,2,-80,0,0,2,0,0,0,2,-90,0,0,2,Fedora_Handle,8.657480066176504e-09,0,0,2,-
6,0,0,2,-0.15052366256713867,0,0,2,0,0,0,2,-
0.010221302509307861,0,0,2,0,0,0,2,Head,0,0,0,2,-120,5,-1,2,1,0,0,2,-
5,0,0,2,0,0,0,2,160,0,0,2,RightArm,1,0,0,2,150,5,-
1,2,1.2000000476837158,0,0,2,40,0,0,2,0,0,0,2,-80,0,0,2,Torso,0,0,0,2,-
95,0,0,2,0,0.1,0,2,5,0,0,2,0,0,0,2,175,0,0,2

elseif mode == "blaze" then


RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0.75 + 0.25 * sin(sine * 2), 0)
* euler(-1.5707963267948966, 0, 3.141592653589793), deltaTime)
Neck.C0 = Neck.C0:Lerp(cf(0, 1.5 - 0.1 * sin((sine + 0.2) * 2), 0) *
euler(-1.5707963267948966 - 0.08726646259971647 * sin((sine + 0.4) * 2), 0,
3.141592653589793 + 0.3490658503988659 * sin(sine * 0.66)), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-0.5 - 1 * sin((sine + 0.2) * 2.2), -
0.75 - 0.25 * sin(sine * 2), 1 * sin((sine + 0.95) * 2.2)) * euler(0, -
1.5707963267948966, 0), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(0.5 + 1 * sin((sine + 0.2) * 2.2), -
0.75 - 0.25 * sin(sine * 2), -1 * sin((sine + 0.95) * 2.2)) * euler(0,
1.5707963267948966, 0), deltaTime)
RightShoulder.C0 = RightShoulder.C0:Lerp(cf(-0.5 - 1.85 * sin(sine *
2), 0.8 - 0.5 * sin(sine * 2), -1.85 * sin((sine + 0.75) * 2)) * euler(0,
1.5707963267948966, 0), deltaTime)
LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(0.5 + 1.85 * sin(sine * 2),
0.8 - 0.5 * sin(sine * 2), 1.85 * sin((sine + 0.75) * 2)) * euler(0, -
1.5707963267948966, 0), deltaTime)
--Torso,0,0,0,2,-90,0,0,2,0.75,0.25,0,2,-
0,0,0,2,0,0,0,2,180,0,0,2,Fedora_Handle,8.657480066176504e-09,0,0,2,-6,0,0,2,-
0.15052366256713867,0,0,2,0,0,0,2,-
0.010221302509307861,0,0,2,0,0,0,2,Head,0,0,0,2,-90,-5,0.4,2,1.5,-0.1,0.2,2,-
0,0,0,2,0,0,0,2,180,20,0,0.66,LeftLeg,-0.5,-1,0.2,2.2,-0,0,0,2,-0.75,-0.25,0,2,-
90,0,0,2,0,1,0.95,2.2,0,0,0,2,RightLeg,0.5,1,0.2,2.2,0,0,0,2,-0.75,-
0.25,0,2,90,0,0,2,0,-1,0.95,2.2,0,0,0,2,RightArm,-0.5,-1.85,0,2,0,0,0,2,0.8,-
0.5,0,2,90,0,0,2,0,-1.85,0.75,2,0,0,0,2,LeftArm,0.5,1.85,0,2,-0,0,0,2,0.8,-
0.5,0,2,-90,0,0,2,0,1.85,0.75,2,0,0,0,2

elseif mode == "T" then

RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1.5, 0.5, 0) *


euler(1.5707963267948966, 3.141592653589793, -1.5707963267948966), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(1, -1, 0) * euler(0,
1.5707963267948966, 0), deltaTime)
LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1.5, 0.5, 0) *
euler(1.5707963267948966, 3.141592653589793, 1.5707963267948966), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1, 0) * euler(0, -
1.5707963267948966, 0), deltaTime)
Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.5707963267948966, 0, -
3.141592653589793), deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0, 0) * euler(-
1.5707963267948966, 0, -3.141592653589793), deltaTime)
--RightArm,1.5,0,0,1,90,0,0,1,0.5,0,0,1,180,0,0,1,0,0,0,1,-
90,0,0,1,RightLeg,1,0,0,1,0,0,0,1,-
1,0,0,1,90,0,0,1,0,0,0,1,0,0,0,1,Fedora_Handle,8.657480066176504e-09,0,0,1,-
6,0,0,1,-0.15052366256713867,0,0,1,0,0,0,1,-
0.010221302509307861,0,0,1,0,0,0,1,LeftArm,-
1.5,0,0,1,90,0,0,1,0.5,0,0,1,180,0,0,1,0,0,0,1,90,0,0,1,LeftLeg,-1,0,0,1,-0,0,0,1,-
1,0,0,1,-90,0,0,1,0,0,0,1,0,0,0,1,Head,0,0,0,1,-90,0,0,1,1,0,0,1,0,0,0,1,0,0,0,1,-
180,0,0,1,Torso,0,0,0,1,-90,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,-180,0,0,1

elseif mode == "float" then

RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.5, 0) * euler(-


1.7453292519943295, 1.5707963267948966 + 0.17453292519943295 * sin((sine + 1) * 2),
1.5707963267948966), deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(1 * sin(sine * 2), 2 + 0.5 *
sin(sine * 1), 0) * euler(-1.3962634015954636, 0.08726646259971647 * sin(sine * 2),
3.141592653589793), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1, 0) * euler(1.3962634015954636,
-1.5707963267948966 + 0.08726646259971647 * sin((sine + 2) * 2),
1.5707963267948966), deltaTime)
LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.5, 0) *
euler(1.3962634015954636, -1.5707963267948966 - 0.17453292519943295 * sin((sine +
1) * 2), 1.5707963267948966), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(1, -1, 0) * euler(1.3962634015954636,
1.5707963267948966 + 0.08726646259971647 * sin((sine + 2) * 2), -
1.5707963267948966), deltaTime)
Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.0471975511965976 +
0.17453292519943295 * sin((sine + 1) * 1), -0.17453292519943295 * sin((sine + 0.5)
* 2), 3.141592653589793 + 0.17453292519943295 * sin((sine + 0.2) * 2)), deltaTime)
--RightArm,1,0,0,1,-
100,0,0,1,0.5,0,0,1,90,10,1,2,0,0,0,1,90,0,0,1,Torso,0,1,0,2,-80,0,0,1,2,0.5,0,1,-
0,5,0,2,0,0,0,1,180,0,0,1,LeftLeg,-1,0,0,1,80,0,0,1,-1,0,0,1,-
90,5,2,2,0,0,0,1,90,0,0,1,LeftArm,-1,0,0,1,80,0,0,1,0.5,0,0,1,-90,-
10,1,2,0,0,0,1,90,0,0,1,RightLeg,1,0,0,1,80,0,0,1,-1,0,0,1,90,5,2,2,0,0,0,1,-
90,0,0,1,Head,0,0,0,1,-60,10,1,1,1,0,0,1,-0,-10,0.5,2,0,0,0,1,180,10,0.2,2

elseif mode == "floss" then

Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.5707963267948966 +


0.04363323129985824 * sin((sine + 0.125) * 16), -0.2617993877991494 * sin((sine +
0.05) * 8), -3.141592653589793 + 0.5235987755982988 * sin(sine * 1.1)), deltaTime)
RightShoulder.C0 = RightShoulder.C0:Lerp(cf(0.9 + 0.4 * sin(sine * 8),
0.5, -0.5 * sin((sine - 0.35) * 4)) * euler(1.5707963267948966 + 0.6981317007977318
* sin(sine * 4), 1.5707963267948966 + 0.8726646259971648 * sin(sine * 8), -
1.5707963267948966 + 0.17453292519943295 * sin((sine - 0.35) * 4)), deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(-0.1 * sin((sine + 0.4) * 8), 0, 0)
* euler(-1.5707963267948966, 0.3490658503988659 * sin(sine * 8), -
3.141592653589793), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1 - 0.4 * sin((sine - 0.01) * 8),
0) * euler(1.5707963267948966, -1.7453292519943295 + 0.5235987755982988 * sin(sine
* 8), 1.5707963267948966), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(1, -1 + 0.4 * sin((sine - 0.01) * 8),
0) * euler(1.5707963267948966, 1.7453292519943295 + 0.5235987755982988 * sin(sine *
8), -1.5707963267948966), deltaTime)
LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-0.9 + 0.4 * sin(sine * 8),
0.5, 0.5 * sin((sine + 0.25) * 4)) * euler(1.5707963267948966, -1.5707963267948966
+ 0.8726646259971648 * sin(sine * 8), 1.5707963267948966 + 0.6981317007977318 *
sin((sine + 0.25) * 4)), deltaTime)
--Head,0,0,0,8,-90,2.5,0.125,16,1,0,0,8,0,-15,0.05,8,0,0,0,8,-
180,30,0,1.1,RightArm,0.9,0.4,0,8,90,40,0,4,0.5,0,0,8,90,50,0,8,0,-0.5,-0.35,4,-
90,10,-0.35,4,Fedora_Handle,8.657480066176504e-09,0,0,8,-6,0,0,8,-
0.15052366256713867,0,0,8,0,0,0,8,-0.010221302509307861,0,0,8,0,0,0,8,Torso,0,-
0.1,0.4,8,-90,0,0,8,0,0,0,4,0,20,0,8,0,0,0,8,-180,0,0,8,LeftLeg,-1,0,0,8,90,0,0,8,-
1,-0.4,-0.01,8,-100,30,0,8,0,0,0,8,90,0,0,8,RightLeg,1,0,0,8,90,0,0,8,-1,0.4,-
0.01,8,100,30,0,8,0,0,0,8,-90,0,0,8,LeftArm,-0.9,0.4,0,8,90,0,0.25,4,0.5,0,0,8,-
90,50,0,8,0,0.5,0.25,4,90,40,0.25,4

elseif mode == "emote" then

Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.5707963267948966, -


0.4363323129985824 * sin(sine * 8), -3.141592653589793), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(1, -1 + 0.3 * sin(sine * 8), 0) *
euler(1.5707963267948966, 1.5707963267948966 + 0.5235987755982988 * sin(sine * 8),
-1.5707963267948966), deltaTime)
LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-0.5, 1, 0) * euler(-
0.5235987755982988, -1.5707963267948966 - 0.5235987755982988 * sin(sine * 8),
3.141592653589793), deltaTime)
RightShoulder.C0 = RightShoulder.C0:Lerp(cf(0.5, 1, 0) * euler(-
0.5235987755982988, 1.5707963267948966 - 0.5235987755982988 * sin(sine * 8),
3.141592653589793), deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(-0.1 * sin(sine * 8), 0.2 *
sin((sine + 0.1) * 16), 0) * euler(-1.5707963267948966, 0.2617993877991494 *
sin(sine * 8), -3.141592653589793), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1 - 0.3 * sin(sine * 8), 0) *
euler(1.5707963267948966, -1.5707963267948966 + 0.5235987755982988 * sin(sine * 8),
1.5707963267948966), deltaTime)
--Head,0,0,0,8,-90,0,0,8,1,0,0,8,0,-25,0,8,0,0,0,8,-
180,0,0,8,RightLeg,1,0,0,8,90,0,0,8,-1,0.3,0,8,90,30,0,8,0,0,0,8,-
90,0,0,8,LeftArm,-0.5,0,0,8,-30,0,0,8,1,0,0,8,-90,-
30,0,8,0,0,0,8,180,0,0,8,RightArm,0.5,0,0,8,-30,0,0,8,1,0,0,16,90,-
30,0,8,0,0,0,8,180,0,0,8,Torso,0,-0.1,0,8,-90,0,0,8,0,0.2,0.1,16,0,15,0,8,0,0,0,8,-
180,0,0,8,LeftLeg,-1,0,0,8,90,0,0,8,-1,-0.3,0,8,-
90,30,0,8,0,0,0,8,90,0,0,8,Fedora_Handle,8.657480066176504e-09,0,0,8,-6,0,0,8,-
0.15052366256713867,0,0,8,0,0,0,8,-0.010221302509307861,0,0,8,0,0,0,8

elseif mode == "pushups" then

RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1.2 - 0.3 * sin(sine * 4),


0.5 + 0.15 * sin(sine * 4), 0.4 - 0.6 * sin(sine * 4)) * euler(3.0543261909900767 -
0.17453292519943295 * sin(sine * 4), 1.3962634015954636 + 0.17453292519943295 *
sin(sine * 4), -1.5707963267948966), deltaTime)
Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.5707963267948966, 0,
3.141592653589793), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1, 0) * euler(1.5707963267948966,
-1.3962634015954636, 1.5707963267948966), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(1, -1, 0) * euler(1.5707963267948966,
1.3962634015954636, -1.5707963267948966), deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(0, -1.99 + 0.5 * sin(sine * 4),
0.15 * sin(sine * 4)) * euler(3.3161255787892263 + 0.17453292519943295 * sin(sine *
4), 0, 3.141592653589793), deltaTime)
LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1.2 + 0.3 * sin(sine * 4),
0.5 + 0.15 * sin(sine * 4), 0.4 - 0.6 * sin(sine * 4)) * euler(3.0543261909900767 -
0.17453292519943295 * sin(sine * 4), -1.3962634015954636 - 0.17453292519943295 *
sin(sine * 4), 1.5707963267948966), deltaTime)
--RightArm,1.2,-0.3,0,4,175,-10,0,4,0.5,0.15,0,4,80,10,0,4,0.4,-
0.6,0,4,-90,0,0,4,Head,0,0,0,4,-90,0,0,4,1,0,0,4,-
0,0,0,4,0,0,0,4,180,0,0,4,LeftLeg,-1,0,0,4,90,0,0,4,-1,0,0,4,-
80,0,0,4,0,0,0,4,90,0,0,4,RightLeg,1,0,0,4,90,0,0,4,-1,0,0,4,80,0,0,4,0,0,0,4,-
90,0,0,4,Torso,0,0,0,4,190,10,0,4,-1.99,0.5,0,4,-
0,0,0,4,0,0.15,0,4,180,0,0,4,LeftArm,-1.2,0.3,0,4,175,-10,0,4,0.5,0.15,0,4,-80,-
10,0,4,0.4,-0.6,0,4,90,0,0,4

elseif mode == "kazotsky" then

LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-0.8 + 0.1 * sin(sine * 4),


0.5 - 0.15 * sin(sine * 4), -0.2) * euler(3.141592653589793 + 0.17453292519943295 *
sin((sine + 0.6) * 8), -0.17453292519943295, 1.5707963267948966 -
0.08726646259971647 * sin(sine * 4)), deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(0, -0.5 + 0.3 * sin((sine + 0.25) *
8), 0) * euler(-1.3962634015954636 + 0.08726646259971647 * sin((sine + 0.5) * 8),
0.08726646259971647 * sin((sine + 0.1) * 4), 3.141592653589793), deltaTime)
RightShoulder.C0 = RightShoulder.C0:Lerp(cf(0.8 + 0.1 * sin(sine * 4),
0.5 + 0.15 * sin(sine * 4), -0.2) * euler(3.141592653589793 + 0.17453292519943295 *
sin((sine + 0.6) * 8), 0.17453292519943295, -1.5707963267948966 -
0.08726646259971647 * sin(sine * 4)), deltaTime)
Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.6580627893946132 -
0.08726646259971647 * sin((sine + 0.5) * 8), -0.08726646259971647 * sin((sine +
0.2) * 4), 3.141592653589793), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(1, -0.5 - 0.5 * sin((sine + 0.6) *
8), -0.5) * euler(1.7453292519943295 + 1.0471975511965976 * sin(sine * 4),
1.5707963267948966 + 0.2617993877991494 * sin(sine * 4), -1.5707963267948966),
deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -0.5 - 0.5 * sin((sine + 0.6) * 8),
-0.5) * euler(1.7453292519943295 - 1.0471975511965976 * sin(sine * 4), -
1.5707963267948966 + 0.017453292519943295 * sin(sine * 4), 1.5707963267948966),
deltaTime)
--LeftArm,-0.8,0.1,0,4,180,10,0.6,8,0.5,-0.15,0,4,-10,0,0,4,-
0.2,0,0,4,90,-5,0,4,Torso,0,0,0,4,-80,5,0.5,8,-0.5,0.3,0.25,8,-
0,5,0.1,4,0,0,0,4,180,0,0,4,RightArm,0.8,0.1,0,4,180,10,0.6,8,0.5,0.15,0,4,10,0,0,4
,-0.2,0,0,4,-90,-5,0,4,Head,0,0,0,4,-95,-5,0.5,8,1,0,0,4,-0,-
5,0.2,4,0,0,0,4,180,0,0,4,RightLeg,1,0,0,4,100,60,0,4,-0.5,-0.5,0.6,8,90,15,0,4,-
0.5,0,0,4,-90,0,0,4,LeftLeg,-1,0,0,4,100,-60,0,4,-0.5,-0.5,0.6,8,-90,1,0,4,-
0.5,0,0,4,90,0,0,4

elseif mode == "L" then

Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.5707963267948966 +


0.04363323129985824 * sin((sine + 0.1) * 1), -0.17453292519943295 * sin((sine +
0.1) * 5), -3.141592653589793), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(1, -1 + 0.2 * sin(sine * 5), -0.2 +
0.2 * sin(sine * 5)) * euler(2.181661564992912 - 0.8726646259971648 * sin(sine *
5), 1.9198621771937625 - 0.3490658503988659 * sin(sine * 5), -1.5707963267948966),
deltaTime)
RightShoulder.C0 = RightShoulder.C0:Lerp(cf(0.7, 0.8, 0) *
euler(1.0471975511965976 + 0.03490658503988659 * sin(sine * 10), 2.0943951023931953
+ 0.10471975511965978 * sin((sine + 0.1) * 5), 1.5707963267948966), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1 - 0.2 * sin(sine * 5), -0.2 -
0.2 * sin(sine * 5)) * euler(2.181661564992912 + 0.8726646259971648 * sin(sine *
5), -1.9198621771937625 - 0.3490658503988659 * sin(sine * 5), 1.5707963267948966),
deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0.15 + 0.4 * sin((sine - 0.5) *
10), 0) * euler(-1.4835298641951802, 0.17453292519943295 * sin(sine * 5), -
3.141592653589793), deltaTime)
LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-0.7, 0.5, -0.3) *
euler(1.7453292519943295, -0.8726646259971648, 1.5707963267948966), deltaTime)
--Head,0,0,0,5,-90,2.5,0.1,1,1,0,0,4,0,-10,0.1,5,0,0,0,4,-
180,0,0,4,RightLeg,1,0,0,4,125,-50,0,5,-1,0.2,0,5,110,-20,0,5,-0.2,0.2,0,5,-
90,0,0,4,RightArm,0.7,0,0,4,60,2,0,10,0.8,0,0,4,120,6,0.1,5,0,0,0,4,90,0,0,4,LeftLe
g,-1,0,0,4,125,50,0,5,-1,-0.2,0,5,-110,-20,0,5,-0.2,-
0.2,0,5,90,0,0,4,Torso,0,0,0,4,-85,0,0,4,0.15,0.4,-0.5,10,0,10,0,5,0,0,0,4,-
180,0,0,4,LeftArm,-0.7,0,0,4,100,0,0,4,0.5,0,0,4,-50,0,0,4,-0.3,0,0,4,90,0,0,4

end

else

local fw, rt = cfr.LookVector * vel / walkSpeed, cfr.RightVector * vel /


walkSpeed
fw, rt = fw.X + fw.Z, rt.X + rt.Z

if onground and ((vel * v3_101).Magnitude > 0) then -- walk

local rY, lY = raycastlegs()


Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * euler(-1.5707963267948966 +
0.12217304763960307 * sin((sine - 0.1) * 16), -0.05235987755982989 * sin(sine * 8),
3.141592653589793 - 0.17453292519943295 * sin((sine - 0.05) * 8) - rt), deltaTime)
LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1 + 0.2 * sin((sine + 0.1) * 8) +
lY, lY * -0.5) * euler(-1.5707963267948966 + 0.6981317007977318 * sin(sine * 8) *
fw, -1.5707963267948966 - 0.5235987755982988 * sin((sine - 0.05) * 8) * rt, -
1.5707963267948966), deltaTime)
RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.5, 0) * euler(0,
1.5707963267948966 + 0.3490658503988659 * sin((sine + 0.1) * 8),
0.005235987755982988 + 0.6981317007977318 * sin(sine * 8) * fw), deltaTime)
LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.5, 0) * euler(0, -
1.5707963267948966 + 0.3490658503988659 * sin((sine + 0.1) * 8),
0.005235987755982988 + 0.6981317007977318 * sin(sine * 8) * fw), deltaTime)
RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0.25 * sin((sine + 0.05) * 16),
0) * euler(-1.5707963267948966 + 0.08726646259971647 * sin((sine + 0.05) * 16) + fw
* -0.1, -0.03490658503988659 * sin(sine * 8) + rt * 0.1, 3.141592653589793 +
0.17453292519943295 * sin(sine * 8)), deltaTime)
RightHip.C0 = RightHip.C0:Lerp(cf(1, -1 - 0.2 * sin((sine + 0.1) * 8) +
rY, rY * -0.5) * euler(-1.5707963267948966 - 0.6981317007977318 * sin(sine * 8) *
fw, 1.5707963267948966 + 0.5235987755982988 * sin((sine - 0.05) * 8) * rt,
1.5707963267948966), deltaTime)
--Head,0,0,0,8,-90,7,-0.1,16,1,0,0,8,-0,-3,0,8,0,0,0,8,180,-10,-
0.05,8,Fedora_Handle,8.657480066176504e-09,0,0,8,-6,0,0,8,-
0.15052366256713867,0,0,8,0,0,0,8,-0.010221302509307861,0,0,8,0,0,0,8,LeftLeg,-
1,0,0,8,-90,40,0,8,-1,0.2,0.1,8,-90,-30,-0.05,8,0,0,0,8,-
90,0,0,8,RightArm,1,0,0,8,0,0,0,8,0.5,0,0,8,90,20,0.1,8,0,0,0,8,0.3,40,0,8,LeftArm,
-1,0,0,8,-0,0,0,8,0.5,0,0,8,-90,20,0.1,8,0,0,0,8,0.3,40,0,8,Torso,0,0,0,8,-
90,5,0.05,16,0,0.25,0.05,16,-0,-2,0,8,0,0,0,8,180,10,0,8,RightLeg,1,0,0,8,-90,-
40,0,8,-1,-0.2,0.1,8,90,30,-0.05,8,0,0,0,8,90,0,0,8

elseif vel.Y > 0 then -- jump

RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0, 0) * euler(-


1.4835298641951802 + 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.3962634015954636, 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,-85,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,-80,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

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)

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy