DuyOnline101

Nameless animations v6

Aug 22nd, 2023
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 66.51 KB | None | 0 0
  1. --[[
  2.     nameless animations v6
  3.     by MyWorld (remember me)
  4. ]]
  5.  
  6. --[[
  7.     FDless reanimate by MyWorld
  8.     no client sided instances
  9.     another thing i give this community...
  10.     yep im the first
  11. ]]
  12.  
  13. local healthHide = true --moves your head away every 3 seconds so other players dont see your health bar
  14. local hideHealthHide = true --if this is enabled with health hide you wont see your head disappearing, others will
  15. local reclaim = true --if you lost control over a part this will move your primary part to the part so you get it back
  16. local novoid = true --prevents parts from going under workspace.FallenPartsDestroyHeight if you control them
  17. local antiragdoll = true --removes instances that are usually used for ragdolling form your character
  18. local addPartsOnRun = false --allows u to add more parts and joints to the simulation after it started
  19. local discharscripts = true --disables all localScripts parented to your character before reanimation
  20. local R15toR6 = true --adds fake r6 parts and joints for animations if your character is r15
  21. local hatcollide = false --makes hats cancollide (credit to ShownApe) (use method 0)
  22. local humState16 = true --enables collisions for limbs before the humanoid dies (using hum:ChangeState)
  23. local walkSpeed = 16 --your walkspeed (can be changed at runtime)
  24. local jumpPower = 50 --your jump power (can be changed at runtime)
  25. local allowshiftlock = true --allows the user to use shiftlock (can be changed at runtime)
  26. local gravity = 196.2 --how fast the characters velocity increases while falling (can be changed at runtime)
  27. local simrad = 1000 --sets simulation radius to this with sethiddenproperty (nil to disable)
  28. local loadtime = game:GetService("Players").RespawnTime + 0.5 --anti respawn delay
  29. local method = 3 --reanimation method
  30. --methods:
  31. --0 - breakJoints (takes [loadtime] seconds to load)
  32. --1 - limbs
  33. --2 - limbs + anti respawn
  34. --3 - limbs + breakJoints after [loadtime] seconds
  35. --4 - remove humanoid + breakJoints
  36. local flingparts = { --the fling function will use the first part available for flinging from this table
  37.     "UpperTorso", "RightUpperArm", "LeftUpperArm", "LowerTorso", "HumanoidRootPart", "Right Leg", "Left Leg", "Torso", "Head"
  38. }
  39. --the fling function
  40. --usage: fling(target, duration, velocity)
  41. --target can be set to: basePart, CFrame, Vector3, character model or humanoid (flings at mouse.Hit if argument not provided)
  42. --duration (fling time in seconds) can be set to a number or a string convertable to a number (0.5s if not provided)
  43. --velocity (fling part rotation velocity) can be set to a vector3 value (Vector3.new(20000, 20000, 20000) if not provided)
  44. local clickfling = 2 --click fling mode
  45. --false - click fling disabled
  46. --0 - click fling without prediction
  47. --1 - with prediction if pointing at a character, otherwise not flinging
  48. --2 - with prediction if pointing at a character, otherwise no prediction
  49. local maxflingtrsp = 0.5 --max transparency of the fling part (if its above this it will be set to this)
  50.  
  51. local ws, rs = game:GetService("Workspace"), game:GetService("RunService")
  52. local plrs, uis = game:GetService("Players"), game:GetService("UserInputService")
  53. local lp, gs = plrs.LocalPlayer, game:GetService("GuiService")
  54. local stepped, heartbeat, renderstepped = rs.Stepped, rs.Heartbeat, rs.RenderStepped
  55. local twait, tdelay, tspawn = task.wait, task.delay, task.spawn
  56. local tinsert, tfind, osclock = table.insert, table.find, os.clock
  57. local sin, abs, sine, clamp, mrandom = math.sin, math.abs, osclock(), math.clamp, math.random
  58. local cf, v3, angles = CFrame.new, Vector3.new, CFrame.Angles
  59. local v3_0, v3_101, v3_010, v3_h, v3_0150, cf_0 = v3(0, 0, 0), v3(1, 0, 1), v3(0, 1, 0), v3(0, 3000, 0), v3(0, 1.5, 0), cf(0, 0, 0)
  60. local c = lp.Character
  61. if not c then return end
  62. if not c:IsDescendantOf(ws) then return end
  63. local c1 = c
  64. c.AncestryChanged:Connect(function()
  65.     if c1 then
  66.         if c1:IsDescendantOf(ws) then
  67.             c = c1
  68.         else
  69.             c = nil
  70.         end
  71.     end
  72. end)
  73. local function gp(parent, name, className)
  74.     if typeof(parent) == "Instance" then
  75.         for i, v in pairs(parent:GetChildren()) do
  76.             if (v.Name == name) and v:IsA(className) then
  77.                 return v
  78.             end
  79.         end
  80.     end
  81.     return nil
  82. end
  83. local rootpart = gp(c, "HumanoidRootPart", "BasePart") or gp(c, "Torso", "BasePart") or gp(c, "UpperTorso", "BasePart") or c:FindFirstChildWhichIsA("BasePart")
  84. if not rootpart then return end
  85. local head, torso = gp(c, "Head", "BasePart"), gp(c, "Torso", "BasePart") or gp(c, "UpperTorso", "BasePart")
  86. local hum = c:FindFirstChildOfClass("Humanoid")
  87.  
  88. healthHide = healthHide and head
  89. hideHealthHide = healthHide and hideHealthHide
  90. reclaim = reclaim and (c.PrimaryPart or rootpart)
  91. novoid = novoid and (ws.FallenPartsDestroyHeight + 1)
  92. flingparts = ((type(flingparts) == "table") and flingparts) or ((type(flingparts) == "string") and {flingparts}) or {}
  93. hatcollide = hatcollide and (method == 0)
  94. R15toR6 = R15toR6 and hum and (hum.RigType == Enum.HumanoidRigType.R15)
  95. local shp = getfenv().sethiddenproperty
  96. simrad = shp and tonumber(simrad)
  97.  
  98. for i, v in pairs(flingparts) do
  99.     flingparts[i] = gp(c, v, "BasePart") or {Anchored = true}
  100. end
  101.  
  102. if (method == 0) or (method == 2) or (method == 3) then
  103.     lp.Character = nil
  104.     lp.Character = c
  105. end
  106. if method == 0 then
  107.     twait(plrs.RespawnTime + 0.5)
  108. elseif method == 3 then
  109.     tdelay(plrs.RespawnTime + 0.5, pcall, c.BreakJoints, c)
  110. elseif method == 4 then
  111.     if hum then
  112.         hum:Destroy()
  113.         hum = nil
  114.     end
  115. end
  116. if not c then return end
  117.  
  118. local cam = ws.CurrentCamera
  119. local enumCamS, camt, camcf = Enum.CameraType.Scriptable, cam.CameraType, cam.CFrame
  120. local camcon0, camcon1 = nil, nil
  121. local function onnewcamera()
  122.     if camcon0 then
  123.         camcon0:Disconnect()
  124.         camcon0 = nil
  125.     end
  126.     cam = ws.CurrentCamera
  127.     if not c then
  128.         if cam.CameraType == enumCamS then
  129.             cam.CameraType = camt
  130.         end
  131.         return camcon1:Disconnect()
  132.     end
  133.     camcon0 = cam.Changed:Connect(function(p)
  134.         if not c then
  135.             camcon0:Disconnect()
  136.             return camcon1:Disconnect()
  137.         end
  138.         if (p == "CFrame") and (cam.CFrame ~= camcf) then
  139.             cam.CFrame = camcf
  140.         elseif (p == "CameraSubject") or (p == "CameraType") then
  141.             local subj = cam.CameraSubject
  142.             if subj and subj:IsA("Humanoid") and (subj.Parent == c) and (cam.CameraType ~= enumCamS) then
  143.                 cam.CameraType = enumCamS
  144.             end
  145.         end
  146.     end)
  147.     local subj = cam.CameraSubject
  148.     if subj and subj:IsA("Humanoid") and (subj.Parent == c) and (cam.CameraType ~= enumCamS) then
  149.         cam.CameraType = enumCamS
  150.     end
  151.     cam.CFrame = camcf
  152. end
  153. camcon1 = ws:GetPropertyChangedSignal("CurrentCamera"):Connect(onnewcamera)
  154. onnewcamera()
  155. if discharscripts then
  156.     for i, v in pairs(c:GetChildren()) do
  157.         if v:IsA("LocalScript") then
  158.             v.Disabled = true
  159.         end
  160.     end
  161. end
  162.  
  163. if humState16 and hum and (hum.Health > 0) then
  164.     hum:ChangeState(16)
  165. end
  166. local keepneck = head and torso and ((method == 1) or (method == 2) or (method == 3))
  167. local joints, cframes, lastpositions = {}, {}, {}
  168. local function ondes(v)
  169.     if antiragdoll and v:IsA("HingeConstraint") or v:IsA("BallSocketConstraint") then
  170.         v:Destroy()
  171.     elseif addPartsOnRun then
  172.         if v:IsA("JointInstance") then
  173.             tinsert(joints, {
  174.                 Name = v.Name,
  175.                 C0 = v.C0,
  176.                 C1 = v.C1,
  177.                 Part0 = v.Part0,
  178.                 Part1 = v.Part1
  179.             })
  180.             if keepneck then
  181.                 if (v.Part0 == head) and (v.Part1 == torso) then
  182.                     return
  183.                 elseif (v.Part0 == torso) and (v.Part1 == head) then
  184.                     return
  185.                 end
  186.             end
  187.             if not hatcollide then
  188.                 v:Destroy()
  189.             end
  190.         elseif v:IsA("BasePart") then
  191.             cframes[v] = v.CFrame
  192.             lastpositions[v] = v.Position
  193.         end
  194.     end
  195. end
  196. if addPartsOnRun then
  197.     for i, v in pairs(c:GetDescendants()) do
  198.         ondes(v)
  199.     end
  200.     c.DescendantAdded:Connect(ondes)
  201. else
  202.     addPartsOnRun = true
  203.     for i, v in pairs(c:GetDescendants()) do
  204.         ondes(v)
  205.     end
  206.     addPartsOnRun = false
  207.     c.DescendantAdded:Connect(ondes)
  208. end
  209.  
  210. local cfr, shiftlock, firstperson, xzvel, Yvel = cframes[rootpart], false, false, v3_0, 0
  211. local camoff = cf(v3_0, camcf.LookVector) - v3(0, 0, (camcf.Position - (cfr.Position + v3_0150)).Magnitude)
  212.  
  213. if hatcollide then
  214.     hatcollide = c:FindFirstChildOfClass("BodyColors") or gp(c, "Health", "Script") or gp(c, "Animate", "LocalScript")
  215.     if torso and rootpart and hatcollide then
  216.         torso:Destroy()
  217.         rootpart:Destroy()
  218.         hatcollide:Destroy()
  219.     end
  220.     c:BreakJoints()
  221. end
  222. local refreshjoints = nil
  223. refreshjoints = function(part, refreshed)
  224.     if not part then return end
  225.     refreshed = refreshed or {}
  226.     tinsert(refreshed, part)
  227.     for i, v in pairs(joints) do
  228.         local part0, part1 = v.Part0, v.Part1
  229.         if part1 and (part0 == part) then
  230.             cframes[part1] = cframes[part] * v.C0 * v.C1:Inverse()
  231.             if not tfind(refreshed, part1) then
  232.                 refreshjoints(part1, refreshed)
  233.             end
  234.         elseif part0 and (part1 == part) then
  235.             cframes[part0] = cframes[part] * v.C1 * v.C0:Inverse()
  236.             if not tfind(refreshed, part0) then
  237.                 refreshjoints(part0, refreshed)
  238.             end
  239.         end
  240.     end
  241. end
  242.  
  243. if R15toR6 then
  244.     local R6parts = {
  245.         head = {Name = "Head", Anchored = true},
  246.         torso = {Name = "Torso", Anchored = true},
  247.         root = {Name = "HumanoidRootPart", Anchored = true},
  248.         leftArm = {Name = "Left Arm", Anchored = true},
  249.         rightArm = {Name = "Right Arm", Anchored = true},
  250.         leftLeg = {Name = "Left Leg", Anchored = true},
  251.         rightLeg = {Name = "Right Leg", Anchored = true}
  252.     }
  253.     for i, v in pairs(R6parts) do
  254.         cframes[v] = cfr
  255.     end
  256.     tinsert(joints, {
  257.         Name = "Neck",
  258.         Part0 = R6parts.torso, Part1 = R6parts.head,
  259.         C0 = cf(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0),
  260.         C1 = cf(0, -0.5, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
  261.     })
  262.     tinsert(joints, {
  263.         Name = "RootJoint" ,
  264.         Part0 = R6parts.root, Part1 = R6parts.torso,
  265.         C0 = cf(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0),
  266.         C1 = cf(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
  267.     })
  268.     tinsert(joints, {
  269.         Name = "Right Shoulder",
  270.         Part0 = R6parts.torso, Part1 = R6parts.rightArm,
  271.         C0 = cf(1, 0.5, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0),
  272.         C1 = cf(-0.5, 0.5, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
  273.     })
  274.     tinsert(joints, {
  275.         Name = "Left Shoulder",
  276.         Part0 = R6parts.torso, Part1 = R6parts.leftArm,
  277.         C0 = cf(-1, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0),
  278.         C1 = cf(0.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  279.     })
  280.     tinsert(joints, {
  281.         Name = "Right Hip",
  282.         Part0 = R6parts.torso, Part1 = R6parts.rightLeg,
  283.         C0 = cf(1, -1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0),
  284.         C1 = cf(0.5, 1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
  285.     })
  286.     tinsert(joints, {
  287.         Name = "Left Hip" ,
  288.         Part0 = R6parts.torso, Part1 = R6parts.leftLeg,
  289.         C0 = cf(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0),
  290.         C1 = cf(-0.5, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  291.     })
  292.     tinsert(joints, {
  293.         Part0 = R6parts.root, Part1 = rootpart,
  294.         C0 = cf_0, C1 = cf_0
  295.     })
  296.     refreshjoints(rootpart)
  297.     local function getpart(name)
  298.         for i, _ in pairs(cframes) do
  299.             if (i.Name == name) and (type(i) ~= "table") then
  300.                 return i
  301.             end
  302.         end
  303.         return nil
  304.     end
  305.     local function makejoint(p0, p1, p2)
  306.         p1, p2 = getpart(p1), getpart(p2)
  307.         if not (p1 and p2) then return end
  308.         for i, v in pairs(joints) do
  309.             if (v.Part0 == p1) and (v.Part1 == p2) then
  310.                 joints[i] = nil
  311.             elseif (v.Part0 == p2) and (v.Part1 == p1) then
  312.                 joints[i] = nil
  313.             end
  314.         end
  315.         tinsert(joints, {
  316.             Part0 = p0, Part1 = p1,
  317.             C0 = cf_0,
  318.             C1 = cframes[p1]:Inverse() * cframes[p0]
  319.         })
  320.     end
  321.     makejoint(R6parts.head, "Head", "UpperTorso")
  322.     makejoint(R6parts.leftArm, "LeftUpperArm", "UpperTorso")
  323.     makejoint(R6parts.rightArm, "RightUpperArm", "UpperTorso")
  324.     makejoint(R6parts.leftLeg, "LeftUpperLeg", "LowerTorso")
  325.     makejoint(R6parts.rightLeg, "RightUpperLeg", "LowerTorso")
  326.     makejoint(R6parts.torso, "LowerTorso", "HumanoidRootPart")
  327. end
  328.  
  329. local raycastparams = RaycastParams.new()
  330. raycastparams.FilterType = Enum.RaycastFilterType.Blacklist
  331. local rayfilter = {}
  332. local characters = {}
  333. local function refreshrayfilter()
  334.     for i, v in pairs(rayfilter) do
  335.         if not tfind(characters, v) then
  336.             rayfilter[i] = nil
  337.         end
  338.     end
  339.     for i, v in pairs(characters) do
  340.         if not tfind(rayfilter, v) then
  341.             tinsert(rayfilter, v)
  342.         end
  343.     end
  344.     raycastparams.FilterDescendantsInstances = rayfilter
  345. end
  346. local function oncharacter(plr, c)
  347.     characters[plr] = c
  348.     refreshrayfilter()
  349. end
  350. local function onplayer(v)
  351.     oncharacter(v, v.Character)
  352.     v.CharacterAdded:Connect(function(c)
  353.         oncharacter(v, c)
  354.     end)
  355. end
  356. for i, v in pairs(plrs:GetPlayers()) do onplayer(v) end
  357. plrs.PlayerAdded:Connect(onplayer)
  358. plrs.PlayerRemoving:Connect(function(v)
  359.     oncharacter(v, nil)
  360. end)
  361.  
  362. local mradN05 = math.rad(-0.5)
  363. local enumMLC = Enum.MouseBehavior.LockCenter
  364. local enumMB2 = Enum.UserInputType.MouseButton2
  365. local enumMLCP = Enum.MouseBehavior.LockCurrentPosition
  366. local enumMD = Enum.MouseBehavior.Default
  367. local enumMW = Enum.UserInputType.MouseWheel
  368.  
  369. local mode, modes = "default", {default = {}}
  370. local function addmode(key, mode)
  371.     if (type(key) ~= "string") or (type(mode) ~= "table") then
  372.         return
  373.     end
  374.     for i, v in pairs(mode) do
  375.         if type(v) ~= "function" then
  376.             mode[i] = nil
  377.         end
  378.     end
  379.     if key == "default" then
  380.         modes.default = mode
  381.     elseif #key == 1 then
  382.         key = Enum.KeyCode[key:sub(1, 1):upper()]
  383.         modes[key] = mode
  384.     end
  385. end
  386.  
  387. local keyW, keyA, keyS, keyD, keySpace, keyShift = Enum.KeyCode.W, Enum.KeyCode.A, Enum.KeyCode.S, Enum.KeyCode.D, Enum.KeyCode.Space, Enum.KeyCode.LeftShift
  388. local movementkeys = {
  389.     [keyW] = false,
  390.     [keyA] = false,
  391.     [keyS] = false,
  392.     [keyD] = false,
  393.     [keySpace] = false
  394. }
  395. uis.InputBegan:Connect(function(a)
  396.     if gs.MenuIsOpen or uis:GetFocusedTextBox() then
  397.         return
  398.     end
  399.     a = a.KeyCode
  400.     if movementkeys[a] == false then
  401.         movementkeys[a] = true
  402.     elseif a == keyShift then
  403.         shiftlock = allowshiftlock and not shiftlock
  404.     elseif modes[a] then
  405.         if mode == a then
  406.             mode = "default"
  407.         else
  408.             mode = a
  409.         end
  410.     end
  411. end)
  412. uis.InputEnded:Connect(function(a)
  413.     if movementkeys[a.KeyCode] then
  414.         movementkeys[a.KeyCode] = false
  415.     end
  416. end)
  417. uis.InputChanged:Connect(function(a, b)
  418.     if (not b) and (a.UserInputType == enumMW) then
  419.         camoff = camoff + a.Position * v3(0, 0, 0.75 - camoff.Z / 4)
  420.         if camoff.Z > 0 then
  421.             camoff = camoff - camoff.Position
  422.         end
  423.         firstperson = camoff.Z == 0
  424.     end
  425. end)
  426.  
  427. local healthHideTime, healthHidden = sine + 3, false
  428. local lostPart = nil
  429.  
  430. local v3_xz, v3_net = v3(10, 0, 10), v3(0, 25.01, 0)
  431. local function getNetlessVelocity(realPartVelocity)
  432.     --if true then return v3_0 end
  433.     --if true then return realPartVelocity end
  434.     if realPartVelocity.Magnitude > 25.1 then
  435.         realPartVelocity = realPartVelocity.Unit * 25.1
  436.     end
  437.     return realPartVelocity * v3_xz + v3_net
  438. end
  439.  
  440. local function getjoint(name)
  441.     for i, v in pairs(joints) do
  442.         if v.Name == name then
  443.             return v
  444.         end
  445.     end
  446.     return {C0 = cf_0, C1 = cf_0}
  447. end
  448.  
  449. local mouse, flingcf, flingvel, flingid, currentflingpart = lp:GetMouse(), nil, nil, 0, nil
  450. local function fling(target, duration, rotVelocity)
  451.     currentflingpart = nil
  452.     for i, v in pairs(flingparts) do
  453.         if v and (not v.Anchored) and v:IsDescendantOf(ws) and (v.ReceiveAge == 0) then
  454.             currentflingpart = v
  455.             break
  456.         end
  457.     end
  458.     if not currentflingpart then
  459.         return twait() and false
  460.     end
  461.     if typeof(target) == "Instance" then
  462.         if target:IsA("BasePart") then
  463.             target = target.Position
  464.         elseif target:IsA("Model") then
  465.             target = gp(target, "HumanoidRootPart", "BasePart") or gp(target, "Torso", "BasePart") or gp(target, "UpperTorso", "BasePart") or target:FindFirstChildWhichIsA("BasePart")
  466.             if target then
  467.                 target = target.Position
  468.             else
  469.                 return twait() and false
  470.             end
  471.         elseif target:IsA("Humanoid") then
  472.             target = target.Parent
  473.             if not (target and target:IsA("Model")) then
  474.                 return twait() and false
  475.             end
  476.             target = gp(target, "HumanoidRootPart", "BasePart") or gp(target, "Torso", "BasePart") or gp(target, "UpperTorso", "BasePart") or target:FindFirstChildWhichIsA("BasePart")
  477.             if target then
  478.                 target = target.Position
  479.             else
  480.                 return twait() and false
  481.             end
  482.         else
  483.             return twait() and false
  484.         end
  485.     elseif typeof(target) == "CFrame" then
  486.         target = target.Position
  487.     elseif typeof(target) ~= "Vector3" then
  488.         target = mouse.Hit
  489.         if target then
  490.             target = target.Position
  491.         else
  492.             return twait() and false
  493.         end
  494.     end
  495.     if type(duration) ~= "number" then
  496.         duration = tonumber(duration) or 0.5
  497.     end
  498.     if typeof(rotVelocity) ~= "Vector3" then
  499.         rotVelocity = v3(20000, 20000, 20000)
  500.     end
  501.     if (type(maxflingtrsp) == "number") and (currentflingpart.Transparency > maxflingtrsp) then
  502.         currentflingpart.Transparency = maxflingtrsp
  503.     end
  504.     flingcf = cf(target)
  505.     flingvel = rotVelocity
  506.     flingid = flingid + 1
  507.     local thisfling = flingid
  508.     twait(duration)
  509.     if flingid == thisfling then
  510.         flingcf = nil
  511.         currentflingpart = nil
  512.     end
  513.     return true
  514. end
  515.  
  516. local pflingid = 0
  517. local function predictionfling(target, duration, rotVelocity, stopOnVelMag)
  518.     if typeof(target) ~= "Instance" then
  519.         target = mouse.Target
  520.         if not target then
  521.             return twait() and false
  522.         end
  523.     end
  524.     if target:IsA("Humanoid") or target:IsA("BasePart") then
  525.         target = target.Parent
  526.     end
  527.     if target:IsA("Accessory") then
  528.         target = target.Parent
  529.     end
  530.     if (not target:IsA("Model")) or (target == c) then
  531.         return twait() and false
  532.     end
  533.     target = gp(target, "HumanoidRootPart", "BasePart") or gp(target, "Torso", "BasePart") or gp(target, "UpperTorso", "BasePart")
  534.     if not (target and target:IsDescendantOf(ws)) then
  535.         return twait() and false
  536.     end
  537.     if stopOnVelMag then
  538.         duration = tonumber(duration) or 5
  539.         stopOnVelMag = tonumber(stopOnVelMag) or 1000
  540.     elseif type(stopOnVelMag) == "boolean" then
  541.         duration = tonumber(duration) or 1
  542.         stopOnVelMag = nil
  543.     else
  544.         duration = tonumber(duration) or 5
  545.         stopOnVelMag = 1000
  546.     end
  547.     local stopTime = sine + duration
  548.     pflingid = pflingid + 1
  549.     local thisfling = pflingid
  550.     local con = nil
  551.     con = heartbeat:Connect(function(deltaTime)
  552.         if (thisfling ~= pflingid) or (sine > stopTime) or (stopOnVelMag and (target.Velocity.Magnitude > stopOnVelMag)) or (not (target and target:IsDescendantOf(ws))) then
  553.             return con:Disconnect()
  554.         end
  555.         fling(target.Position + target.Velocity * (sin(sine * 15) + 1), 0, rotVelocity)
  556.     end)
  557.     twait()
  558.     return true
  559. end
  560.  
  561. if clickfling == 0 then
  562.     mouse.Button1Down:Connect(fling)
  563. elseif clickfling == 1 then
  564.     mouse.Button1Down:Connect(predictionfling)
  565. elseif clickfling == 2 then
  566.     mouse.Button1Down:Connect(function()
  567.         if not predictionfling() then fling() end
  568.     end)
  569. end
  570.  
  571. if hideHealthHide then
  572.     local con = nil
  573.     if head == reclaim then
  574.         con = renderstepped:Connect(function()
  575.             if not (c and head:IsDescendantOf(ws)) then
  576.                 return con:Disconnect()
  577.             end
  578.             if (not lostPart) and (not head.Anchored) and (head.ReceiveAge == 0) and (head ~= currentflingpart) then
  579.                 head.CFrame = cframes[head]
  580.             end
  581.         end)
  582.     else
  583.         con = renderstepped:Connect(function()
  584.             if not (c and head:IsDescendantOf(ws)) then
  585.                 return con:Disconnect()
  586.             end
  587.             if (not head.Anchored) and (head.ReceiveAge == 0) and (head ~= currentflingpart) then
  588.                 head.CFrame = cframes[head]
  589.             end
  590.         end)
  591.     end
  592. end
  593.  
  594. local noYvelTime, deltaTime, lastsine, pose, con = 1, 0, sine, nil, nil
  595. local function mainFunction()
  596.     if not c then
  597.         uis.MouseBehavior = enumMD
  598.         onnewcamera()
  599.         local c = lp.Character
  600.         if c then
  601.             cam.CameraSubject = c:FindFirstChildOfClass("Humanoid")
  602.         end
  603.         return con and con:Disconnect()
  604.     end
  605.    
  606.     sine = osclock()
  607.     local delta = sine - lastsine
  608.     deltaTime = clamp(delta * 10, 0, 1)
  609.     lastsine = sine
  610.    
  611.     if shiftlock then
  612.         if allowshiftlock then
  613.             uis.MouseBehavior = enumMLC
  614.             local rotation = uis:GetMouseDelta() * mradN05
  615.             camoff = cf(camoff.Position, camoff.Position + camoff.LookVector) * angles(rotation.Y, rotation.X, 0)
  616.         else
  617.             shiftlock = false
  618.         end
  619.     elseif firstperson then
  620.         uis.MouseBehavior = enumMLC
  621.         local rotation = uis:GetMouseDelta() * mradN05
  622.         camoff = cf(camoff.Position, camoff.Position + camoff.LookVector) * angles(rotation.Y, rotation.X, 0)
  623.     elseif uis:IsMouseButtonPressed(enumMB2) then
  624.         uis.MouseBehavior = enumMLCP
  625.         local rotation = uis:GetMouseDelta() * mradN05
  626.         camoff = cf(camoff.Position, camoff.Position + camoff.LookVector) * angles(rotation.Y, rotation.X, 0)
  627.     else
  628.         uis.MouseBehavior = enumMD
  629.     end
  630.    
  631.     local raycastresult, onground = ws:Raycast(cfr.Position, v3_010 * ws.FallenPartsDestroyHeight - cfr.Position, raycastparams), nil
  632.     if raycastresult then
  633.         onground = (cfr.Y - raycastresult.Position.Y) < 3.01
  634.         if onground then
  635.             Yvel = 0
  636.             cfr = cfr + v3(0, raycastresult.Position.Y + 3 - cfr.Y, 0) * clamp(delta * 20, 0, 1)
  637.             if movementkeys[keySpace] then
  638.                 Yvel = jumpPower
  639.             end
  640.         else
  641.             Yvel = Yvel - gravity * delta
  642.             if cfr.Y + Yvel * delta < raycastresult.Position.Y then
  643.                 Yvel = 0
  644.                 cfr = cfr + v3_010 * (raycastresult.Position.Y + 3 - cfr.Y)
  645.             end
  646.         end
  647.     else
  648.         Yvel = 0
  649.         onground = false
  650.     end
  651.     xzvel = v3_0
  652.     if movementkeys[keyW] then
  653.         xzvel = xzvel + (camoff.LookVector * v3_101).Unit
  654.     end
  655.     if movementkeys[keyS] then
  656.         xzvel = xzvel - (camoff.LookVector * v3_101).Unit
  657.     end
  658.     if movementkeys[keyA] then
  659.         xzvel = xzvel - (camoff.RightVector * v3_101).Unit
  660.     end
  661.     if movementkeys[keyD] then
  662.         xzvel = xzvel + (camoff.RightVector * v3_101).Unit
  663.     end
  664.     if xzvel.Magnitude > 0 then
  665.         xzvel = xzvel.Unit * walkSpeed
  666.         cfr = cfr:Lerp(cf(cfr.Position, cfr.Position + xzvel), deltaTime)
  667.     end
  668.     if shiftlock or firstperson then
  669.         cfr = cf(cfr.Position, cfr.Position + camoff.LookVector * v3_101)
  670.     end
  671.     cfr = cfr + (xzvel + v3_010 * Yvel) * delta
  672.    
  673.     camcf = cf(cfr.Position, cfr.Position + camoff.LookVector) + (camoff.LookVector * camoff.Z) + v3_0150
  674.     if shiftlock and not firstperson then
  675.         camcf = camcf + camcf.RightVector * 1.75
  676.     end
  677.     cam.CFrame = camcf
  678.    
  679.     if onground then
  680.         if xzvel == v3_0 then
  681.             pose = "idle"
  682.         else
  683.             pose = "walk"
  684.         end
  685.     elseif Yvel > 0 then
  686.         pose = "jump"
  687.     else
  688.         pose = "fall"
  689.     end
  690.     local lerpfunc = modes[mode][pose]
  691.     lerpfunc = lerpfunc or modes.default[pose]
  692.     if lerpfunc then
  693.         lerpfunc()
  694.     end
  695.    
  696.     cframes[rootpart] = cfr
  697.     refreshjoints(rootpart)
  698.    
  699.     if abs(Yvel) > 1 then
  700.         noYvelTime = 0
  701.     else
  702.         noYvelTime = clamp(noYvelTime + delta, 0, 1)
  703.         xzvel = xzvel*(1-noYvelTime)
  704.     end
  705.    
  706.     if sine > healthHideTime then
  707.         healthHidden = not healthHidden
  708.         if healthHidden then
  709.             healthHideTime = healthHideTime + 0.1
  710.         else
  711.             healthHideTime = healthHideTime + 3
  712.         end
  713.     end
  714.    
  715.     local idleoff = delta / 5
  716.     local x, y, z = sin((sine - 0.01875) * 32) * idleoff, sin(sine * 32) * idleoff, sin((sine + 0.0375) * 32) * idleoff
  717.     idleoff = angles(x, y, z) + v3(x, y, z)
  718.    
  719.     for i, v in pairs(cframes) do
  720.         if (not i.Anchored) and i:IsDescendantOf(ws) then
  721.             if i.ReceiveAge == 0 then
  722.                 if (i == currentflingpart) and flingcf then
  723.                     flingcf = flingcf * angles(0, flingvel.Unit.Y * -deltaTime, 0)
  724.                     v = flingcf
  725.                     i.RotVelocity = flingvel
  726.                 else
  727.                     i.RotVelocity = v3_0
  728.                 end
  729.                 local vel = (v.Position - lastpositions[i]) / delta
  730.                 lastpositions[i] = v.Position
  731.                 if vel.Magnitude < 0.15 then
  732.                     v = v * idleoff
  733.                 end
  734.                 if (i == reclaim) and lostPart then
  735.                     v = lostPart.CFrame
  736.                     lostPart = nil
  737.                     i.Velocity = v3_0
  738.                 elseif healthHidden and (i == healthHide) then
  739.                     v = v + v3_h
  740.                     i.Velocity = getNetlessVelocity(v3_0)
  741.                 else
  742.                     i.Velocity = getNetlessVelocity(vel*noYvelTime + xzvel)
  743.                 end
  744.                 if novoid and (v.Y < novoid) then
  745.                     v = v + v3_010 * (novoid - v.Y)
  746.                 end
  747.                 i.CFrame = v
  748.             else
  749.                 lastpositions[i] = i.Position
  750.                 if reclaim and (i ~= reclaim) then
  751.                     lostPart = i
  752.                 end
  753.             end
  754.         end
  755.     end
  756.     if simrad then
  757.         shp(lp, "SimulationRadius", simrad)
  758.     end
  759. end
  760.  
  761. con = heartbeat:Connect(mainFunction)
  762. mainFunction()
  763.  
  764. local RootJoint = getjoint("RootJoint")
  765. local RightShoulder = getjoint("Right Shoulder")
  766. local LeftShoulder = getjoint("Left Shoulder")
  767. local RightHip = getjoint("Right Hip")
  768. local LeftHip = getjoint("Left Hip")
  769. local Neck = getjoint("Neck")
  770.  
  771. local legcfR, legcfL, raydir = cf(1, -1, 0), cf(-1, -1, 0), v3(0, -2, 0)
  772. local function raycastlegs() --this returns 2 values: right leg raycast offset, left leg raycast offset
  773.     local rY, lY = ws:Raycast((cfr * legcfR).Position, raydir, raycastparams), ws:Raycast((cfr * legcfL).Position, raydir, raycastparams)
  774.     return rY and (rY.Position.Y - (cfr.Y-3)) or 0, lY and (lY.Position.Y - (cfr.Y-3)) or 0
  775. end
  776.  
  777. local function velbycfrvec() --this returns 2 values: forward/backwards movement (from -1 to 1), right/left movement (from -1 to 1)
  778.     local fw, rt = cfr.LookVector * xzvel / walkSpeed, cfr.RightVector * xzvel / walkSpeed
  779.     return fw.X + fw.Z, rt.X + rt.Z
  780. end
  781.  
  782. addmode("default", {
  783.     idle = function()
  784.         local rY, lY = raycastlegs()
  785.  
  786.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.3 + 0.1 * sin(sine * 2), -0.1) * angles(-0.5235987755982988 + 0.05235987755982989 * sin((sine + 1.5) * 2), 1.0471975511965976 + 0.08726646259971647 * sin((sine + 0.5) * 2), 0.5235987755982988), deltaTime)
  787.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.6580627893946132 + 0.08726646259971647 * sin((sine + 0.6) * 2), 0, 3.141592653589793 + 0.2617993877991494 * sin((sine - 1.2) * 1)), deltaTime)
  788.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0.1 * sin(sine * 2), 0) * angles(-1.5707963267948966 + 0.08726646259971647 * sin(sine * 2), 0, 3.141592653589793), deltaTime)
  789.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -1 - 0.1 * sin(sine * 2) + rY, 0.1 * sin(sine * 2) - rY * 0.5) * angles(-0.6981317007977318 - 0.08726646259971647 * sin(sine * 2), 1.0471975511965976, 0.5235987755982988), deltaTime)
  790.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.6 + 0.1 * sin(sine * 2), 0) * angles(3.141592653589793 + 0.05235987755982989 * sin((sine + 0.5) * 2), -2.705260340591211 + 0.017453292519943295 * sin((sine + 1.5) * 2), -1.2217304763960306 + 0.05235987755982989 * sin((sine + 1.5) * 2)), deltaTime)
  791.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1 - 0.1 * sin(sine * 2) + lY, 0.1 * sin(sine * 2) - lY * 0.5) * angles(-0.3490658503988659 - 0.08726646259971647 * sin(sine * 2), -1.0471975511965976, -0.5235987755982988), deltaTime)
  792.         --RightArm,1,0,0,2,-30,3,1.5,2,0.3,0.1,0,2,60,5,0.5,2,-0.1,0,0,2,30,0,0,2,Head,0,0,0,2,-95,5,0.6,2,1,0,0,2,-0,0,0,1,0,0,0,2,180,15,-1.2,1,Torso,0,0,0,2,-90,5,0,2,0,0.1,0,2,-0,0,0,2,0,0,0,2,180,0,0,2,RightLeg,1,0,0,2,-40,-5,0,2,-1,-0.1,0,2,60,0,0,2,0,0.1,0,2,30,0,0,2,Meshes/TrollFaceHeadAccessory_Handle,0.01043701171875,0,0,1,0,0,0,1,0.43610429763793945,0,0,1,0,0,0,1,-0.01102447509765625,0,0,1,0,0,0,1,LeftArm,-1,0,0,2,180,3,0.5,2,0.6,0.1,0,2,-155,1,1.5,2,0,0,0,2,-70,3,1.5,2,LeftLeg,-1,0,0,2,-20,-5,0,2,-1,-0.1,0,2,-60,0,0,2,0,0.1,0,2,-30,0,0,2
  793.     end,
  794.     walk = function()
  795.         local fw, rt = velbycfrvec()
  796.        
  797.         local rY, lY = raycastlegs()
  798.        
  799.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, -0.2 + 0.2 * sin(sine * 16), 0) * angles(-1.6580627893946132 + 0.04363323129985824 * sin(sine * 16) - fw * 0.15, 0.03490658503988659 * sin(sine * 8) + rt * 0.15, -3.141592653589793 - 0.08726646259971647 * sin((sine + 0.25) * 8) - rt * 0.1), deltaTime)
  800.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -0.8 + 0.4 * sin((sine + 0.125) * 8) + rY, -0.15 * fw + 0.4 * sin((sine + 10) * 8) * fw + rY * -0.5) * angles(1.3962634015954636 + 0.6981317007977318 * sin(sine * 8)*fw, 1.5707963267948966 + 0.6981317007977318 * sin(sine * 8)*rt, -1.5707963267948966 + 0.2617993877991494 * sin(sine * 8)), deltaTime)
  801.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.35 - 0.1 * sin(sine * 8), 0) * angles(0.5235987755982988 * sin(sine * 8)*fw, -1.5707963267948966 - 0.5235987755982988 * sin(sine * 8)*fw, -0.5235987755982988 * sin(sine * 8)*fw), deltaTime)
  802.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.35 + 0.1 * sin(sine * 8), 0) * angles(-0.5235987755982988 * sin(sine * 8)*fw, 1.5707963267948966 - 0.5235987755982988 * sin(sine * 8)*fw, -0.5235987755982988 * sin(sine * 8)*fw), deltaTime)
  803.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -0.8 - 0.4 * sin((sine + 0.125) * 8) + lY, -0.15 * fw - 0.4 * sin((sine + 10) * 8) * fw + lY * -0.5) * angles(1.3962634015954636 - 0.6981317007977318 * sin(sine * 8)*fw, -1.5707963267948966 - 0.6981317007977318 * sin(sine * 8)*rt, 1.5707963267948966 + 0.2617993877991494 * sin(sine * 8)), deltaTime)
  804.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.5707963267948966 + 0.08726646259971647 * sin((sine + 10) * 16) + fw * 0.15, -0.08726646259971647 * sin(sine * 8) + rt * -0.1, 3.141592653589793 - 0.05235987755982989 * sin((sine + 5) * 8) - rt * 0.5), deltaTime)
  805.         --Torso,0,0,0,8,-95,2.5,0,16,-0.2,0.2,0,16,0,5,0,8,0,0,0,8,-180,-5,0.25,8,RightArm,1,0,0,1,0,-30,0,8,0.35,0.1,0,8,90,-30,0,8,0,0,0,8,0,-30,0,8,RightLeg,1,0,0,8,80,40,0,8,-0.8,0.4,0.125,8,90,40,0,8,-0.15,0.4,10,8,-90,15,0,8,LeftLeg,-1,0,0,8,80,-40,0,8,-0.8,-0.4,0.125,8,-90,-40,0,8,-0.15,-0.4,10,8,90,15,0,8,Head,0,0,0,1,-90,2.5,10,16,1,0,0,1,-0,-5,0,8,0,0,0,1,180,-3,5,8,LeftArm,-1,0,0,1,0,30,0,8,0.35,-0.1,0,8,-90,-30,0,8,0,-0.4,0,8,0,-30,0,8
  806.     end,
  807.     jump = function()
  808.         local fw, rt = velbycfrvec()
  809.  
  810.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0, 0) * angles(-1.4835298641951802 + fw * 0.1, rt * -0.05, -3.141592653589793), deltaTime)
  811.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.5, 0) * angles(4.014257279586958 - 0.08726646259971647 * sin((sine + 0.5) * 4), 1.7453292519943295 + 0.08726646259971647 * sin((sine + 0.25) * 4), -1.5707963267948966), deltaTime)
  812.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1, 0) * angles(1.5707963267948966 - 0.08726646259971647 * sin((sine + 0.5) * 4), -1.6580627893946132 + 0.06981317007977318 * sin((sine + 0.25) * 4), 1.5707963267948966), deltaTime)
  813.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.5, 0) * angles(4.014257279586958 - 0.08726646259971647 * sin((sine + 0.5) * 4), -1.7453292519943295 - 0.08726646259971647 * sin((sine + 0.25) * 4), 1.5707963267948966), deltaTime)
  814.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.3962634015954636, 0, -3.141592653589793 - rt), deltaTime)
  815.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -1, 0) * angles(1.5707963267948966 - 0.08726646259971647 * sin((sine + 0.5) * 4), 1.6580627893946132 - 0.06981317007977318 * sin((sine + 0.25) * 4), -1.5707963267948966), deltaTime)
  816.         --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
  817.     end,
  818.     fall = function()
  819.         local fw, rt = velbycfrvec()
  820.  
  821.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0, 0) * angles(-1.6580627893946132 + fw * 0.1, rt * -0.05, -3.141592653589793), deltaTime)
  822.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.5, 0) * angles(4.014257279586958 - 0.08726646259971647 * sin((sine + 0.5) * 4), 1.7453292519943295 + 0.08726646259971647 * sin((sine + 0.25) * 4), -1.5707963267948966), deltaTime)
  823.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1, 0) * angles(1.5707963267948966 - 0.08726646259971647 * sin((sine + 0.5) * 4), -1.6580627893946132 + 0.06981317007977318 * sin((sine + 0.25) * 4), 1.5707963267948966), deltaTime)
  824.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.5, 0) * angles(4.014257279586958 - 0.08726646259971647 * sin((sine + 0.5) * 4), -1.7453292519943295 - 0.08726646259971647 * sin((sine + 0.25) * 4), 1.5707963267948966), deltaTime)
  825.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.7453292519943295, 0, -3.141592653589793 - rt), deltaTime)
  826.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -1, 0) * angles(1.5707963267948966 - 0.08726646259971647 * sin((sine + 0.5) * 4), 1.6580627893946132 - 0.06981317007977318 * sin((sine + 0.25) * 4), -1.5707963267948966), deltaTime)
  827.         --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
  828.     end
  829. })
  830.  
  831. addmode("q", {
  832.     idle = function()
  833.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.75, -0.2) * angles(2.705260340591211 - 0.08726646259971647 * sin((sine + 0.1) * 2), -2.792526803190927, -0.6981317007977318), deltaTime)
  834.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.75, -0.2) * angles(2.705260340591211 - 0.08726646259971647 * sin((sine + 0.1) * 2), 2.792526803190927, 0.6981317007977318), deltaTime)
  835.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.9198621771937625 - 0.10471975511965978 * sin((sine + 0.3) * 2), 0, 3.141592653589793), deltaTime)
  836.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, -2.45 - 0.05 * sin(sine * 2), 0) * angles(0.03490658503988659 * sin(sine * 2), 0, 3.141592653589793), deltaTime)
  837.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -1, 0) * angles(1.3962634015954636 - 0.03490658503988659 * sin(sine * 2), 1.3089969389957472, -0.9599310885968813), deltaTime)
  838.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1, 0) * angles(1.5707963267948966 - 0.03490658503988659 * sin(sine * 2), -1.3089969389957472, 1.5707963267948966), deltaTime)
  839.         --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
  840.     end
  841. })
  842. addmode("e", {
  843.     idle = function()
  844.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-0.9, 0.4 + 0.1 * sin(sine * 2), 0.3 - 0.15 * sin(sine * 2)) * angles(-1.0471975511965976 - 0.12217304763960307 * sin(sine * 2), -1.3962634015954636, -0.6981317007977318), deltaTime)
  845.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, -1.85 - 0.1 * sin((sine + 0.2) * 2), 0) * angles(-1.3962634015954636 + 0.03490658503988659 * sin(sine * 2), -0.08726646259971647, 3.141592653589793), deltaTime)
  846.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.4 + 0.1 * sin(sine * 2), 0.2 - 0.15 * sin(sine * 2)) * angles(0.6108652381980153 - 0.12217304763960307 * sin(sine * 2), 1.2217304763960306, -0.7853981633974483), deltaTime)
  847.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-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)
  848.         RightHip.C0 = RightHip.C0:Lerp(cf(1, 0.2 + 0.15 * sin((sine + 0.2) * 2), -0.7 + 0.1 * sin(sine * 2)) * angles(1.4835298641951802 + 0.03490658503988659 * sin(sine * 2), 1.4835298641951802, -1.5707963267948966), deltaTime)
  849.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -0.75 + 0.1 * sin((sine + 0.2) * 2), -0.5) * angles(1.3962634015954636 - 0.03490658503988659 * sin(sine * 2), -1.6580627893946132, 0), deltaTime)
  850.         --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
  851.     end
  852. })
  853. addmode("r", {
  854.     idle = function()
  855.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -0.9 - 0.2 * sin(sine * 2), 0) * angles(1.5707963267948966, 1.6580627893946132 - 0.17453292519943295 * sin(sine + 0.8), -1.5707963267948966), deltaTime)
  856.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0.3 * sin(sine + 0.8), -0.1 + 0.2 * sin(sine * 2), 0) * angles(-1.5707963267948966, 0, -3.141592653589793), deltaTime)
  857.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.5707963267948966 + 0.08726646259971647 * sin((sine - 0.5) * 2), 0.08726646259971647 * sin(sine - 1), -3.141592653589793 + 0.2617993877991494 * sin(sine * 5)), deltaTime)
  858.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1 + 0.1 * sin(sine * 7), 0.2 - 0.1 * sin(sine + 0.8), -0.25) * angles(1.5707963267948966 + 0.5235987755982988 * sin(sine * 7), -0.6981317007977318, 0.3490658503988659 * sin(sine * 7)), deltaTime)
  859.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -0.9 - 0.2 * sin(sine * 2), 0) * angles(1.5707963267948966, -1.6580627893946132 - 0.17453292519943295 * sin(sine + 0.8), 1.5707963267948966), deltaTime)
  860.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1 + 0.1 * sin(sine * 7), 0.2 + 0.1 * sin(sine + 0.8), -0.25) * angles(1.5707963267948966 - 0.5235987755982988 * sin(sine * 7), 0.6981317007977318, 0.3490658503988659 * sin(sine * 7)), deltaTime)
  861.         --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
  862.     end
  863. })        
  864. addmode("t", {
  865.     idle = function()
  866.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.5, 0) * angles(1.5707963267948966, -1.6580627893946132 + 0.08726646259971647 * sin((sine - 0.3) * 4), 1.5707963267948966), deltaTime)
  867.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1 + 0.15 * sin((sine - 0.4) * 4), 1.42, 0) * angles(1.5707963267948966, 1.4835298641951802 - 0.3490658503988659 * sin((sine - 0.4) * 4), 1.5707963267948966), deltaTime)
  868.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.4835298641951802, 0.04363323129985824 - 0.08726646259971647 * sin((sine + 0.1) * 4), -3.141592653589793 + 0.04363323129985824 * sin(sine * 4)), deltaTime)
  869.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0.1 * sin(sine * 4), 0, 0) * angles(-1.5707963267948966, -0.08726646259971647 + 0.08726646259971647 * sin(sine * 4), -3.141592653589793), deltaTime)
  870.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -1.1 + 0.1 * sin(sine * 4), 0) * angles(1.5707963267948966, 1.5707963267948966 + 0.08726646259971647 * sin(sine * 4), -1.5707963267948966), deltaTime)
  871.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1 - 0.02 * sin(sine * 4), -0.925 - 0.07 * sin(sine * 4), 0) * angles(1.5707963267948966, -1.7453292519943295 + 0.08726646259971647 * sin(sine * 4), 1.5707963267948966), deltaTime)
  872.         --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
  873.     end
  874. })
  875. addmode("y", {
  876.     idle = function()
  877.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1.5, 0.5, 0) * angles(-1.7453292519943295, 0.17453292519943295 - 0.04363323129985824 * sin(sine * 2), -1.4835298641951802), deltaTime)
  878.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -0.9000000953674316 - 0.1 * sin(sine * 2), 0) * angles(-1.3962634015954636, 1.3962634015954636, 1.5707963267948966), deltaTime)
  879.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1.0000001192092896 - 0.1 * sin(sine * 2), 0) * angles(-1.5707963267948966, -1.3962634015954636, -1.5707963267948966), deltaTime)
  880.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-2.0943951023931953 + 0.08726646259971647 * sin((sine - 1) * 2), -0.08726646259971647, 2.792526803190927), deltaTime)
  881.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 1.2000000476837158, 0) * angles(2.6179938779914944 + 0.08726646259971647 * sin((sine - 1) * 2), 0.6981317007977318, -1.3962634015954636), deltaTime)
  882.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0.1 * sin(sine * 2), 0) * angles(-1.6580627893946132, 0.08726646259971647, 3.0543261909900767), deltaTime)
  883.         --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
  884.     end
  885. })        
  886. addmode("u", {
  887.     idle = function()
  888.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0.75 + 0.25 * sin(sine * 2), 0) * angles(-1.5707963267948966, 0, 3.141592653589793), deltaTime)
  889.         Neck.C0 = Neck.C0:Lerp(cf(0, 1.5 - 0.1 * sin((sine + 0.2) * 2), 0) * angles(-1.5707963267948966 - 0.08726646259971647 * sin((sine + 0.4) * 2), 0, 3.141592653589793 + 0.3490658503988659 * sin(sine * 0.66)), deltaTime)
  890.         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)) * angles(0, -1.5707963267948966, 0), deltaTime)
  891.         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)) * angles(0, 1.5707963267948966, 0), deltaTime)
  892.         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)) * angles(0, 1.5707963267948966, 0), deltaTime)
  893.         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)) * angles(0, -1.5707963267948966, 0), deltaTime)
  894.         --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
  895.     end
  896. })
  897. addmode("i", {
  898.     idle = function()
  899.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-0.5, 0.5 + 0.1 * sin((sine - 0.4444444444444444) * 9), 0) * angles(2.9670597283903604 + 0.17453292519943295 * sin((sine - 0.17777777777777778) * 9), -0.5235987755982988, 1.5707963267948966 + 0.17453292519943295 * sin(sine * 4.5)), deltaTime)
  900.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -0.5 + 0.1 * sin((sine + 0.26666666666666666) * 4.5), -0.5) * angles(1.7453292519943295 - 1.0471975511965976 * sin(sine * 4.5), -1.5707963267948966 + 0.03490658503988659 * sin(sine * 4.5), 1.5707963267948966), deltaTime)
  901.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, -0.5 + 0.5 * sin((sine + 0.17777777777777778) * 9), 0) * angles(-1.3962634015954636 - 0.03490658503988659 * sin((sine + 0.17777777777777778) * 9), -0.05235987755982989 * sin(sine * 4.5), 3.141592653589793 + 0.03490658503988659 * sin(sine * 4.5)), deltaTime)
  902.         Neck.C0 = Neck.C0:Lerp(cf(0, 1 + 0.2 * sin(sine * 9), 0) * angles(-1.5707963267948966 + 0.08726646259971647 * sin(sine * 9), 0.08726646259971647 * sin(sine * 4.5), 3.141592653589793 - 0.06981317007977318 * sin(sine * 4.5)), deltaTime)
  903.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(0.5, 0.5 + 0.1 * sin((sine - 0.4444444444444444) * 9), 0) * angles(2.9670597283903604 + 0.17453292519943295 * sin((sine - 0.17777777777777778) * 9), 0.5235987755982988, -1.5707963267948966 + 0.17453292519943295 * sin(sine * 4.5)), deltaTime)
  904.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -0.5 + 0.1 * sin((sine - 0.26666666666666666) * 4.5), -0.5) * angles(1.7453292519943295 + 1.0471975511965976 * sin(sine * 4.5), 1.5707963267948966 + 0.03490658503988659 * sin(sine * 4.5), -1.5707963267948966), deltaTime)
  905.         --LeftArm,-0.5,0,0,4.5,170,10,-0.17777777777777778,9,0.5,0.1,-0.4444444444444444,9,-30,0,0,4.5,0,0,0,4.5,90,10,0,4.5,LeftLeg,-1,0,0,4.5,100,-60,0,4.5,-0.5,0.1,0.26666666666666666,4.5,-90,2,0,4.5,-0.5,0,0,4.5,90,0,0,4.5,Torso,0,0,0,4.5,-80,-2,0.17777777777777778,9,-0.5,0.5,0.17777777777777778,9,-0,-3,0,4.5,0,0,0,4.5,180,2,0,4.5,Head,0,0,0,4.5,-90,5,0,9,1,0.2,0,9,-0,5,0,4.5,0,0,0,4.5,180,-4,0,4.5,RightArm,0.5,0,0,4.5,170,10,-0.17777777777777778,9,0.5,0.1,-0.4444444444444444,9,30,0,0,4.5,0,0,0,4.5,-90,10,0,4.5,RightLeg,1,0,0,4.5,100,60,0,4.5,-0.5,0.1,-0.26666666666666666,4.5,90,2,0,4.5,-0.5,0,0,4.5,-90,0,0,4.5
  906.     end,
  907. })
  908. addmode("o", {
  909.     idle = function()
  910.         local rY, lY = raycastlegs()
  911.        
  912.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1 + lY, lY * -0.5) * angles(-1.8325957145940461 - 0.08726646259971647 * sin(sine * 2), -1.4835298641951802, -1.5707963267948966), deltaTime)
  913.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0, 0.09 * sin(sine * 2)) * angles(-1.3962634015954636 + 0.08726646259971647 * sin(sine * 2), -0.08726646259971647, 3.141592653589793), deltaTime)
  914.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.5, 0) * angles(2.9670597283903604 + 0.08726646259971647 * sin(sine * 1), -1.5707963267948966 + 0.08726646259971647 * sin((sine + 0.6) * 1), 1.5707963267948966), deltaTime)
  915.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -1.1 + rY, rY * -0.5) * angles(-1.7453292519943295 - 0.08726646259971647 * sin(sine * 2), 1.5707963267948966, 1.5707963267948966), deltaTime)
  916.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.2217304763960306 - 0.08726646259971647 * sin((sine + 0.3) * 2), -0.2617993877991494 - 0.08726646259971647 * sin(sine * 2), 3.141592653589793), deltaTime)
  917.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.5, 0) * angles(2.8797932657906435 + 0.08726646259971647 * sin(sine * 1), 1.5707963267948966 - 0.08726646259971647 * sin((sine + 0.6) * 1), -1.5707963267948966), deltaTime)
  918.         --LeftLeg,-1,0,0,2,-105,-5,0,2,-1,0,0,2,-85,0,0,2,0,0,0,2,-90,0,0.75,2,Torso,0,0,0,2,-80,5,0,2,0,0,0,2,-5,0,0,2,0,0.09,0,2,180,0,0,2,LeftArm,-1,0,0,2,170,5,0,1,0.5,0,0,2,-90,5,0.6,1,0,0,0,2,90,0,0,2,RightLeg,1,0,0,2,-100,-5,0,2,-1.1,0,0,2,90,0,0,2,0,0,0,2,90,0,0.75,2,Head,0,0,0,2,-70,-5,0.3,2,1,0,0,2,-15,-5,0,2,0,0,0,2,180,0,0,2,RightArm,1,0,0,2,165,5,0,1,0.5,0,0,2,90,-5,0.6,1,0,0,0,2,-90,0,0,2
  919.     end,
  920.     walk = function()
  921.         local fw, rt = velbycfrvec()
  922.        
  923.         local rY, lY = raycastlegs()
  924.        
  925.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.5707963267948966 + 0.04363323129985824 * sin(sine * 16), 0, 3.141592653589793 + 0.08726646259971647 * sin(sine * 8) - rt), deltaTime)
  926.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -1 - 0.3 * sin((sine + 0.15) * 8) + rY, rY * -0.5) * angles(-1.5707963267948966 - 0.6981317007977318 * sin(sine * 8) * fw, 1.5707963267948966 + 0.6981317007977318 * sin(sine * 8) * rt, 1.5707963267948966), deltaTime)
  927.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.5, 0) * angles(0.08726646259971647 * sin((sine - 0.05) * 16), 1.5707963267948966 + 0.08726646259971647 * sin(sine * 8) - rt/3, 1.5707963267948966), deltaTime)
  928.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.5, 0) * angles(0.08726646259971647 * sin((sine - 0.05) * 16), -1.5707963267948966 + 0.08726646259971647 * sin(sine * 8) - rt/3, -1.5707963267948966), deltaTime)
  929.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0.1 * sin((sine + 0.1) * 16), 0) * angles(-1.5707963267948966, 0, 3.141592653589793 - 0.08726646259971647 * sin(sine * 8)), deltaTime)
  930.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1 + 0.3 * sin((sine + 0.15) * 8) + lY, lY * -0.5) * angles(1.5707963267948966 + 0.6981317007977318 * sin(sine * 8) * fw, -1.5707963267948966 + 0.6981317007977318 * sin(sine * 8) * rt, 1.5707963267948966), deltaTime)
  931.         --Head,0,0,0,8,-90,2.5,0,16,1,0,0,8,-0,0,0,8,0,0,0,8,180,5,0,8,RightLeg,1,0,0,8,-90,-40,0,8,-1,-0.3,0.15,8,90,40,0,8,0,0,0,8,90,0,0,8,RightArm,1,0,0,8,0,5,-0.05,16,0.5,0,0,8,90,5,0,8,0,0,0,8,90,0,0,8,LeftArm,-1,0,0,8,0,5,-0.05,16,0.5,0,0,8,-90,5,0,8,0,0,0,8,-90,0,0,8,Torso,0,0,0,8,-90,0,0,8,0,0.1,0.1,16,-0,0,0,8,0,0,0,8,180,-5,0,8,LeftLeg,-1,0,0,8,90,40,0,8,-1,0.3,0.15,8,-90,40,0,8,0,0,0,8,90,0,0,8
  932.     end
  933. })
  934. addmode("p", {
  935.     idle = function()
  936.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1.5, 0.5, 0) * angles(1.5707963267948966, 3.141592653589793, -1.5707963267948966), deltaTime)
  937.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -1, 0) * angles(0, 1.5707963267948966, 0), deltaTime)
  938.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1.5, 0.5, 0) * angles(1.5707963267948966, 3.141592653589793, 1.5707963267948966), deltaTime)
  939.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1, 0) * angles(0, -1.5707963267948966, 0), deltaTime)
  940.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.5707963267948966, 0, -3.141592653589793), deltaTime)
  941.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0, 0) * angles(-1.5707963267948966, 0, -3.141592653589793), deltaTime)
  942.         --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
  943.     end
  944. })
  945. addmode("f", {
  946.     idle = function()
  947.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.5, 0) * angles(-3.0543261909900767 - 0.17453292519943295 * sin((sine + 1.5) * 1), -1.5707963267948966 + 0.08726646259971647 * sin((sine + 0.6) * 1), -1.5707963267948966), deltaTime)
  948.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.5, 0) * angles(3.141592653589793 - 0.08726646259971647 * sin(sine * 1), 0.3490658503988659 + 0.08726646259971647 * sin((sine + 0.3) * 1), -1.9198621771937625 + 0.08726646259971647 * sin((sine + 1) * 1)), deltaTime)
  949.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.3089969389957472 - 0.2617993877991494 * sin((sine + 1.2) * 1), 0.08726646259971647 * sin((sine + 0.2) * 0.5), -2.9670597283903604), deltaTime)
  950.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 5 - 0.5 * sin((sine - 0.2) * 1), 0.2 * sin((sine - 1.2) * 1)) * angles(-0.08726646259971647 + 0.17453292519943295 * sin((sine + 1.2) * 1), 0.08726646259971647 * sin(sine * 0.5), 3.141592653589793), deltaTime)
  951.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1, 0) * angles(1.3962634015954636 + 0.12217304763960307 * sin((sine + 1.5) * 1), -1.2217304763960306 + 0.08726646259971647 * sin((sine + 0.2) * 0.5), 1.5707963267948966), deltaTime)
  952.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -1, 0) * angles(1.9198621771937625 + 0.12217304763960307 * sin((sine + 1.5) * 1), 1.2217304763960306 + 0.08726646259971647 * sin((sine + 0.2) * 0.5), -1.5707963267948966), deltaTime)
  953.         --LeftArm,-1,0,0,1,-175,-10,1.5,1,0.5,0,0,1,-90,5,0.6,1,0,0,0,1,-90,0,0,1,RightArm,1,0,0,1,180,-5,0,1,0.5,0,0,1,20,5,0.3,1,0,0,0,1,-110,5,1,1,Head,0,0,0,1,-75,-15,1.2,1,1,0,0,1,-0,5,0.2,0.5,0,0,0,1,-170,0,0,1,Torso,0,0,0,1,-5,10,1.2,1,5,-0.5,-0.2,1,-0,5,0,0.5,0,0.2,-1.2,1,180,0,0,1,LeftLeg,-1,0,0,1,80,7,1.5,1,-1,0,0,1,-70,5,0.2,0.5,0,0,0,1,90,0,0,1,RightLeg,1,0,0,1,110,7,1.5,1,-1,0,0,1,70,5,0.2,0.5,0,0,0,1,-90,0,0,1
  954.     end,
  955.     walk = function()
  956.         local fw, rt = velbycfrvec()
  957.  
  958.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1, 0.5, 0) * angles(-3.0543261909900767 - 0.17453292519943295 * sin((sine + 1.5) * 1) - fw * 0.1, -1.5707963267948966 + 0.08726646259971647 * sin((sine + 0.6) * 1) + rt * 0.2, -1.5707963267948966), deltaTime)
  959.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(1, 0.5, 0) * angles(3.141592653589793 - 0.08726646259971647 * sin(sine * 1), 0.3490658503988659 + 0.08726646259971647 * sin((sine + 0.3) * 1), -1.9198621771937625 + 0.08726646259971647 * sin((sine + 1) * 1)), deltaTime)
  960.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.3089969389957472 - 0.2617993877991494 * sin((sine + 1.2) * 1) + fw * 0.1, 0.08726646259971647 * sin((sine + 0.2) * 0.5) - rt * 0.2, -2.9670597283903604), deltaTime)
  961.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 5 - 0.5 * sin((sine - 0.2) * 1), 0.2 * sin((sine - 1.2) * 1)) * angles(-0.08726646259971647 + 0.17453292519943295 * sin((sine + 1.2) * 1) - fw * 0.2, 0.08726646259971647 * sin(sine * 0.5), 3.141592653589793 - rt * 0.2), deltaTime)
  962.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1, 0) * angles(1.3962634015954636 + 0.12217304763960307 * sin((sine + 1.5) * 1) - fw * 0.2, -1.2217304763960306 + 0.08726646259971647 * sin((sine + 0.2) * 0.5), 1.5707963267948966), deltaTime)
  963.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -1, 0) * angles(1.9198621771937625 + 0.12217304763960307 * sin((sine + 1.5) * 1) - fw * 0.2, 1.2217304763960306 + 0.08726646259971647 * sin((sine + 0.2) * 0.5), -1.5707963267948966), deltaTime)
  964.         --LeftArm,-1,0,0,1,-175,-10,1.5,1,0.5,0,0,1,-90,5,0.6,1,0,0,0,1,-90,0,0,1,RightArm,1,0,0,1,180,-5,0,1,0.5,0,0,1,20,5,0.3,1,0,0,0,1,-110,5,1,1,Head,0,0,0,1,-75,-15,1.2,1,1,0,0,1,-0,5,0.2,0.5,0,0,0,1,-170,0,0,1,Torso,0,0,0,1,-5,10,1.2,1,5,-0.5,-0.2,1,-0,5,0,0.5,0,0.2,-1.2,1,180,0,0,1,LeftLeg,-1,0,0,1,80,7,1.5,1,-1,0,0,1,-70,5,0.2,0.5,0,0,0,1,90,0,0,1,RightLeg,1,0,0,1,110,7,1.5,1,-1,0,0,1,70,5,0.2,0.5,0,0,0,1,-90,0,0,1
  965.     end
  966. })
  967. addmode("g", {
  968.     idle = function()
  969.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-0.9 + 0.4 * sin(sine * 8), 0.5, 0.5 * sin((sine + 0.25) * 4)) * angles(1.5707963267948966, -1.5707963267948966 + 1.0471975511965976 * sin(sine * 8), 1.5707963267948966 + 0.6981317007977318 * sin((sine + 0.25) * 4)), deltaTime)
  970.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0.3 * sin((sine + 0.4) * 8), 0, 0) * angles(-1.5707963267948966, 0.3490658503988659 * sin(sine * 8), -3.141592653589793), deltaTime)
  971.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.5707963267948966 + 0.061086523819801536 * sin((sine + 0.125) * 16), -0.3839724354387525 * sin(sine * 8), -3.141592653589793), deltaTime)
  972.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -1 + 0.4 * sin((sine - 0.01) * 8), 0) * angles(1.5707963267948966, 1.7453292519943295 + 0.6981317007977318 * sin(sine * 8), -1.5707963267948966), deltaTime)
  973.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1 - 0.4 * sin((sine - 0.01) * 8), 0) * angles(1.5707963267948966, -1.7453292519943295 + 0.6981317007977318 * sin(sine * 8), 1.5707963267948966), deltaTime)
  974.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(0.9 + 0.4 * sin(sine * 8), 0.5, -0.5 * sin((sine - 0.35) * 4)) * angles(1.5707963267948966 + 0.6981317007977318 * sin(sine * 4), 1.5707963267948966 + 1.0471975511965976 * sin(sine * 8), -1.5707963267948966 + 0.17453292519943295 * sin((sine - 0.35) * 4)), deltaTime)
  975.         --LeftArm,-0.9,0.4,0,8,90,0,0.25,4,0.5,0,0,8,-90,60,0,8,0,0.5,0.25,4,90,40,0.25,4,Torso,0,0.3,0.4,8,-90,0,0,8,0,0,0,4,0,20,0,8,0,0,0,8,-180,0,0,8,Head,0,0,0,8,-90,3.5,0.125,16,1,0,0,8,0,-22,0,8,0,0,0,8,-180,0,0,1.1,RightLeg,1,0,0,8,90,0,0,8,-1,0.4,-0.01,8,100,40,0,8,0,0,0,8,-90,0,0,8,LeftLeg,-1,0,0,8,90,0,0,8,-1,-0.4,-0.01,8,-100,40,0,8,0,0,0,8,90,0,0,8,RightArm,0.9,0.4,0,8,90,40,0,4,0.5,0,0,8,90,60,0,8,0,-0.5,-0.35,4,-90,10,-0.35,4
  976.     end
  977. })
  978. addmode("h", {
  979.     idle = function()
  980.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.5707963267948966, -0.4363323129985824 * sin(sine * 8), -3.141592653589793), deltaTime)
  981.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -1 + 0.3 * sin(sine * 8), 0) * angles(1.5707963267948966, 1.5707963267948966 + 0.5235987755982988 * sin(sine * 8), -1.5707963267948966), deltaTime)
  982.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-0.5, 1, 0) * angles(-0.5235987755982988, -1.5707963267948966 - 0.5235987755982988 * sin(sine * 8), 3.141592653589793), deltaTime)
  983.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(0.5, 1, 0) * angles(-0.5235987755982988, 1.5707963267948966 - 0.5235987755982988 * sin(sine * 8), 3.141592653589793), deltaTime)
  984.         RootJoint.C0 = RootJoint.C0:Lerp(cf(-0.1 * sin(sine * 8), 0.2 * sin((sine + 0.1) * 16), 0) * angles(-1.5707963267948966, 0.2617993877991494 * sin(sine * 8), -3.141592653589793), deltaTime)
  985.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1 - 0.3 * sin(sine * 8), 0) * angles(1.5707963267948966, -1.5707963267948966 + 0.5235987755982988 * sin(sine * 8), 1.5707963267948966), deltaTime)
  986.         --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
  987.     end
  988. })
  989. addmode("j", {
  990.     idle = function()
  991.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-0.8, -1, -0.1) * angles(0.17453292519943295, -0.6981317007977318, 0), deltaTime)
  992.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-1.2, 0.5, 0) * angles(-0.3490658503988659 + 0.08726646259971647 * sin((sine + 0.1) * 4), 0, 0.6981317007977318 + 0.08726646259971647 * sin((sine + 0.1) * 4)), deltaTime)
  993.         RightHip.C0 = RightHip.C0:Lerp(cf(1.1, -1, 0) * angles(1.5707963267948966, 1.7453292519943295, -1.5707963267948966), deltaTime)
  994.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.5707963267948966 + 0.08726646259971647 * sin((sine + 0.1) * 4), 0, 2.792526803190927), deltaTime)
  995.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, -1.7 + 0.5 * sin(sine * 4), 0.15 * sin(sine * 4)) * angles(3.3161255787892263 + 0.17453292519943295 * sin(sine * 4), 0, 3.6651914291880923), deltaTime)
  996.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(0.8 + 0.4 * sin(sine * 4), 0.6 + 0.1 * sin(sine * 4), 0.4 - 0.25 * sin(sine * 4)) * angles(2.9670597283903604, 2.2689280275926285 - 0.17453292519943295 * sin(sine * 4), -1.4835298641951802 - 0.17453292519943295 * sin(sine * 4)), deltaTime)
  997.         --GalaxyBeautifulHair_Handle,-0.15000000596046448,0,0,1,0,0,0,1,0.10000000149011612,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,LeftLeg,-0.8,0,0,4,10,0,0,4,-1,0,0,4,-40,0,0,4,-0.1,0,0,4,0,0,0,4,LeftArm,-1.2,0,0,4,-20,5,0.1,4,0.5,0,0,4,0,0,0,4,0,0,0,4,40,5,0.1,4,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,ValkyrieHelm_Handle,8.658389560878277e-09,0,0,1,-15,0,0,1,-0.2433757781982422,0,0,1,0,0,0,1,-0.2657628059387207,0,0,1,0,0,0,1,RightLeg,1.1,0,0,4,90,0,0,4,-1,0,0,4,100,0,0,4,0,0,0,4,-90,0,0,4,BlackIronAntlers_Handle,8.658389560878277e-09,0,0,1,0,0,0,1,-0.6500000953674316,0,0,1,0,0,0,1,0.19972775876522064,0,0,1,0,0,0,1,DevAwardsAdurite_Handle,0,0,0,1,0,0,0,1,-0.25,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,SilverthornAntlers_Handle,8.658389560878277e-09,0,0,1,0,0,0,1,-0.6500000953674316,0,0,1,0,0,0,1,0.19972775876522064,0,0,1,0,0,0,1,Head,0,0,0,4,-90,5,0.1,4,1,0,0,4,-0,0,0,4,0,0,0,4,160,0,0,4,Torso,0,0,0,4,190,10,0,4,-1.70,0.5,0,4,-0,0,0,4,0,0.15,0,4,210,0,0,4,RightArm,0.8,0.4,0,4,170,0,0,4,0.6,0.1,0,4,130,-10,0,4,0.4,-0.25,0,4,-85,-10,0,4
  998.     end
  999. })
  1000. addmode("k", {
  1001.     idle = function()
  1002.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.6580627893946132 - 0.08726646259971647 * sin((sine + 0.3333333333333333) * 12), -0.08726646259971647 * sin((sine + 0.2) * 6), 3.141592653589793), deltaTime)
  1003.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -0.5 - 0.5 * sin((sine + 0.39999999999999997) * 12), -0.5) * angles(1.7453292519943295 - 1.0471975511965976 * sin(sine * 6), -1.5707963267948966 + 0.1308996938995747 * sin(sine * 6), 1.5707963267948966), deltaTime)
  1004.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -0.5 - 0.5 * sin((sine + 0.39999999999999997) * 12), -0.5) * angles(1.7453292519943295 + 1.0471975511965976 * sin(sine * 6), 1.5707963267948966 + 0.1308996938995747 * sin(sine * 6), -1.5707963267948966), deltaTime)
  1005.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, -0.5 + 0.3 * sin((sine + 0.16666666666666666) * 12), 0) * angles(-1.3962634015954636 + 0.08726646259971647 * sin((sine + 0.3333333333333333) * 12), 0.08726646259971647 * sin((sine + 0.06666666666666667) * 6), 3.141592653589793), deltaTime)
  1006.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-0.8 - 0.1 * sin(sine * 6), 0.5 + 0.1 * sin(sine * 6), -0.2) * angles(3.141592653589793 - 0.17453292519943295 * sin((sine + 0.39999999999999997) * 12), -0.17453292519943295, 1.5707963267948966), deltaTime)
  1007.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(0.8 - 0.1 * sin(sine * 6), 0.5 - 0.1 * sin(sine * 6), -0.2) * angles(3.141592653589793 - 0.17453292519943295 * sin((sine + 0.39999999999999997) * 12), 0.17453292519943295, -1.5707963267948966), deltaTime)
  1008.         --GalaxyBeautifulHair_Handle,-0.15000000596046448,0,0,1.5,0,0,0,1.5,0.10000000149011612,0,0,1.5,0,0,0,1.5,0,0,0,1.5,0,0,0,1.5,Head,0,0,0,6,-95,-5,0.3333333333333333,12,1,0,0,6,-0,-5,0.2,6,0,0,0,6,180,0,0,6,ValkyrieHelm_Handle,8.658389560878277e-09,0,0,1.5,-15,0,0,1.5,-0.2433757781982422,0,0,1.5,0,0,0,1.5,-0.2657628059387207,0,0,1.5,0,0,0,1.5,SilverthornAntlers_Handle,8.658389560878277e-09,0,0,1.5,0,0,0,1.5,-0.6500000953674316,0,0,1.5,0,0,0,1.5,0.19972775876522064,0,0,1.5,0,0,0,1.5,BlackIronAntlers_Handle,8.658389560878277e-09,0,0,1.5,0,0,0,1.5,-0.6500000953674316,0,0,1.5,0,0,0,1.5,0.19972775876522064,0,0,1.5,0,0,0,1.5,Fedora_Handle,8.657480066176504e-09,0,0,1.5,-6,0,0,1.5,-0.15052366256713867,0,0,1.5,0,0,0,1.5,-0.010221302509307861,0,0,1.5,0,0,0,1.5,LeftLeg,-1,0,0,6,100,-60,0,6,-0.5,-0.5,0.39999999999999997,12,-90,7.5,0,6,-0.5,0,0,6,90,0,0,6,EyelessSmileHead_Handle,-0.00043487548828125,0,0,1.5,180,0,0,1.5,0.6000361442565918,0,0,1.5,0,0,0,1.5,0.0003204345703125,0,0,1.5,180,0,0,1.5,RightLeg,1,0,0,6,100,60,0,6,-0.5,-0.5,0.39999999999999997,12,90,7.5,0,6,-0.5,0,0,6,-90,0,0,6,DevAwardsAdurite_Handle,0,0,0,1.5,0,0,0,1.5,-0.25,0,0,1.5,0,0,0,1.5,0,0,0,1.5,0,0,0,1.5,Torso,0,0,0,6,-80,5,0.3333333333333333,12,-0.5,0.3,0.16666666666666666,12,-0,5,0.06666666666666667,6,0,0,0,6,180,0,0,6,LeftArm,-0.8,-0.1,0,6,180,-10,0.39999999999999997,12,0.5,0.1,0,6,-10,0,0,6,-0.2,0,0,6,90,0,0,6,RightArm,0.8,-0.1,0,6,180,-10,0.39999999999999997,12,0.5,-0.1,0,6,10,0,0,6,-0.2,0,0,6,-90,0,0,6
  1009.     end
  1010. })
  1011. addmode("l", {
  1012.     idle = function()
  1013.         Neck.C0 = Neck.C0:Lerp(cf(0, 1, 0) * angles(-1.5707963267948966 + 0.04363323129985824 * sin((sine + 0.1) * 1), -0.17453292519943295 * sin((sine + 0.1) * 5), -3.141592653589793), deltaTime)
  1014.         RightHip.C0 = RightHip.C0:Lerp(cf(1, -1 + 0.2 * sin(sine * 5), -0.2 + 0.2 * sin(sine * 5)) * angles(2.181661564992912 - 0.8726646259971648 * sin(sine * 5), 1.9198621771937625 - 0.3490658503988659 * sin(sine * 5), -1.5707963267948966), deltaTime)
  1015.         RightShoulder.C0 = RightShoulder.C0:Lerp(cf(0.7, 0.8, 0) * angles(1.0471975511965976 + 0.03490658503988659 * sin(sine * 10), 2.0943951023931953 + 0.10471975511965978 * sin((sine + 0.1) * 5), 1.5707963267948966), deltaTime)
  1016.         LeftHip.C0 = LeftHip.C0:Lerp(cf(-1, -1 - 0.2 * sin(sine * 5), -0.2 - 0.2 * sin(sine * 5)) * angles(2.181661564992912 + 0.8726646259971648 * sin(sine * 5), -1.9198621771937625 - 0.3490658503988659 * sin(sine * 5), 1.5707963267948966), deltaTime)
  1017.         RootJoint.C0 = RootJoint.C0:Lerp(cf(0, 0.15 + 0.4 * sin((sine - 0.5) * 10), 0) * angles(-1.4835298641951802, 0.17453292519943295 * sin(sine * 5), -3.141592653589793), deltaTime)
  1018.         LeftShoulder.C0 = LeftShoulder.C0:Lerp(cf(-0.7, 0.5, -0.3) * angles(1.7453292519943295, -0.8726646259971648, 1.5707963267948966), deltaTime)
  1019.         --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,LeftLeg,-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
  1020.     end
  1021. })
Add Comment
Please, Sign In to add comment