local OrionLib = loadstring( game:HttpGet( 'https://raw.githubusercontent.com/jensonhirst/Orion/main/source' ) )() local Window = OrionLib:MakeWindow({ Name = 'ALEXHUB', HidePremium = false, SaveConfig = true, ConfigFolder = 'OrionTest', }) -- player tab local PlayerTab = Window:MakeTab({ Name = 'Mods', Icon = 'rbxassetid://4483345998', PremiumOnly = false, }) local Section = PlayerTab:AddSection({ Name = 'Movement Mods', }) PlayerTab:AddSlider({ Name = 'SpeedBoost', Min = 10, Max = 1000, Default = 16, Color = Color3.fromRGB(255, 255, 255), Increment = 1, ValueName = 'Speed', Callback = function(Value) game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = Value end, }) PlayerTab:AddSlider({ Name = 'JumpBoost', Min = 10, Max = 1000, Default = 5, Color = Color3.fromRGB(255, 255, 255), Increment = 1, ValueName = 'Jump', Callback = function(Value) game.Players.LocalPlayer.Character.Humanoid.JumpPower = Value end, }) PlayerTab:AddButton({ Name = 'Infinite Jump', Callback = function() local InfiniteJumpEnabled = true game:GetService('UserInputService').JumpRequest:connect(function() if InfiniteJumpEnabled then game :GetService('Players').LocalPlayer.Character :FindFirstChildOfClass('Humanoid') :ChangeState('Jumping') end end) end, }) local Section = PlayerTab:AddSection({ Name = 'ServerSited Mods', }) PlayerTab:AddButton({ Name = 'BanHamer Animaion by me', Callback = function() loadstring( game:HttpGet( 'https://raw.githubusercontent.com/ShutUpJamesTheLoser/Banhammer/refs/heads/main/ban', true ) )() end, }) PlayerTab:AddButton({ Name = 'FE Sound Spammer GUI', Callback = function() local ScreenGui = Instance.new('ScreenGui') local Draggable = Instance.new('Frame') local Frame = Instance.new('Frame') local Frame_2 = Instance.new('Frame') local Time = Instance.new('TextLabel') local _1E = Instance.new('TextButton') local UICorner = Instance.new('UICorner') local _3E = Instance.new('TextButton') local UICorner_2 = Instance.new('UICorner') local SE = Instance.new('TextButton') local UICorner_3 = Instance.new('UICorner') local Path = Instance.new('TextLabel') local Top = Instance.new('Frame') local Top_2 = Instance.new('Frame') local ImageLabel = Instance.new('ImageLabel') local TextLabel = Instance.new('TextLabel') local Exit = Instance.new('TextButton') local Minizum = Instance.new('TextButton') local Stop = Instance.new('TextButton') local UICorner_4 = Instance.new('UICorner') local IY = Instance.new('TextButton') local UICorner_5 = Instance.new('UICorner') local TextLabel_2 = Instance.new('TextLabel') local Wait = Instance.new('TextBox') --Properties: ScreenGui.Name = '. Ǥ҉̷҉̵҉̸҉̷҉̵҉̸҉̡҉̡҉̼҉̱҉͎҉͎҉̞҉̼҉̱҉͎҉͎҉̞҉ͤ҉ͬ҉̅҉ͤ҉ͬ' ScreenGui.Parent = game:GetService('CoreGui') ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling ScreenGui.ResetOnSpawn = false Draggable.Name = 'Ǥ҉̷҉̵҉̸҉̷҉̵҉̸҉̡҉̡҉̼҉̱҉͎҉͎҉̞҉̼҉̱҉͎҉͎҉̞҉ͤ҉ͬ҉̅҉ͤ҉ͬ.' Draggable.Parent = ScreenGui Draggable.BackgroundColor3 = Color3.fromRGB(255, 255, 255) Draggable.BackgroundTransparency = 1.000 Draggable.BorderSizePixel = 0 Draggable.Position = UDim2.new(0.35026139, 0, 0.296158612, 0) Draggable.Size = UDim2.new(0, 438, 0, 277) Frame.Name = '. . Ǥ҉̷҉̵҉̸҉̷҉̵҉̸҉̡҉̡҉̼҉̱҉͎҉͎҉̞҉̼҉̱҉͎҉͎҉̞҉ͤ҉ͬ҉̅҉ͤ҉ͬ. ' Frame.Parent = Draggable Frame.BackgroundColor3 = Color3.fromRGB(255, 255, 255) Frame.BackgroundTransparency = 1.000 Frame.BorderColor3 = Color3.fromRGB(27, 42, 53) Frame.BorderSizePixel = 0 Frame.Position = UDim2.new(-0.00133678317, 0, -0.00348037481, 0) Frame.Size = UDim2.new(0, 438, 0, 277) Frame_2.Name = ' . Ǥ҉̷҉̵҉̸҉̷҉̵҉̸҉̡҉̡҉̼҉̱҉͎҉͎҉̞҉̼҉̱҉͎҉͎҉̞҉ͤ҉ͬ҉̅҉ͤ҉ͬ. ' Frame_2.Parent = Frame Frame_2.BackgroundColor3 = Color3.fromRGB(30, 30, 30) Frame_2.BorderColor3 = Color3.fromRGB(27, 42, 53) Frame_2.BorderSizePixel = 0 Frame_2.Position = UDim2.new(-0.00133678142, 0, -0.0179207586, 0) Frame_2.Size = UDim2.new(0, 438, 0, 238) Frame_2.Active = true Frame_2.Draggable = true Time.Name = 'Time' Time.Parent = Frame_2 Time.BackgroundColor3 = Color3.fromRGB(255, 255, 255) Time.BackgroundTransparency = 1.000 Time.Position = UDim2.new(0, 0, 0.0126050422, 0) Time.Size = UDim2.new(0, 437, 0, 31) Time.Font = Enum.Font.GothamSemibold Time.Text = 'RespectFilteringEnabled(RFE) : nil' Time.TextColor3 = Color3.fromRGB(255, 255, 255) Time.TextScaled = true Time.TextSize = 14.000 Time.TextWrapped = true _1E.Name = '1E' _1E.Parent = Frame_2 _1E.BackgroundColor3 = Color3.fromRGB(45, 45, 45) _1E.BorderSizePixel = 0 _1E.Position = UDim2.new(0.0182648394, 0, 0.676470578, 0) _1E.Size = UDim2.new(0, 208, 0, 33) _1E.Font = Enum.Font.SourceSans _1E.Text = 'Mute Game' _1E.TextColor3 = Color3.fromRGB(255, 255, 255) _1E.TextScaled = true _1E.TextSize = 30.000 _1E.TextWrapped = true UICorner.Parent = _1E _3E.Name = '3E' _3E.Parent = Frame_2 _3E.BackgroundColor3 = Color3.fromRGB(45, 45, 45) _3E.BorderSizePixel = 0 _3E.Position = UDim2.new(0.0159817357, 0, 0.142857149, 0) _3E.Size = UDim2.new(0, 209, 0, 33) _3E.Font = Enum.Font.SourceSans _3E.Text = 'Annoying Sound' _3E.TextColor3 = Color3.fromRGB(255, 255, 255) _3E.TextSize = 30.000 _3E.TextWrapped = true UICorner_2.Parent = _3E SE.Name = 'SE' SE.Parent = Frame_2 SE.BackgroundColor3 = Color3.fromRGB(45, 45, 45) SE.BorderSizePixel = 0 SE.Position = UDim2.new(0.509132445, 0, 0.142857149, 0) SE.Size = UDim2.new(0, 209, 0, 33) SE.Font = Enum.Font.SourceSans SE.Text = 'Kill Sound Service' SE.TextColor3 = Color3.fromRGB(255, 255, 255) SE.TextSize = 30.000 SE.TextWrapped = true UICorner_3.Parent = SE Path.Name = 'Path' Path.Parent = Frame_2 Path.BackgroundColor3 = Color3.fromRGB(255, 0, 0) Path.BackgroundTransparency = 1.000 Path.Position = UDim2.new(0.00684931502, 0, 0.815126061, 0) Path.Size = UDim2.new(0, 435, 0, 44) Path.Font = Enum.Font.GothamSemibold Path.Text = 'Dev Note : This Script is FE and it only FE when RespectFilteringEnabled(RFE) is disabled , elseif RespectFilteringEnabled(RFE) is true then it only be client , mostly RespectFilteringEnabled(RFE) disabled game are classic game' Path.TextColor3 = Color3.fromRGB(255, 0, 0) Path.TextScaled = true Path.TextSize = 14.000 Path.TextWrapped = true Top.Name = 'Top' Top.Parent = Frame_2 Top.BackgroundColor3 = Color3.fromRGB(41, 60, 157) Top.BorderColor3 = Color3.fromRGB(27, 42, 53) Top.BorderSizePixel = 0 Top.Position = UDim2.new(-0.00133678142, 0, -0.128059402, 0) Top.Size = UDim2.new(0, 438, 0, 30) Top_2.Name = 'Top' Top_2.Parent = Top Top_2.BackgroundColor3 = Color3.fromRGB(30, 45, 118) Top_2.BorderColor3 = Color3.fromRGB(27, 42, 53) Top_2.BorderSizePixel = 0 Top_2.Position = UDim2.new(0, 0, 0.967638671, 0) Top_2.Size = UDim2.new(0, 438, 0, 5) ImageLabel.Parent = Top ImageLabel.BackgroundColor3 = Color3.fromRGB(255, 255, 255) ImageLabel.BackgroundTransparency = 1.000 ImageLabel.Position = UDim2.new(0, 0, 0.0666666701, 0) ImageLabel.Size = UDim2.new(0, 29, 0, 27) ImageLabel.Image = 'http://www.roblox.com/asset/?id=8798286232' TextLabel.Parent = ImageLabel TextLabel.BackgroundColor3 = Color3.fromRGB(255, 255, 255) TextLabel.BackgroundTransparency = 1.000 TextLabel.Position = UDim2.new(0.997245014, 0, 0, 0) TextLabel.Size = UDim2.new(0, 397, 0, 30) TextLabel.Font = Enum.Font.GothamSemibold TextLabel.Text = 'FEAG' TextLabel.TextColor3 = Color3.fromRGB(255, 255, 255) TextLabel.TextScaled = true TextLabel.TextSize = 14.000 TextLabel.TextStrokeColor3 = Color3.fromRGB(255, 255, 255) TextLabel.TextWrapped = true Exit.Name = 'Exit' Exit.Parent = Top Exit.BackgroundColor3 = Color3.fromRGB(255, 255, 255) Exit.BackgroundTransparency = 1.000 Exit.Position = UDim2.new(0.924657524, 0, 0, 0) Exit.Size = UDim2.new(0, 32, 0, 25) Exit.Font = Enum.Font.GothamSemibold Exit.Text = 'x' Exit.TextColor3 = Color3.fromRGB(255, 255, 255) Exit.TextScaled = true Exit.TextSize = 14.000 Exit.TextWrapped = true Minizum.Name = 'Minizum' Minizum.Parent = Top Minizum.BackgroundColor3 = Color3.fromRGB(255, 255, 255) Minizum.BackgroundTransparency = 1.000 Minizum.Position = UDim2.new(0.851598203, 0, 0, 0) Minizum.Size = UDim2.new(0, 32, 0, 23) Minizum.Font = Enum.Font.GothamSemibold Minizum.Text = '_' Minizum.TextColor3 = Color3.fromRGB(255, 255, 255) Minizum.TextScaled = true Minizum.TextSize = 14.000 Minizum.TextWrapped = true Stop.Name = 'Stop' Stop.Parent = Frame_2 Stop.BackgroundColor3 = Color3.fromRGB(45, 45, 45) Stop.BorderSizePixel = 0 Stop.Position = UDim2.new(0.0182648394, 0, 0.310924381, 0) Stop.Size = UDim2.new(0, 424, 0, 33) Stop.Font = Enum.Font.SourceSans Stop.Text = 'Stop' Stop.TextColor3 = Color3.fromRGB(255, 255, 255) Stop.TextSize = 30.000 Stop.TextWrapped = true UICorner_4.Parent = Stop IY.Name = 'IY' IY.Parent = Frame_2 IY.BackgroundColor3 = Color3.fromRGB(45, 45, 45) IY.BorderSizePixel = 0 IY.Position = UDim2.new(0.509132445, 0, 0.676470578, 0) IY.Size = UDim2.new(0, 209, 0, 33) IY.Font = Enum.Font.SourceSans IY.Text = 'Unmute Game' IY.TextColor3 = Color3.fromRGB(255, 255, 255) IY.TextScaled = true IY.TextSize = 30.000 IY.TextWrapped = true UICorner_5.Parent = IY TextLabel_2.Parent = Frame_2 TextLabel_2.BackgroundColor3 = Color3.fromRGB(255, 255, 255) TextLabel_2.BackgroundTransparency = 1.000 TextLabel_2.Position = UDim2.new(0.0182648394, 0, 0.466386557, 0) TextLabel_2.Size = UDim2.new(0, 426, 0, 50) TextLabel_2.Font = Enum.Font.GothamSemibold TextLabel_2.Text = 'Wait Speed :' TextLabel_2.TextColor3 = Color3.fromRGB(255, 255, 255) TextLabel_2.TextSize = 30.000 TextLabel_2.TextWrapped = true TextLabel_2.TextXAlignment = Enum.TextXAlignment.Left Wait.Name = 'Wait()' Wait.Parent = Frame_2 Wait.BackgroundColor3 = Color3.fromRGB(255, 255, 255) Wait.BackgroundTransparency = 1.000 Wait.Position = UDim2.new(0.531963468, 0, 0.466386557, 0) Wait.Size = UDim2.new(0, 199, 0, 50) Wait.ZIndex = 99999 Wait.ClearTextOnFocus = false Wait.Font = Enum.Font.GothamSemibold Wait.Text = '0.5' Wait.TextColor3 = Color3.fromRGB(255, 255, 255) Wait.TextSize = 30.000 Wait.TextWrapped = true --Sound Service: local notification = Instance.new('Sound') notification.Parent = game:GetService('SoundService') notification.SoundId = 'rbxassetid://9086208751' notification.Volume = 5 notification.Name = '. Ǥ҉̷҉̵҉̸҉̷҉̵҉̸҉̡҉̡҉̼҉̱҉͎҉͎҉̞҉̼҉̱҉͎҉͎҉̞҉ͤ҉ͬ҉̅҉ͤ҉ͬ' --funuction: Exit.MouseButton1Click:Connect(function() ScreenGui:Destroy() end) local Mute = false IY.MouseButton1Click:Connect(function() Mute = false end) _1E.MouseButton1Click:Connect(function() Mute = true while Mute == true do wait() for _, sound in next, workspace:GetDescendants() do if sound:IsA('Sound') then sound:Stop() end end end end) _3E.MouseButton1Click:Connect(function() for _, sound in next, workspace:GetDescendants() do if sound:IsA('Sound') then sound:Play() end end end) local Active = true SE.MouseButton1Click:Connect(function() Active = true while Active == true do local StringValue = Wait.Text wait(StringValue) for _, sound in next, workspace:GetDescendants() do if sound:IsA('Sound') then sound:Play() end end end end) Stop.MouseButton1Click:Connect(function() Active = false end) --Credit: notification:Play() game:GetService('StarterGui'):SetCore('SendNotification', { Title = 'FEAG', Text = 'FEAG Has Been Loaded , Made By Scripty#2063 (gamer14_123)', Icon = '', Duration = 10, Button1 = 'Yes Sir', }) --Check: while true do wait(0.5) local setting = game:GetService('SoundService').RespectFilteringEnabled if setting == true then Time.TextColor = BrickColor.new(255, 0, 0) Time.Text = 'RespectFilteringEnabled(RFE) : true' elseif setting == false then Time.Text = 'RespectFilteringEnabled(RFE) : false' Time.TextColor = BrickColor.new(0, 255, 0) end end end, }) PlayerTab:AddButton({ Name = 'AquaMatrix Animations (VERY OP)', Callback = function() --[[ WARNING: Heads up! This script has not been verified by ScriptBlox. Use at your own risk! ]] --[[ - I really appreciate it if you join my discord server ^^ - https://discord.gg/GzQGE9rr26 - if you encounter any bugs or issue with AquaMatrix, please report it to our discord server. - AquaMatrix might not work for some executors :( ]] loadstring( game:HttpGet( 'https://raw.githubusercontent.com/ExploitFin/AquaMatrix/refs/heads/AquaMatrix/AquaMatrix' ) )() end, }) PlayerTab:AddButton({ Name = ' FE Animation GUI (R6, No Hats, Free)', Callback = function() loadstring( game:HttpGet( 'https://gist.githubusercontent.com/MelonsStuff/f018928d2f010789a150b4924e279b16/raw/8de399eb9cbccbde430fcd37270cd4ff171f8b8e/AnimationGUI.txt' ) )() end, }) PlayerTab:AddButton({ Name = 'No Animation for car script', Callback = function() loadstring(game:HttpGet('https://pastebin.com/raw/wN9bgjvD'))() end, }) --other tab local OtherTab = Window:MakeTab({ Name = 'ADMIN Mods', Icon = 'rbxassetid://4483345998', PremiumOnly = false, }) local Section = OtherTab:AddSection({ Name = '(ADMIN MOD MENUS)', }) OtherTab:AddButton({ Name = 'Infinite Yield MOD MENU', Callback = function() loadstring( game:HttpGet( 'https://raw.githubusercontent.com/EdgeIY/infiniteyield/master/source' ) )() end, }) OtherTab:AddButton({ Name = 'NoName Admin MOD MENU', Callback = function() loadstring( game:HttpGet( 'https://raw.githubusercontent.com/FilteringEnabled/NamelessAdmin/main/Source' ) )() end, }) local OtherTab = Window:MakeTab({ Name = 'REANIMATIONS', Icon = 'rbxassetid://4483345998', PremiumOnly = false, }) local Section = OtherTab:AddSection({ Name = '(GENESIS reanimations)', }) OtherTab:AddButton({ Name = 'Krystal%20Dance', Callback = function() --[[ _________ _____ ___________________ __ ____/__________________________(_)_______ ___ ____/__ ____/ _ / __ _ _ \_ __ \ _ \_ ___/_ /__ ___/ __ /_ __ __/ / /_/ / / __/ / / / __/(__ )_ / _(__ ) _ __/ _ /___ \____/ \___//_/ /_/\___//____/ /_/ /____/ /_/ /_____/ by rqz https://discord.com/invite/aEZpBEHgMT ]] -- --====================================-- -- FDless Options -- --====================================-- permadeath = true --adds permanent death (no respawning), see #supported-executors channel for executors that work with this fling = true --toggle fling allowshiftlock = true --adds shiftlock to patchma rig ctrltp = true --adds control click tp placeholders = true --adds transparent parts showing your hats when you don't have real ones clickfling = true --adds click flinging regardless of attacks highlightflingtargets = true --highlight fling discharscripts = true --disable character scripts flingchangestate = true --fling with whole body hidedeatheffect = true --hides the red damage border when you die (respawn) respawntp = 3 --respawn tp mode -- 0 - stay at spawn -- 1 - randomtp close -- 2 - behind fake character -- 3 - hide body breakjointsmethod = 1 --breakjoints mode -- 1 - health+breakjoints (the most support) -- 2 - health or breakjoints -- 3 - breakjoints simrad = true --sets simulation radius --==========================================================================================================================-- loadstring( game:HttpGet( 'https://raw.githubusercontent.com/GenesisFE/Genesis/main/Obfuscations/Krystal%20Dance' ) )() --==========================================================================================================================-- end, }) OtherTab:AddButton({ Name = 'Goner', Callback = function() --[[ _________ _____ ___________________ __ ____/__________________________(_)_______ ___ ____/__ ____/ _ / __ _ _ \_ __ \ _ \_ ___/_ /__ ___/ __ /_ __ __/ / /_/ / / __/ / / / __/(__ )_ / _(__ ) _ __/ _ /___ \____/ \___//_/ /_/\___//____/ /_/ /____/ /_/ /_____/ by rqz https://discord.com/invite/aEZpBEHgMT ]] -- --====================================-- -- FDless Options -- --====================================-- permadeath = true --adds permanent death (no respawning), see #supported-executors channel for executors that work with this fling = true --toggle fling allowshiftlock = true --adds shiftlock to patchma rig ctrltp = true --adds control click tp placeholders = true --adds transparent parts showing your hats when you don't have real ones clickfling = false --adds click flinging regardless of attacks highlightflingtargets = true --highlight fling discharscripts = true --disable character scripts flingchangestate = true --fling with whole body hidedeatheffect = true --hides the red damage border when you die (respawn) respawntp = 3 --respawn tp mode -- 0 - stay at spawn -- 1 - randomtp close -- 2 - behind fake character -- 3 - hide body breakjointsmethod = 1 --breakjoints mode -- 1 - health+breakjoints (the most support) -- 2 - health or breakjoints -- 3 - breakjoints simrad = true --sets simulation radius --==========================================================================================================================-- loadstring( game:HttpGet( 'https://raw.githubusercontent.com/GenesisFE/Genesis/main/Obfuscations/Goner' ) )() --==========================================================================================================================-- end, }) OtherTab:AddButton({ Name = 'Neptunian%20V', Callback = function() --[[ _________ _____ ___________________ __ ____/__________________________(_)_______ ___ ____/__ ____/ _ / __ _ _ \_ __ \ _ \_ ___/_ /__ ___/ __ /_ __ __/ / /_/ / / __/ / / / __/(__ )_ / _(__ ) _ __/ _ /___ \____/ \___//_/ /_/\___//____/ /_/ /____/ /_/ /_____/ by rqz https://discord.com/invite/aEZpBEHgMT ]] -- --====================================-- -- FDless Options -- --====================================-- permadeath = true --adds permanent death (no respawning), see #supported-executors channel for executors that work with this fling = true --toggle fling allowshiftlock = true --adds shiftlock to patchma rig ctrltp = true --adds control click tp placeholders = true --adds transparent parts showing your hats when you don't have real ones clickfling = false --adds click flinging regardless of attacks highlightflingtargets = true --highlight fling discharscripts = true --disable character scripts flingchangestate = true --fling with whole body hidedeatheffect = true --hides the red damage border when you die (respawn) respawntp = 3 --respawn tp mode -- 0 - stay at spawn -- 1 - randomtp close -- 2 - behind fake character -- 3 - hide body breakjointsmethod = 1 --breakjoints mode -- 1 - health+breakjoints (the most support) -- 2 - health or breakjoints -- 3 - breakjoints simrad = true --sets simulation radius --==========================================================================================================================-- loadstring( game:HttpGet( 'https://raw.githubusercontent.com/GenesisFE/Genesis/main/Obfuscations/Neptunian%20V' ) )() --==========================================================================================================================-- end, }) OtherTab:AddButton({ Name = 'Studio%20Dummy', Callback = function() --[[ _________ _____ ___________________ __ ____/__________________________(_)_______ ___ ____/__ ____/ _ / __ _ _ \_ __ \ _ \_ ___/_ /__ ___/ __ /_ __ __/ / /_/ / / __/ / / / __/(__ )_ / _(__ ) _ __/ _ /___ \____/ \___//_/ /_/\___//____/ /_/ /____/ /_/ /_____/ by rqz https://discord.com/invite/aEZpBEHgMT ]] -- --====================================-- -- FDless Options -- --====================================-- permadeath = true --adds permanent death (no respawning), see #supported-executors channel for executors that work with this fling = true --toggle fling allowshiftlock = true --adds shiftlock to patchma rig ctrltp = true --adds control click tp placeholders = true --adds transparent parts showing your hats when you don't have real ones clickfling = false --adds click flinging regardless of attacks highlightflingtargets = true --highlight fling discharscripts = true --disable character scripts flingchangestate = true --fling with whole body hidedeatheffect = true --hides the red damage border when you die (respawn) respawntp = 3 --respawn tp mode -- 0 - stay at spawn -- 1 - randomtp close -- 2 - behind fake character -- 3 - hide body breakjointsmethod = 1 --breakjoints mode -- 1 - health+breakjoints (the most support) -- 2 - health or breakjoints -- 3 - breakjoints simrad = true --sets simulation radius --==========================================================================================================================-- loadstring( game:HttpGet( 'https://raw.githubusercontent.com/GenesisFE/Genesis/main/Obfuscations/Studio%20Dummy' ) )() --==========================================================================================================================-- end, }) OtherTab:AddButton({ Name = 'Gale%20Fighter', Callback = function() --[[ _________ _____ ___________________ __ ____/__________________________(_)_______ ___ ____/__ ____/ _ / __ _ _ \_ __ \ _ \_ ___/_ /__ ___/ __ /_ __ __/ / /_/ / / __/ / / / __/(__ )_ / _(__ ) _ __/ _ /___ \____/ \___//_/ /_/\___//____/ /_/ /____/ /_/ /_____/ by rqz https://discord.com/invite/aEZpBEHgMT ]] -- --====================================-- -- FDless Options -- --====================================-- permadeath = true --adds permanent death (no respawning), see #supported-executors channel for executors that work with this fling = true --toggle fling allowshiftlock = true --adds shiftlock to patchma rig ctrltp = true --adds control click tp placeholders = true --adds transparent parts showing your hats when you don't have real ones clickfling = false --adds click flinging regardless of attacks highlightflingtargets = true --highlight fling discharscripts = true --disable character scripts flingchangestate = true --fling with whole body hidedeatheffect = true --hides the red damage border when you die (respawn) respawntp = 3 --respawn tp mode -- 0 - stay at spawn -- 1 - randomtp close -- 2 - behind fake character -- 3 - hide body breakjointsmethod = 1 --breakjoints mode -- 1 - health+breakjoints (the most support) -- 2 - health or breakjoints -- 3 - breakjoints simrad = true --sets simulation radius --==========================================================================================================================-- loadstring( game:HttpGet( 'https://raw.githubusercontent.com/GenesisFE/Genesis/main/Obfuscations/Gale%20Fighter' ) )() --==========================================================================================================================-- end, }) OtherTab:AddButton({ Name = 'Ban%20Hammer', Callback = function() --[[ _________ _____ ___________________ __ ____/__________________________(_)_______ ___ ____/__ ____/ _ / __ _ _ \_ __ \ _ \_ ___/_ /__ ___/ __ /_ __ __/ / /_/ / / __/ / / / __/(__ )_ / _(__ ) _ __/ _ /___ \____/ \___//_/ /_/\___//____/ /_/ /____/ /_/ /_____/ by rqz https://discord.com/invite/aEZpBEHgMT ]] -- --====================================-- -- FDless Options -- --====================================-- permadeath = true --adds permanent death (no respawning), see #supported-executors channel for executors that work with this fling = true --toggle fling allowshiftlock = true --adds shiftlock to patchma rig ctrltp = true --adds control click tp placeholders = true --adds transparent parts showing your hats when you don't have real ones clickfling = false --adds click flinging regardless of attacks highlightflingtargets = true --highlight fling discharscripts = true --disable character scripts flingchangestate = true --fling with whole body hidedeatheffect = true --hides the red damage border when you die (respawn) respawntp = 3 --respawn tp mode -- 0 - stay at spawn -- 1 - randomtp close -- 2 - behind fake character -- 3 - hide body breakjointsmethod = 1 --breakjoints mode -- 1 - health+breakjoints (the most support) -- 2 - health or breakjoints -- 3 - breakjoints simrad = true --sets simulation radius --==========================================================================================================================-- loadstring( game:HttpGet( 'https://raw.githubusercontent.com/GenesisFE/Genesis/main/Obfuscations/Ban%20Hammer' ) )() --==========================================================================================================================-- end, }) OtherTab:AddButton({ Name = 'Puppet%20Master', Callback = function() --[[ _________ _____ ___________________ __ ____/__________________________(_)_______ ___ ____/__ ____/ _ / __ _ _ \_ __ \ _ \_ ___/_ /__ ___/ __ /_ __ __/ / /_/ / / __/ / / / __/(__ )_ / _(__ ) _ __/ _ /___ \____/ \___//_/ /_/\___//____/ /_/ /____/ /_/ /_____/ by rqz https://discord.com/invite/aEZpBEHgMT ]] -- --===================================-- --= Script Options =-- --===================================-- DisableRedAnimatedText = false --disables the animated text that keeps popping up on screen, does not disable Kills, Target or Script Title --====================================-- -- FDless Options -- --====================================-- permadeath = true --adds permanent death (no respawning), see #supported-executors channel for executors that work with this fling = true --toggle fling allowshiftlock = true --adds shiftlock to patchma rig ctrltp = true --adds control click tp placeholders = true --adds transparent parts showing your hats when you don't have real ones clickfling = false --adds click flinging regardless of attacks highlightflingtargets = true --highlight fling discharscripts = true --disable character scripts flingchangestate = true --fling with whole body hidedeatheffect = true --hides the red damage border when you die (respawn) respawntp = 3 --respawn tp mode -- 0 - stay at spawn -- 1 - randomtp close -- 2 - behind fake character -- 3 - hide body breakjointsmethod = 1 --breakjoints mode -- 1 - health+breakjoints (the most support) -- 2 - health or breakjoints -- 3 - breakjoints simrad = true --sets simulation radius --==========================================================================================================================-- loadstring( game:HttpGet( 'https://raw.githubusercontent.com/GenesisFE/Genesis/main/Obfuscations/Puppet%20Master' ) )() --==========================================================================================================================-- end, }) OtherTab:AddButton({ Name = 'Minigun', Callback = function() --[[ _________ _____ ___________________ __ ____/__________________________(_)_______ ___ ____/__ ____/ _ / __ _ _ \_ __ \ _ \_ ___/_ /__ ___/ __ /_ __ __/ / /_/ / / __/ / / / __/(__ )_ / _(__ ) _ __/ _ /___ \____/ \___//_/ /_/\___//____/ /_/ /____/ /_/ /_____/ by rqz https://discord.com/invite/aEZpBEHgMT ]] -- --====================================-- -- FDless Options -- --====================================-- permadeath = true --adds permanent death (no respawning), see #supported-executors channel for executors that work with this fling = true --toggle fling allowshiftlock = true --adds shiftlock to patchma rig ctrltp = true --adds control click tp placeholders = true --adds transparent parts showing your hats when you don't have real ones clickfling = false --adds click flinging regardless of attacks highlightflingtargets = true --highlight fling discharscripts = true --disable character scripts flingchangestate = true --fling with whole body hidedeatheffect = true --hides the red damage border when you die (respawn) respawntp = 3 --respawn tp mode -- 0 - stay at spawn -- 1 - randomtp close -- 2 - behind fake character -- 3 - hide body breakjointsmethod = 1 --breakjoints mode -- 1 - health+breakjoints (the most support) -- 2 - health or breakjoints -- 3 - breakjoints simrad = true --sets simulation radius --==========================================================================================================================-- loadstring( game:HttpGet( 'https://raw.githubusercontent.com/GenesisFE/Genesis/main/Obfuscations/Minigun' ) )() --==========================================================================================================================-- end, }) OtherTab:AddButton({ Name = 'Sniper', Callback = function() --[[ _________ _____ ___________________ __ ____/__________________________(_)_______ ___ ____/__ ____/ _ / __ _ _ \_ __ \ _ \_ ___/_ /__ ___/ __ /_ __ __/ / /_/ / / __/ / / / __/(__ )_ / _(__ ) _ __/ _ /___ \____/ \___//_/ /_/\___//____/ /_/ /____/ /_/ /_____/ by rqz https://discord.com/invite/aEZpBEHgMT ]] -- --====================================-- -- FDless Options -- --====================================-- permadeath = true --adds permanent death (no respawning), see #supported-executors channel for executors that work with this fling = true --toggle fling allowshiftlock = true --adds shiftlock to patchma rig ctrltp = true --adds control click tp placeholders = true --adds transparent parts showing your hats when you don't have real ones clickfling = false --adds click flinging regardless of attacks highlightflingtargets = true --highlight fling discharscripts = true --disable character scripts flingchangestate = true --fling with whole body hidedeatheffect = true --hides the red damage border when you die (respawn) respawntp = 3 --respawn tp mode -- 0 - stay at spawn -- 1 - randomtp close -- 2 - behind fake character -- 3 - hide body breakjointsmethod = 1 --breakjoints mode -- 1 - health+breakjoints (the most support) -- 2 - health or breakjoints -- 3 - breakjoints simrad = true --sets simulation radius --==========================================================================================================================-- loadstring( game:HttpGet( 'https://raw.githubusercontent.com/GenesisFE/Genesis/main/Obfuscations/Sniper' ) )() --==========================================================================================================================-- end, }) local Section = OtherTab:AddSection({ Name = '(MyWorld reanimations)', }) OtherTab:AddButton({ Name = 'patchma hub v46', Callback = function() --[[ patchma hub by MyWorld lets get the party started IDs of paid accessories: -for arms 11159410305,11263254795 or 14255556501,14255554762 or 12344545199,12344591101 or 13839976999,13831200263 -for legs 14768693948,14768701869 or 11159483910,12652786974 or 17401151565,17387616772 -for torso 14255528083 or 13421786478 or 14768678294 or anything else that covers ur torso. examples: 14532301415,13423624885,11502853991,14053485259,13779879140,14443132226,17163407577,16297156693,17180496303,17171230401 can be same stuff but different colors there are 156 ways to make a rig with the ids above IDs of free accessories: 3033910400,3409612660,3438342658,3398308134,4324158403,3822880197,4154538250,3443038622,4819740796 accessories for Immortality Lord: head: 17375337078 or 17270164442 or 105058659622112 body: 121668589285446,80629770394501,127671621543010,76687571475377,120230112701079 or 132908702618809,122975605535029,115313441748457,127208207296576,131203955709755 or 17270178857,17270001635,17269952801,17269983359,17269998373 wings: 17270231731,17270225913 sword: 17326812233,17326800544 ]] --no need to get and index the library tables with function names every time the script uses them local osclock = os.clock local tspawn = task.spawn local twait = task.wait local schar = string.char local ssub = string.sub local sfind = string.find local supper = string.upper local mrandom = math.random local sin = math.sin local cos = math.cos local abs = math.abs local min = math.min local clamp = math.clamp local tinsert = table.insert local tclear = table.clear local tclone = table.clone local tfind = table.find --the script doesnt have to read global varaibles every time to get them --why not have them saved in local varaibles for faster access times local next = next local pcall = pcall local xpcall = xpcall local type = type local typeof = typeof local game = game local replicatesignal = replicatesignal local i = Instance.new local v2 = Vector2.new local v3 = Vector3.new local c3 = Color3.new local cf = CFrame.new local cfl = CFrame.lookAt local angles = CFrame.fromEulerAngles --faster than .Angles local u2 = UDim2.new local e = Enum local rp = RaycastParams.new local cs = ColorSequence.new local csk = ColorSequenceKeypoint.new local sine = osclock() local deltaTime = 0 local v3_0 = v3() local v3_101 = v3(1, 0, 1) local v3_010 = v3(0, 1, 0) local cf_0 = cf() local v3_xz = v3_101 * 10 local v3_xzL = v3_101 * 250.1 local v3_net = v3_010 * 25.01 local pdloadedtime = nil --not "local function rs" to not assign debug names local rs = function() local s = '' for i = 1, mrandom(8, 15) do if mrandom(2) == 2 then s = s .. schar(mrandom(65, 90)) else s = s .. schar(mrandom(97, 122)) end end return s end --it runs even faster if u call __index and __newindex metamethods directly local getMetamethodFromErrorStack = function(userdata, f, test) local ret = nil xpcall(f, function() ret = debug.info(2, 'f') end, userdata, nil, 0) if (type(ret) ~= 'function') or not test(ret) then return f end return ret end local insSet = getMetamethodFromErrorStack(game, function(a, b, c) a[b] = c end, function(f) local a = i('Folder') local b = rs() f(a, 'Name', b) return a.Name == b end) local insGet = getMetamethodFromErrorStack(game, function(a, b) return a[b] end, function(f) local a = i('Folder') local b = rs() a.Name = b return f(a, 'Name') == b end) local cfGet = getMetamethodFromErrorStack(cf_0, function(a, b) return a[b] end, function(f) return f(cf(1, 2, 3), 'Position') == v3(1, 2, 3) end) local cfMul = getMetamethodFromErrorStack(cf_0, function(a, b) return a * b end, function(f) return angles(1, 2, 3) * angles(1, 2, 3) == f(angles(1, 2, 3), angles(1, 2, 3)) end) local cfAdd = getMetamethodFromErrorStack(cf_0, function(a, b) return a + b end, function(f) return cf(1, 2, 3) + v3(1, 2, 3) == f(cf(1, 2, 3), v3(1, 2, 3)) end) local v3Get = getMetamethodFromErrorStack(v3_0, function(a, b) return a[b] end, function(f) return v3(1, 2, 3).Unit == f(v3(1, 2, 3), 'Unit') end) --multiplying and adding vector3 is faster if you use the * and + operators --no need to index instances every time to call their functions local Clone = insGet(game, 'Clone') local ClearAllChildren = insGet(game, 'ClearAllChildren') local Destroy = insGet(game, 'Destroy') local IsA = insGet(game, 'IsA') local FindFirstChildOfClass = insGet(game, 'FindFirstChildOfClass') local FindFirstChildWhichIsA = insGet(game, 'FindFirstChildWhichIsA') local GetChildren = insGet(game, 'GetChildren') local GetDescendants = insGet(game, 'GetDescendants') local IsDescendantOf = insGet(game, 'IsDescendantOf') local GetPropertyChangedSignal = insGet( game, 'GetPropertyChangedSignal' ) --findfirstchildofclass faster than getservice local plrs = FindFirstChildOfClass(game, 'Players') local rus = FindFirstChildOfClass(game, 'RunService') local ws = FindFirstChildOfClass(game, 'Workspace') local uis = FindFirstChildOfClass(game, 'UserInputService') local gs = FindFirstChildOfClass(game, 'GuiService') local sg = FindFirstChildOfClass(game, 'StarterGui') local lp = insGet(plrs, 'LocalPlayer') local pg = FindFirstChildOfClass(lp, 'PlayerGui') local mouse = insGet(lp, 'GetMouse')(lp) local cdsb = insGet(lp, 'ConnectDiedSignalBackend') local rst = insGet(plrs, 'RespawnTime') + 0.07 --1/15 local preanimation = insGet(rus, 'PreAnimation') local heartbeat = insGet(rus, 'Heartbeat') local renderstepped = insGet(rus, 'RenderStepped') local GetPlayers = insGet(plrs, 'GetPlayers') local SetCoreGuiEnabled = insGet(sg, 'SetCoreGuiEnabled') local GetCoreGuiEnabled = insGet(sg, 'GetCoreGuiEnabled') local Raycast = insGet(ws, 'Raycast') local Connect = heartbeat.Connect local Disconnect = Connect( GetPropertyChangedSignal(game, 'CreatorId'), type ).Disconnect local Wait = heartbeat.Wait local GetMouseLocation = insGet(uis, 'GetMouseLocation') local GetFocusedTextBox = insGet(uis, 'GetFocusedTextBox') local GetMouseDelta = insGet(uis, 'GetMouseDelta') local IsMouseButtonPressed = insGet(uis, 'IsMouseButtonPressed') local IsKeyDown = insGet(uis, 'IsKeyDown') local Inverse = cfGet(cf_0, 'Inverse') local Lerp = cfGet(cf_0, 'Lerp') local guiTheme = { guiTitle = 'patchma hub', windowTitleColor = c3(0, 0, 1), windowTopColor = c3(0, 0, 0), windowBottomColor = c3(0, 0, 0.584314), windowMinimizedSize = { X = 220, Y = 22 }, windowRegularSize = { X = 220, Y = 290 }, buttonsTextColor = c3(0.0941177, 0.317647, 0.878431), labelsTextColor = c3(0.560784, 0.560784, 0.560784), listTopColor = c3(0, 0, 0), listBottomColor = c3(0.0705882, 0.0705882, 0.0705882), } local accessorylimbs = { { meshid = '117287001096396', textureid = '', C0 = cf_0, Name = 'Left Arm', }, { meshid = '117287001096396', textureid = '', C0 = cf_0, Name = 'Right Arm', }, { meshid = '90736849096372', textureid = '', C0 = angles(0, 0, 1.5707963267948966), Name = 'Left Arm', }, { meshid = '105141400603933', textureid = '', C0 = angles(0, 0, 1.5707963267948966), Name = 'Right Arm', }, { meshid = '11263221350', textureid = '11263219250', C0 = angles(1.5707963267948966, 0, 1.5707963267948966), Name = 'Left Arm', }, { meshid = '11159370334', textureid = '11159284657', C0 = angles(-1.5707963267948966, 0, 1.5707963267948966), Name = 'Right Arm', }, { meshid = '14255522247', textureid = '', C0 = angles(1.5707963267948966, 0, 1.5707963267948966), Name = 'Left Arm', }, { meshid = '14255522247', textureid = '', C0 = angles(-1.5707963267948966, 0, 1.5707963267948966), Name = 'Right Arm', }, { meshid = '17374767929', textureid = '', C0 = angles(1.5707963267948966, 0, 1.5707963267948966), Name = 'Left Arm', }, { meshid = '17374767929', textureid = '', C0 = angles(-1.5707963267948966, 0, 1.5707963267948966), Name = 'Right Arm', }, { meshid = '12344207333', textureid = '', C0 = angles(2, 0, 0), Name = 'Left Arm', }, { meshid = '12344206657', textureid = '', C0 = angles(2, 0, 0), Name = 'Right Arm', }, { meshid = '13831073174', textureid = '', C0 = cf(0.017, 0, -0.23) * angles( -1.4835298641951802, -0.15707963267948966, 2.199114857512855 ), Name = 'Left Arm', }, { meshid = '13839903766', textureid = '', C0 = cf(0, -0.62, -0.01) * angles( 1.6580627893946132, 0.15707963267948966, -2.199114857512855 ), Name = 'Right Arm', }, { meshid = '121304376791439', textureid = '', C0 = cf_0, Name = 'Left Leg', }, { meshid = '121304376791439', textureid = '', C0 = cf_0, Name = 'Right Leg', }, { meshid = '11159370334', textureid = '11159285454', C0 = angles(1.5707963267948966, 0, 1.5707963267948966), Name = 'Left Leg', }, { meshid = '12652772399', textureid = '12652775021', C0 = cf(0, -0.125, 0), Name = 'Right Leg', }, { meshid = '14768684979', textureid = '', C0 = angles(0, 0, 1.5707963267948966), Name = 'Left Leg', }, { meshid = '14768684979', textureid = '', C0 = angles(0, 0, 1.5707963267948966), Name = 'Right Leg', }, { meshid = '17387586286', textureid = '', C0 = angles(1.5707963267948966, 0, 1.5707963267948966), Name = 'Left Leg', }, { meshid = '17387586286', textureid = '', C0 = angles(-1.5707963267948966, 0, 1.5707963267948966), Name = 'Right Leg', }, { meshid = '14768666349', textureid = '', C0 = cf_0, Name = 'Torso', }, { meshid = '14241018198', textureid = '', C0 = cf_0, Name = 'Torso', }, { meshid = '13421774668', textureid = '', C0 = cf_0, Name = 'Torso', }, { meshid = '110684113028749', textureid = '', C0 = cf_0, Name = 'Torso', }, { meshid = '127552124837034', textureid = '', C0 = angles(0, 0, 1.5707963267948966), Name = 'Torso', }, { meshid = '4324138105', textureid = '4324138210', C0 = angles(-1.6144295580947547, 1.5707963267948966, 0) * cf( -0.125, 0.3, 0 ), Name = 'Left Arm', }, { meshid = '4154474745', textureid = '4154474807', C0 = angles(1.5271630954950384, -1.5707963267948966, 0) * cf( -0.125, -0.3, 0 ), Name = 'Left Arm', }, { meshid = '3030546036', textureid = '3650191503', C0 = angles(1.5271630954950384, 1.5707963267948966, 0) * cf( 0.125, -0.3, 0 ), Name = 'Right Arm', }, { meshid = '3030546036', textureid = '3443321249', C0 = angles(-1.6144295580947547, -1.5707963267948966, 0) * cf( 0.125, 0.3, 0 ), Name = 'Right Arm', }, { meshid = '3030546036', textureid = '3360974849', C0 = angles(1.5271630954950384, 1.5707963267948966, 0) * cf( -0.125, -0.35, 0 ), Name = 'Left Leg', }, { meshid = '3030546036', textureid = '3360978739', C0 = angles(-1.6144295580947547, -1.5707963267948966, 0) * cf( -0.125, 0.3, 0 ), Name = 'Left Leg', }, { meshid = '3030546036', textureid = '3033898741', C0 = angles(1.5271630954950384, -1.5707963267948966, 0) * cf( 0.125, -0.35, 0 ), Name = 'Right Leg', }, { meshid = '3030546036', textureid = '3409604993', C0 = angles(-1.6144295580947547, 1.5707963267948966, 0) * cf( 0.125, 0.3, 0 ), Name = 'Right Leg', }, { meshid = '4819720316', textureid = '4819722776', C0 = angles(0, 0, 0.2617993877991494), Name = 'Torso', }, } local gp = function(p, n, cl) for i, v in next, GetChildren(p) do if IsA(v, cl) and (insGet(v, 'Name') == n) then return v end end return nil end local timegp = function(p, n, c, t) t = osclock() + t while t > osclock() do for i, v in next, GetChildren(p) do if IsA(v, c) and (insGet(v, 'Name') == n) then return v end end Wait(preanimation) end return nil end local makeplaceholder = function(v) if not insGet(v, 'Archivable') then insSet(v, 'Archivable', true) end v = Clone(v) for i, v in next, GetChildren(v) do if IsA(v, 'SpecialMesh') then insSet(v, 'Name', rs()) ClearAllChildren(v) else Destroy(v) end end insSet(v, 'Name', rs()) insSet(v, 'Anchored', true) insSet(v, 'CanCollide', false) insSet(v, 'Transparency', 0.25) return v end local emptyfunction = function() end local i1 = i('Frame') local i2 = i('Frame') local i3 = i('Frame') local i4 = i('ScrollingFrame') local i5 = i('UIListLayout') local i6 = i('UIGradient') local i7 = i('TextBox') local i8 = i('TextButton') local i9 = i('UIGradient') local i10 = i('ScreenGui') insSet(i1, 'AnchorPoint', v2(0.5, 0)) insSet(i1, 'Active', true) insSet(i1, 'BorderSizePixel', 0) insSet(i1, 'ClipsDescendants', true) insSet( i1, 'Position', u2(0.5, 0, 0.5, guiTheme.windowRegularSize.Y / -2) ) insSet( i1, 'Size', u2(0, guiTheme.windowRegularSize.X, 0, guiTheme.windowRegularSize.Y) ) insSet(i1, 'Name', rs()) insSet(i1, 'Parent', i10) insSet(i2, 'BackgroundColor3', c3(1, 1, 1)) insSet(i2, 'BorderSizePixel', 0) insSet( i2, 'Size', u2(0, guiTheme.windowRegularSize.X, 0, guiTheme.windowRegularSize.Y) ) insSet(i2, 'Name', rs()) insSet(i2, 'Parent', i1) insSet(i3, 'BackgroundColor3', c3(1, 1, 1)) insSet(i3, 'BorderSizePixel', 0) insSet(i3, 'Position', u2(0, 5, 0, guiTheme.windowMinimizedSize.Y - 2)) insSet( i3, 'Size', u2( 1, -10, 0, guiTheme.windowRegularSize.Y - guiTheme.windowMinimizedSize.Y - 3 ) ) insSet(i3, 'Name', rs()) insSet(i3, 'Parent', i2) insSet(i4, 'Active', true) insSet(i4, 'BackgroundTransparency', 1) insSet(i4, 'BorderSizePixel', 0) insSet(i4, 'Size', u2(1, -3, 1, 0)) insSet(i4, 'AutomaticCanvasSize', e.AutomaticSize.Y) insSet(i4, 'CanvasSize', u2(0, 0, 0, 0)) insSet(i4, 'ScrollBarThickness', 7) insSet(i4, 'Name', rs()) insSet(i4, 'Parent', i3) insSet(i5, 'Name', rs()) insSet(i5, 'Parent', i4) insSet(i5, 'SortOrder', e.SortOrder.LayoutOrder) insSet(i6, 'Name', rs()) insSet(i6, 'Parent', i3) insSet( i6, 'Color', cs({ csk(0, guiTheme.listTopColor), csk(1, guiTheme.listBottomColor), }) ) insSet(i6, 'Rotation', 90) insSet(i7, 'Font', e.Font.SourceSans) insSet(i7, 'FontSize', e.FontSize.Size18) insSet(i7, 'ClearTextOnFocus', false) insSet(i7, 'Text', guiTheme.guiTitle) insSet(i7, 'TextColor3', guiTheme.windowTitleColor) insSet(i7, 'TextSize', 16) insSet(i7, 'AnchorPoint', v2(0.5, 0)) insSet(i7, 'BackgroundTransparency', 1) insSet( i7, 'Position', u2(0.5, 0, 0, guiTheme.windowMinimizedSize.Y / 2) ) insSet(i7, 'Name', rs()) insSet(i7, 'Parent', i2) insSet(i8, 'AnchorPoint', v2(1, 0)) insSet(i8, 'BackgroundTransparency', 1) insSet(i8, 'Position', u2(1, 0, 0, 0)) insSet(i8, 'Size', u2(0, 40, 0, guiTheme.windowMinimizedSize.Y)) insSet(i8, 'Name', rs()) insSet(i8, 'Parent', i2) insSet(i8, 'Font', e.Font.SourceSans) insSet(i8, 'FontSize', e.FontSize.Size18) insSet(i8, 'Text', '-') insSet(i8, 'TextColor3', c3(1, 1, 1)) insSet(i8, 'TextSize', 16) insSet(i9, 'Name', rs()) insSet(i9, 'Parent', i2) insSet( i9, 'Color', cs({ csk(0, guiTheme.windowTopColor), csk(1, guiTheme.windowBottomColor), }) ) insSet(i9, 'Rotation', 90) insSet(i10, 'ZIndexBehavior', e.ZIndexBehavior.Sibling) insSet(i10, 'IgnoreGuiInset', true) insSet(i10, 'ResetOnSpawn', false) insSet(i10, 'DisplayOrder', 2147483647) insSet(i10, 'Name', rs()) local guimin = false local minloop = false local i1X = guiTheme.windowRegularSize.X local i1Y = guiTheme.windowRegularSize.Y local i1Xdest = i1X local i1Ydest = i1Y Connect(insGet(i8, 'MouseButton1Click'), function() guimin = not guimin if guimin then i1Xdest = guiTheme.windowMinimizedSize.X i1Ydest = guiTheme.windowMinimizedSize.Y else i1Xdest = guiTheme.windowRegularSize.X i1Ydest = guiTheme.windowRegularSize.Y end if minloop then return end minloop = true insSet(i3, 'Visible', true) sine = osclock() local lastsine = sine while true do sine = osclock() local deltaTime = (sine - lastsine) * 10 lastsine = sine local difX = i1Xdest - i1X local difY = i1Ydest - i1Y if (abs(difY) <= 1) and (abs(difX) <= 1) then i1X = i1Xdest i1Y = i1Ydest insSet(i1, 'Size', u2(0, i1X, 0, i1Y)) break end i1X = i1X + difX * deltaTime i1Y = i1Y + difY * deltaTime insSet(i1, 'Size', u2(0, i1X, 0, i1Y)) twait() end insSet(i3, 'Visible', not guimin) minloop = false end) local Draggable = function(window, obj) local MB1enum = e.UserInputType.MouseButton1 local TOUCHenum = e.UserInputType.Touch obj = obj or window local activeEntered = 0 local mouseStart = nil local dragStart = nil local inputbegancon = nil local rendersteppedcon = nil local inputendedcon = nil local inputendedf = function(a) a = insGet(a, 'UserInputType') if (a == MB1enum) or (a == TOUCHenum) then Disconnect(rendersteppedcon) Disconnect(inputendedcon) end end local rendersteppedf = function() local off = GetMouseLocation(uis) - mouseStart insSet(window, 'Position', dragStart + u2(0, off.X, 0, off.Y)) end local inputbeganf = function(a) a = insGet(a, 'UserInputType') if ((a == MB1enum) or (a == TOUCHenum)) and (activeEntered == 0) and not GetFocusedTextBox(uis) then mouseStart = GetMouseLocation(uis) dragStart = insGet(window, 'Position') if rendersteppedcon then Disconnect(rendersteppedcon) end rendersteppedcon = Connect(renderstepped, rendersteppedf) if inputendedcon then Disconnect(inputendedcon) end inputendedcon = Connect( insGet(uis, 'InputEnded'), inputendedf ) end end Connect(insGet(obj, 'MouseEnter'), function() if inputbegancon then Disconnect(inputbegancon) end inputbegancon = Connect(insGet(uis, 'InputBegan'), inputbeganf) end) Connect(insGet(obj, 'MouseLeave'), function() Disconnect(inputbegancon) end) local ondes = function(d) if IsA(d, 'GuiObject') then local thisEntered = false local thisAdded = false local con0 = Connect(insGet(d, 'MouseEnter'), function() thisEntered = true if not thisAdded and insGet(d, 'Active') then activeEntered = activeEntered + 1 thisAdded = true end end) local con1 = Connect(insGet(d, 'MouseLeave'), function() thisEntered = false if thisAdded then activeEntered = activeEntered - 1 thisAdded = false end end) local con2 = Connect( GetPropertyChangedSignal(d, 'Active'), function() if thisEntered then if thisAdded and not insGet(d, 'Active') then activeEntered = activeEntered - 1 thisAdded = false elseif insGet(d, 'Active') and not thisAdded then activeEntered = activeEntered + 1 thisAdded = true end end end ) local con3 = nil con3 = Connect(insGet(d, 'AncestryChanged'), function() if not IsDescendantOf(d, window) then if thisAdded then activeEntered = activeEntered - 1 end Disconnect(con0) Disconnect(con1) Disconnect(con2) Disconnect(con3) end end) end end Connect(insGet(window, 'DescendantAdded'), ondes) for i, v in next, GetDescendants(window) do ondes(v) end end local btn = function(txt, f) local i1 = i('TextBox') local i2 = i('TextButton') insSet(i1, 'Font', e.Font.SourceSans) insSet(i1, 'FontSize', e.FontSize.Size14) insSet(i1, 'Text', txt) insSet(i1, 'ClearTextOnFocus', false) insSet(i1, 'Position', u2(0.5, 0, 0.5, 0)) insSet(i1, 'TextColor3', guiTheme.buttonsTextColor) insSet(i1, 'Name', rs()) insSet(i1, 'Parent', i2) insSet(i2, 'BackgroundTransparency', 1) insSet(i2, 'TextTransparency', 1) insSet(i2, 'Size', u2(1, 0, 0, 14)) insSet(i2, 'Name', rs()) if f then Connect(insGet(i2, 'MouseButton1Click'), f) end insSet(i2, 'Parent', i4) return i1 end local lbl = function(txt) local i1 = i('TextBox') local i2 = i('Frame') insSet(i1, 'Font', e.Font.SourceSans) insSet(i1, 'FontSize', e.FontSize.Size14) insSet(i1, 'Text', txt) insSet(i1, 'ClearTextOnFocus', false) insSet(i1, 'TextColor3', guiTheme.labelsTextColor) insSet(i1, 'Position', u2(0.5, 0, 0.5)) insSet(i1, 'BackgroundTransparency', 1) insSet(i1, 'Name', rs()) insSet(i1, 'Parent', i2) insSet(i2, 'Size', u2(1, 0, 0, 14)) insSet(i2, 'BackgroundTransparency', 1) insSet(i2, 'Name', rs()) insSet(i2, 'Parent', i4) return i1 end Draggable(i1) lbl('by MyWorld') lbl('discord.gg/QMy5f6DrbH') local allowshiftlock = nil local ctrltp = nil local placeholders = nil local clickfling = nil local highlightflingtargets = nil local discharscripts = nil local flingchangestate = nil local respawntp = nil local breakjointsmethod = nil local simrad = false local hidedeatheffect = nil local c = nil local stopreanimate = function() if c then c = nil if replicatesignal then replicatesignal(cdsb) end return true end return false end local reanimate = function() --[[ FDless reanimate by MyWorld optimize the optimized ]] local novoid = true --prevents parts from going under workspace.FallenPartsDestroyHeight if you control them local speedlimit = 3000 --makes your parts move slower if the magnitude of their velocity is higher than this local retVelTime = 0.51 --time that claimed parts have velocity to reclaim in case u lose them local walkSpeed = 16 --your walkspeed (can be changed at runtime) local jumpPower = 50 --your jump power (can be changed at runtime) local gravity = 196.2 --how fast the characters velocity decreases while falling (can be changed at runtime) local ctrlclicktp = ctrltp --makes you teleport where u point ur mouse cursor at when click and hold ctrl down local clickfling = clickfling --makes you fling the person you clicked when its available to do so local flingvel = v3(15000, 16000, 15000) --the rotation velocity that ur character will have while flinging if stopreanimate() then return end c = insGet(lp, 'Character') if not (c and IsDescendantOf(c, ws)) then return end local rootpart = gp(c, 'HumanoidRootPart', 'BasePart') or gp(c, 'Torso', 'BasePart') or gp(c, 'UpperTorso', 'BasePart') or timegp( c, 'HumanoidRootPart', 'BasePart', 0.5 ) or FindFirstChildWhichIsA(c, 'BasePart') if not rootpart then return end local cam = nil --theres a way to have ws.currentcamera nil on heartbeat and still have the game run normally local refcam = function() local newcam = insGet(ws, 'CurrentCamera') while not newcam do Wait(GetPropertyChangedSignal(ws, 'CurrentCamera')) newcam = insGet(ws, 'CurrentCamera') end cam = newcam end refcam() local camcf = insGet(cam, 'CFrame') local enumCamS = e.CameraType.Scriptable local camt = insGet(cam, 'CameraType') local camcon0 = nil local camcon1 = nil local camcon2 = nil local onnewcamera = function() refcam() if camcon0 then Disconnect(camcon0) Disconnect(camcon1) camcon0 = nil end if not c then if insGet(cam, 'CameraType') == enumCamS then insSet(cam, 'CameraType', camt) end return Disconnect(camcon2) end camcon0 = Connect( GetPropertyChangedSignal(cam, 'CFrame'), function() if insGet(cam, 'CFrame') ~= camcf then insSet(cam, 'CFrame', camcf) end end ) camcon1 = Connect( GetPropertyChangedSignal(cam, 'CameraType'), function() if insGet(cam, 'CameraType') ~= enumCamS then insSet(cam, 'CameraType', enumCamS) end end ) if insGet(cam, 'CameraType') ~= enumCamS then insSet(cam, 'CameraType', enumCamS) end if insGet(cam, 'CFrame') ~= camcf then insSet(cam, 'CFrame', camcf) end end camcon2 = Connect( GetPropertyChangedSignal(ws, 'CurrentCamera'), onnewcamera ) onnewcamera() local velYdelta = insGet(ws, 'Gravity') * 0.025 Connect(GetPropertyChangedSignal(ws, 'Gravity'), function() velYdelta = insGet(ws, 'Gravity') * 0.025 end) local fpdh = insGet(ws, 'FallenPartsDestroyHeight') novoid = novoid and (fpdh + 1) local Yvel = 0 local cfr = insGet(rootpart, 'CFrame') local pos = cfGet(cfr, 'Position') cfr = cfl(pos, pos + cfGet(cfr, 'LookVector') * v3_101) local primarypart = nil local shiftlock = false local firstperson = false local xzvel = v3_0 local v3_0150 = v3_010 * 1.5 local camcfLV = cfGet(camcf, 'LookVector') local camrot = cfl(v3_0, camcfLV) local camcfRV = cfGet(camrot, 'RightVector') local cammag = -v3Get( (cfGet(camcf, 'Position') - (pos + v3_0150)), 'Magnitude' ) local R6parts = { head = { Name = 'Head' }, torso = { Name = 'Torso' }, root = { Name = 'HumanoidRootPart' }, leftArm = { Name = 'Left Arm' }, rightArm = { Name = 'Right Arm' }, leftLeg = { Name = 'Left Leg' }, rightLeg = { Name = 'Right Leg' }, } rootpart = R6parts.root local cframes = {} for i, v in next, R6parts do cframes[v] = cfr end local joints = { { 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), }, { Name = 'RootJoint', Part0 = rootpart, 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), }, { 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), }, { 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), }, { 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), }, { 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), }, } local refreshedjoints = {} local refreshjointsI = nil refreshjointsI = function(part) tinsert(refreshedjoints, part) for i, v in next, joints do local part0 = v.Part0 local part1 = v.Part1 if part1 and (part0 == part) then cframes[part1] = cfMul( cframes[part], cfMul(v.C0, Inverse(v.C1)) ) if not tfind(refreshedjoints, part1) then refreshjointsI(part1) end elseif part0 and (part1 == part) then cframes[part0] = cfMul( cframes[part], cfMul(v.C1, Inverse(v.C0)) ) if not tfind(refreshedjoints, part0) then refreshjointsI(part0) end end end end refreshjointsI(rootpart) tclear(refreshedjoints) local attachments = { RightShoulderAttachment = { R6parts.rightArm, cf(0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, RightGripAttachment = { R6parts.rightArm, cf(0, -1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, LeftFootAttachment = { R6parts.leftLeg, cf(0, -1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, LeftShoulderAttachment = { R6parts.leftArm, cf(0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, LeftGripAttachment = { R6parts.leftArm, cf(0, -1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, RootAttachment = { rootpart, cf(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, RightFootAttachment = { R6parts.rightLeg, cf(0, -1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, NeckAttachment = { R6parts.torso, cf(0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, BodyFrontAttachment = { R6parts.torso, cf(0, 0, -0.5, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, BodyBackAttachment = { R6parts.torso, cf(0, 0, 0.5, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, LeftCollarAttachment = { R6parts.torso, cf(-1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, RightCollarAttachment = { R6parts.torso, cf(1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, WaistFrontAttachment = { R6parts.torso, cf(0, -1, -0.5, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, WaistCenterAttachment = { R6parts.torso, cf(0, -1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, WaistBackAttachment = { R6parts.torso, cf(0, -1, 0.5, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, HairAttachment = { R6parts.head, cf(0, 0.6, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, HatAttachment = { R6parts.head, cf(0, 0.6, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, FaceFrontAttachment = { R6parts.head, cf(0, 0, -0.6, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, FaceCenterAttachment = { R6parts.head, cf(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), }, } local getPart = function(name, blacklist) if blacklist then for i, v in next, cframes do if (i.Name == name) and not tfind(blacklist, i) then return i end end else for i, v in next, cframes do if i.Name == name then return i end end end return nil end local getJoint = function(name) for i, v in next, joints do if v.Name == name then return v end end return { C0 = cf_0, C1 = cf_0 } end local getPartFromMesh = function(m, t, blacklist) if blacklist then for v, _ in next, cframes do if v.m and (not tfind(blacklist, v)) and sfind(v.m, m) and sfind(v.t, t) then return v end end else for v, _ in next, cframes do if v.m and sfind(v.m, m) and sfind(v.t, t) then return v end end end local p = { m = m, t = t } cframes[p] = cfr local j = { C0 = cf_0, C1 = cf_0, Part0 = p } p.j = j return p end local getPartJoint = function(p) if cframes[p] then local j = p.j if j then return j end for i, v in next, joints do if v.Part0 == p then return v end end for i, v in next, joints do if v.Part1 == p then return v end end end return nil end local getAccWeldFromMesh = function(m, t) return getPartJoint(getPartFromMesh(m, t)) end local raycastparams = rp() raycastparams.FilterType = e.RaycastFilterType.Exclude raycastparams.RespectCanCollide = true local rayfilter = {} local characters = {} local refreshrayfilter = function() tclear(rayfilter) for i, v in next, characters do tinsert(rayfilter, v) end raycastparams.FilterDescendantsInstances = rayfilter end local flingtable = {} local rootparts = {} for i, v in next, accessorylimbs do v.p = getPart(v.Name) end local makePartCons = function(p, t) if (t.p == p) and insGet(p, 'Anchored') then t.p = nil end local con0 = Connect( GetPropertyChangedSignal(p, 'Anchored'), function() if insGet(p, 'Anchored') then if t.p == p then t.c = nil t.p = nil end elseif not t.p then t.p = p end end ) local con1 = nil con1 = Connect(insGet(p, 'AncestryChanged'), function() if not IsDescendantOf(p, ws) then Disconnect(con0) Disconnect(con1) if t.p == p then t.p = nil end end end) end local ondes = nil ondes = function(v) if c and IsA(v, 'Attachment') and IsDescendantOf(c, ws) then local v1 = attachments[insGet(v, 'Name')] if v1 then local p = insGet(v, 'Parent') if insGet(p, 'Parent') ~= c then local meshid = nil local textureid = nil if IsA(p, 'MeshPart') then meshid = insGet(p, 'MeshId') textureid = insGet(p, 'TextureID') elseif IsA(p, 'BasePart') then local sm = FindFirstChildOfClass( p, 'SpecialMesh' ) if sm then meshid = insGet(sm, 'MeshId') textureid = insGet(sm, 'TextureId') else return end else return end for i, _ in next, cframes do if (meshid == i.m) and (textureid == i.t) then local p1 = i.p if p1 and IsDescendantOf(p1, c) then if p1 == p then return end else i.p = p makePartCons(p, i) return end else local j = i.j if j and sfind(meshid, i.m) and sfind(textureid, i.t) then i.m = meshid i.t = textureid i.l = insGet(p, 'Position') i.p = p makePartCons(p, i) i.j = nil i.Name = insGet(p, 'Name') j.C0 = insGet(v, 'CFrame') j.C1 = v1[2] j.Part1 = v1[1] tinsert(joints, j) return end end end for i, l in next, accessorylimbs do if l.p and sfind(meshid, l.meshid) and sfind(textureid, l.textureid) then local t = { Name = insGet(p, 'Name'), l = insGet(p, 'Position'), m = meshid, t = textureid, p = p, } makePartCons(p, t) if placeholders then t.v = makeplaceholder(p) t.b = false end cframes[t] = insGet(p, 'CFrame') tinsert(joints, { Part0 = t, Part1 = l.p, C0 = l.C0, C1 = cf_0, }) l.p = nil return end end local t = { Name = insGet(p, 'Name'), l = insGet(p, 'Position'), m = meshid, t = textureid, p = p, } makePartCons(p, t) if placeholders then t.v = makeplaceholder(p) t.b = false end cframes[t] = insGet(p, 'CFrame') tinsert(joints, { Part0 = t, Part1 = v1[1], C0 = insGet(v, 'CFrame'), C1 = v1[2], }) end end end end local simradv = 0 local charcons = {} local enumH = e.CoreGuiType.Health local onplayer = function(v) simradv = simradv + 1000 local islp = v == lp local lastc = nil local oncharacter = function() local newc = insGet(v, 'Character') if c and newc and (newc ~= lastc) then lastc = newc characters[v] = newc refreshrayfilter() if islp then if discharscripts then Connect( insGet(newc, 'DescendantAdded'), discharscripts ) for i, v in next, GetDescendants(newc) do if IsA(v, 'Script') then insSet(v, 'Disabled', true) end end end local hrp = timegp( newc, 'HumanoidRootPart', 'BasePart', 10 ) if not (hrp and c and IsDescendantOf(newc, ws)) then return end c = newc local fi, fv = next(flingtable) if fi then if replicatesignal and not pdloadedtime then replicatesignal(cdsb) pdloadedtime = osclock() + rst end if flingchangestate == 3 then local hum = FindFirstChildOfClass( c, 'Humanoid' ) if hum then insGet(hum, 'ChangeState')( hum, e.HumanoidStateType.Physics ) insGet(hum, 'SetStateEnabled')( hum, e.HumanoidStateType.Seated, false ) end elseif flingchangestate == 1 then local hum = FindFirstChildOfClass( c, 'Humanoid' ) if hum then insGet(hum, 'ChangeState')( hum, e.HumanoidStateType.Physics ) end elseif flingchangestate == 2 then local hum = FindFirstChildOfClass( c, 'Humanoid' ) if hum then insGet(hum, 'SetStateEnabled')( hum, e.HumanoidStateType.Seated, false ) end end for i, v in next, tclone(flingtable) do if not c then return end local startpos = insGet(i, 'Position') local stoptime = sine + 3 while true do twait() if sine > stoptime then break end if insGet(i, 'Anchored') or not IsDescendantOf(i, ws) then break end if v3Get( ( startpos - insGet(i, 'Position') ), 'Magnitude' ) > 200 then break end local tcf = cfAdd( insGet(i, 'CFrame'), insGet(i, 'AssemblyLinearVelocity') * (sin(sine * 15) + 1) ) if novoid and (cfGet(tcf, 'Y') < novoid) then tcf = cfAdd( tcf, v3_010 * (novoid - cfGet(tcf, 'Y')) ) end insSet(hrp, 'CFrame', tcf) insSet( hrp, 'AssemblyLinearVelocity', insGet(i, 'AssemblyLinearVelocity') * v3_101 * 75 ) insSet( hrp, 'AssemblyAngularVelocity', flingvel ) end if v then Destroy(v) end flingtable[i] = nil end insSet(hrp, 'AssemblyLinearVelocity', v3_0) insSet(hrp, 'AssemblyAngularVelocity', v3_0) insSet(hrp, 'CFrame', cfr) twait(0.17) end if respawntp == 1 then local startpos = pos + v3(mrandom(-32, 32), 0, mrandom(-32, 32)) local dir = nil local poscheck = true while poscheck do poscheck = false for i, v in next, rootparts do local diff = ( startpos - insGet(v, 'Position') ) * v3_101 if v3Get(diff, 'Magnitude') < 10 then poscheck = true dir = dir or (v3Get(diff, 'Unit') * 3) startpos = startpos + dir end end local diff = (startpos - pos) * v3_101 if v3Get(diff, 'Magnitude') < 10 then poscheck = true dir = dir or (v3Get(diff, 'Unit') * 3) startpos = startpos + dir end end startpos = cfAdd( cfGet(cfr, 'Rotation'), startpos ) insSet(hrp, 'CFrame', startpos) insSet(hrp, 'AssemblyLinearVelocity', v3_0) insSet(hrp, 'AssemblyAngularVelocity', v3_0) twait(0.17) elseif respawntp == 2 then insSet( hrp, 'CFrame', cfAdd( cfr, cfGet(cfr, 'RightVector') * 3.5 - cfGet(cfr, 'LookVector') * 3.5 ) ) insSet(hrp, 'AssemblyLinearVelocity', v3_0) insSet(hrp, 'AssemblyAngularVelocity', v3_0) twait(0.17) elseif respawntp == 3 then local t = osclock() + 0.17 if pdloadedtime and pdloadedtime > t then t = pdloadedtime end local startcf = cfAdd( cfMul( cfGet(cfr, 'Rotation'), angles(1.5707963267948966, 0, 0) ), pos * v3_101 + v3_010 * min( fpdh + 30, v3Get(pos, 'Y') - 5 ) ) while twait() do insSet(hrp, 'CFrame', startcf) insSet(hrp, 'AssemblyLinearVelocity', v3_0) insSet(hrp, 'AssemblyAngularVelocity', v3_0) if osclock() > t then break end end end if newc ~= c then return end primarypart = insGet(newc, 'PrimaryPart') or hrp if hidedeatheffect and GetCoreGuiEnabled(sg, enumH) then SetCoreGuiEnabled(sg, enumH, false) end if pdloadedtime then if osclock() < pdloadedtime then twait(pdloadedtime - osclock()) end pdloadedtime = nil end if breakjointsmethod == 1 then insGet(newc, 'BreakJoints')(newc) local h = FindFirstChildOfClass( newc, 'Humanoid' ) if h then insSet(h, 'Health', 0) end elseif breakjointsmethod == 2 then local h = FindFirstChildOfClass( newc, 'Humanoid' ) if h then insSet(h, 'Health', 0) else insGet(newc, 'BreakJoints')(newc) end else insGet(newc, 'BreakJoints')(newc) end Connect(insGet(newc, 'DescendantAdded'), ondes) for i, v in next, GetDescendants(newc) do ondes(v) end else local hrp = timegp( newc, 'HumanoidRootPart', 'BasePart', 10 ) if hrp and c and IsDescendantOf(newc, ws) then rootparts[v] = hrp end end end end charcons[v] = Connect( GetPropertyChangedSignal(v, 'Character'), oncharacter ) oncharacter() end Connect(insGet(plrs, 'PlayerRemoving'), function(v) simradv = simradv - 1000 local charcon = charcons[v] if charcon then Disconnect(charcon) end characters[v] = nil rootparts[v] = nil end) for i, v in next, GetPlayers(plrs) do simradv = simradv + 1000 if v ~= lp then tspawn(onplayer, v) end end Connect(insGet(plrs, 'PlayerAdded'), onplayer) onplayer(lp) local setsimrad = emptyfunction if simrad then setsimrad = function() local canset, _ = pcall(function() insSet(lp, 'SimulationRadius', simradv) end) if canset then setsimrad = function() insSet(lp, 'SimulationRadius', simradv) end else setsimrad = emptyfunction end end end local mradN05 = -0.008726646259971648 local KeyCode = e.KeyCode local enumMB2 = e.UserInputType.MouseButton2 local enumMLCP = e.MouseBehavior.LockCurrentPosition local enumMLC = (insGet(uis, 'TouchEnabled') and enumMLCP) or e.MouseBehavior.LockCenter local enumMD = e.MouseBehavior.Default local enumMW = e.UserInputType.MouseWheel local enumMM = e.UserInputType.MouseMovement local mouseBehavior = nil local lastMouseBehavior = insGet(uis, 'MouseBehavior') Connect(GetPropertyChangedSignal(uis, 'MouseBehavior'), function() if mouseBehavior and (insGet(uis, 'MouseBehavior') ~= mouseBehavior) then insSet(uis, 'MouseBehavior', mouseBehavior) end end) local mode = 'default' local defaultmode = {} local modes = { default = defaultmode } local lerpsIdle = emptyfunction local lerpsWalk = emptyfunction local lerpsJump = emptyfunction local lerpsFall = emptyfunction local addmode = function(key, mode) if (type(key) ~= 'string') or (type(mode) ~= 'table') then return end for i, v in next, mode do if type(v) ~= 'function' then mode[i] = nil end end if key == 'default' then defaultmode = mode modes.default = mode lerpsIdle = mode.idle or emptyfunction lerpsWalk = mode.walk or emptyfunction lerpsJump = mode.jump or emptyfunction lerpsFall = mode.fall or emptyfunction if mode.modeEntered then mode.modeEntered() end elseif #key == 1 then key = KeyCode[supper(ssub(key, 1, 1))] modes[key] = mode end end local keyW = KeyCode.W local Wpressed = IsKeyDown(uis, keyW) local keyA = KeyCode.A local Apressed = IsKeyDown(uis, keyA) local keyS = KeyCode.S local Spressed = IsKeyDown(uis, keyS) local keyD = KeyCode.D local Dpressed = IsKeyDown(uis, keyD) local keySpace = KeyCode.Space local jumpingInput = IsKeyDown(uis, keySpace) local FWmovement = 0 local RTmovement = 0 local isWalking = false local refreshKeyboardMovement = function() if Wpressed then if Spressed then if Dpressed then if Apressed then isWalking = false else FWmovement = 0 RTmovement = 1 isWalking = true end else if Apressed then FWmovement = 0 RTmovement = -1 isWalking = true else isWalking = false end end else FWmovement = 1 if Dpressed then if Apressed then RTmovement = 0 else RTmovement = 1 end else if Apressed then RTmovement = -1 else RTmovement = 0 end end isWalking = true end else if Spressed then FWmovement = -1 if Dpressed then if Apressed then RTmovement = 0 else RTmovement = 1 end else if Apressed then RTmovement = -1 else RTmovement = 0 end end isWalking = true else if Dpressed then if Apressed then isWalking = false else FWmovement = 0 RTmovement = 1 isWalking = true end else if Apressed then FWmovement = 0 RTmovement = -1 isWalking = true else isWalking = false end end end end end refreshKeyboardMovement() local keyShift = KeyCode.LeftShift Connect(insGet(uis, 'InputBegan'), function(a) if insGet(gs, 'MenuIsOpen') or GetFocusedTextBox(uis) then return end a = insGet(a, 'KeyCode') if a == keyW then Wpressed = true refreshKeyboardMovement() elseif a == keyA then Apressed = true refreshKeyboardMovement() elseif a == keyS then Spressed = true refreshKeyboardMovement() elseif a == keyD then Dpressed = true refreshKeyboardMovement() elseif a == keySpace then jumpingInput = true elseif a == keyShift then shiftlock = allowshiftlock and not shiftlock elseif modes[a] then if modes[mode].modeLeft then modes[mode].modeLeft() end if mode == a then mode = 'default' else mode = a end local modet = modes[mode] lerpsIdle = modet.idle or defaultmode.idle or emptyfunction lerpsWalk = modet.walk or defaultmode.walk or emptyfunction lerpsJump = modet.jump or defaultmode.jump or emptyfunction lerpsFall = modet.fall or defaultmode.fall or emptyfunction if modes[mode].modeEntered then modes[mode].modeEntered() end end end) Connect(insGet(uis, 'InputEnded'), function(a) a = insGet(a, 'KeyCode') if a == keyW then Wpressed = false refreshKeyboardMovement() elseif a == keyA then Apressed = false refreshKeyboardMovement() elseif a == keyS then Spressed = false refreshKeyboardMovement() elseif a == keyD then Dpressed = false refreshKeyboardMovement() elseif a == keySpace then jumpingInput = false end end) local thumbstickEndX = 0 local thumbstickStartY = 0 local thumbstickSizeMultiplier = 0 local jumpStartX = 0 local jumpStartY = 0 local jumpEndX = 0 local jumpEndY = 0 local thumbstickInputObject = nil local jumpInputObject = nil local cameraRotateInputObject = nil local cameraZoomInputObject = nil local thumbstickTouchStart = v3_0 local cameraZoomInputMagnitude = 0 Connect(insGet(uis, 'TouchStarted'), function(inputObject) if insGet(gs, 'MenuIsOpen') or GetFocusedTextBox(uis) then return end local touchPos = insGet(inputObject, 'Position') local touchX = v3Get(touchPos, 'X') local touchY = v3Get(touchPos, 'Y') if not thumbstickInputObject and touchX < thumbstickEndX and touchY > thumbstickStartY then thumbstickInputObject = inputObject thumbstickTouchStart = insGet(inputObject, 'Position') isWalking = false elseif not jumpInputObject and touchY > jumpStartY and touchX > jumpStartX and touchX < jumpEndX and touchY < jumpEndY then jumpInputObject = inputObject jumpingInput = true elseif not cameraRotateInputObject then cameraRotateInputObject = inputObject else cameraZoomInputObject = inputObject cameraZoomInputMagnitude = v3Get( insGet(cameraRotateInputObject, 'Position') - insGet(cameraZoomInputObject, 'Position'), 'Magnitude' ) end end) Connect(insGet(uis, 'TouchMoved'), function(inputObject) local touchPos = insGet(inputObject, 'Position') local touchX = v3Get(touchPos, 'X') local touchY = v3Get(touchPos, 'Y') if inputObject == thumbstickInputObject then local direction = insGet(inputObject, 'Position') - thumbstickTouchStart local directionMag = v3Get(direction, 'Magnitude') / thumbstickSizeMultiplier if directionMag > 0.05 then isWalking = true direction = v3Get(direction, 'Unit') * min(1, (directionMag - 0.05) / 0.95) FWmovement = -v3Get(direction, 'Y') RTmovement = v3Get(direction, 'X') else isWalking = false end elseif inputObject == jumpInputObject then jumpingInput = touchY > jumpStartY and touchX > jumpStartX and touchX < jumpEndX and touchY < jumpEndY else if cameraZoomInputObject then local newMagnitude = v3Get( insGet(cameraRotateInputObject, 'Position') - insGet(cameraZoomInputObject, 'Position'), 'Magnitude' ) cammag = cammag + (newMagnitude - cameraZoomInputMagnitude) * 0.04 * (0.75 - cammag / 4) cameraZoomInputMagnitude = newMagnitude if cammag < 0 then firstperson = false else cammag = 0 firstperson = true end elseif inputObject == cameraRotateInputObject then local rotation = GetMouseDelta(uis) * mradN05 camcfLV = cfGet( cfMul(camrot, angles(rotation.Y, rotation.X, 0)), 'LookVector' ) camrot = cfl(v3_0, camcfLV) camcfRV = cfGet(camrot, 'RightVector') end end end) Connect(insGet(uis, 'TouchEnded'), function(inputObject) if inputObject == thumbstickInputObject then thumbstickInputObject = nil isWalking = false elseif inputObject == jumpInputObject then jumpInputObject = nil jumpingInput = false elseif inputObject == cameraRotateInputObject then cameraRotateInputObject = nil cameraZoomInputObject = nil elseif inputObject == cameraZoomInputObject then cameraZoomInputObject = nil end end) local refreshTouchRegions = function() local sX = insGet(mouse, 'ViewSizeX') local sY = insGet(mouse, 'ViewSizeY') local isSmallScreen = min(sX, sY) <= 500 sY = sY + insGet(gs, 'TopbarInset').Height thumbstickEndX = sX * 0.4 thumbstickStartY = (sY + 0) * 0.333 if isSmallScreen then thumbstickSizeMultiplier = 35 jumpStartX = sX - 95 jumpStartY = sY - 90 jumpEndX = jumpStartX + 70 jumpEndY = jumpStartY + 70 else thumbstickSizeMultiplier = 60 jumpStartX = sX - 170 jumpStartY = sY - 210 jumpEndX = jumpStartX + 120 jumpEndY = jumpStartY + 120 end end Connect( GetPropertyChangedSignal(mouse, 'ViewSizeX'), refreshTouchRegions ) Connect( GetPropertyChangedSignal(mouse, 'ViewSizeY'), refreshTouchRegions ) Connect( GetPropertyChangedSignal(gs, 'TopbarInset'), refreshTouchRegions ) refreshTouchRegions() local mouseCameraMove = false Connect(insGet(uis, 'InputChanged'), function(a, b) if b then return end local inputType = insGet(a, 'UserInputType') if mouseCameraMove and inputType == enumMM then local rotation = GetMouseDelta(uis) * mradN05 camcfLV = cfGet( cfMul(camrot, angles(rotation.Y, rotation.X, 0)), 'LookVector' ) camrot = cfl(v3_0, camcfLV) camcfRV = cfGet(camrot, 'RightVector') elseif inputType == enumMW then cammag = cammag + v3Get(insGet(a, 'Position'), 'Z') * (0.75 - cammag / 4) if cammag < 0 then firstperson = false else cammag = 0 firstperson = true end end end) local predictionfling = function(target) if not c then return false end if typeof(target) ~= 'Instance' then target = insGet(mouse, 'Target') if not target then return false end end if not IsDescendantOf(target, ws) then return false end if IsA(target, 'BasePart') or IsA(target, 'Humanoid') then target = insGet(target, 'Parent') if IsA(target, 'Accessory') then target = insGet(target, 'Parent') end end if (not IsA(target, 'Model')) or (target == c) then return false end local targetpart = gp(target, 'HumanoidRootPart', 'BasePart') or gp(target, 'Torso', 'BasePart') or gp(target, 'UpperTorso', 'BasePart') if not targetpart or (flingtable[targetpart] ~= nil) then return false end if replicatesignal then replicatesignal(cdsb) end if highlightflingtargets then local h = i('Highlight') insSet(h, 'Name', rs()) insSet(h, 'Adornee', target) insSet(h, 'FillColor', c3(1, 0, 0)) insSet(h, 'OutlineColor', c3(1, 0, 0)) insSet(h, 'FillTransparency', 0.5) insSet(h, 'OutlineTransparency', 0) insSet(h, 'Parent', i10) flingtable[targetpart] = h else flingtable[targetpart] = false end return true end local clickConnection = nil if ctrlclicktp then ctrlclicktp = KeyCode.LeftControl local tpoff = v3_010 * 3 if clickfling then clickConnection = Connect( insGet(mouse, 'Button1Down'), function() if insGet(mouse, 'Target') then if IsKeyDown(uis, ctrlclicktp) then pos = cfGet( insGet(mouse, 'Hit'), 'Position' ) + tpoff cfr = cfl(pos, pos + camcfLV * v3_101) xzvel = v3_0 Yvel = 0 else predictionfling() end end end ) else clickConnection = Connect( insGet(mouse, 'Button1Down'), function() if insGet(mouse, 'Target') and IsKeyDown(uis, ctrlclicktp) then pos = cfGet(insGet(mouse, 'Hit'), 'Position') + tpoff cfr = cfl(pos, pos + camcfLV * v3_101) xzvel = v3_0 Yvel = 0 end end ) end elseif clickfling then clickConnection = Connect( insGet(mouse, 'Button1Down'), predictionfling ) end local hhOff = 3 local hhOff1 = 3.01 local setHipHeight = function(n) hhOff = n + 3 hhOff1 = n + 3.01 end local noYvelTime = 1 local lastsine = sine local con = nil local mainFunction = function() if not c then for i, v in next, cframes do local p = i.v if p then Destroy(p) end end for i, v in next, flingtable do if v then --it could be false Destroy(v) end end for i, v in next, charcons do Disconnect(v) end if clickConnection then Disconnect(clickConnection) end mouseBehavior = nil insSet(uis, 'MouseBehavior', enumMD) onnewcamera() local c = insGet(lp, 'Character') if c then insSet( cam, 'CameraSubject', FindFirstChildOfClass(c, 'Humanoid') ) end return con and Disconnect(con) end sine = osclock() local delta = sine - lastsine deltaTime = min(delta * 10, 1) lastsine = sine if shiftlock then if allowshiftlock then mouseBehavior = enumMLC mouseCameraMove = true else shiftlock = false end elseif firstperson then mouseBehavior = enumMLC mouseCameraMove = true elseif IsMouseButtonPressed(uis, enumMB2) then mouseBehavior = enumMLCP mouseCameraMove = true else mouseBehavior = enumMD mouseCameraMove = false end if lastMouseBehavior ~= mouseBehavior then lastMouseBehavior = mouseBehavior insSet(uis, 'MouseBehavior', mouseBehavior) end local raycastresult = Raycast( ws, pos, v3_010 * (fpdh - v3Get(pos, 'Y')), raycastparams ) local onground = nil if raycastresult then raycastresult = v3Get(raycastresult.Position, 'Y') onground = v3Get(pos, 'Y') - raycastresult < hhOff1 if onground then Yvel = 0 pos = pos + v3_010 * (raycastresult + hhOff - v3Get(pos, 'Y')) * min(delta * 20, 1) if jumpingInput and (jumpPower > 0) then Yvel = jumpPower onground = false end else Yvel = Yvel - gravity * delta if v3Get(pos, 'Y') + Yvel * delta < raycastresult then Yvel = 0 pos = pos + v3_010 * (raycastresult + hhOff - v3Get(pos, 'Y')) end end else Yvel = 0 onground = false end if firstperson then if isWalking then if walkSpeed == 0 then xzvel = v3_0 if onground then cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd(camrot, pos + v3_0150) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsIdle() noYvelTime = min(noYvelTime + delta * 0.3, 1) xzvel = xzvel * (1 - noYvelTime) elseif Yvel > 0 then pos = pos + v3_010 * Yvel * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd(camrot, pos + v3_0150) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsJump() noYvelTime = 0 else pos = pos + v3_010 * Yvel * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd(camrot, pos + v3_0150) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsFall() noYvelTime = 0 end else xzvel = v3Get( v3Get(camcfLV * v3_101, 'Unit') * FWmovement + v3Get(camcfRV * v3_101, 'Unit') * RTmovement, 'Unit' ) * walkSpeed if onground then pos = pos + xzvel * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd(camrot, pos + v3_0150) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsWalk() noYvelTime = min(noYvelTime + delta * 0.3, 1) xzvel = xzvel * (1 - noYvelTime) elseif Yvel > 0 then pos = pos + (xzvel + v3_010 * Yvel) * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd(camrot, pos + v3_0150) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsJump() noYvelTime = 0 else pos = pos + (xzvel + v3_010 * Yvel) * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd(camrot, pos + v3_0150) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsFall() noYvelTime = 0 end end else xzvel = v3_0 if onground then cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd(camrot, pos + v3_0150) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsIdle() noYvelTime = min(noYvelTime + delta * 0.3, 1) xzvel = xzvel * (1 - noYvelTime) elseif Yvel > 0 then pos = pos + v3_010 * Yvel * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd(camrot, pos + v3_0150) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsJump() noYvelTime = 0 else pos = pos + v3_010 * Yvel * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd(camrot, pos + v3_0150) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsFall() noYvelTime = 0 end end elseif shiftlock then if isWalking then if walkSpeed == 0 then xzvel = v3_0 if onground then cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd( camrot, pos + v3_0150 + camcfRV * 1.75 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsIdle() noYvelTime = min(noYvelTime + delta * 0.3, 1) xzvel = xzvel * (1 - noYvelTime) elseif Yvel > 0 then pos = pos + v3_010 * Yvel * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd( camrot, pos + v3_0150 + camcfRV * 1.75 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsJump() noYvelTime = 0 else pos = pos + v3_010 * Yvel * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd( camrot, pos + v3_0150 + camcfRV * 1.75 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsFall() noYvelTime = 0 end else xzvel = v3Get( v3Get(camcfLV * v3_101, 'Unit') * FWmovement + v3Get(camcfRV * v3_101, 'Unit') * RTmovement, 'Unit' ) * walkSpeed if onground then pos = pos + xzvel * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd( camrot, pos + v3_0150 + camcfRV * 1.75 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsWalk() noYvelTime = min(noYvelTime + delta * 0.3, 1) xzvel = xzvel * (1 - noYvelTime) elseif Yvel > 0 then pos = pos + (xzvel + v3_010 * Yvel) * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd( camrot, pos + v3_0150 + camcfRV * 1.75 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsJump() noYvelTime = 0 else pos = pos + (xzvel + v3_010 * Yvel) * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd( camrot, pos + v3_0150 + camcfRV * 1.75 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsFall() noYvelTime = 0 end end else xzvel = v3_0 if onground then cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd( camrot, pos + v3_0150 + camcfRV * 1.75 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsIdle() noYvelTime = min(noYvelTime + delta * 0.3, 1) xzvel = xzvel * (1 - noYvelTime) elseif Yvel > 0 then pos = pos + v3_010 * Yvel * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd( camrot, pos + v3_0150 + camcfRV * 1.75 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsJump() noYvelTime = 0 else pos = pos + v3_010 * Yvel * delta cfr = cfl(pos, pos + camcfLV * v3_101) camcf = cfAdd( camrot, pos + v3_0150 + camcfRV * 1.75 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsFall() noYvelTime = 0 end end else if isWalking then if walkSpeed == 0 then xzvel = v3_0 if onground then cfr = cfAdd(cfGet(cfr, 'Rotation'), pos) camcf = cfAdd( camrot, pos + v3_0150 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsIdle() noYvelTime = min(noYvelTime + delta * 0.3, 1) xzvel = xzvel * (1 - noYvelTime) elseif Yvel > 0 then pos = pos + v3_010 * Yvel * delta cfr = cfAdd(cfGet(cfr, 'Rotation'), pos) camcf = cfAdd( camrot, pos + v3_0150 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsJump() noYvelTime = 0 else pos = pos + v3_010 * Yvel * delta cfr = cfAdd(cfGet(cfr, 'Rotation'), pos) camcf = cfAdd( camrot, pos + v3_0150 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsFall() noYvelTime = 0 end else xzvel = v3Get( v3Get(camcfLV * v3_101, 'Unit') * FWmovement + v3Get(camcfRV * v3_101, 'Unit') * RTmovement, 'Unit' ) * walkSpeed if onground then pos = pos + xzvel * delta cfr = cfAdd( Lerp( cfGet(cfr, 'Rotation'), cfl(v3_0, xzvel), deltaTime ), pos ) camcf = cfAdd( camrot, pos + v3_0150 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsWalk() noYvelTime = min(noYvelTime + delta * 0.3, 1) xzvel = xzvel * (1 - noYvelTime) elseif Yvel > 0 then pos = pos + (xzvel + (v3_010 * Yvel)) * delta cfr = cfAdd( Lerp( cfGet(cfr, 'Rotation'), cfl(v3_0, xzvel), deltaTime ), pos ) camcf = cfAdd( camrot, pos + v3_0150 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsJump() noYvelTime = 0 else pos = pos + (xzvel + (v3_010 * Yvel)) * delta cfr = cfAdd( Lerp( cfGet(cfr, 'Rotation'), cfl(v3_0, xzvel), deltaTime ), pos ) camcf = cfAdd( camrot, pos + v3_0150 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsFall() noYvelTime = 0 end end else xzvel = v3_0 if onground then cfr = cfAdd(cfGet(cfr, 'Rotation'), pos) camcf = cfAdd( camrot, pos + v3_0150 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsIdle() noYvelTime = min(noYvelTime + delta * 0.3, 1) xzvel = xzvel * (1 - noYvelTime) elseif Yvel > 0 then pos = pos + v3_010 * Yvel * delta cfr = cfAdd(cfGet(cfr, 'Rotation'), pos) camcf = cfAdd( camrot, pos + v3_0150 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsJump() noYvelTime = 0 else pos = pos + v3_010 * Yvel * delta cfr = cfAdd(cfGet(cfr, 'Rotation'), pos) camcf = cfAdd( camrot, pos + v3_0150 + camcfLV * cammag ) cframes[rootpart] = cfr insSet(cam, 'CFrame', camcf) lerpsFall() noYvelTime = 0 end end end refreshjointsI(rootpart) tclear(refreshedjoints) local sine15 = sine * 15 local idlerv = v3( sin(sine15), sin(sine15 + 1.0471975511965976), sin(sine15 + 2.0943951023931953) ) local idleoff = idlerv * 0.003910064697265625 --0.0156402587890625/4 local claimpos = insGet(primarypart, 'Position') local claimposY = v3Get(claimpos, 'Y') for i, v in next, cframes do local part = i.p if part then if insGet(part, 'ReceiveAge') == 0 then local placeholder = i.v local vpos = cfGet(v, 'Position') if novoid and (v3Get(vpos, 'Y') < novoid) then v = cfAdd( v, v3_010 * (novoid - v3Get(vpos, 'Y')) ) end local lastpos = i.l local vel = (vpos - lastpos) / delta local mag = v3Get(vel, 'Magnitude') if mag < 0.11730194091796875 then --0.0156402587890625*15/2 if placeholder and i.b then insSet(placeholder, 'Parent', nil) i.b = false end i.l = cfGet(v, 'Position') v = cfAdd(v, idleoff) elseif mag > speedlimit then if placeholder then insSet(placeholder, 'CFrame', v) if not i.b then insSet(placeholder, 'Parent', ws) i.b = true end end vel = v3Get(vel, 'Unit') * speedlimit local newpos = lastpos + vel * delta v = cfAdd(cfGet(v, 'Rotation'), newpos) i.l = newpos else if placeholder and i.b then insSet(placeholder, 'Parent', nil) i.b = false end i.l = cfGet(v, 'Position') end local claimtime = i.c if claimtime then if sine - claimtime < retVelTime then local Ydiff = cfGet(v, 'Y') - claimposY local velY = 25.01 local fallingTime = 0 while (Ydiff > 0) or (velY > 0) do fallingTime = fallingTime + 0.025 if fallingTime > 0.6 then break end velY = velY - velYdelta Ydiff = Ydiff + (velY * 0.025) end insSet( part, 'AssemblyLinearVelocity', (claimpos - cfGet(v, 'Position')) * v3_101 / fallingTime + v3_net ) else local vel1 = vel * noYvelTime + xzvel if v3Get(vel1, 'Magnitude') > 25.01 then insSet( part, 'AssemblyLinearVelocity', v3Get(vel1, 'Unit') * v3_xzL + v3_net ) else insSet( part, 'AssemblyLinearVelocity', vel1 * v3_xz + v3_net ) end end else i.c = sine local vel1 = vel * noYvelTime + xzvel if v3Get(vel1, 'Magnitude') > 25.01 then insSet( part, 'AssemblyLinearVelocity', v3Get(vel1, 'Unit') * v3_xzL + v3_net ) else insSet( part, 'AssemblyLinearVelocity', vel1 * v3_xz + v3_net ) end end insSet(part, 'CFrame', v) insSet(part, 'AssemblyAngularVelocity', idlerv) else i.c = nil i.l = insGet(part, 'Position') local placeholder = i.v if placeholder then insSet(placeholder, 'CFrame', v) if not i.b then insSet(placeholder, 'Parent', ws) i.b = true end end end else local placeholder = i.v if placeholder then insSet(placeholder, 'CFrame', v) if not i.b then insSet(placeholder, 'Parent', ws) i.b = true end end end end setsimrad() end sine = osclock() lastsine = sine con = Connect(heartbeat, mainFunction) mainFunction() local refreshjoints = function(v) --use this on the main part if u have parts that refreshjointsI(v) --are connected with each other but arent connected to rootpart tclear(refreshedjoints) end local legcfR = cf(1, -1, 0) local legcfL = cf(-1, -1, 0) local raydir = v3_010 * -2 local raycastlegs = function() --this returns 2 values: right leg raycast offset, left leg raycast offset local rY = Raycast( ws, cfGet(cfMul(cfr, legcfR), 'Position'), raydir, raycastparams ) local lY = Raycast( ws, cfGet(cfMul(cfr, legcfL), 'Position'), raydir, raycastparams ) if rY then if lY then return v3Get(rY.Position, 'Y') - (v3Get(pos, 'Y') - 3), v3Get(lY.Position, 'Y') - (v3Get(pos, 'Y') - 3) else return v3Get(rY.Position, 'Y') - (v3Get(pos, 'Y') - 3), 0 end elseif lY then return 0, v3Get(lY.Position, 'Y') - (v3Get(pos, 'Y') - 3) else return 0, 0 end end local velbycfrvec = function() --this returns 2 values: forward/backwards movement (from -1 to 1), right/left movement (from -1 to 1) local fw = cfGet(cfr, 'LookVector') * xzvel / walkSpeed local rt = cfGet(cfr, 'RightVector') * xzvel / walkSpeed return v3Get(fw, 'X') + v3Get(fw, 'Z'), v3Get(rt, 'X') + v3Get(rt, 'Z') end local lastvel = v3_0 local velchg1 = v3_0 local velchgbycfrvec = function() --this returns 2 values: forward/backwards velocity change, right/left velocity change velchg1 = velchg1 + (lastvel - xzvel) --i recommend setting velchg1 to v3_0 when u start using this function or it will look worse lastvel = xzvel velchg1 = velchg1 - velchg1 * (deltaTime / 2) local fw = cfGet(cfr, 'LookVector') * velchg1 / 32 local rt = cfGet(cfr, 'RightVector') * velchg1 / 32 return v3Get(fw, 'X') + v3Get(fw, 'Z'), v3Get(rt, 'X') + v3Get(rt, 'Z') end local lastYvel = 0 local velYchg1 = 0 local velYchg = function() --this returns Y axis velocity change velYchg1 = clamp(velYchg1 + (lastYvel - Yvel), -50, 50) --i recommend setting velYchg1 to 0 when u start using this function or it will look worse lastYvel = Yvel velYchg1 = velYchg1 - velYchg1 * (deltaTime / 2) return velYchg1 end local rotToMouse = function(alpha) --this rotates ur character towards your mouse hit position local pos1 = pos * v3_010 + cfGet(insGet(mouse, 'Hit'), 'Position') * v3_101 if pos ~= pos1 then --could make nan rotation cfr = Lerp(cfr, cfl(pos, pos1), alpha or deltaTime) end end local glitchJoint = function( joint, targetGlitchTime, delayFrom, delayTo, radiansFrom, radiansTo ) if sine > targetGlitchTime then --example usage: local glitchtime=0 addMode("x",{idle=function() glitchtime=glitchJoint(joint,glitchtime,0.2,0.4,-0.1,0.1) end}) radiansFrom = radiansFrom * 100 radiansTo = radiansTo * 100 joint.C0 = cfMul( joint.C0, angles( mrandom(radiansFrom, radiansTo) / 100, mrandom(radiansFrom, radiansTo) / 100, mrandom(radiansFrom, radiansTo) / 100 ) ) return sine + mrandom(delayFrom * 100, delayTo * 100) / 100 end return targetGlitchTime end local setWalkSpeed = function(n) if type(n) ~= 'number' then n = 16 end walkSpeed = n end local setJumpPower = function(n) if type(n) ~= 'number' then n = 50 end jumpPower = n end local setGravity = function(n) if type(n) ~= 'number' then n = 196.2 end gravity = n end local setCfr = function(v) --sets character cframe if typeof(v) == 'CFrame' then local newpos = cfGet(v, 'Position') camcf = cfAdd(camcf, newpos - pos) insSet(cam, 'CFrame', camcf) cfr = v pos = newpos elseif typeof(v) == 'Vector3' then camcf = cfAdd(camcf, v - pos) insSet(cam, 'CFrame', camcf) cfr = cfAdd(cfGet(cfr, 'Rotation'), v) pos = v end end local getVel = function() --returns character velocity return xzvel + v3_010 * Yvel --important: use only in lerps or it might not work end local getCamCF = function() --returns camera cframe return camcf end local isFirstPerson = function() --returns true if user is in first person camera mode return firstperson end return { cframes = cframes, joints = joints, fling = predictionfling, predictionfling = predictionfling, refreshjoints = refreshjoints, raycastlegs = raycastlegs, velbycfrvec = velbycfrvec, velchgbycfrvec = velchgbycfrvec, velYchg = velYchg, addmode = addmode, getPart = getPart, getPartFromMesh = getPartFromMesh, getAccWeldFromMesh = getAccWeldFromMesh, getJoint = getJoint, getPartJoint = getPartJoint, rotToMouse = rotToMouse, glitchJoint = glitchJoint, setWalkSpeed = setWalkSpeed, setJumpPower = setJumpPower, setGravity = setGravity, setCfr = setCfr, getVel = getVel, getCamCF = getCamCF, isFirstPerson = isFirstPerson, setHipHeight = setHipHeight, } end btn('creepy crawler', function() local t = reanimate() if type(t) ~= 'table' then return end local getJoint = t.getJoint local rootJoint = getJoint('RootJoint') local rightShoulder = getJoint('Right Shoulder') local leftShoulder = getJoint('Left Shoulder') local rightHip = getJoint('Right Hip') local leftHip = getJoint('Left Hip') local neck = getJoint('Neck') t.setWalkSpeed(10) local jumplerp = function() neck.C0 = Lerp( neck.C0, cfMul(cf(0, 0, 0.5), angles(0, 0, 3.141592653589793)), deltaTime ) rootJoint.C0 = Lerp( rootJoint.C0, cfMul( cf(0, -1.4, 0), angles(3.141592653589793, 0, -3.141592653589793) ), deltaTime ) leftShoulder.C0 = Lerp( leftShoulder.C0, cfMul( cf(-1, 1.5, 0.3), angles(1.7453292519943295, 0, -0.17453292519943295) ), deltaTime ) rightShoulder.C0 = Lerp( rightShoulder.C0, cfMul( cf(1, 1.5, 0.3), angles(1.7453292519943295, 0, 0.17453292519943295) ), deltaTime ) leftHip.C0 = Lerp( leftHip.C0, cfMul( cf(-1, -1.5, 0.8), angles(1.3962634015954636, 0, -0.17453292519943295) ), deltaTime ) rightHip.C0 = Lerp( rightHip.C0, cfMul( cf(1, -1.5, 0.8), angles(1.3962634015954636, 0, 0.17453292519943295) ), deltaTime ) end t.addmode('default', { idle = function() local sine = sine * 60 neck.C0 = Lerp( neck.C0, cfMul( cf(0, 0, 0.5), angles( 0.08726646259971647 * sin((sine + 20) * 0.05), 0, 3.141592653589793 + 0.3490658503988659 * sin((sine + -30) * 0.025) ) ), deltaTime ) rootJoint.C0 = Lerp( rootJoint.C0, cfMul( cf(0, -1.5 + 0.1 * sin(sine * 0.05), 0), angles( 3.141592653589793, 0, -3.1590459461097367 + 0.05235987755982989 * sin(sine * 0.025) ) ), deltaTime ) leftShoulder.C0 = Lerp( leftShoulder.C0, cfMul( cf(-1, 1.5, -0.1 * sin(sine * 0.05)), angles( 1.5707963267948966, 0, 0.08726646259971647 * sin(sine * 0.025) ) ), deltaTime ) rightShoulder.C0 = Lerp( rightShoulder.C0, cfMul( cf(1, 1.5, -0.1 * sin(sine * 0.05)), angles( 1.5707963267948966, 0, 0.08726646259971647 * sin(sine * 0.025) ) ), deltaTime ) leftHip.C0 = Lerp( leftHip.C0, cfMul( cf(-1, -1.5, 0.5 + -0.1 * sin((sine + 10) * 0.05)), angles( 1.5707963267948966, 0, 0.08726646259971647 * sin(sine * 0.025) ) ), deltaTime ) rightHip.C0 = Lerp( rightHip.C0, cfMul( cf(1, -1.5, 0.5 + -0.1 * sin((sine + 10) * 0.05)), angles( 1.5707963267948966, 0, 0.08726646259971647 * sin(sine * 0.025) ) ), deltaTime ) end, walk = function() local sine = sine * 60 neck.C0 = Lerp( neck.C0, cfMul( cf(0, 0, 0.5), angles( 0.17453292519943295, 0.03490658503988659 * sin((sine + 2.5) * 0.2), 3.141592653589793 + -0.17453292519943295 * sin((sine + -10) * 0.2) ) ), deltaTime ) rootJoint.C0 = Lerp( rootJoint.C0, cfMul( cf(0, -1.5, 0), angles( 3.0543261909900767, 0.08726646259971647 * sin((sine + 7.5) * 0.2), -3.1590459461097367 + -0.08726646259971647 * sin(sine * 0.2) ) ), deltaTime ) leftShoulder.C0 = Lerp( leftShoulder.C0, cfMul( cf( -1, 1.5 + 0.5 * sin((sine + 10) * 0.2), 0.3 + 0.2 * sin((sine + -10) * 0.2) ), angles( 1.6580627893946132 + 0.17453292519943295 * sin((sine + 15) * 0.2), 0, -0.08726646259971647 * sin(sine * 0.2) ) ), deltaTime ) rightShoulder.C0 = Lerp( rightShoulder.C0, cfMul( cf( 1, 1.5 + 0.5 * sin((sine + -7.5) * 0.2), 0.3 + 0.2 * sin((sine + 5) * 0.2) ), angles( 1.6580627893946132 + 0.17453292519943295 * sin(sine * 0.2), 0, -0.08726646259971647 * sin(sine * 0.2) ) ), deltaTime ) leftHip.C0 = Lerp( leftHip.C0, cfMul( cf( -1, -1.5 + 0.5 * sin((sine + -7.5) * 0.2), 0.5 + 0.2 * sin((sine + 5) * 0.2) ), angles( 1.6580627893946132 + 0.17453292519943295 * sin(sine * 0.2), 0, -0.08726646259971647 * sin(sine * 0.2) ) ), deltaTime ) rightHip.C0 = Lerp( rightHip.C0, cfMul( cf( 1, -1.5 + 0.5 * sin((sine + 10) * 0.2), 0.5 + 0.2 * sin((sine + -7.5) * 0.2) ), angles( 1.6580627893946132 + -0.17453292519943295 * sin(sine * 0.2), 0, -0.08726646259971647 * sin(sine * 0.2) ) ), deltaTime ) end, jump = jumplerp, fall = jumplerp, }) end) btn('nameless animations V8', function() local t = reanimate() if type(t) ~= 'table' then return end local raycastlegs = t.raycastlegs local velbycfrvec = t.velbycfrvec local addmode = t.addmode local getJoint = t.getJoint local velYchg = t.velYchg local setWalkSpeed = t.setWalkSpeed local RootJoint = getJoint('RootJoint') local RightShoulder = getJoint('Right Shoulder') local LeftShoulder = getJoint('Left Shoulder') local RightHip = getJoint('Right Hip') local LeftHip = getJoint('Left Hip') local Neck = getJoint('Neck') addmode('default', { idle = function() local rY, lY = raycastlegs() local Ychg = velYchg() / 20 LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf( -1, 0.5 + 0.1 * sin((sine - 1) * 1.3), 0.05 * sin((sine - 0.3) * 1.3) ), angles( 0.5235987755982988 + 0.08726646259971647 * sin(sine * 1), -1.4835298641951802 + 0.10471975511965978 * sin(sine * 1.3), 0.5235987755982988 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf( 1, 0.5 + 0.1 * sin((sine - 1) * 1.3), 0.05 * sin((sine - 0.3) * 1.3) ), angles( 0.5235987755982988 + 0.08726646259971647 * sin(sine * 1), 1.4835298641951802 - 0.10471975511965978 * sin(sine * 1.3), -0.5235987755982988 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf( -1, -1.09 - 0.1 * sin(sine * 1.3) + lY - Ychg, lY * -0.5 ), angles( -0.026179938779914945 * sin(sine * 1.3), -1.3962634015954636, 0 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf( 1, -1.09 - 0.1 * sin(sine * 1.3) + rY - Ychg, rY * -0.5 ), angles( -0.026179938779914945 * sin(sine * 1.3), 1.3962634015954636, 0 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( 0, 0.09 + 0.1 * sin(sine * 1.3) + Ychg, 0.025 * sin(sine * 1.3) ), angles( -1.5707963267948966 + 0.026179938779914945 * sin(sine * 1.3), 0, 3.141592653589793 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.53588974175501 - 0.026179938779914945 * sin((sine + 1) * 1.3), 0.05235987755982989 * sin((sine - 0.6) * 0.65), 3.141592653589793 ) ), deltaTime ) --MW_animatorProgressSave: LeftArm,-1,0,0,1,30,5,0,1,0.5,0.1,-1,1.3,-85,6,0,1.3,0,0.05,-0.3,1.3,30,0,0,1,RightArm,1,0,0,1,30,5,0,1,0.5,0.1,-1,1.3,85,-6,0,1.3,0,0.05,-0.3,1.3,-30,0,0,1,LeftLeg,-1,0,0,1,-0,-1.5,0,1.3,-1.09,-0.1,0,1.3,-80,0,0,1,0,0,0,1,0,0,0,1,CPlusPlusTextbook_Handle,8.658389560878277e-09,0,0,1,0,0,0,1,-0.25,0,0,1,0,0,0,1,-0.0002722442150115967,0,0,1,0,0,0,1,RightLeg,1,0,0,1,0,-1.5,0,1.3,-1.09,-0.1,0,1.3,80,0,0,1,0,0,0,1,0,0,0,1,Torso,0,0,0,1,-90,1.5,0,1.3,0.09,0.1,0,1.3,-0,0,0,1,0,0.025,0,1.3,180,0,0,1,Head,0,0,0,1,-88,-1.5,1,1.3,1,0,0,1,-0,3,-0.6,0.65,0,0,0,1,180,0,0,1 end, walk = function() local Vfw, Vrt = velbycfrvec() local rY, lY = raycastlegs() local Ychg = velYchg() / 20 LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.5, 0), angles( -0.7853981633974483 * sin((sine + 0.07) * 8) * Vfw, -1.5707963267948966 + 0.5235987755982988 * sin((sine + 0.15) * 8), 0 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 0.5, 0), angles( 0.7853981633974483 * sin((sine + 0.07) * 8) * Vfw, 1.5707963267948966 + 0.5235987755982988 * sin((sine + 0.15) * 8), 0 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf( 1, -1 + 0.3 * sin((sine - 0.15) * 8) + rY - Ychg, rY * -0.5 ), angles( 1.5707963267948966 - 0.9599310885968813 * sin(sine * 8) * Vfw, 1.5707963267948966 - 0.7853981633974483 * sin(sine * 8) * Vrt, -1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf( -1, -1 + 0.3 * sin((sine + 0.15) * 8) + lY - Ychg, lY * -0.5 ), angles( 1.5707963267948966 + 0.9599310885968813 * sin(sine * 8) * Vfw, -1.5707963267948966 + 0.7853981633974483 * sin(sine * 8) * Vrt, 1.5707963267948966 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.08726646259971647 * sin(sine * 16), 0, 3.141592653589793 + 0.08726646259971647 * sin( (sine + 0.04) * 8 ) - Vrt ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, 0.2 * sin((sine + 0.1) * 16) + Ychg, 0), angles(-1.5707963267948966, 0, 3.141592653589793) ), deltaTime ) --MW_animatorProgressSave: CPlusPlusTextbook_Handle,8.658389560878277e-09,0,0,8,0,0,0,8,-0.25,0,0,8,0,0,0,8,-0.0002722442150115967,0,0,8,0,0,0,8,LeftArm,-1,0,0,8,-0,-45,0.07,8,0.5,0,0,8,-90,30,0.15,8,0,0,0,8,0,0,0,8,RightArm,1,0,0,8,0,45,0.07,8,0.5,0,0,8,90,30,0.15,8,0,0,0,8,0,0,0,8,RightLeg,1,0,0,8,90,-55,0,8,-1,0.3,-0.15,8,90,-45,0,8,0,0,0,8,-90,0,0,8,LeftLeg,-1,0,0,8,90,55,0,8,-1,0.3,0.15,8,-90,45,0,8,0,0,0,8,90,0,0,8,Head,0,0,0,8,-90,5,0,16,1,0,0,8,-0,0,0,8,0,0,0,8,180,5,0.04,8,Torso,0,0,0,8,-90,0,0,8,0,0.2,0.1,16,-0,0,0,8,0,0,0,8,180,0,0,8 end, jump = function() velYchg() local Vfw, Vrt = velbycfrvec() RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf_0, angles( -1.4835298641951802 + Vfw * 0.1, Vrt * -0.05, -3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.3962634015954636, 0, -3.141592653589793 - Vrt ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) --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 end, fall = function() velYchg() local Vfw, Vrt = velbycfrvec() RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf_0, angles( -1.6580627893946132 + Vfw * 0.1, Vrt * -0.05, -3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.7453292519943295, 0, -3.141592653589793 - Vrt ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) --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, }) addmode('q', { idle = function() velYchg() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.75, -0.2), angles( 2.705260340591211 - 0.08726646259971647 * sin((sine + 0.1) * 2), -2.792526803190927, -0.6981317007977318 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 0.75, -0.2), angles( 2.705260340591211 - 0.08726646259971647 * sin((sine + 0.1) * 2), 2.792526803190927, 0.6981317007977318 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.9198621771937625 - 0.10471975511965978 * sin((sine + 0.3) * 2), 0, 3.141592653589793 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, -2.45 - 0.05 * sin(sine * 2), 0), angles( 0.03490658503988659 * sin(sine * 2), 0, 3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1, 0), angles( 1.3962634015954636 - 0.03490658503988659 * sin(sine * 2), 1.3089969389957472, -0.9599310885968813 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1, 0), angles( 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 end, }) addmode('e', { idle = function() velYchg() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) --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 end, }) addmode('r', { idle = function() local Ychg = velYchg() / 20 RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -0.9 - 0.2 * sin(sine * 2) - Ychg, 0), angles( 1.5707963267948966, 1.6580627893946132 - 0.17453292519943295 * sin(sine + 0.8), -1.5707963267948966 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( 0.3 * sin(sine + 0.8), -0.1 + 0.2 * sin(sine * 2) + Ychg, 0 ), angles(-1.5707963267948966, 0, -3.141592653589793) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -0.9 - 0.2 * sin(sine * 2) - Ychg, 0), angles( 1.5707963267948966, -1.6580627893946132 - 0.17453292519943295 * sin(sine + 0.8), 1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, }) addmode('t', { idle = function() local Ychg = velYchg() / 20 LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.5, 0), angles( 1.5707963267948966, -1.6580627893946132 + 0.08726646259971647 * sin((sine - 0.3) * 4), 1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.4835298641951802, 0.04363323129985824 - 0.08726646259971647 * sin((sine + 0.1) * 4), -3.141592653589793 + 0.04363323129985824 * sin(sine * 4) ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0.1 * sin(sine * 4), Ychg, 0), angles( -1.5707963267948966, -0.08726646259971647 + 0.08726646259971647 * sin(sine * 4), -3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1.1 + 0.1 * sin(sine * 4) - Ychg, 0), angles( 1.5707963267948966, 1.5707963267948966 + 0.08726646259971647 * sin(sine * 4), -1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf( -1 - 0.02 * sin(sine * 4), -0.925 - 0.07 * sin(sine * 4) - Ychg, 0 ), angles( 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 end, }) addmode('y', { idle = function() local Ychg = velYchg() / 20 LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1.5, 0.5, 0), angles( -1.7453292519943295, 0.17453292519943295 - 0.04363323129985824 * sin(sine * 2), -1.4835298641951802 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf( 1, -0.9000000953674316 - 0.1 * sin(sine * 2) - Ychg, 0 ), angles( -1.3962634015954636, 1.3962634015954636, 1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf( -1, -1.0000001192092896 - 0.1 * sin(sine * 2) - Ychg, 0 ), angles( -1.5707963267948966, -1.3962634015954636, -1.5707963267948966 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -2.0943951023931953 + 0.08726646259971647 * sin((sine - 1) * 2), -0.08726646259971647, 2.792526803190927 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 1.2000000476837158, 0), angles( 2.6179938779914944 + 0.08726646259971647 * sin((sine - 1) * 2), 0.6981317007977318, -1.3962634015954636 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, 0.1 * sin(sine * 2) + Ychg, 0), angles( -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 end, }) addmode('u', { idle = function() velYchg() RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, 0.75 + 0.25 * sin(sine * 2), 0), angles(-1.5707963267948966, 0, 3.141592653589793) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) --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 end, }) addmode('i', { idle = function() local Ychg = velYchg() / 20 LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf( -1, -0.5 + 0.1 * sin( (sine + 0.26666666666666666) * 4.5 ) - Ychg, -0.5 ), angles( 1.7453292519943295 - 1.0471975511965976 * sin(sine * 4.5), -1.5707963267948966 + 0.03490658503988659 * sin(sine * 4.5), 1.5707963267948966 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( 0, -0.5 + 0.5 * sin( (sine + 0.17777777777777778) * 9 ) + Ychg, 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf( 1, -0.5 + 0.1 * sin( (sine - 0.26666666666666666) * 4.5 ) - Ychg, -0.5 ), angles( 1.7453292519943295 + 1.0471975511965976 * sin(sine * 4.5), 1.5707963267948966 + 0.03490658503988659 * sin(sine * 4.5), -1.5707963267948966 ) ), deltaTime ) --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 end, }) addmode('o', { idle = function() local Ychg = velYchg() / 20 local rY, lY = raycastlegs() LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 + lY - Ychg, lY * -0.5), angles( -1.8325957145940461 - 0.08726646259971647 * sin(sine * 2), -1.4835298641951802, -1.5707963267948966 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, Ychg, 0.09 * sin(sine * 2)), angles( -1.3962634015954636 + 0.08726646259971647 * sin(sine * 2), -0.08726646259971647, 3.141592653589793 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1.1 + rY - Ychg, rY * -0.5), angles( -1.7453292519943295 - 0.08726646259971647 * sin(sine * 2), 1.5707963267948966, 1.5707963267948966 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.2217304763960306 - 0.08726646259971647 * sin((sine + 0.3) * 2), -0.2617993877991494 - 0.08726646259971647 * sin(sine * 2), 3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, walk = function() local Ychg = velYchg() / 20 local Vfw, Vrt = velbycfrvec() local rY, lY = raycastlegs() Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.04363323129985824 * sin(sine * 16), 0, 3.141592653589793 + 0.08726646259971647 * sin(sine * 8) - Vrt ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf( 1, -1 - 0.3 * sin((sine + 0.15) * 8) + rY - Ychg, rY * -0.5 ), angles( -1.5707963267948966 - 0.6981317007977318 * sin(sine * 8) * Vfw, 1.5707963267948966 + 0.6981317007977318 * sin(sine * 8) * Vrt, 1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 0.5, 0), angles( 0.08726646259971647 * sin((sine - 0.05) * 16), 1.5707963267948966 + 0.08726646259971647 * sin(sine * 8) - Vrt / 3, 1.5707963267948966 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.5, 0), angles( 0.08726646259971647 * sin((sine - 0.05) * 16), -1.5707963267948966 + 0.08726646259971647 * sin(sine * 8) - Vrt / 3, -1.5707963267948966 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, 0.1 * sin((sine + 0.1) * 16) + Ychg, 0), angles( -1.5707963267948966, 0, 3.141592653589793 - 0.08726646259971647 * sin(sine * 8) ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf( -1, -1 + 0.3 * sin((sine + 0.15) * 8) + lY - Ychg, lY * -0.5 ), angles( 1.5707963267948966 + 0.6981317007977318 * sin(sine * 8) * Vfw, -1.5707963267948966 + 0.6981317007977318 * sin(sine * 8) * Vrt, 1.5707963267948966 ) ), deltaTime ) --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 end, }) addmode('p', { idle = function() local Ychg = velYchg() / 20 RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1.5, 0.5, 0), angles( 1.5707963267948966, 3.141592653589793, -1.5707963267948966 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1 - Ychg, 0), angles(0, 1.5707963267948966, 0) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1.5, 0.5, 0), angles( 1.5707963267948966, 3.141592653589793, 1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 - Ychg, 0), angles(0, -1.5707963267948966, 0) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles(-1.5707963267948966, 0, -3.141592653589793) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, Ychg, 0), angles(-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 end, }) addmode('f', { modeEntered = function() setWalkSpeed(25) end, idle = function() velYchg() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) --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 end, walk = function() velYchg() local Vfw, Vrt = velbycfrvec() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.5, 0), angles( -3.0543261909900767 - 0.17453292519943295 * sin( (sine + 1.5) * 1 ) - Vfw * 0.1, -1.5707963267948966 + 0.08726646259971647 * sin( (sine + 0.6) * 1 ) + Vrt * 0.2, -1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.3089969389957472 - 0.2617993877991494 * sin((sine + 1.2) * 1) + Vfw * 0.1, 0.08726646259971647 * sin((sine + 0.2) * 0.5) - Vrt * 0.2, -2.9670597283903604 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( 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 ) - Vfw * 0.2, 0.08726646259971647 * sin(sine * 0.5), 3.141592653589793 - Vrt * 0.2 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1, 0), angles( 1.3962634015954636 + 0.12217304763960307 * sin( (sine + 1.5) * 1 ) - Vfw * 0.2, -1.2217304763960306 + 0.08726646259971647 * sin((sine + 0.2) * 0.5), 1.5707963267948966 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1, 0), angles( 1.9198621771937625 + 0.12217304763960307 * sin( (sine + 1.5) * 1 ) - Vfw * 0.2, 1.2217304763960306 + 0.08726646259971647 * sin((sine + 0.2) * 0.5), -1.5707963267948966 ) ), deltaTime ) --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 end, modeLeft = function() setWalkSpeed(16) end, }) addmode('g', { idle = function() local Ychg = velYchg() / 20 LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0.3 * sin((sine + 0.4) * 8), Ychg, 0), angles( -1.5707963267948966, 0.3490658503988659 * sin(sine * 8), -3.141592653589793 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.061086523819801536 * sin((sine + 0.125) * 16), -0.3839724354387525 * sin(sine * 8), -3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1 + 0.4 * sin((sine - 0.01) * 8) - Ychg, 0), angles( 1.5707963267948966, 1.7453292519943295 + 0.6981317007977318 * sin(sine * 8), -1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 - 0.4 * sin((sine - 0.01) * 8) - Ychg, 0), angles( 1.5707963267948966, -1.7453292519943295 + 0.6981317007977318 * sin(sine * 8), 1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, }) addmode('h', { idle = function() local Ychg = velYchg() / 20 Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966, -0.4363323129985824 * sin(sine * 8), -3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1 + 0.3 * sin(sine * 8) - Ychg, 0), angles( 1.5707963267948966, 1.5707963267948966 + 0.5235987755982988 * sin(sine * 8), -1.5707963267948966 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-0.5, 1, 0), angles( -0.5235987755982988, -1.5707963267948966 - 0.5235987755982988 * sin(sine * 8), 3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(0.5, 1, 0), angles( -0.5235987755982988, 1.5707963267948966 - 0.5235987755982988 * sin(sine * 8), 3.141592653589793 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( -0.1 * sin(sine * 8), 0.2 * sin((sine + 0.1) * 16) + Ychg, 0 ), angles( -1.5707963267948966, 0.2617993877991494 * sin(sine * 8), -3.141592653589793 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 - 0.3 * sin(sine * 8) - Ychg, 0), angles( 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 end, }) addmode('j', { idle = function() local Ychg = velYchg() / 20 LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-0.8, -1, -0.1), angles(0.17453292519943295, -0.6981317007977318, 0) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1.1, -1, 0), angles( 1.5707963267948966, 1.7453292519943295, -1.5707963267948966 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.08726646259971647 * sin((sine + 0.1) * 4), 0, 2.792526803190927 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( 0, -1.7 + 0.5 * sin(sine * 4) + Ychg, 0.15 * sin(sine * 4) ), angles( 3.3161255787892263 + 0.17453292519943295 * sin(sine * 4), 0, 3.6651914291880923 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, }) addmode('k', { idle = function() local Ychg = velYchg() / 20 Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.6580627893946132 - 0.08726646259971647 * sin( (sine + 0.3333333333333333) * 12 ), -0.08726646259971647 * sin((sine + 0.2) * 6), 3.141592653589793 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf( -1, -0.5 - 0.5 * sin( (sine + 0.39999999999999997) * 12 ) - Ychg, -0.5 ), angles( 1.7453292519943295 - 1.0471975511965976 * sin(sine * 6), -1.5707963267948966 + 0.1308996938995747 * sin(sine * 6), 1.5707963267948966 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf( 1, -0.5 - 0.5 * sin( (sine + 0.39999999999999997) * 12 ) - Ychg, -0.5 ), angles( 1.7453292519943295 + 1.0471975511965976 * sin(sine * 6), 1.5707963267948966 + 0.1308996938995747 * sin(sine * 6), -1.5707963267948966 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( 0, -0.5 + 0.3 * sin( (sine + 0.16666666666666666) * 12 ) + Ychg, 0 ), angles( -1.3962634015954636 + 0.08726646259971647 * sin( (sine + 0.3333333333333333) * 12 ), 0.08726646259971647 * sin((sine + 0.06666666666666667) * 6), 3.141592653589793 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, }) local idleL = function() local Ychg = velYchg() / 20 RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -0.9 + 0.2 * sin((sine - 0.2) * 16) - Ychg, 0.25), angles( 0, 0.7853981633974483, 0.4363323129985824 - 1.1344640137963142 * sin((sine - 0.0875) * 8) ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( 0.15 * sin((sine - 0.1) * 8), 0.54 * sin(sine * 16) + Ychg, 0 ), angles( -1.5707963267948966, -0.08726646259971647 * sin((sine - 0.0785) * 8), 3.141592653589793 - 0.08726646259971647 * sin((sine - 0.0785) * 8) ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf( 0.75 + 0.07 * sin((sine - 0.0785) * 8), 1.3 + 0.1 * sin((sine - 0.0875) * 16), 0 ), angles( 1.3962634015954636, 2.356194490192345 - 0.06981317007977318 * sin((sine - 0.0785) * 8), 1.2217304763960306 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.08726646259971647 * sin((sine - 0.1) * 16), 0.12217304763960307 * sin((sine - 0.0785) * 8), 3.141592653589793 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -0.9 + 0.2 * sin((sine - 0.2) * 16) - Ychg, 0.25), angles( 0, -0.7853981633974483, -0.4363323129985824 - 1.1344640137963142 * sin((sine - 0.0875) * 8) ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.45 + 0.05 * sin((sine - 0.0875) * 16), -0.2), angles( 2.0943951023931953 + 0.17453292519943295 * sin((sine - 0.0875) * 16), -0.5235987755982988, 1.5707963267948966 + 0.17453292519943295 * sin((sine - 0.0875) * 16) ) ), deltaTime ) --MW_animatorProgressSave: RightLeg,1,0,0,16,0,0,0,8,-0.9,0.2,-0.2,16,45,0,-0.0875,8,0.25,0,0,16,25,-65,-0.0875,8,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,Torso,0,0.15,-0.1,8,-90,0,0,16,0,0.54,0,16,-0,-5,-0.0785,8,0,0,0,16,180,-5,-0.0785,8,RightArm,0.75,0.07,-0.0785,8,80,0,0,16,1.3,0.1,-0.0875,16,135,-4,-0.0785,8,0,0,0,16,70,0,0,16,Head,0,0,0,16,-90,5,-0.1,16,1,0,0,16,-0,7,-0.0785,8,0,0,0,16,180,0,0,16,LeftLeg,-1,0,0,16,0,0,0,8,-0.9,0.2,-0.2,16,-45,0,0,8,0.25,0,0,16,-25,-65,-0.0875,8,Bandana_Handle,3.9362930692732334e-09,0,0,2,0,0,0,2,0.3000001907348633,0,0,2,0,0,0,2,-0.6002722978591919,0,0,2,0,0,0,2,LeftArm,-1,0,0,16,120,10,-0.0875,16,0.45,0.05,-0.0875,16,-30,0,0,16,-0.2,0,0,16,90,10,-0.0875,16 end addmode('l', { modeEntered = function() setWalkSpeed(10) end, idle = idleL, walk = idleL, modeLeft = function() setWalkSpeed(16) end, }) end) btn('nameless animations V7', function() local t = reanimate() if type(t) ~= 'table' then return end local raycastlegs = t.raycastlegs local velbycfrvec = t.velbycfrvec local velchgbycfrvec = t.velchgbycfrvec local addmode = t.addmode local getJoint = t.getJoint local RootJoint = getJoint('RootJoint') local RightShoulder = getJoint('Right Shoulder') local LeftShoulder = getJoint('Left Shoulder') local RightHip = getJoint('Right Hip') local LeftHip = getJoint('Left Hip') local Neck = getJoint('Neck') addmode('default', { idle = function() local rY, lY = raycastlegs() local Cfw, Crt = velchgbycfrvec() RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(Crt * 3, 0.1 * sin(sine * 2), Cfw * -3), angles( -1.5707963267948966 + 0.08726646259971647 * sin(sine * 2) - Cfw, Crt, 3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) --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 end, walk = function() local Vfw, Vrt = velbycfrvec() local rY, lY = raycastlegs() local Cfw, Crt = velchgbycfrvec() RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(Crt * 3, -0.2 + 0.2 * sin(sine * 16), Cfw * -3), angles( -1.6580627893946132 + 0.04363323129985824 * sin(sine * 16) - Vfw * 0.15 - Cfw, 0.03490658503988659 * sin(sine * 8) + Vrt * 0.15 + Crt, -3.141592653589793 - 0.08726646259971647 * sin( (sine + 0.25) * 8 ) - Vrt * 0.1 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf( 1, -0.8 + 0.4 * sin((sine + 0.125) * 8) + rY, -0.15 * Vfw + 0.4 * sin((sine + 10) * 8) * Vfw + rY * -0.5 ), angles( 1.3962634015954636 + 0.6981317007977318 * sin(sine * 8) * Vfw, 1.5707963267948966 + 0.6981317007977318 * sin(sine * 8) * Vrt, -1.5707963267948966 + 0.2617993877991494 * sin(sine * 8) ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.35 - 0.1 * sin(sine * 8), 0), angles( 0.5235987755982988 * sin(sine * 8) * Vfw, -1.5707963267948966 - 0.5235987755982988 * sin(sine * 8) * Vfw, -0.5235987755982988 * sin(sine * 8) * Vfw ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 0.35 + 0.1 * sin(sine * 8), 0), angles( -0.5235987755982988 * sin(sine * 8) * Vfw, 1.5707963267948966 - 0.5235987755982988 * sin(sine * 8) * Vfw, -0.5235987755982988 * sin(sine * 8) * Vfw ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf( -1, -0.8 - 0.4 * sin((sine + 0.125) * 8) + lY, -0.15 * Vfw - 0.4 * sin((sine + 10) * 8) * Vfw + lY * -0.5 ), angles( 1.3962634015954636 - 0.6981317007977318 * sin(sine * 8) * Vfw, -1.5707963267948966 - 0.6981317007977318 * sin(sine * 8) * Vrt, 1.5707963267948966 + 0.2617993877991494 * sin(sine * 8) ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.08726646259971647 * sin( (sine + 10) * 16 ) + Vfw * 0.15, -0.08726646259971647 * sin(sine * 8) + Vrt * -0.1, 3.141592653589793 - 0.05235987755982989 * sin((sine + 5) * 8) - Vrt * 0.5 ) ), deltaTime ) --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 end, jump = function() local Vfw, Vrt = velbycfrvec() local Cfw, Crt = velchgbycfrvec() RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(Crt * 3, 0, Cfw * -3), angles( -1.4835298641951802 + Vfw * 0.1 - Cfw, Vrt * -0.05 + Crt, -3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.3962634015954636, 0, -3.141592653589793 - Vrt ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) --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 end, fall = function() local Vfw, Vrt = velbycfrvec() local Cfw, Crt = velchgbycfrvec() RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(Crt * 3, 0, Cfw * -3), angles( -1.6580627893946132 + Vfw * 0.1 - Cfw, Vrt * -0.05 + Crt, -3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.7453292519943295, 0, -3.141592653589793 - Vrt ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) --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, }) addmode('q', { idle = function() local Cfw, Crt = velchgbycfrvec() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.75, -0.2), angles( 2.705260340591211 - 0.08726646259971647 * sin((sine + 0.1) * 2), -2.792526803190927, -0.6981317007977318 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 0.75, -0.2), angles( 2.705260340591211 - 0.08726646259971647 * sin((sine + 0.1) * 2), 2.792526803190927, 0.6981317007977318 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.9198621771937625 - 0.10471975511965978 * sin((sine + 0.3) * 2), 0, 3.141592653589793 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(Crt * 3, -2.45 - 0.05 * sin(sine * 2), Cfw * -3), angles( 0.03490658503988659 * sin(sine * 2) - Cfw, Crt, 3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1, 0), angles( 1.3962634015954636 - 0.03490658503988659 * sin(sine * 2), 1.3089969389957472, -0.9599310885968813 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1, 0), angles( 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 end, }) addmode('e', { idle = function() local Cfw, Crt = velchgbycfrvec() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( Crt * 3, -1.85 - 0.1 * sin((sine + 0.2) * 2), Cfw * -3 ), angles( -1.3962634015954636 + 0.03490658503988659 * sin(sine * 2) - Cfw, -0.08726646259971647 + Crt, 3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) --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 end, }) addmode('r', { idle = function() local Cfw, Crt = velchgbycfrvec() RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -0.9 - 0.2 * sin(sine * 2), 0), angles( 1.5707963267948966, 1.6580627893946132 - 0.17453292519943295 * sin(sine + 0.8), -1.5707963267948966 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( 0.3 * sin(sine + 0.8) + Crt * 3, -0.1 + 0.2 * sin(sine * 2), Cfw * -3 ), angles( -1.5707963267948966 - Cfw, Crt, -3.141592653589793 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -0.9 - 0.2 * sin(sine * 2), 0), angles( 1.5707963267948966, -1.6580627893946132 - 0.17453292519943295 * sin(sine + 0.8), 1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, }) addmode('t', { idle = function() local Cfw, Crt = velchgbycfrvec() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.5, 0), angles( 1.5707963267948966, -1.6580627893946132 + 0.08726646259971647 * sin((sine - 0.3) * 4), 1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.4835298641951802, 0.04363323129985824 - 0.08726646259971647 * sin((sine + 0.1) * 4), -3.141592653589793 + 0.04363323129985824 * sin(sine * 4) ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0.1 * sin(sine * 4) + Crt * 3, 0, Cfw * -3), angles( -1.5707963267948966 - Cfw, -0.08726646259971647 + 0.08726646259971647 * sin(sine * 4) + Crt, -3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1.1 + 0.1 * sin(sine * 4), 0), angles( 1.5707963267948966, 1.5707963267948966 + 0.08726646259971647 * sin(sine * 4), -1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) --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 end, }) addmode('y', { idle = function() local Cfw, Crt = velchgbycfrvec() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1.5, 0.5, 0), angles( -1.7453292519943295, 0.17453292519943295 - 0.04363323129985824 * sin(sine * 2), -1.4835298641951802 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -0.9000000953674316 - 0.1 * sin(sine * 2), 0), angles( -1.3962634015954636, 1.3962634015954636, 1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1.0000001192092896 - 0.1 * sin(sine * 2), 0), angles( -1.5707963267948966, -1.3962634015954636, -1.5707963267948966 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -2.0943951023931953 + 0.08726646259971647 * sin((sine - 1) * 2), -0.08726646259971647, 2.792526803190927 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 1.2000000476837158, 0), angles( 2.6179938779914944 + 0.08726646259971647 * sin((sine - 1) * 2), 0.6981317007977318, -1.3962634015954636 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(Crt * 3, 0.1 * sin(sine * 2), Cfw * -3), angles( -1.6580627893946132 - Cfw, 0.08726646259971647 + Crt, 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 end, }) addmode('u', { idle = function() local Cfw, Crt = velchgbycfrvec() RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(Crt * 3, 0.75 + 0.25 * sin(sine * 2), Cfw * -3), angles( -1.5707963267948966 - Cfw, Crt, 3.141592653589793 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) --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 end, }) addmode('i', { idle = function() local Cfw, Crt = velchgbycfrvec() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( Crt * 3, -0.5 + 0.5 * sin( (sine + 0.17777777777777778) * 9 ), Cfw * -3 ), angles( -1.3962634015954636 - 0.03490658503988659 * sin( (sine + 0.17777777777777778) * 9 ) - Cfw, -0.05235987755982989 * sin(sine * 4.5) + Crt, 3.141592653589793 + 0.03490658503988659 * sin(sine * 4.5) ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) --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 end, }) addmode('o', { idle = function() local rY, lY = raycastlegs() local Cfw, Crt = velchgbycfrvec() LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 + lY, lY * -0.5), angles( -1.8325957145940461 - 0.08726646259971647 * sin(sine * 2), -1.4835298641951802, -1.5707963267948966 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(Crt, 0, 0.09 * sin(sine * 2) - Cfw * 3), angles( -1.3962634015954636 + 0.08726646259971647 * sin(sine * 2) - Cfw, -0.08726646259971647 + Crt, 3.141592653589793 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1.1 + rY, rY * -0.5), angles( -1.7453292519943295 - 0.08726646259971647 * sin(sine * 2), 1.5707963267948966, 1.5707963267948966 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.2217304763960306 - 0.08726646259971647 * sin((sine + 0.3) * 2), -0.2617993877991494 - 0.08726646259971647 * sin(sine * 2), 3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, walk = function() local Vfw, Vrt = velbycfrvec() local rY, lY = raycastlegs() local Cfw, Crt = velchgbycfrvec() Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.04363323129985824 * sin(sine * 16), 0, 3.141592653589793 + 0.08726646259971647 * sin(sine * 8) - Vrt ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf( 1, -1 - 0.3 * sin((sine + 0.15) * 8) + rY, rY * -0.5 ), angles( -1.5707963267948966 - 0.6981317007977318 * sin(sine * 8) * Vfw, 1.5707963267948966 + 0.6981317007977318 * sin(sine * 8) * Vrt, 1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 0.5, 0), angles( 0.08726646259971647 * sin((sine - 0.05) * 16), 1.5707963267948966 + 0.08726646259971647 * sin(sine * 8) - Vrt / 3, 1.5707963267948966 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.5, 0), angles( 0.08726646259971647 * sin((sine - 0.05) * 16), -1.5707963267948966 + 0.08726646259971647 * sin(sine * 8) - Vrt / 3, -1.5707963267948966 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(Crt * 3, 0.1 * sin((sine + 0.1) * 16), Cfw * -3), angles( -1.5707963267948966 - Cfw, Crt, 3.141592653589793 - 0.08726646259971647 * sin(sine * 8) ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf( -1, -1 + 0.3 * sin((sine + 0.15) * 8) + lY, lY * -0.5 ), angles( 1.5707963267948966 + 0.6981317007977318 * sin(sine * 8) * Vfw, -1.5707963267948966 + 0.6981317007977318 * sin(sine * 8) * Vrt, 1.5707963267948966 ) ), deltaTime ) --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 end, }) addmode('p', { idle = function() local Cfw, Crt = velchgbycfrvec() RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1.5, 0.5, 0), angles( 1.5707963267948966, 3.141592653589793, -1.5707963267948966 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul(cf(1, -1, 0), angles(0, 1.5707963267948966, 0)), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1.5, 0.5, 0), angles( 1.5707963267948966, 3.141592653589793, 1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul(cf(-1, -1, 0), angles(0, -1.5707963267948966, 0)), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles(-1.5707963267948966, 0, -3.141592653589793) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(Crt * 3, 0, Cfw * -3), angles( -1.5707963267948966 - Cfw, Crt, -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 end, }) addmode('f', { idle = function() local Cfw, Crt = velchgbycfrvec() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( Crt * 3, 5 - 0.5 * sin((sine - 0.2) * 1), 0.2 * sin((sine - 1.2) * 1) - Cfw * 3 ), angles( -0.08726646259971647 + 0.17453292519943295 * sin( (sine + 1.2) * 1 ) - Cfw, 0.08726646259971647 * sin(sine * 0.5) + Crt, 3.141592653589793 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) --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 end, walk = function() local Vfw, Vrt = velbycfrvec() local Cfw, Crt = velchgbycfrvec() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.5, 0), angles( -3.0543261909900767 - 0.17453292519943295 * sin( (sine + 1.5) * 1 ) - Vfw * 0.1, -1.5707963267948966 + 0.08726646259971647 * sin( (sine + 0.6) * 1 ) + Vrt * 0.2, -1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.3089969389957472 - 0.2617993877991494 * sin((sine + 1.2) * 1) + Vfw * 0.1, 0.08726646259971647 * sin((sine + 0.2) * 0.5) - Vrt * 0.2, -2.9670597283903604 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( Crt * 3, 5 - 0.5 * sin((sine - 0.2) * 1), 0.2 * sin((sine - 1.2) * 1) - Cfw * 3 ), angles( -0.08726646259971647 + 0.17453292519943295 * sin( (sine + 1.2) * 1 ) - Vfw * 0.2 - Cfw, 0.08726646259971647 * sin(sine * 0.5) + Crt, 3.141592653589793 - Vrt * 0.2 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1, 0), angles( 1.3962634015954636 + 0.12217304763960307 * sin( (sine + 1.5) * 1 ) - Vfw * 0.2, -1.2217304763960306 + 0.08726646259971647 * sin((sine + 0.2) * 0.5), 1.5707963267948966 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1, 0), angles( 1.9198621771937625 + 0.12217304763960307 * sin( (sine + 1.5) * 1 ) - Vfw * 0.2, 1.2217304763960306 + 0.08726646259971647 * sin((sine + 0.2) * 0.5), -1.5707963267948966 ) ), deltaTime ) --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 end, }) addmode('g', { idle = function() local Cfw, Crt = velchgbycfrvec() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( 0.3 * sin((sine + 0.4) * 8) + Crt * 3, 0, Cfw * -3 ), angles( -1.5707963267948966 - Cfw, 0.3490658503988659 * sin(sine * 8) + Crt, -3.141592653589793 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.061086523819801536 * sin((sine + 0.125) * 16), -0.3839724354387525 * sin(sine * 8), -3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1 + 0.4 * sin((sine - 0.01) * 8), 0), angles( 1.5707963267948966, 1.7453292519943295 + 0.6981317007977318 * sin(sine * 8), -1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 - 0.4 * sin((sine - 0.01) * 8), 0), angles( 1.5707963267948966, -1.7453292519943295 + 0.6981317007977318 * sin(sine * 8), 1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, }) addmode('h', { idle = function() local Cfw, Crt = velchgbycfrvec() Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966, -0.4363323129985824 * sin(sine * 8), -3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1 + 0.3 * sin(sine * 8), 0), angles( 1.5707963267948966, 1.5707963267948966 + 0.5235987755982988 * sin(sine * 8), -1.5707963267948966 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-0.5, 1, 0), angles( -0.5235987755982988, -1.5707963267948966 - 0.5235987755982988 * sin(sine * 8), 3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(0.5, 1, 0), angles( -0.5235987755982988, 1.5707963267948966 - 0.5235987755982988 * sin(sine * 8), 3.141592653589793 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( -0.1 * sin(sine * 8) + Crt * 3, 0.2 * sin((sine + 0.1) * 16), Cfw * -3 ), angles( -1.5707963267948966 - Cfw, 0.2617993877991494 * sin(sine * 8) + Crt, -3.141592653589793 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 - 0.3 * sin(sine * 8), 0), angles( 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 end, }) addmode('j', { idle = function() local Cfw, Crt = velchgbycfrvec() LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-0.8, -1, -0.1), angles(0.17453292519943295, -0.6981317007977318, 0) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1.1, -1, 0), angles( 1.5707963267948966, 1.7453292519943295, -1.5707963267948966 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.08726646259971647 * sin((sine + 0.1) * 4), 0, 2.792526803190927 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( Crt * 3, -1.7 + 0.5 * sin(sine * 4), 0.15 * sin(sine * 4) - Cfw * 3 ), angles( 3.3161255787892263 + 0.17453292519943295 * sin(sine * 4) - Cfw, Crt, 3.6651914291880923 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, }) addmode('k', { idle = function() local Cfw, Crt = velchgbycfrvec() Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.6580627893946132 - 0.08726646259971647 * sin( (sine + 0.3333333333333333) * 12 ), -0.08726646259971647 * sin((sine + 0.2) * 6), 3.141592653589793 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( Crt * 3, -0.5 + 0.3 * sin( (sine + 0.16666666666666666) * 12 ), Cfw * -3 ), angles( -1.3962634015954636 + 0.08726646259971647 * sin( (sine + 0.3333333333333333) * 12 ) - Cfw, 0.08726646259971647 * sin((sine + 0.06666666666666667) * 6) + Crt, 3.141592653589793 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, }) addmode('l', { idle = function() local Cfw, Crt = velchgbycfrvec() Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.04363323129985824 * sin((sine + 0.1) * 1), -0.17453292519943295 * sin((sine + 0.1) * 5), -3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( Crt * 3, 0.15 + 0.4 * sin((sine - 0.5) * 10), Cfw * -3 ), angles( -1.4835298641951802 - Cfw, 0.17453292519943295 * sin(sine * 5) + Crt, -3.141592653589793 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-0.7, 0.5, -0.3), angles( 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,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 end, }) addmode('x', { idle = function() local Cfw, Crt = velchgbycfrvec() RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul(cf(1, 0.5, 0), angles(0, 1.5707963267948966, 0)), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles(-1.5707963267948966, 0, 3.141592653589793) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul(cf(1, -1, 0), angles(0, 1.5707963267948966, 0)), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul(cf(-1, -1, 0), angles(0, -1.5707963267948966, 0)), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(Crt * 3, 0, Cfw * -3), angles( -1.5707963267948966 - Cfw, Crt, 3.141592653589793 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul(cf(-1, 0.5, 0), angles(0, -1.5707963267948966, 0)), deltaTime ) --RightArm,1,0,0,1,0,0,0,1,0.5,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,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,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,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,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,LeftArm,-1,0,0,1,-0,0,0,1,0.5,0,0,1,-90,0,0,1,0,0,0,1,0,0,0,1 end, walk = function() local Cfw, Crt = velchgbycfrvec() RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul(cf(1, 0.5, 0), angles(0, 1.5707963267948966, 0)), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles(-1.5707963267948966, 0, 3.141592653589793) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul(cf(1, -1, 0), angles(0, 1.5707963267948966, 0)), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul(cf(-1, -1, 0), angles(0, -1.5707963267948966, 0)), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(Crt * 3, 0, Cfw * -3), angles( -1.5707963267948966 - Cfw, Crt, 3.141592653589793 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul(cf(-1, 0.5, 0), angles(0, -1.5707963267948966, 0)), deltaTime ) --RightArm,1,0,0,1,0,0,0,1,0.5,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,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,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,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,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,LeftArm,-1,0,0,1,-0,0,0,1,0.5,0,0,1,-90,0,0,1,0,0,0,1,0,0,0,1 end, }) end) btn('nameless animations V6', function() local t = reanimate() if type(t) ~= 'table' then return end local raycastlegs = t.raycastlegs local velbycfrvec = t.velbycfrvec local addmode = t.addmode local getJoint = t.getJoint local RootJoint = getJoint('RootJoint') local RightShoulder = getJoint('Right Shoulder') local LeftShoulder = getJoint('Left Shoulder') local RightHip = getJoint('Right Hip') local LeftHip = getJoint('Left Hip') local Neck = getJoint('Neck') addmode('default', { idle = function() local rY, lY = raycastlegs() RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, 0.1 * sin(sine * 2), 0), angles( -1.5707963267948966 + 0.08726646259971647 * sin(sine * 2), 0, 3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) --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 end, walk = function() local fw, rt = velbycfrvec() local rY, lY = raycastlegs() RootJoint.C0 = Lerp( RootJoint.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) --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 end, jump = function() local fw, rt = velbycfrvec() RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf_0, angles( -1.4835298641951802 + fw * 0.1, rt * -0.05, -3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.3962634015954636, 0, -3.141592653589793 - rt ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) --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 end, fall = function() local fw, rt = velbycfrvec() RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf_0, angles( -1.6580627893946132 + fw * 0.1, rt * -0.05, -3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.7453292519943295, 0, -3.141592653589793 - rt ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) --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, }) addmode('q', { idle = function() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.75, -0.2), angles( 2.705260340591211 - 0.08726646259971647 * sin((sine + 0.1) * 2), -2.792526803190927, -0.6981317007977318 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 0.75, -0.2), angles( 2.705260340591211 - 0.08726646259971647 * sin((sine + 0.1) * 2), 2.792526803190927, 0.6981317007977318 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.9198621771937625 - 0.10471975511965978 * sin((sine + 0.3) * 2), 0, 3.141592653589793 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, -2.45 - 0.05 * sin(sine * 2), 0), angles( 0.03490658503988659 * sin(sine * 2), 0, 3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1, 0), angles( 1.3962634015954636 - 0.03490658503988659 * sin(sine * 2), 1.3089969389957472, -0.9599310885968813 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1, 0), angles( 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 end, }) addmode('e', { idle = function() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) --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 end, }) addmode('r', { idle = function() RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -0.9 - 0.2 * sin(sine * 2), 0), angles( 1.5707963267948966, 1.6580627893946132 - 0.17453292519943295 * sin(sine + 0.8), -1.5707963267948966 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf( 0.3 * sin(sine + 0.8), -0.1 + 0.2 * sin(sine * 2), 0 ), angles(-1.5707963267948966, 0, -3.141592653589793) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -0.9 - 0.2 * sin(sine * 2), 0), angles( 1.5707963267948966, -1.6580627893946132 - 0.17453292519943295 * sin(sine + 0.8), 1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, }) addmode('t', { idle = function() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.5, 0), angles( 1.5707963267948966, -1.6580627893946132 + 0.08726646259971647 * sin((sine - 0.3) * 4), 1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.4835298641951802, 0.04363323129985824 - 0.08726646259971647 * sin((sine + 0.1) * 4), -3.141592653589793 + 0.04363323129985824 * sin(sine * 4) ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0.1 * sin(sine * 4), 0, 0), angles( -1.5707963267948966, -0.08726646259971647 + 0.08726646259971647 * sin(sine * 4), -3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1.1 + 0.1 * sin(sine * 4), 0), angles( 1.5707963267948966, 1.5707963267948966 + 0.08726646259971647 * sin(sine * 4), -1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) --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 end, }) addmode('y', { idle = function() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1.5, 0.5, 0), angles( -1.7453292519943295, 0.17453292519943295 - 0.04363323129985824 * sin(sine * 2), -1.4835298641951802 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -0.9000000953674316 - 0.1 * sin(sine * 2), 0), angles( -1.3962634015954636, 1.3962634015954636, 1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1.0000001192092896 - 0.1 * sin(sine * 2), 0), angles( -1.5707963267948966, -1.3962634015954636, -1.5707963267948966 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -2.0943951023931953 + 0.08726646259971647 * sin((sine - 1) * 2), -0.08726646259971647, 2.792526803190927 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 1.2000000476837158, 0), angles( 2.6179938779914944 + 0.08726646259971647 * sin((sine - 1) * 2), 0.6981317007977318, -1.3962634015954636 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, 0.1 * sin(sine * 2), 0), angles( -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 end, }) addmode('u', { idle = function() RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, 0.75 + 0.25 * sin(sine * 2), 0), angles(-1.5707963267948966, 0, 3.141592653589793) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) --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 end, }) addmode('i', { idle = function() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) --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 end, }) addmode('o', { idle = function() local rY, lY = raycastlegs() LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 + lY, lY * -0.5), angles( -1.8325957145940461 - 0.08726646259971647 * sin(sine * 2), -1.4835298641951802, -1.5707963267948966 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, 0, 0.09 * sin(sine * 2)), angles( -1.3962634015954636 + 0.08726646259971647 * sin(sine * 2), -0.08726646259971647, 3.141592653589793 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1.1 + rY, rY * -0.5), angles( -1.7453292519943295 - 0.08726646259971647 * sin(sine * 2), 1.5707963267948966, 1.5707963267948966 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.2217304763960306 - 0.08726646259971647 * sin((sine + 0.3) * 2), -0.2617993877991494 - 0.08726646259971647 * sin(sine * 2), 3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, walk = function() local fw, rt = velbycfrvec() local rY, lY = raycastlegs() Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.04363323129985824 * sin(sine * 16), 0, 3.141592653589793 + 0.08726646259971647 * sin(sine * 8) - rt ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, 0.1 * sin((sine + 0.1) * 16), 0), angles( -1.5707963267948966, 0, 3.141592653589793 - 0.08726646259971647 * sin(sine * 8) ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) --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 end, }) addmode('p', { idle = function() RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1.5, 0.5, 0), angles( 1.5707963267948966, 3.141592653589793, -1.5707963267948966 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul(cf(1, -1, 0), angles(0, 1.5707963267948966, 0)), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1.5, 0.5, 0), angles( 1.5707963267948966, 3.141592653589793, 1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul(cf(-1, -1, 0), angles(0, -1.5707963267948966, 0)), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles(-1.5707963267948966, 0, -3.141592653589793) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf_0, angles(-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 end, }) addmode('f', { idle = function() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) --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 end, walk = function() local fw, rt = velbycfrvec() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) Neck.C0 = Lerp( Neck.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) --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 end, }) addmode('g', { idle = function() LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0.3 * sin((sine + 0.4) * 8), 0, 0), angles( -1.5707963267948966, 0.3490658503988659 * sin(sine * 8), -3.141592653589793 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.061086523819801536 * sin((sine + 0.125) * 16), -0.3839724354387525 * sin(sine * 8), -3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1 + 0.4 * sin((sine - 0.01) * 8), 0), angles( 1.5707963267948966, 1.7453292519943295 + 0.6981317007977318 * sin(sine * 8), -1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 - 0.4 * sin((sine - 0.01) * 8), 0), angles( 1.5707963267948966, -1.7453292519943295 + 0.6981317007977318 * sin(sine * 8), 1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, }) addmode('h', { idle = function() Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966, -0.4363323129985824 * sin(sine * 8), -3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1 + 0.3 * sin(sine * 8), 0), angles( 1.5707963267948966, 1.5707963267948966 + 0.5235987755982988 * sin(sine * 8), -1.5707963267948966 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-0.5, 1, 0), angles( -0.5235987755982988, -1.5707963267948966 - 0.5235987755982988 * sin(sine * 8), 3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(0.5, 1, 0), angles( -0.5235987755982988, 1.5707963267948966 - 0.5235987755982988 * sin(sine * 8), 3.141592653589793 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 - 0.3 * sin(sine * 8), 0), angles( 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 end, }) addmode('j', { idle = function() LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-0.8, -1, -0.1), angles(0.17453292519943295, -0.6981317007977318, 0) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1.1, -1, 0), angles( 1.5707963267948966, 1.7453292519943295, -1.5707963267948966 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.08726646259971647 * sin((sine + 0.1) * 4), 0, 2.792526803190927 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, }) addmode('k', { idle = function() Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.6580627893946132 - 0.08726646259971647 * sin( (sine + 0.3333333333333333) * 12 ), -0.08726646259971647 * sin((sine + 0.2) * 6), 3.141592653589793 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( 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 ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) --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 end, }) addmode('l', { idle = function() Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.04363323129985824 * sin((sine + 0.1) * 1), -0.17453292519943295 * sin((sine + 0.1) * 5), -3.141592653589793 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( 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 ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( 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 ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( 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 ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, 0.15 + 0.4 * sin((sine - 0.5) * 10), 0), angles( -1.4835298641951802, 0.17453292519943295 * sin(sine * 5), -3.141592653589793 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-0.7, 0.5, -0.3), angles( 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,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 end, }) end) btn('Immortality Lord', function() local backup = accessorylimbs accessorylimbs = { { meshid = '17269636541', textureid = '', C0 = cf_0, Name = 'Torso', }, { meshid = '17269753087', textureid = '', C0 = angles(0, 3.14, 0), Name = 'Head', }, { meshid = '17375312569', textureid = '', C0 = cf( 1.50995803e-08, -1.07200003, -0.100000001, -1, 0, 1.50995803e-07, 0, 1, 0, -1.50995803e-07, 0, -1 ), Name = 'Head', }, { meshid = '17269487439', textureid = '', C0 = angles(0, 0, 1.5707963267948966), Name = 'Left Arm', }, { meshid = '17269487439', textureid = '', C0 = angles(0, 0, 1.5707963267948966), Name = 'Right Arm', }, { meshid = '17269487439', textureid = '', C0 = angles(0, 0, 1.5707963267948966), Name = 'Left Leg', }, { meshid = '17269487439', textureid = '', C0 = angles(0, 0, 1.5707963267948966), Name = 'Right Leg', }, { meshid = '111946216585470', textureid = '', C0 = cf_0, Name = 'Torso', }, { meshid = '92572400594624', textureid = '', C0 = angles(0, 3.14, 0), Name = 'Head', }, { meshid = '117649985156221', textureid = '', C0 = cf_0, Name = 'Left Arm', }, { meshid = '93749227415046', textureid = '', C0 = cf_0, Name = 'Right Arm', }, { meshid = '137156465227879', textureid = '', C0 = cf_0, Name = 'Left Leg', }, { meshid = '76010149115685', textureid = '', C0 = cf_0, Name = 'Right Leg', }, { meshid = '126825022897778', textureid = '', C0 = cf_0, Name = 'Torso', }, { meshid = '138744606849121', textureid = '83207562332062', C0 = angles(0, 0, 1.5707963267948966), Name = 'Left Arm', }, { meshid = '138744606849121', textureid = '83207562332062', C0 = angles(0, 0, 1.5707963267948966), Name = 'Right Arm', }, { meshid = '138744606849121', textureid = '136752500636691', C0 = angles(0, 0, 1.5707963267948966), Name = 'Left Leg', }, { meshid = '138744606849121', textureid = '136752500636691', C0 = angles(0, 0, 1.5707963267948966), Name = 'Right Leg', }, } local t = reanimate() accessorylimbs = backup if type(t) ~= 'table' then return end local getJoint = t.getJoint local RootJoint = getJoint('RootJoint') local RightShoulder = getJoint('Right Shoulder') local LeftShoulder = getJoint('Left Shoulder') local RightHip = getJoint('Right Hip') local LeftHip = getJoint('Left Hip') local Neck = getJoint('Neck') local getVel = t.getVel local setCfr = t.setCfr local getCamCF = t.getCamCF local cframes = t.cframes local joints = t.joints local getAccWeldFromMesh = t.getAccWeldFromMesh local setWalkSpeed = t.setWalkSpeed local fling = t.fling local rad = math.rad Neck.C1 = cf(0, -1, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0) RootJoint.C1 = cf(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0) RightShoulder.C1 = cf(-1, 1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0) LeftShoulder.C1 = cf(1, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0) RightHip.C1 = cf(1, 2, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0) LeftHip.C1 = cf(-1, 2, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0) setWalkSpeed(32) t.setJumpPower(0) t.setHipHeight(7) t.setGravity(math.huge) local torso = t.getPart('Torso') local rootpart = t.getPart('HumanoidRootPart') local leftWingPart = {} cframes[leftWingPart] = cf_0 local leftWingAccWeld = getAccWeldFromMesh('17269814619', '') leftWingAccWeld.C0 = angles(0, 3.14, 0) leftWingAccWeld.C1 = cf_0 leftWingAccWeld.Part1 = leftWingPart local LeftWing = { C0 = cf(-0.3, 1, 1) * angles(0, 1.5707963267948966, 0), C1 = cf(2.2, 2, 1.5), Part0 = torso, Part1 = leftWingPart, } tinsert(joints, LeftWing) local rightWingPart = {} cframes[rightWingPart] = cf_0 local rightWingAccWeld = getAccWeldFromMesh('17269824947', '') rightWingAccWeld.C0 = angles(0, 3.14, 0) rightWingAccWeld.C1 = cf_0 rightWingAccWeld.Part1 = rightWingPart local RightWing = { C0 = cf(0.3, 1, 1) * angles(0, 1.5707963267948966, 0), C1 = cf(2.2, 2, -1.5), Part0 = torso, Part1 = rightWingPart, } tinsert(joints, RightWing) local swordpart = {} cframes[swordpart] = cf_0 local swordAccWeld0 = getAccWeldFromMesh('17326555172', '') swordAccWeld0.C0 = cf( -0.0023765564, 2.14191723, 3.825109, -1, 0, 0, 0, -0.519688249, -0.85435611, 0, -0.854355931, 0.519688308 ) swordAccWeld0.C1 = cf_0 swordAccWeld0.Part1 = swordpart local swordAccWeld1 = getAccWeldFromMesh('17326476901', '') swordAccWeld1.C0 = cf( -0.00237464905, -1.31204176, -3.18902349, -1, 0, 0, 0, -0.519688249, -0.85435611, 0, -0.854355931, 0.519688308 ) swordAccWeld1.C1 = cf_0 swordAccWeld1.Part1 = swordpart local Sword = { C0 = cf(0, -2, 0) * angles(1.57, 0, 0), C1 = cf(0, -6.3, 0), Part0 = t.getPart('Right Arm'), Part1 = swordpart, } tinsert(joints, Sword) local DefaultsNeckC0 = cf(0, 2, 0) * angles(-1.5707963267948966, 0, 3.141592653589793) local DefaultsRootJointC0 = angles( -1.5707963267948966, 0, 3.141592653589793 ) local DefaultsRightShoulderC0 = cf(-1, 0, 0) * angles(0, 1.5707963267948966, 0) local DefaultsLeftShoulderC0 = cf(1, 0, 0) * angles(0, -1.5707963267948966, 0) local TimingSine = sine * 60 local attacking = false local animOverwrite = nil local neckSnap = false local Lerp1 = function(a, b, c) return Lerp(a, b, min(c * 6 * deltaTime, 1)) end local v3_030 = v3_010 * 3 local flycf = nil local flypos = nil local charcf = cf_0 local animations = function(onground) TimingSine = sine * 60 local vel = getVel() local xzvel = vel * v3_101 if flycf then if xzvel ~= v3_0 then local camrot = cfGet(getCamCF(), 'Rotation') local clv = cfGet(camrot, 'LookVector') local crv = cfGet(camrot, 'RightVector') local fw = v3Get(clv * v3_101, 'Unit') * xzvel fw = clv * (v3Get(fw, 'X') + v3Get(fw, 'Z')) local rt = v3Get(crv * v3_101, 'Unit') * xzvel rt = crv * (v3Get(rt, 'X') + v3Get(rt, 'Z')) flypos = flypos + v3Get(fw + rt, 'Unit') * deltaTime * 3.2 flycf = cfAdd(camrot, flypos) charcf = cfAdd( flycf, cfGet(flycf, 'UpVector') * 3 - v3_030 ) end cframes[rootpart] = flycf setCfr(charcf) elseif onground then charcf = cframes[rootpart] elseif cframes[rootpart].Y < charcf.Y then local newcf = cframes[rootpart] local lastY = cfGet(charcf, 'Y') charcf = cfAdd( cfGet(newcf, 'Rotation'), v3( cfGet(newcf, 'X'), lastY + (cfGet(newcf, 'Y') - lastY) * deltaTime * 0.6, cfGet(newcf, 'Z') ) ) cframes[rootpart] = charcf setCfr(charcf) else charcf = cframes[rootpart] end if attacking then animOverwrite() elseif xzvel ~= v3_0 then if neckSnap then Neck.C0 = DefaultsNeckC0 neckSnap = false else Neck.C0 = Lerp1(Neck.C0, DefaultsNeckC0, 0.25) end if mrandom(15) == 1 then Neck.C0 = DefaultsNeckC0 * angles( rad(mrandom(-20, 20)), rad(mrandom(-20, 20)), rad(mrandom(-20, 20)) ) neckSnap = true end if onground and not flycf then RightShoulder.C0 = Lerp1( RightShoulder.C0, cf(3, 1, 0) * angles(-0.17453292519943295, 0, 0) * DefaultsRightShoulderC0, 0.25 ) Sword.C0 = Lerp1( Sword.C0, cf(0, -2, 0) * angles( rad(154.35 - 5.65 * sin(TimingSine / 25)), 0, 0 ), 0.25 ) else RightShoulder.C0 = Lerp1( RightShoulder.C0, cf(3, 1, 0) * angles( rad(80 + 5 * cos(TimingSine / 25)), 0, 0.7853981633974483 ) * DefaultsRightShoulderC0, 0.25 ) Sword.C0 = Lerp1( Sword.C0, cf(0, -0, -1) * angles( 0, 2.9670597283903604, -0.17453292519943295 ), 0.25 ) end RootJoint.C0 = Lerp1( RootJoint.C0, DefaultsRootJointC0 * cf(0, 0, -sin(TimingSine / 25)) * angles(0.3490658503988659, 0, 0), 0.25 ) LeftShoulder.C0 = Lerp1( LeftShoulder.C0, cf(-3, 1, 0) * angles( 0.3490658503988659, 0, rad(-10 - 10 * cos(TimingSine / 25)) ) * DefaultsLeftShoulderC0, 0.25 ) RightHip.C0 = Lerp1( RightHip.C0, cf(2, -2, 0) * angles( -0.3490658503988659, 1.3962634015954636, rad(10 + 10 * cos(TimingSine / 25)) ), 0.25 ) LeftHip.C0 = Lerp1( LeftHip.C0, cf(-2, -2, 0) * angles( -0.17453292519943295, -1.3962634015954636, rad(-10 - 10 * cos(TimingSine / 25)) ), 0.25 ) else RootJoint.C0 = Lerp1( RootJoint.C0, DefaultsRootJointC0 * cf(0, 0, -sin(TimingSine / 25)) * angles(0.3490658503988659, 0, 0), 0.25 ) if neckSnap then Neck.C0 = DefaultsNeckC0 * angles( 0.3490658503988659, rad(10 * sin(TimingSine / 50)), 0 ) neckSnap = false else Neck.C0 = Lerp1( Neck.C0, DefaultsNeckC0 * angles( 0.3490658503988659, rad(10 * sin(TimingSine / 50)), 0 ), 0.25 ) end if mrandom(15) == 1 then Neck.C0 = DefaultsNeckC0 * angles( rad(20 + mrandom(-20, 20)), rad( (10 * sin(TimingSine / 50)) + mrandom(-20, 20) ), rad(mrandom(-20, 20)) ) neckSnap = true end if onground and not flycf then RightShoulder.C0 = Lerp1( RightShoulder.C0, cf(3, 1, 0) * angles(-0.17453292519943295, 0, 0) * DefaultsRightShoulderC0, 0.25 ) Sword.C0 = Lerp1( Sword.C0, cf(0, -2, 0) * angles( rad(154.35 - 5.65 * sin(TimingSine / 25)), 0, 0 ), 0.25 ) else RightShoulder.C0 = Lerp1( RightShoulder.C0, cf(3, 1, 0) * angles( rad(80 + 5 * cos(TimingSine / 25)), 0, 0.7853981633974483 ) * DefaultsRightShoulderC0, 0.25 ) Sword.C0 = Lerp1( Sword.C0, cf(0, 0, -1) * angles( 0, 2.9670597283903604, -0.17453292519943295 ), 0.25 ) end LeftShoulder.C0 = Lerp1( LeftShoulder.C0, cf(-3, 1, 0) * angles( 0.3490658503988659, 0, rad(-10 - 10 * cos(TimingSine / 25)) ) * DefaultsLeftShoulderC0, 0.25 ) RightHip.C0 = Lerp1( RightHip.C0, cf(2, -2, 0) * angles( 0.17453292519943295, 1.3962634015954636, rad(10 + 10 * cos(TimingSine / 25)) ), 0.25 ) LeftHip.C0 = Lerp1( LeftHip.C0, cf(-2, -2, 0) * angles( 0.3490658503988659, -1.3962634015954636, rad(-10 - 10 * cos(TimingSine / 25)) ), 0.25 ) end RightWing.C0 = Lerp1( RightWing.C0, cf(0.3, 1, 1) * angles(0, rad(105 - 25 * cos(TimingSine / 25)), 0), 0.25 ) LeftWing.C0 = Lerp1( LeftWing.C0, cf(-0.3, 1, 1) * angles(0, rad(75 + 25 * cos(TimingSine / 25)), 0), 0.25 ) end local onKeyPressed = function(key) if key == 'f' then if flycf then flycf = nil charcf = cf(flypos) setCfr(charcf) else flypos = cfGet(cframes[rootpart], 'Position') flycf = cf(flypos) charcf = flycf end elseif key == 'z' then if attacking then return end attacking = true setWalkSpeed(0) animOverwrite = function() RootJoint.C0 = Lerp1( RootJoint.C0, DefaultsRootJointC0 * cf(0, 0, -sin(TimingSine / 25)) * angles( 0.08726646259971647, 0, -0.3490658503988659 ), 0.25 ) if neckSnap then Neck.C0 = DefaultsNeckC0 neckSnap = false else Neck.C0 = Lerp1(Neck.C0, DefaultsNeckC0, 0.25) end if mrandom(15) == 1 then Neck.C0 = DefaultsNeckC0 * angles( rad(mrandom(-20, 20)), rad(mrandom(-20, 20)), rad(mrandom(-20, 20)) ) neckSnap = true end RightShoulder.C0 = Lerp1( RightShoulder.C0, cf(3, 1, 0) * angles( 1.3962634015954636, 0, 0.8726646259971648 ) * DefaultsRightShoulderC0, 0.25 ) Sword.C0 = Lerp1( Sword.C0, cf(-1, -1, 0) * angles( 3.141592653589793, -1.5707963267948966, 0 ), 0.25 ) LeftShoulder.C0 = Lerp1( LeftShoulder.C0, cf(-3, 1, 0) * angles( 0.08726646259971647, 0, rad(-10 - 10 * cos(TimingSine / 25)) ) * DefaultsLeftShoulderC0, 0.25 ) RightHip.C0 = Lerp1( RightHip.C0, cf(2, -2, 0) * angles( -0.3490658503988659, 1.3962634015954636, rad(10 + 10 * cos(TimingSine / 25)) ), 0.25 ) LeftHip.C0 = Lerp1( LeftHip.C0, cf(-2, -2, 0) * angles( -0.17453292519943295, -1.3962634015954636, rad(-10 - 10 * cos(TimingSine / 25)) ), 0.25 ) end twait(0.25) local flingpos = cfGet( cfMul(cframes[rootpart], cf(0, 0, -9)), 'Position' ) for i, v in next, GetDescendants(ws) do if IsA(v, 'Humanoid') then local p = v.Parent p = gp(p, 'HumanoidRootPart', 'BasePart') or FindFirstChildWhichIsA(p, 'BasePart') if p and ( v3Get( insGet(p, 'Position') - flingpos, 'Magnitude' ) < 9 ) then fling(v) end end end animOverwrite = function() RootJoint.C0 = Lerp1( RootJoint.C0, DefaultsRootJointC0 * cf(0, 0, -sin(TimingSine / 25)) * angles( 0.08726646259971647, 0, 0.3490658503988659 ), 0.25 ) if neckSnap then Neck.C0 = DefaultsNeckC0 neckSnap = false else Neck.C0 = Lerp1(Neck.C0, DefaultsNeckC0, 0.25) end if mrandom(15) == 1 then Neck.C0 = DefaultsNeckC0 * angles( rad(mrandom(-20, 20)), rad(mrandom(-20, 20)), rad(mrandom(-20, 20)) ) neckSnap = true end RightShoulder.C0 = Lerp1( RightShoulder.C0, cf(2, 1, -1) * angles( 1.3962634015954636, 0, -0.8726646259971648 ) * DefaultsRightShoulderC0, 0.25 ) Sword.C0 = Lerp1( Sword.C0, cf(-1, -1, 0) * angles( 3.141592653589793, -1.5707963267948966, 0 ), 0.25 ) LeftShoulder.C0 = Lerp1( LeftShoulder.C0, cf(-3, 1, 0) * angles( 0.08726646259971647, 0, rad(-10 - 10 * cos(TimingSine / 25)) ) * DefaultsLeftShoulderC0, 0.25 ) RightHip.C0 = Lerp1( RightHip.C0, cf(2, -2, 0) * angles( -0.3490658503988659, 1.3962634015954636, rad(10 + 10 * cos(TimingSine / 25)) ), 0.25 ) LeftHip.C0 = Lerp1( LeftHip.C0, cf(-2, -2, 0) * angles( -0.17453292519943295, -1.3962634015954636, rad(-10 - 10 * cos(TimingSine / 25)) ), 0.25 ) end twait(0.25) setWalkSpeed(32) attacking = false elseif key == 'x' then attacking = true setWalkSpeed(0) local newpos = cfGet(insGet(mouse, 'Hit'), 'Position') + v3_010 * 10 local newcf = cfl( newpos, newpos + cfGet(getCamCF(), 'LookVector') * v3_101 ) animOverwrite = function() RootJoint.C0 = Lerp1( RootJoint.C0, DefaultsRootJointC0 * cf(0, 0, -sin(TimingSine / 25)) * angles(0.3490658503988659, 0, 0), 0.25 ) if neckSnap then Neck.C0 = DefaultsNeckC0 neckSnap = false else Neck.C0 = Lerp1(Neck.C0, DefaultsNeckC0, 0.25) end if mrandom(15) == 1 then Neck.C0 = DefaultsNeckC0 * angles( rad(mrandom(-20, 20)), rad(mrandom(-20, 20)), rad(mrandom(-20, 20)) ) neckSnap = true end RightShoulder.C0 = Lerp1( RightShoulder.C0, cf(3, 1, 0) * angles( rad(80 + 5 * cos(TimingSine / 25)), 0, 0.7853981633974483 ) * DefaultsRightShoulderC0, 0.25 ) Sword.C0 = Lerp1( Sword.C0, cf(0, -0, -1) * angles( 0, 2.9670597283903604, -0.17453292519943295 ), 0.25 ) LeftShoulder.C0 = Lerp1( LeftShoulder.C0, cf(-3, 1, 0) * angles( 0.3490658503988659, 0, rad(-10 - 10 * cos(TimingSine / 25)) ) * DefaultsLeftShoulderC0, 0.25 ) RightHip.C0 = Lerp1( RightHip.C0, cf(2, -2, 0) * angles( -0.3490658503988659, 1.3962634015954636, rad(10 + 10 * cos(TimingSine / 25)) ), 0.25 ) LeftHip.C0 = Lerp1( LeftHip.C0, cf(-2, -2, 0) * angles( -0.17453292519943295, -1.3962634015954636, rad(-10 - 10 * cos(TimingSine / 25)) ), 0.25 ) end twait(0.5) local animStart = sine animOverwrite = function() RootJoint.C0 = Lerp1( RootJoint.C0, DefaultsRootJointC0 * cf(0, 0, -20 * (0.5 + sine - animStart)) * angles(0.3490658503988659, 0, 0), 0.25 ) if neckSnap then Neck.C0 = DefaultsNeckC0 neckSnap = false else Neck.C0 = Lerp1(Neck.C0, DefaultsNeckC0, 0.25) end if mrandom(15) == 1 then Neck.C0 = DefaultsNeckC0 * angles( rad(mrandom(-20, 20)), rad(mrandom(-20, 20)), rad(mrandom(-20, 20)) ) neckSnap = true end RightShoulder.C0 = Lerp1( RightShoulder.C0, cf(3, 1, 0) * angles( rad(80 + 5 * cos(TimingSine / 25)), 0, 0.7853981633974483 ) * DefaultsRightShoulderC0, 0.25 ) Sword.C0 = Lerp1( Sword.C0, cf(0, -0, -1) * angles( 0, 2.9670597283903604, -0.17453292519943295 ), 0.25 ) LeftShoulder.C0 = Lerp1( LeftShoulder.C0, cf(-3, 1, 0) * angles( 0.3490658503988659, 0, rad(-10 - 10 * cos(TimingSine / 25)) ) * DefaultsLeftShoulderC0, 0.25 ) RightHip.C0 = Lerp1( RightHip.C0, cf(2, -2, 0) * angles( -0.3490658503988659, 1.3962634015954636, rad(10 + 10 * cos(TimingSine / 25)) ), 0.25 ) LeftHip.C0 = Lerp1( LeftHip.C0, cf(-2, -2, 0) * angles( -0.17453292519943295, -1.3962634015954636, rad(-10 - 10 * cos(TimingSine / 25)) ), 0.25 ) end twait(0.5) if flycf then flycf = newcf flypos = newpos end charcf = newcf setCfr(newcf) twait(0.5) animStart = sine animOverwrite = function() RootJoint.C0 = Lerp1( RootJoint.C0, DefaultsRootJointC0 * cf( 0, 0, (-sin(TimingSine / 25)) - (10 - (sine - animStart) * 20) ) * angles(0.3490658503988659, 0, 0), 0.25 ) if neckSnap then Neck.C0 = DefaultsNeckC0 neckSnap = false else Neck.C0 = Lerp1(Neck.C0, DefaultsNeckC0, 0.25) end if mrandom(15) == 1 then Neck.C0 = DefaultsNeckC0 * angles( rad(mrandom(-20, 20)), rad(mrandom(-20, 20)), rad(mrandom(-20, 20)) ) neckSnap = true end RightShoulder.C0 = Lerp1( RightShoulder.C0, cf(3, 1, 0) * angles( rad(80 + 5 * cos(TimingSine / 25)), 0, 0.7853981633974483 ) * DefaultsRightShoulderC0, 0.25 ) Sword.C0 = Lerp1( Sword.C0, cf(0, -0, -1) * angles( 0, 2.9670597283903604, -0.17453292519943295 ), 0.25 ) LeftShoulder.C0 = Lerp1( LeftShoulder.C0, cf(-3, 1, 0) * angles( 0.3490658503988659, 0, rad(-10 - 10 * cos(TimingSine / 25)) ) * DefaultsLeftShoulderC0, 0.25 ) RightHip.C0 = Lerp1( RightHip.C0, cf(2, -2, 0) * angles( -0.3490658503988659, 1.3962634015954636, rad(10 + 10 * cos(TimingSine / 25)) ), 0.25 ) LeftHip.C0 = Lerp1( LeftHip.C0, cf(-2, -2, 0) * angles( -0.17453292519943295, -1.3962634015954636, rad(-10 - 10 * cos(TimingSine / 25)) ), 0.25 ) end twait(0.5) setWalkSpeed(32) attacking = false end end local animations1 = function() animations(true) end local animations0 = function() animations(false) end local lastmode = 'default' t.addmode('default', { modeEntered = function() onKeyPressed(lastmode) lastmode = 'default' end, idle = animations1, walk = animations1, jump = animations0, fall = animations0, }) t.addmode('z', { modeEntered = function() onKeyPressed('z') lastmode = 'z' end, idle = animations1, walk = animations1, jump = animations0, fall = animations0, }) t.addmode('x', { modeEntered = function() onKeyPressed('x') lastmode = 'x' end, idle = animations1, walk = animations1, jump = animations0, fall = animations0, }) t.addmode('f', { modeEntered = function() onKeyPressed('f') lastmode = 'f' end, idle = animations1, walk = animations1, jump = animations0, fall = animations0, }) end) lbl('(needs specific accessories)') btn('goofy trolus (goofy)', function() local t = reanimate() if type(t) ~= 'table' then return end local velbycfrvec = t.velbycfrvec local raycastlegs = t.raycastlegs local getJoint = t.getJoint local RootJoint = getJoint('RootJoint') local RightShoulder = getJoint('Right Shoulder') local LeftShoulder = getJoint('Left Shoulder') local RightHip = getJoint('Right Hip') local LeftHip = getJoint('Left Hip') local Neck = getJoint('Neck') t.addmode('default', { idle = function() local rY, lY = raycastlegs() RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 0.5, 0), angles( 0.6981317007977318 * sin((sine + 0.5) * 4), 1.5707963267948966 - 0.3490658503988659 * sin(sine * 4), 0 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.5, 0), angles( 0.6981317007977318 * sin((sine + 0.5) * 4), -1.5707963267948966 + 0.3490658503988659 * sin(sine * 4), 0 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1 + rY, 0), angles( 1.5707963267948966 - 1.0471975511965976 * sin(sine * 4), 1.6580627893946132, -1.5707963267948966 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, -0.2 + 0.2 * sin((sine + 1) * 8), 0), angles( -1.5707963267948966 + 0.6981317007977318 * sin(sine * 4), 0, 3.141592653589793 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 + lY, 0), angles( 1.5707963267948966 - 1.0471975511965976 * sin(sine * 4), -1.6580627893946132, 1.5707963267948966 ) ), deltaTime ) Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 - 0.8726646259971648 * sin((sine + 0.25) * 4), 0, 3.141592653589793 ) ), deltaTime ) --RightArm,1,0,0,4,0,40,0.5,4,0.5,0,0,4,90,-20,0,4,0,0,0,4,0,0,0,4,LeftArm,-1,0,0,4,-0,40,0.5,4,0.5,0,0,4,-90,20,0,4,0,0,0,4,0,0,0,4,RightLeg,1,0,0,4,90,-60,0,4,-1,0,0,4,95,0,0,4,0,0,0,4,-90,0,0,4,Torso,0,0,0,4,-90,40,0,4,-0.2,0.2,1,8,-0,0,0,4,0,0,0,4,180,0,0,4,LeftLeg,-1,0,0,4,90,-60,0,4,-1,0,0,4,-95,0,0,4,0,0,0,4,90,0,0,4,Head,0,0,0,4,-90,-50,0.25,4,1,0,0,4,-0,0,0,4,0,0,0,4,180,0,0,4,CPlusPlusTextbook_Handle,8.658389560878277e-09,0,0,4,0,0,0,4,-0.25,0,0,4,0,0,0,4,-0.0002722442150115967,0,0,4,0,0,0,4 end, walk = function() local fw, rt = velbycfrvec() Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.5235987755982988 * sin((sine + 0.45) * 8), 0, 3.141592653589793 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 0.5, 0), angles( 2.0943951023931953 - 1.7453292519943295 * sin((sine - 0.1) * 4), 1.9198621771937625, -1.5707963267948966 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, 0.25 + 0.5 * sin((sine - 0.125) * 8), 0), angles( -1.5707963267948966 + 0.17453292519943295 * sin(sine * 8), 0, 3.141592653589793 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 - 1 * sin(sine * 4), 0), angles( 1.5707963267948966 - 1.2217304763960306 * sin((sine - 0.15) * 4) * fw, -1.5707963267948966 - 0.6108652381980153 * sin((sine - 0.15) * 4) * rt, 1.5707963267948966 ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1 + 1 * sin(sine * 4), 0), angles( 1.5707963267948966 + 1.2217304763960306 * sin((sine - 0.15) * 4) * fw, 1.5707963267948966 + 0.6108652381980153 * sin((sine - 0.15) * 4) * rt, -1.5707963267948966 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.5, 0), angles( 2.0943951023931953 + 1.7453292519943295 * sin((sine - 0.1) * 4), -1.7453292519943295, 1.5707963267948966 ) ), deltaTime ) --Head,0,0,0,4,-90,30,0.45,8,1,0,0,4,-0,0,0,4,0,0,0,4,180,0,0,4,CPlusPlusTextbook_Handle,8.658389560878277e-09,0,0,4,0,0,0,4,-0.25,0,0,4,0,0,0,4,-0.0002722442150115967,0,0,4,0,0,0,4,RightArm,1,0,0,4,120,-100,-0.1,4,0.5,0,0,4,110,0,0,4,0,0,0,4,-90,0,0,4,Torso,0,0,0,4,-90,10,0,8,0.25,0.5,-0.125,8,-0,0,0,4,0,0,0,4,180,0,0,4,LeftLeg,-1,0,0,4,90,-70,-0.15,4,-1,-1,0,4,-90,-35,-0.15,4,0,0,0,4,90,0,0,4,RightLeg,1,0,0,4,90,70,-0.15,4,-1,1,0,4,90,35,-0.15,4,0,0,0,4,-90,0,0,4,LeftArm,-1,0,0,4,120,100,-0.1,4,0.5,0,0,4,-100,0,0,4,0,0,0,4,90,0,0,4 end, }) end) btn('good cop bad cop animations', function() local t = reanimate() if type(t) ~= 'table' then return end local addmode = t.addmode local getJoint = t.getJoint local RootJoint = getJoint('RootJoint') local RightShoulder = getJoint('Right Shoulder') local LeftShoulder = getJoint('Left Shoulder') local RightHip = getJoint('Right Hip') local LeftHip = getJoint('Left Hip') local Neck = getJoint('Neck') local setWalkSpeed = t.setWalkSpeed local setJumpPower = t.setJumpPower setWalkSpeed(20) setJumpPower(50) local ROOTC0 = angles(-1.5707963267948966, 0, 3.141592653589793) local NECKC0 = cfMul( cf(0, 1, 0), angles(-1.5707963267948966, 0, 3.141592653589793) ) local RIGHTSHOULDERC0 = cfMul( cf(-0.5, 0, 0), angles(0, 1.5707963267948966, 0) ) local LEFTSHOULDERC0 = cfMul( cf(0.5, 0, 0), angles(0, -1.5707963267948966, 0) ) local rad = math.rad --bruh yeah shackluster had a lot of math.rad(0) instead of just 0 --and a lot of multyplying by angles(0, 0, 0) --and he had ArtificialHB --and he had a sine value increasing by 2/3 each frame --and a lot of variables with names saying other things --and he had both C0 and C1 lerps for the same animations local jumplerps = function() local Animation_Speed = 0.45 / deltaTime RootJoint.C1 = Lerp(RootJoint.C1, ROOTC0, 0.2 / Animation_Speed) Neck.C1 = Lerp( Neck.C1, cfMul( cf(0, -0.5, 0), angles(-1.5707963267948966, 0, 3.141592653589793) ), 0.2 / Animation_Speed ) RightHip.C1 = Lerp( RightHip.C1, cfMul(cf(0.5, 1, 0), angles(0, 1.5707963267948966, 0)), 0.7 / Animation_Speed ) LeftHip.C1 = Lerp( LeftHip.C1, cfMul(cf(-0.5, 1, 0), angles(0, -1.5707963267948966, 0)), 0.7 / Animation_Speed ) RootJoint.C0 = Lerp(RootJoint.C0, ROOTC0, 0.2 / Animation_Speed) Neck.C0 = Lerp( Neck.C0, cfMul(NECKC0, angles(-0.3490658503988659, 0, 0)), 0.2 / Animation_Speed ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cfMul( cf(1.5, 0.5, 0), angles(-0.6981317007977318, 0, 0.3490658503988659) ), RIGHTSHOULDERC0 ), 0.2 / Animation_Speed ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cfMul( cf(-1.5, 0.5, 0), angles(-0.6981317007977318, 0, -0.3490658503988659) ), LEFTSHOULDERC0 ), 0.2 / Animation_Speed ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1, -0.3), angles(0, 1.5707963267948966, 0), angles(-0.08726646259971647, 0, -0.3490658503988659) ), 0.2 / Animation_Speed ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1, -0.3), angles(0, -1.5707963267948966, 0), angles(-0.08726646259971647, 0, 0.3490658503988659) ), 0.2 / Animation_Speed ) end local falllerps = function() local Animation_Speed = 0.45 / deltaTime RootJoint.C1 = Lerp(RootJoint.C1, ROOTC0, 0.2 / Animation_Speed) Neck.C1 = Lerp( Neck.C1, cfMul( cf(0, -0.5, 0), angles(-1.5707963267948966, 0, 3.141592653589793) ), 0.2 / Animation_Speed ) RightHip.C1 = Lerp( RightHip.C1, cfMul(cf(0.5, 1, 0), angles(0, 1.5707963267948966, 0)), 0.7 / Animation_Speed ) LeftHip.C1 = Lerp( LeftHip.C1, cfMul(cf(-0.5, 1, 0), angles(0, -1.5707963267948966, 0)), 0.7 / Animation_Speed ) RootJoint.C0 = Lerp(RootJoint.C0, ROOTC0, 0.2 / Animation_Speed) Neck.C0 = Lerp( Neck.C0, cfMul(NECKC0, angles(0.3490658503988659, 0, 0)), 0.2 / Animation_Speed ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cfMul(cf(1.5, 0.5, 0), angles(0, 0, 1.0471975511965976)), RIGHTSHOULDERC0 ), 0.2 / Animation_Speed ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cfMul( cf(-1.5, 0.5, 0), angles(0, 0, -1.0471975511965976) ), LEFTSHOULDERC0 ), 0.2 / Animation_Speed ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cfMul(cf(1, -1, 0), angles(0, 1.5707963267948966, 0)), angles(0, 0, 0.3490658503988659) ), 0.2 / Animation_Speed ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cfMul(cf(-1, -1, 0), angles(0, -1.5707963267948966, 0)), angles(0, 0, 0.17453292519943295) ), 0.2 / Animation_Speed ) end local idleOverwrite = nil addmode('default', { --mode 1 modeLeft = function() --enter mode 0 setWalkSpeed(0) setJumpPower(0) idleOverwrite = function() local sine = sine * 40 local Animation_Speed = 0.45 / deltaTime RootJoint.C1 = Lerp( RootJoint.C1, ROOTC0, 0.2 / Animation_Speed ) Neck.C1 = Lerp( Neck.C1, cfMul( cf(0, -0.5, 0), angles( -1.5707963267948966, 0, 3.141592653589793 ) ), 0.2 / Animation_Speed ) RightHip.C1 = Lerp( RightHip.C1, cfMul( cf(0.5, 1, 0), angles(0, 1.5707963267948966, 0) ), 0.7 / Animation_Speed ) LeftHip.C1 = Lerp( LeftHip.C1, cfMul( cf(-0.5, 1, 0), angles(0, -1.5707963267948966, 0) ), 0.7 / Animation_Speed ) RootJoint.C0 = Lerp( RootJoint.C0, ROOTC0 * cf(0, 0, 0.05 * cos(sine / 12)), 1 / Animation_Speed ) Neck.C0 = Lerp(Neck.C0, NECKC0, 1 / Animation_Speed) RightShoulder.C0 = Lerp( RightShoulder.C0, cf(1.5, 0.5, 0) * angles(0, 0, 0.4363323129985824) * RIGHTSHOULDERC0, 1 / Animation_Speed ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cf(-1.5, 0.5, 0) * angles(0, 0, -0.4363323129985824) * LEFTSHOULDERC0, 1 / Animation_Speed ) RightHip.C0 = Lerp( RightHip.C0, cf(1, -1 - 0.05 * cos(sine / 12), -0.01) * angles(0, 1.4486232791552935, 0), 1 / Animation_Speed ) LeftHip.C0 = Lerp( LeftHip.C0, cf(-1, -1 - 0.05 * cos(sine / 12), -0.01) * angles(0, -1.4486232791552935, 0), 1 / Animation_Speed ) end twait(0.15) idleOverwrite = function() local sine = sine * 40 local Animation_Speed = 0.45 / deltaTime RootJoint.C1 = Lerp( RootJoint.C1, ROOTC0, 0.2 / Animation_Speed ) Neck.C1 = Lerp( Neck.C1, cfMul( cf(0, -0.5, 0), angles( -1.5707963267948966, 0, 3.141592653589793 ) ), 0.2 / Animation_Speed ) RightHip.C1 = Lerp( RightHip.C1, cfMul( cf(0.5, 1, 0), angles(0, 1.5707963267948966, 0) ), 0.7 / Animation_Speed ) LeftHip.C1 = Lerp( LeftHip.C1, cfMul( cf(-0.5, 1, 0), angles(0, -1.5707963267948966, 0) ), 0.7 / Animation_Speed ) RootJoint.C0 = Lerp( RootJoint.C0, ROOTC0 * cf(0, 0, 0.05 * cos(sine / 12)), 1 / Animation_Speed ) Neck.C0 = Lerp( Neck.C0, NECKC0 * angles(0.08726646259971647, 0, 0), 1 / Animation_Speed ) RightShoulder.C0 = Lerp( RightShoulder.C0, cf(1.25, 0.5, -0.5) * angles( 1.7453292519943295, 0, -1.2217304763960306 ) * RIGHTSHOULDERC0, 1 / Animation_Speed ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cf(-1.25, 0.35, -0.35) * angles( 1.2217304763960306, 0, 1.3962634015954636 ) * LEFTSHOULDERC0, 1 / Animation_Speed ) RightHip.C0 = Lerp( RightHip.C0, cf(1, -1 - 0.05 * cos(sine / 12), -0.01) * angles(0, 1.4486232791552935, 0), 1 / Animation_Speed ) LeftHip.C0 = Lerp( LeftHip.C0, cf(-1, -1 - 0.05 * cos(sine / 12), -0.01) * angles(0, -1.4486232791552935, 0), 1 / Animation_Speed ) end twait(0.5) --CreateSound(363808674, Torso, 6, 1, false) idleOverwrite = function() local sine = sine * 40 local Animation_Speed = 0.45 / deltaTime RootJoint.C1 = Lerp( RootJoint.C1, ROOTC0, 0.2 / Animation_Speed ) Neck.C1 = Lerp( Neck.C1, cfMul( cf(0, -0.5, 0), angles( -1.5707963267948966, 0, 3.141592653589793 ) ), 0.2 / Animation_Speed ) RightHip.C1 = Lerp( RightHip.C1, cfMul( cf(0.5, 1, 0), angles(0, 1.5707963267948966, 0) ), 0.7 / Animation_Speed ) LeftHip.C1 = Lerp( LeftHip.C1, cfMul( cf(-0.5, 1, 0), angles(0, -1.5707963267948966, 0) ), 0.7 / Animation_Speed ) RootJoint.C0 = Lerp( RootJoint.C0, ROOTC0 * cf(0, 0, 0.05 * cos(sine / 12)), 1 / Animation_Speed ) Neck.C0 = Lerp( Neck.C0, NECKC0 * angles( 0.08726646259971647, 0.4363323129985824, 0 ), 1 / Animation_Speed ) RightShoulder.C0 = Lerp( RightShoulder.C0, cf(1.25, 0.5, -0.5) * angles( 1.7453292519943295, 0, -0.8726646259971648 ) * RIGHTSHOULDERC0, 1 / Animation_Speed ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cf(-1.25, 0.35, -0.35) * angles( 1.2217304763960306, 0, 1.0471975511965976 ) * LEFTSHOULDERC0, 1 / Animation_Speed ) RightHip.C0 = Lerp( RightHip.C0, cf(1, -1 - 0.05 * cos(sine / 12), -0.01) * angles(0, 1.4486232791552935, 0), 1 / Animation_Speed ) LeftHip.C0 = Lerp( LeftHip.C0, cf(-1, -1 - 0.05 * cos(sine / 12), -0.01) * angles(0, -1.4486232791552935, 0), 1 / Animation_Speed ) end twait(0.3) --CreateSound(363808674, Torso, 6, 1, false) idleOverwrite = function() local sine = sine * 40 local Animation_Speed = 0.45 / deltaTime RootJoint.C1 = Lerp( RootJoint.C1, ROOTC0, 0.2 / Animation_Speed ) Neck.C1 = Lerp( Neck.C1, cfMul( cf(0, -0.5, 0), angles( -1.5707963267948966, 0, 3.141592653589793 ) ), 0.2 / Animation_Speed ) RightHip.C1 = Lerp( RightHip.C1, cfMul( cf(0.5, 1, 0), angles(0, 1.5707963267948966, 0) ), 0.7 / Animation_Speed ) LeftHip.C1 = Lerp( LeftHip.C1, cfMul( cf(-0.5, 1, 0), angles(0, -1.5707963267948966, 0) ), 0.7 / Animation_Speed ) RootJoint.C0 = Lerp( RootJoint.C0, ROOTC0 * cf(0, 0, 0.05 * cos(sine / 12)), 1 / Animation_Speed ) Neck.C0 = Lerp( Neck.C0, NECKC0 * angles( 0.08726646259971647, -0.4363323129985824, 0 ), 1 / Animation_Speed ) RightShoulder.C0 = Lerp( RightShoulder.C0, cf(1.25, 0.5, -0.5) * angles( 1.7453292519943295, 0, -1.5707963267948966 ) * RIGHTSHOULDERC0, 1 / Animation_Speed ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cf(-1.25, 0.35, -0.35) * angles( 1.2217304763960306, 0, 1.5707963267948966 ) * LEFTSHOULDERC0, 1 / Animation_Speed ) RightHip.C0 = Lerp( RightHip.C0, cf(1, -1 - 0.05 * cos(sine / 12), -0.01) * angles(0, 1.4486232791552935, 0), 1 / Animation_Speed ) LeftHip.C0 = Lerp( LeftHip.C0, cf(-1, -1 - 0.05 * cos(sine / 12), -0.01) * angles(0, -1.4486232791552935, 0), 1 / Animation_Speed ) end twait(0.3) idleOverwrite = nil setWalkSpeed(20) setJumpPower(50) end, idle = function() if idleOverwrite then return idleOverwrite() end local Animation_Speed = 0.45 / deltaTime local sine = sine * 40 RootJoint.C1 = Lerp( RootJoint.C1, ROOTC0, 0.2 / Animation_Speed ) Neck.C1 = Lerp( Neck.C1, cfMul( cf(0, -0.5, 0), angles(-1.5707963267948966, 0, 3.141592653589793) ), 0.2 / Animation_Speed ) RightHip.C1 = Lerp( RightHip.C1, cfMul(cf(0.5, 1, 0), angles(0, 1.5707963267948966, 0)), 0.7 / Animation_Speed ) LeftHip.C1 = Lerp( LeftHip.C1, cfMul(cf(-0.5, 1, 0), angles(0, -1.5707963267948966, 0)), 0.7 / Animation_Speed ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( ROOTC0, cf(0.05 * cos(sine / 12), 0, 0.05 * sin(sine / 12)) ), 0.15 / Animation_Speed ) Neck.C0 = Lerp( Neck.C0, cfMul( NECKC0, angles( rad(15 - 2.5 * sin(sine / 12)), 0, -0.4363323129985824 ) ), 1 / Animation_Speed ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cfMul( cf(1.25, 0.5, 0.3), angles( -0.7853981633974483, 0, -0.7853981633974483 ) ), RIGHTSHOULDERC0 ), 1 / Animation_Speed ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cfMul( cf(-1.25, 0.5, 0.3), angles( -0.6981317007977318, 0, 0.7853981633974483 ) ), LEFTSHOULDERC0 ), 1 / Animation_Speed ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cfMul( cf( 1 + 0.05 * cos(sine / 12), -1 - 0.05 * sin(sine / 12), -0.01 ), angles(0, 1.4835298641951802, 0) ), angles(-0.017453292519943295, 0, 0) ), 0.15 / Animation_Speed ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cfMul( cf( -1 + 0.05 * cos(sine / 12), -1 - 0.05 * sin(sine / 12), -0.01 ), angles(0, -1.4835298641951802, 0) ), angles(-0.017453292519943295, 0, 0) ), 0.15 / Animation_Speed ) end, walk = function() local Animation_Speed = 0.45 / deltaTime local sine = sine * 40 RootJoint.C1 = Lerp( RootJoint.C1, cfMul(ROOTC0, cf(0, 0, 0.05 * cos(sine / 2.4))), 2 * 1.25 / Animation_Speed ) Neck.C1 = Lerp( Neck.C1, cfMul( cf(0, -0.5, 0), angles(-1.5707963267948966, 0, 3.141592653589793) ), 0.2 * 1.25 / Animation_Speed ) RightHip.C1 = Lerp( RightHip.C1, cfMul( cfMul( cf( 0.5, 0.875 - 0.125 * sin(sine / 4.8) - 0.15 * cos(sine / 2.4), 0 ), angles(0, 1.5707963267948966, 0) ), angles(0, 0, rad(35 * cos(sine / 4.8))) ), 0.6 / Animation_Speed ) LeftHip.C1 = Lerp( LeftHip.C1, cfMul( cfMul( cf( -0.5, 0.875 + 0.125 * sin(sine / 4.8) - 0.15 * cos(sine / 2.4), 0 ), angles(0, -1.5707963267948966, 0) ), angles(0, 0, rad(35 * cos(sine / 4.8))) ), 0.6 / Animation_Speed ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul(ROOTC0, cf(0, 0, -0.05)), 0.15 / Animation_Speed ) Neck.C0 = Lerp( Neck.C0, cfMul(NECKC0, angles(0.08726646259971647, 0, 0)), 0.15 / Animation_Speed ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cfMul( cf(1.25, 0.5 + 0.05 * sin(sine / 2.4), 0.3), angles( -0.7853981633974483, 0, -0.7853981633974483 ) ), RIGHTSHOULDERC0 ), 1 / Animation_Speed ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cfMul( cf(-1.25, 0.5 + 0.05 * sin(sine / 2.4), 0.3), angles( -0.6981317007977318, 0, 0.7853981633974483 ) ), LEFTSHOULDERC0 ), 1 / Animation_Speed ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cfMul( cf(1, -1, 0), angles(0, 1.3962634015954636, 0) ), angles(0, 0, -0.08726646259971647) ), 2 / Animation_Speed ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cfMul( cf(-1, -1, 0), angles(0, -1.3962634015954636, 0) ), angles(0, 0, 0.08726646259971647) ), 2 / Animation_Speed ) end, jump = jumplerps, fall = falllerps, }) addmode('f', { --mode 0 modeLeft = function() --enter mode 1 setWalkSpeed(0) setJumpPower(0) --CreateSound(147722227, Torso, 4, 1.3, false) idleOverwrite = function() local sine = sine * 40 local Animation_Speed = 0.45 / deltaTime RootJoint.C1 = Lerp( RootJoint.C1, ROOTC0, 0.2 / Animation_Speed ) Neck.C1 = Lerp( Neck.C1, cfMul( cf(0, -0.5, 0), angles( -1.5707963267948966, 0, 3.141592653589793 ) ), 0.2 / Animation_Speed ) RightHip.C1 = Lerp( RightHip.C1, cfMul( cf(0.5, 1, 0), angles(0, 1.5707963267948966, 0) ), 0.7 / Animation_Speed ) LeftHip.C1 = Lerp( LeftHip.C1, cfMul( cf(-0.5, 1, 0), angles(0, -1.5707963267948966, 0) ), 0.7 / Animation_Speed ) RootJoint.C0 = Lerp( RootJoint.C0, ROOTC0 * cf(0, 0, 0.05 * cos(sine / 12)), 1 / Animation_Speed ) Neck.C0 = Lerp( Neck.C0, NECKC0 * angles(0.6108652381980153, 0, 0), 1 / Animation_Speed ) RightShoulder.C0 = Lerp( RightShoulder.C0, cf(1.5, 0.5, 0) * angles(0, 0, 0.4363323129985824) * RIGHTSHOULDERC0, 1 / Animation_Speed ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cf(-1.5, 0.5, 0) * angles(0, 0, -0.4363323129985824) * LEFTSHOULDERC0, 1 / Animation_Speed ) RightHip.C0 = Lerp( RightHip.C0, cf(1, -1 - 0.05 * cos(sine / 12), -0.01) * angles(0, 1.4486232791552935, 0), 1 / Animation_Speed ) LeftHip.C0 = Lerp( LeftHip.C0, cf(-1, -1 - 0.05 * cos(sine / 12), -0.01) * angles(0, -1.4486232791552935, 0), 1 / Animation_Speed ) end twait(0.15) idleOverwrite = nil setWalkSpeed(20) setJumpPower(50) end, idle = function() if idleOverwrite then return idleOverwrite() end local Animation_Speed = 0.45 / deltaTime local sine = sine * 40 RootJoint.C1 = Lerp( RootJoint.C1, ROOTC0, 0.2 / Animation_Speed ) Neck.C1 = Lerp( Neck.C1, cfMul( cf(0, -0.5, 0), angles(-1.5707963267948966, 0, 3.141592653589793) ), 0.2 / Animation_Speed ) RightHip.C1 = Lerp( RightHip.C1, cfMul(cf(0.5, 1, 0), angles(0, 1.5707963267948966, 0)), 0.7 / Animation_Speed ) LeftHip.C1 = Lerp( LeftHip.C1, cfMul(cf(-0.5, 1, 0), angles(0, -1.5707963267948966, 0)), 0.7 / Animation_Speed ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul(ROOTC0, cf(0, 0, 0.05 * cos(sine / 12))), 1 / Animation_Speed ) Neck.C0 = Lerp( Neck.C0, cfMul( NECKC0, angles( rad(-5 - 2.5 * cos(sine / 12)), 0, 0.4363323129985824 ) ), 1 / Animation_Speed ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cfMul( cf(0.9, 0.5 + 0.05 * sin(sine / 12), -0.5), angles( 1.7453292519943295, 0, -1.2217304763960306 ) ), RIGHTSHOULDERC0 ), 1 / Animation_Speed ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cfMul( cf(-0.9, 0.25 + 0.05 * sin(sine / 12), -0.35), angles( 1.2217304763960306, 0, 1.3962634015954636 ) ), LEFTSHOULDERC0 ), 1 / Animation_Speed ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1 - 0.05 * cos(sine / 12), -0.01), angles(0, 1.3962634015954636, 0) ), 1 / Animation_Speed ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 - 0.05 * cos(sine / 12), -0.01), angles(0, -1.3962634015954636, 0) ), 1 / Animation_Speed ) end, walk = function() local Animation_Speed = 0.45 / deltaTime local sine = sine * 40 RootJoint.C1 = Lerp( RootJoint.C1, cfMul(ROOTC0, cf(0, 0, 0.05 * cos(sine / 2.4))), 2 * 1.25 / Animation_Speed ) Neck.C1 = Lerp( Neck.C1, cfMul( cf(0, -0.5, 0), angles(-1.5707963267948966, 0, 3.141592653589793) ), 0.2 * 1.25 / Animation_Speed ) RightHip.C1 = Lerp( RightHip.C1, cfMul( cfMul( cf( 0.5, 0.875 - 0.125 * sin(sine / 4.8) - 0.15 * cos(sine / 2.4), 0 ), angles(0, 1.5707963267948966, 0) ), angles(0, 0, rad(35 * cos(sine / 4.8))) ), 0.6 / Animation_Speed ) LeftHip.C1 = Lerp( LeftHip.C1, cfMul( cfMul( cf( -0.5, 0.875 + 0.125 * sin(sine / 4.8) - 0.15 * cos(sine / 2.4), 0 ), angles(0, -1.5707963267948966, 0) ), angles(0, 0, rad(35 * cos(sine / 4.8))) ), 0.6 / Animation_Speed ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul(ROOTC0, cf(0, 0, -0.05)), 0.15 / Animation_Speed ) Neck.C0 = Lerp( Neck.C0, cfMul(NECKC0, angles(0.08726646259971647, 0, 0)), 0.15 / Animation_Speed ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cfMul( cf(0.9, 0.5 + 0.05 * sin(sine / 2.4), -0.5), angles( 1.7453292519943295, 0, -1.2217304763960306 ) ), RIGHTSHOULDERC0 ), 1 / Animation_Speed ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cfMul( cf(-0.9, 0.25 + 0.05 * sin(sine / 2.4), -0.35), angles( 1.2217304763960306, 0, 1.3962634015954636 ) ), LEFTSHOULDERC0 ), 1 / Animation_Speed ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cfMul( cf(1, -1, 0), angles(0, 1.3962634015954636, 0) ), angles(0, 0, -0.08726646259971647) ), 2 / Animation_Speed ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cfMul( cf(-1, -1, 0), angles(0, -1.3962634015954636, 0) ), angles(0, 0, 0.08726646259971647) ), 2 / Animation_Speed ) end, jump = jumplerps, fall = falllerps, }) end) lbl('original by shackluster') lbl('the classics never die') btn('metamorphosis vibe', function() local t = reanimate() if type(t) ~= 'table' then return end local addmode = t.addmode local getJoint = t.getJoint local velbycfrvec = t.velbycfrvec local RootJoint = getJoint('RootJoint') local RightShoulder = getJoint('Right Shoulder') local LeftShoulder = getJoint('Left Shoulder') local RightHip = getJoint('Right Hip') local LeftHip = getJoint('Left Hip') local Neck = getJoint('Neck') t.setWalkSpeed(4.5) addmode('default', { idle = function() Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.7453292519943295 - 0.08726646259971647 * sin(sine * 8), -0.12217304763960307 * sin((sine + 0.2) * 4), 2.8797932657906435 + 0.2007128639793479 * sin((sine + 0.15) * 4) ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1 + 0.1 * sin(sine * 4), 0), angles( 1.5707963267948966, 1.5707963267948966 + 0.17453292519943295 * sin(sine * 4), -1.5707963267948966 ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 0.3, 0), angles( 2.530727415391778 + 0.20943951023931956 * sin((sine + 0.4) * 8), 1.5707963267948966 - 0.4363323129985824 * sin((sine + 0.2) * 4), -1.5707963267948966 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.5, 0), angles( 1.0471975511965976, -1.2217304763960306 + 0.08726646259971647 * sin((sine + 0.2) * 4), 1.5707963267948966 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 - 0.1 * sin(sine * 4), 0), angles( 1.5707963267948966, -1.5707963267948966 + 0.17453292519943295 * sin(sine * 4), 1.5707963267948966 ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(-0.1 * sin(sine * 4), 0, 0), angles( -1.5707963267948966, 0.08726646259971647 * sin(sine * 4), 3.141592653589793 ) ), deltaTime ) --MW_animatorProgressSave: Fedora_Handle,8.657480066176504e-09,0,0,4,-6,0,0,4,-0.15052366256713867,0,0,4,0,0,0,4,-0.010221302509307861,0,0,4,0,0,0,4,Bandana_Handle,3.9362930692732334e-09,0,0,4,0,0,0,4,0.3000001907348633,0,0,4,0,0,0,4,-0.6002722978591919,0,0,4,0,0,0,4,Head,0,0,0,4,-100,-5,0,8,1,0,0,4,-0,-7,0.2,4,0,0,0,4,165,11.5,0.15,4,RightLeg,1,0,0,4,90,0,0,4,-1,0.1,0,4,90,10,0,4,0,0,0,4,-90,0,0,4,RightArm,1,0,0,4,145,12,0.4,8,0.3,0,0,4,90,-25,0.2,4,0,0,0,4,-90,0,0,4,LeftArm,-1,0,0,4,60,0,0,4,0.5,0,0,4,-70,5,0.2,4,0,0,0,4,90,0,0,4,LeftLeg,-1,0,0,4,90,0,0,4,-1,-0.1,0,4,-90,10,0,4,0,0,0,4,90,0,0,4,Torso,0,-0.1,0,4,-90,0,0,4,0,0,0,4,-0,5,0,4,0,0,0,4,180,0,0,4 end, walk = function() local fw, rt = velbycfrvec() Neck.C0 = Lerp( Neck.C0, cfMul( cf(0, 1, 0), angles( -1.5707963267948966 + 0.08726646259971647 * sin((sine - 0.1) * 8), 0.3490658503988659 * sin((sine - 0.07) * 4), 3.141592653589793 - 0.4363323129985824 * sin((sine - 0.4) * 4) ) ), deltaTime ) RightHip.C0 = Lerp( RightHip.C0, cfMul( cf(1, -1 + 0.3 * sin((sine + 0.3) * 4), 0), angles( 1.5707963267948966, 1.5707963267948966 + 0.6981317007977318 * sin(sine * 4) * rt, -1.5707963267948966 + 0.6981317007977318 * sin(sine * 4) * fw ) ), deltaTime ) RightShoulder.C0 = Lerp( RightShoulder.C0, cfMul( cf(1, 0.5, 0), angles( -0.5235987755982988 * sin((sine + 0.2) * 4), 1.5707963267948966 - 0.3490658503988659 * sin(sine * 4), 0 ) ), deltaTime ) LeftShoulder.C0 = Lerp( LeftShoulder.C0, cfMul( cf(-1, 0.5, 0), angles( 0.5235987755982988 * sin((sine + 0.2) * 4), -1.5707963267948966 - 0.3490658503988659 * sin(sine * 4), 0 ) ), deltaTime ) LeftHip.C0 = Lerp( LeftHip.C0, cfMul( cf(-1, -1 - 0.3 * sin((sine + 0.3) * 4), 0), angles( 1.5707963267948966, -1.5707963267948966 - 0.6981317007977318 * sin(sine * 4) * rt, 1.5707963267948966 + 0.6981317007977318 * sin(sine * 4) * fw ) ), deltaTime ) RootJoint.C0 = Lerp( RootJoint.C0, cfMul( cf(0, 0.05 + 0.2 * sin((sine + 0.15) * 8), 0), angles(-1.5707963267948966, 0, 3.141592653589793) ), deltaTime ) --MW_animatorProgressSave: Fedora_Handle,8.657480066176504e-09,0,0,4,-6,0,0,4,-0.15052366256713867,0,0,4,0,0,0,4,-0.010221302509307861,0,0,4,0,0,0,4,Bandana_Handle,3.9362930692732334e-09,0,0,4,0,0,0,4,0.3000001907348633,0,0,4,0,0,0,4,-0.6002722978591919,0,0,4,0,0,0,4,Head,0,0,0,4,-90,5,-0.1,8,1,0,0,4,-0,20,-0.07,4,0,0,0,4,180,-25,-0.4,4,RightLeg,1,0,0,4,90,0,0,4,-1,0.3,0.3,4,90,40,0,4,0,0,0,4,-90,40,0,4,RightArm,1,0,0,4,0,-30,0.2,4,0.5,0,0,4,90,-20,0,4,0,0,0,4,0,0,0,4,LeftArm,-1,0,0,4,0,30,0.2,4,0.5,0,0,4,-90,-20,0,4,0,0,0,4,0,0,0,4,LeftLeg,-1,0,0,4,90,0,0,4,-1,-0.3,0.3,4,-90,-40,0,4,0,0,0,4,90,40,0,4,Torso,0,0,0,4,-90,0,0,4,0.05,0.2,0.15,8,-0,0,0,4,0,0,0,4,180,0,0,4 end, }) end) lbl('INTERWORLD - METAMORPHOSIS') lbl('was listening to ^^ and animating') btn('empty reanimate (no animations)', reanimate) insSet( btn('stop current script', stopreanimate), 'TextColor3', c3(0.75, 0, 0) ) lbl('SETTINGS (REANIMATE TO APPLY)') local swtc = function(txt, options, onchanged) local current = 0 local swtcbtn = nil local btnpressed = function() current = current + 1 if current > #options then current = 1 end local option = options[current] insSet(swtcbtn, 'Text', txt .. ': ' .. option.text) onchanged(option.value) end swtcbtn = btn('change', btnpressed) btnpressed() return swtcbtn end swtc('client sided placeholders', { { value = true, text = 'yes' }, { value = false, text = 'no' }, }, function(v) placeholders = v end) swtc('highlight fling targets', { { value = true, text = 'yes' }, { value = false, text = 'no' }, }, function(v) highlightflingtargets = v end) swtc('allow shiftlock', { { value = true, text = 'yes' }, { value = false, text = 'no' }, }, function(v) allowshiftlock = v end) swtc('ctrl click tp', { { value = true, text = 'yes' }, { value = false, text = 'no' }, }, function(v) ctrltp = v end) swtc('click fling', { { value = true, text = 'yes' }, { value = false, text = 'no' }, }, function(v) clickfling = v end) swtc('fling enhancements', { { value = 3, text = 'all' }, { value = 1, text = 'changestate physics' }, { value = 2, text = 'disable sitting' }, { value = 0, text = 'none' }, }, function(v) flingchangestate = v end) swtc('respawn tp', { { value = 3, text = 'hide body' }, { value = 0, text = 'stay at spawn' }, { value = 1, text = 'random tp close' }, { value = 2, text = 'behind char' }, }, function(v) respawntp = v end) local disguiscripts = nil swtc('new gui scripts', { { value = true, text = 'disable' }, { value = false, text = 'keep' }, }, function(v) disguiscripts = v end) Connect(insGet(pg, 'DescendantAdded'), function(v) if c and disguiscripts and IsA(v, 'Script') then --mind Enum.RunContext.Client insSet(v, 'Disabled', true) end end) swtc('new character scripts', { { value = function(v) if IsA(v, 'Script') then --mind Enum.RunContext.Client insSet(v, 'Disabled', true) end end, text = 'disable', }, { value = false, text = 'keep' }, }, function(v) discharscripts = v end) swtc('breakjoints', { { value = 1, text = 'breakjoints+health' }, { value = 2, text = 'health or breakjoints' }, { value = 3, text = 'breakjoints' }, }, function(v) breakjointsmethod = v end) swtc('coregui death effect', { { value = true, text = 'disable' }, { value = false, text = 'dont modify' }, }, function(v) hidedeatheffect = v end) swtc('set simulation radius', { { value = true, text = 'yes' }, { value = false, text = 'no' }, }, function(v) simrad = v end) if replicatesignal then local i11 = i('Frame') local i12 = i('UIListLayout') local i13 = i('Frame') local i14 = i('UIListLayout') insSet(i11, 'Name', rs()) insSet(i11, 'AnchorPoint', v2(0.5, 0.5)) insSet(i11, 'AutomaticSize', e.AutomaticSize.XY) insSet(i11, 'BackgroundTransparency', 1) insSet(i11, 'Position', u2(0.5, 0, 0.5, 0)) insSet(i11, 'Size', u2(1, 0, 0, 0)) insSet(i12, 'Name', rs()) insSet(i12, 'SortOrder', e.SortOrder.LayoutOrder) insSet(i12, 'Parent', i11) insSet(i13, 'Name', rs()) insSet(i13, 'AutomaticSize', e.AutomaticSize.Y) insSet(i13, 'BackgroundTransparency', 1) insSet(i13, 'Size', u2(0.5, 0, 0, 0)) insSet(i14, 'Name', rs()) insSet(i14, 'FillDirection', e.FillDirection.Horizontal) insSet(i14, 'SortOrder', e.SortOrder.LayoutOrder) insSet(i14, 'Parent', i13) local s = i4 i4 = i11 lbl('Use permadeath?') lbl('(detectable with no false positives)') lbl('This executor supports permadeath.') lbl('permadeath preload method') insSet(i13, 'Parent', i11) i4 = i13 btn('No', function() replicatesignal = nil Destroy(i11) lbl('permadeath disabled') insSet(i4, 'Parent', i3) pdloadedtime = nil end) btn('Yes', function() Destroy(i11) lbl('permadeath enabled') insSet(i4, 'Parent', i3) replicatesignal(cdsb) pdloadedtime = osclock() + rst local lastc = nil local hdied = function() if not c then replicatesignal(cdsb) pdloadedtime = osclock() + rst end end Connect(GetPropertyChangedSignal(lp, 'Character'), function() local c = lp.Character if c and c ~= lastc then lastc = c replicatesignal(cdsb) pdloadedtime = osclock() + rst while lastc == c do local h = FindFirstChildOfClass(c, 'Humanoid') if h then Connect(insGet(h, 'Died'), hdied) break end Wait(preanimation) end end end) end) i4 = s insSet(i11, 'Parent', i3) insSet(i4, 'Parent', nil) else lbl('permadeath unsupported') end if not pcall( insSet, i10, 'Parent', FindFirstChildOfClass(game, 'CoreGui') ) then insSet(i7, 'Text', 'PLAYERGUI MODE') insSet(i10, 'Parent', pg) twait(3) insSet(i7, 'Text', guiTheme.guiTitle) end end, }) local Section = OtherTab:AddSection({ Name = '(OXIDE reanimations)', }) OtherTab:AddButton({ Name = 'Oxide Reanimation', Callback = function() _G.HideCharacter = true _G.FlingEnabled = true _G.TransparentRig = true _G.ToolFling = false -- false = holding, true = fling _G.AntiFling = false _G.HatCollide = false _G.CustomHats = false -- Enable or disable custom rig feature (basically old oxide when false) _G.CH = { Torso = { Name = 'Black', TextureId = '14251599953', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(0) ), }, LeftArm = { Name = 'Accessory (LARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, RightArm = { Name = 'Accessory (RARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, LeftLeg = { Name = 'Accessory (LLeg)', TextureId = '17387586304', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, RightLeg = { Name = 'Accessory (rightleg)', TextureId = '17387586304', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, } loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/Oxide/refs/heads/main/Loadstring' ) )() task.wait(0.5) -- we give it time to load properly --Script Goes Here! end, }) OtherTab:AddButton({ Name = 'Oxide Reanimation Permadeath', Callback = function() _G.HideCharacter = true _G.FlingEnabled = true _G.TransparentRig = true _G.ToolFling = false -- false = holding, true = fling _G.AntiFling = false _G.CustomHats = false -- Enable or disable custom rig feature (basically old oxide when false) _G.CH = { Torso = { Name = 'Black', TextureId = '14251599953', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(0) ), }, LeftArm = { Name = 'Accessory (LARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, RightArm = { Name = 'Accessory (RARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, LeftLeg = { Name = 'Accessory (LLeg)', TextureId = '17387586304', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, RightLeg = { Name = 'Accessory (rightleg)', TextureId = '17387586304', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, } loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/Oxide/refs/heads/main/LoadstringPerma' ) )() task.wait(0.5) -- we give it time to load properly --Script Goes Here! end, }) OtherTab:AddButton({ Name = 'Krystal Dance V3', Callback = function() _G.HideCharacter = true _G.FlingEnabled = true _G.TransparentRig = true _G.ToolFling = false -- false = holding, true = fling _G.AntiFling = false _G.HatCollide = false _G.CustomHats = false -- Enable or disable custom rig feature (basically old oxide when false) _G.CH = { Torso = { Name = 'Black', TextureId = '14251599953', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(0) ), }, LeftArm = { Name = 'Accessory (LARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, RightArm = { Name = 'Accessory (RARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, LeftLeg = { Name = 'Accessory (LLeg)', TextureId = '17387586304', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, RightLeg = { Name = 'Accessory (rightleg)', TextureId = '17387586304', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, } loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/Oxide/refs/heads/main/Loadstring' ) )() task.wait(0.5) -- we give it time to load properly loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/OxideReanim/refs/heads/main/KrystalDance3' ) )() end, }) OtherTab:AddButton({ Name = 'Krystal Dance V3 with perma', Callback = function() _G.HideCharacter = true _G.FlingEnabled = true _G.TransparentRig = true _G.ToolFling = false -- false = holding, true = fling _G.AntiFling = false _G.HatCollide = false _G.CustomHats = false -- Enable or disable custom rig feature (basically old oxide when false) _G.CH = { Torso = { Name = 'Black', TextureId = '14251599953', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(0) ), }, LeftArm = { Name = 'Accessory (LARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, RightArm = { Name = 'Accessory (RARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, LeftLeg = { Name = 'Accessory (LLeg)', TextureId = '17387586304', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, RightLeg = { Name = 'Accessory (rightleg)', TextureId = '17387586304', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, } loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/Oxide/refs/heads/main/LoadstringPerma' ) )() task.wait(1) -- we give it time to load properly loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/OxideReanim/refs/heads/main/KrystalDance3' ) )() end, }) OtherTab:AddButton({ Name = 'Oxide Reanimation Permadeath (2X Scale)', Callback = function() loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/Oxide/refs/heads/main/2xperm' ) )() end, }) OtherTab:AddButton({ Name = 'animation replicator (ONLY REPLICATES TO OTHERS)', Callback = function() loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/Oxide/refs/heads/main/animreplicator' ) )() end, }) OtherTab:AddButton({ Name = 'Ragdoll Script!', Callback = function() getgenv().options = { -- SCRIPT OPTIONS RagdollGravity = 196.2, -- change to any number above 0 (196.2 is default grav) } _G.HideCharacter = true _G.FlingEnabled = true _G.TransparentRig = true _G.ToolFling = false -- false = holding, true = fling _G.AntiFling = false _G.CustomHats = false -- Enable or disable custom rig feature (basically old oxide when false) _G.CH = { Torso = { Name = 'Black', TextureId = '14251599953', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(0) ), }, LeftArm = { Name = 'Accessory (LARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, RightArm = { Name = 'Accessory (RARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, LeftLeg = { Name = 'Accessory (LLeg)', TextureId = '17387586304', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, RightLeg = { Name = 'Accessory (rightleg)', TextureId = '17387586304', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, } loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/Oxide/refs/heads/main/genericloadstring' ) )() task.wait(0.5) -- we give it time to load properly loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/OxideReanim/refs/heads/main/ragdoll' ) )() end, }) OtherTab:AddButton({ Name = 'Oxide Hub Rework', Callback = function() _G.HideCharacter = true _G.FlingEnabled = true _G.TransparentRig = true _G.ToolFling = true -- false = holding, true = fling _G.AntiFling = true _G.HatCollide = false _G.CustomHats = false -- Enable or disable custom rig feature (basically old oxide when false) _G.CH = { Torso = { Name = 'Accessory (Guest Torso)', TextureId = '87928159560963', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(0) ), }, LeftArm = { Name = 'Accessory (Guest Left Arm)', TextureId = '72193962238808', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(0) ), }, RightArm = { Name = 'Accessory (Guest Right Arm)', TextureId = '86835481875891', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(0) ), }, LeftLeg = { Name = 'Accessory (LARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, RightLeg = { Name = 'Accessory (RARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, } loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/Oxide/refs/heads/main/OxideHub' ) )() end, }) local Section = OtherTab:AddSection({ Name = 'ONLY VR', }) OtherTab:AddButton({ Name = 'Nitrous VR 3', Callback = function() _G.HeadScale = 3 _G.HeadHat = 'Accessory (BiggestHeadWhite)' loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/NitrousVR/main/Loadstring' ) )() end, }) OtherTab:AddButton({ Name = 'CloVR', Callback = function() _G.LegacyFootPlant = false -- Enables the old clovr footplant where your torso would float _G.CustomHats = false -- Enable or disable custom rig feature (basically old oxide when false) _G.CH = { Torso = { Name = 'Accessory (Guest Torso)', TextureId = '87928159560963', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(0) ), }, LeftArm = { Name = 'Accessory (Guest Left Arm)', TextureId = '72193962238808', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(0) ), }, RightArm = { Name = 'Accessory (Guest Right Arm)', TextureId = '86835481875891', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(0) ), }, LeftLeg = { Name = 'Accessory (LARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, RightLeg = { Name = 'Accessory (RARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, } loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/Oxide/refs/heads/main/clovr' ) )() end, }) OtherTab:AddButton({ Name = 'Permadeath CLoVR', Callback = function() _G.LegacyFootPlant = false _G.CustomHats = false -- Enable or disable custom rig feature (basically old oxide when false) _G.CH = { Torso = { Name = 'Accessory (hemi_torso)', TextureId = '97453109838466', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(0) ), }, RightArm = { Name = 'Accessory (hemi_rightarm)', TextureId = '85395074379680', Orientation = CFrame.Angles( math.rad(90), math.rad(0), math.rad(180) ), }, LeftArm = { Name = 'Accessory (hemi_leftarm)', TextureId = '136217444573116', Orientation = CFrame.Angles( math.rad(90), math.rad(0), math.rad(180) ), }, RightLeg = { Name = 'Accessory (LARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, LeftLeg = { Name = 'Accessory (RARM)', TextureId = '17374768001', Orientation = CFrame.Angles( math.rad(0), math.rad(0), math.rad(90) ), }, } loadstring( game:HttpGet( 'https://raw.githubusercontent.com/Nitro-GT/Oxide/refs/heads/main/clovrpermadeath' ) )() end, }) local OtherTab = Window:MakeTab({ Name = '(Premium Only)', Icon = 'rbxassetid://4483345998', PremiumOnly = false, }) local Section = OtherTab:AddSection({ Name = 'you have been given Premium. have fun!', }) -- Create a section for the music controls local MusicSection = OtherTab:AddSection({ Name = 'SOUNDBOARD', }) -- Create a sound object for the music player local musicPlayer = Instance.new('Sound') musicPlayer.Parent = game.Players.LocalPlayer:WaitForChild('PlayerGui') -- Set the initial music volume local musicVolume = 1 -- Define the music data local musicData = { ['APPLESAUCE'] = '7143872248', ['EPIC'] = '5410085694', ['MISS THE RAGE'] = '9124780123', ['(new) MYSTERIOUS FUNK'] = '139477537381956', } -- Function to play music local function playMusic(name) local id = musicData[name] if id then -- Stop the current music if it's playing if musicPlayer.IsPlaying then musicPlayer:Stop() end -- Set the music ID and volume, then play the music musicPlayer.SoundId = 'rbxassetid://' .. id musicPlayer.Volume = musicVolume musicPlayer:Play() end end -- Function to stop the music local function stopMusic() -- Stop the music if it's playing if musicPlayer.IsPlaying then musicPlayer:Stop() end end -- Create a dropdown for selecting music local musicDropdown = MusicSection:AddDropdown({ Name = 'Select Music', Default = '', Options = { 'APPLESAUCE', 'EPIC', 'MISS THE RAGE', '(new) MYSTERIOUS FUNK', }, Callback = function(option) playMusic(option) end, }) -- Create a dropdown for adjusting the volume local volumeDropdown = MusicSection:AddDropdown({ Name = 'Volume', Default = '1', Options = { '0.5', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10' }, Callback = function(option) musicVolume = tonumber(option) if musicPlayer.SoundId ~= '' then musicPlayer.Volume = musicVolume end end, }) -- Create a button to stop the music MusicSection:AddButton({ Name = 'Stop Music', Callback = stopMusic, }) local Section = OtherTab:AddSection({ Name = '!Crazy Scripts!', }) OtherTab:AddButton({ Name = 'sus GUI', Callback = function() local player = game.Players.LocalPlayer local character = player.Character or player.CharacterAdded:Wait() local isR6 = character:FindFirstChild('Torso') ~= nil -- Notification Function local function showNotification(message) local notificationGui = Instance.new('ScreenGui') notificationGui.Name = 'NotificationGui' notificationGui.Parent = game.CoreGui local notificationFrame = Instance.new('Frame') notificationFrame.Size = UDim2.new(0, 300, 0, 50) notificationFrame.Position = UDim2.new(0.5, -150, 1, -60) notificationFrame.AnchorPoint = Vector2.new(0.5, 1) notificationFrame.BackgroundColor3 = Color3.fromRGB(60, 60, 255) -- Blue color notificationFrame.BorderSizePixel = 0 notificationFrame.Parent = notificationGui local uicorner = Instance.new('UICorner') uicorner.CornerRadius = UDim.new(0, 10) uicorner.Parent = notificationFrame local textLabel = Instance.new('TextLabel') textLabel.Size = UDim2.new(1, -20, 1, 0) textLabel.Position = UDim2.new(0, 10, 0, 0) textLabel.BackgroundTransparency = 1 textLabel.Text = message .. ' | by pyst' textLabel.TextColor3 = Color3.fromRGB(255, 255, 255) textLabel.Font = Enum.Font.SourceSansBold textLabel.TextSize = 18 textLabel.TextXAlignment = Enum.TextXAlignment.Left textLabel.Parent = notificationFrame notificationFrame.BackgroundTransparency = 1 textLabel.TextTransparency = 1 game :GetService('TweenService') :Create( notificationFrame, TweenInfo.new( 0.5, Enum.EasingStyle.Quint, Enum.EasingDirection.Out ), { BackgroundTransparency = 0 } ) :Play() game :GetService('TweenService') :Create( textLabel, TweenInfo.new( 0.5, Enum.EasingStyle.Quint, Enum.EasingDirection.Out ), { TextTransparency = 0 } ) :Play() task.delay(5, function() game :GetService('TweenService') :Create( notificationFrame, TweenInfo.new( 0.5, Enum.EasingStyle.Quint, Enum.EasingDirection.In ), { BackgroundTransparency = 1 } ) :Play() game :GetService('TweenService') :Create( textLabel, TweenInfo.new( 0.5, Enum.EasingStyle.Quint, Enum.EasingDirection.In ), { TextTransparency = 1 } ) :Play() task.delay(0.5, function() notificationGui:Destroy() end) end) end -- Show notification based on rig type if isR6 then showNotification('🌟 R6 detected!') else showNotification('✨ R15 detected!') end -- Create Screen GUI local gui = Instance.new('ScreenGui') gui.Name = 'BangGui' gui.Parent = game.CoreGui -- Main Frame local mainFrame = Instance.new('Frame') mainFrame.Size = UDim2.new(0, 300, 0, 300) mainFrame.AnchorPoint = Vector2.new(0.5, 0.5) mainFrame.Position = UDim2.new(0.5, 0, 0.5, 0) mainFrame.BackgroundColor3 = Color3.fromRGB(80, 80, 255) -- Deep Blue mainFrame.BorderSizePixel = 0 mainFrame.Parent = gui local uicorner = Instance.new('UICorner') uicorner.CornerRadius = UDim.new(0, 20) uicorner.Parent = mainFrame -- Title local title = Instance.new('TextLabel') title.Size = UDim2.new(1, -60, 0, 30) title.Position = UDim2.new(0, 10, 0, 0) title.BackgroundTransparency = 1 title.Text = '🎨 Choose a Script' title.TextColor3 = Color3.fromRGB(255, 255, 255) title.Font = Enum.Font.SourceSansBold title.TextSize = 24 title.TextXAlignment = Enum.TextXAlignment.Left title.Parent = mainFrame -- Close Button local closeButton = Instance.new('TextButton') closeButton.Size = UDim2.new(0, 30, 0, 30) closeButton.Position = UDim2.new(1, -40, 0, 0) closeButton.BackgroundColor3 = Color3.fromRGB(255, 100, 100) -- Red closeButton.Text = 'X' closeButton.Font = Enum.Font.SourceSansBold closeButton.TextSize = 20 closeButton.TextColor3 = Color3.fromRGB(255, 255, 255) closeButton.Parent = mainFrame local closeCorner = Instance.new('UICorner') closeCorner.CornerRadius = UDim.new(0, 10) closeCorner.Parent = closeButton closeButton.MouseButton1Click:Connect(function() gui:Destroy() end) -- Minimize Button local minimizeButton = Instance.new('TextButton') minimizeButton.Size = UDim2.new(0, 30, 0, 30) minimizeButton.Position = UDim2.new(1, -80, 0, 0) minimizeButton.BackgroundColor3 = Color3.fromRGB(255, 200, 0) -- Orange minimizeButton.Text = '-' minimizeButton.Font = Enum.Font.SourceSansBold minimizeButton.TextSize = 20 minimizeButton.TextColor3 = Color3.fromRGB(255, 255, 255) minimizeButton.Parent = mainFrame local minimizeCorner = Instance.new('UICorner') minimizeCorner.CornerRadius = UDim.new(0, 10) minimizeCorner.Parent = minimizeButton local minimized = false minimizeButton.MouseButton1Click:Connect(function() minimized = not minimized if minimized then mainFrame:TweenSize( UDim2.new(0, 300, 0, 30), Enum.EasingDirection.In, Enum.EasingStyle.Quint, 0.5 ) else mainFrame:TweenSize( UDim2.new(0, 300, 0, 300), Enum.EasingDirection.Out, Enum.EasingStyle.Quint, 0.5 ) end end) -- Scrolling Frame local scrollingFrame = Instance.new('ScrollingFrame') scrollingFrame.Size = UDim2.new(1, -20, 1, -50) scrollingFrame.Position = UDim2.new(0, 10, 0, 40) scrollingFrame.BackgroundTransparency = 1 scrollingFrame.CanvasSize = UDim2.new(0, 0, 0, 300) scrollingFrame.ScrollBarThickness = 6 scrollingFrame.Parent = mainFrame local layout = Instance.new('UIListLayout') layout.Padding = UDim.new(0, 10) layout.HorizontalAlignment = Enum.HorizontalAlignment.Center layout.Parent = scrollingFrame -- Buttons Data local buttons = { { name = '🎯 Bang V2', r6 = 'https://pastebin.com/raw/aPSHMV6K', r15 = 'https://pastebin.com/raw/1ePMTt9n', }, { name = '🎉 Get Banged', r6 = 'https://pastebin.com/raw/zHbw7ND1', r15 = 'https://pastebin.com/raw/7hvcjDnW', }, { name = '💥 Suck', r6 = 'https://pastebin.com/raw/SymCfnAW', r15 = 'https://pastebin.com/raw/p8yxRfr4', }, { name = '🔥 Get Suc', r6 = 'https://pastebin.com/raw/FPu4e2Qh', r15 = 'https://pastebin.com/raw/DyPP2tAF', }, { name = '⚡ Jerk', r6 = 'https://pastefy.app/wa3v2Vgm/raw', r15 = 'https://pastefy.app/YZoglOyJ/raw', }, } for _, buttonData in ipairs(buttons) do local button = Instance.new('TextButton') button.Size = UDim2.new(0.8, 0, 0, 40) button.BackgroundColor3 = Color3.fromRGB( math.random(100, 255), math.random(100, 255), math.random(100, 255) ) -- Random colors button.Text = buttonData.name button.Font = Enum.Font.SourceSansBold button.TextSize = 20 button.TextColor3 = Color3.fromRGB(255, 255, 255) button.Parent = scrollingFrame local uicorner = Instance.new('UICorner') uicorner.CornerRadius = UDim.new(0, 10) uicorner.Parent = button button.MouseButton1Click:Connect(function() if isR6 then loadstring(game:HttpGet(buttonData.r6))() else loadstring(game:HttpGet(buttonData.r15))() end end) end end, }) OtherTab:AddButton({ Name = 'fly GUI', Callback = function() loadstring( '\108\111\97\100\115\116\114\105\110\103\40\103\97\109\101\58\72\116\116\112\71\101\116\40\40\39\104\116\116\112\115\58\47\47\103\105\115\116\46\103\105\116\104\117\98\117\115\101\114\99\111\110\116\101\110\116\46\99\111\109\47\109\101\111\122\111\110\101\89\84\47\98\102\48\51\55\100\102\102\57\102\48\97\55\48\48\49\55\51\48\52\100\100\100\54\55\102\100\99\100\51\55\48\47\114\97\119\47\101\49\52\101\55\52\102\52\50\53\98\48\54\48\100\102\53\50\51\51\52\51\99\102\51\48\98\55\56\55\48\55\52\101\98\51\99\53\100\50\47\97\114\99\101\117\115\37\50\53\50\48\120\37\50\53\50\48\102\108\121\37\50\53\50\48\50\37\50\53\50\48\111\98\102\108\117\99\97\116\111\114\39\41\44\116\114\117\101\41\41\40\41\10\10' )() end, }) OtherTab:AddButton({ Name = 'Gravity 5', Callback = function() game.Workspace.Gravity = 5 end, }) OtherTab:AddButton({ Name = 'Gravity 10', Callback = function() game.Workspace.Gravity = 10 end, }) OtherTab:AddButton({ Name = 'Gravity 15', Callback = function() game.Workspace.Gravity = 15 end, }) OtherTab:AddButton({ Name = 'Gravity 20', Callback = function() game.Workspace.Gravity = 20 end, }) OtherTab:AddButton({ Name = 'Gravity 25', Callback = function() game.Workspace.Gravity = 25 end, }) OtherTab:AddButton({ Name = 'Gravity 40', Callback = function() game.Workspace.Gravity = 45 end, }) OtherTab:AddButton({ Name = 'Gravity 50', Callback = function() game.Workspace.Gravity = 50 end, }) local Section = OtherTab:AddSection({ Name = 'console typer', }) OtherTab:AddButton({ Name = 'N- word', Callback = function() print('NIGGA') end, }) OtherTab:AddButton({ Name = 'sex', Callback = function() print('SEX') end, }) OtherTab:AddButton({ Name = 'fuck you', Callback = function() print('FUCK YOU') end, }) OtherTab:AddButton({ Name = 'fuck', Callback = function() print('FUCK') end, }) OtherTab:AddButton({ Name = 'fuck off', Callback = function() print('FUCK OFF') end, }) OtherTab:AddButton({ Name = 'what the fuck', Callback = function() print('WHAT THE FUCK') end, }) OtherTab:AddButton({ Name = 'jerk off', Callback = function() print('JERK OFF') end, }) OtherTab:AddButton({ Name = 'cum', Callback = function() print('CUM') end, }) OtherTab:AddButton({ Name = 'im cumming!!!', Callback = function() print('IM CUMMING!!!') end, }) OtherTab:AddButton({ Name = 'test', Callback = function() print('TEST') end, }) OtherTab:AddButton({ Name = 'secret mesage', Callback = function() print( 'join our discord server (https://discord.gg/jHcEsfEqQa) and subscribe to our channel (https://www.youtube.com/@Franc1xx_Plays)!!!' ) end, }) Tab:AddColorpicker({ Name = 'Colorpicker', Default = Color3.fromRGB(255, 0, 0), Callback = function(Value) print(Value) end, })