SHOW:
|
|
- or go back to the newest paste.
| 1 | --https://github.com/Mokiros/roblox-FE-compatibility | |
| 2 | if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
| |
| 3 | local Player,game,owner = owner,game | |
| 4 | local RealPlayer = Player | |
| 5 | do print("FE Compatibility code V2 by Mokiros")local RealPlayer=RealPlayer;script.Parent=RealPlayer.Character;local a=function(b)b[1].f[b[2]]=nil end;local c={__index={disconnect=a,Disconnect=a}}local d={__index={Connect=function(b,e)local f=tostring(math.random(0,10000))while b.f[f]do f=tostring(math.random(0,10000))end;b.f[f]=e;return setmetatable({b,f},c)end}}d.__index.connect=d.__index.Connect;local function g()return setmetatable({f={}},d)end;local h={Hit=CFrame.new(),KeyUp=g(),KeyDown=g(),Button1Up=g(),Button1Down=g(),Button2Up=g(),Button2Down=g()}h.keyUp=h.KeyUp;h.keyDown=h.KeyDown;local i={InputBegan=g(),InputEnded=g()}local CAS={Actions={},BindAction=function(self,j,k,l,...)CAS.Actions[j]=k and{Name=j,Function=k,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function m(self,n,...)for o,e in pairs(self[n].f)do e(...)end end;h.T=m;i.T=m;local p=Instance.new("RemoteEvent")p.Name="UserInput_Event"p.OnServerEvent:Connect(function(q,r)if q~=RealPlayer then return end;h.Target=r.e;h.Hit=r.d;if not r.f then local s=r.c==Enum.UserInputState.Begin;if r.b==Enum.UserInputType.MouseButton1 then return h:T(s and"Button1Down"or"Button1Up")end;if r.b==Enum.UserInputType.MouseButton2 then return h:T(s and"Button2Down"or"Button2Up")end;for o,t in pairs(CAS.Actions)do for o,u in pairs(t.Keys)do if u==r.a then t.Function(t.Name,r.c,r)end end end;h:T(s and"KeyDown"or"KeyUp",r.a.Name:lower())i:T(s and"InputBegan"or"InputEnded",r,false)end end)p.Parent=NLS([==[local a=script:WaitForChild("UserInput_Event")local b=owner:GetMouse()local c=game:GetService("UserInputService")local d=function(e,f)if f then return end;a:FireServer({a=e.KeyCode,b=e.UserInputType,c=e.UserInputState,d=b.Hit,e=b.Target})end;c.InputBegan:Connect(d)c.InputEnded:Connect(d)local g,h;local i=game:GetService("RunService").Heartbeat;while true do if g~=b.Hit or h~=b.Target then g,h=b.Hit,b.Target;a:FireServer({f=1,Target=h,d=g})end;for j=1,2 do i:Wait()end end]==],script)local v=game;local w={__index=function(self,u)local x=rawget(self,"_RealService")if x then return typeof(x[u])=="function"and function(o,...)return x[u](x,...)end or x[u]end end,__newindex=function(self,u,y)local x=rawget(self,"_RealService")if x then x[u]=y end end}local function z(t,A)t._RealService=typeof(A)=="string"and v:GetService(A)or A;return setmetatable(t,w)end;local B={GetService=function(self,x)return rawget(self,x)or v:GetService(x)end,Players=z({LocalPlayer=z({GetMouse=function(self)return h end},Player)},"Players"),UserInputService=z(i,"UserInputService"),ContextActionService=z(CAS,"ContextActionService"),RunService=z({_btrs={},RenderStepped=v:GetService("RunService").Heartbeat,BindToRenderStep=function(self,j,o,k)self._btrs[j]=self.Heartbeat:Connect(k)end,UnbindFromRenderStep=function(self,j)self._btrs[j]:Disconnect()end},"RunService")}rawset(B.Players,"localPlayer",B.Players.LocalPlayer)B.service=B.GetService;z(B,game)game,owner=B,B.Players.LocalPlayer end
| |
| 6 | ||
| 7 | -- Double Boost Recreation by Theamazingnater | |
| 8 | plr = game.Players.LocalPlayer | |
| 9 | repeat wait() until plr.Character | |
| 10 | char = plr.Character | |
| 11 | mouse = plr:GetMouse() | |
| 12 | ||
| 13 | ||
| 14 | wait(1) | |
| 15 | ||
| 16 | local neck = Instance.new("Weld",char)
| |
| 17 | neck.Part0 = char.Torso | |
| 18 | neck.Part1 = char.Head | |
| 19 | neck.C0 = CFrame.new(0, 1.5, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
| 20 | local humanroot = Instance.new("Weld",char)
| |
| 21 | humanroot.Name = "HumanoidRoot" | |
| 22 | humanroot.Part0 = char.HumanoidRootPart | |
| 23 | humanroot.Part1 = char.Torso | |
| 24 | local rhandclone = game.Players.LocalPlayer.Character.Torso["Right Shoulder"]:Clone() | |
| 25 | local rhandweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso)
| |
| 26 | rhandweld.Part0 = game.Players.LocalPlayer.Character.Torso | |
| 27 | rhandweld.Part1 = game.Players.LocalPlayer.Character["Right Arm"] | |
| 28 | rhandweld.C0 = CFrame.new(1.5, 0, 0, 1, -1.6395192e-43, 0, -1.6395192e-43, 1, 0, 0, 0, 1) | |
| 29 | local lhandclone = game.Players.LocalPlayer.Character.Torso["Left Shoulder"]:Clone() | |
| 30 | local lhandweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso)
| |
| 31 | lhandweld.Part0 = game.Players.LocalPlayer.Character.Torso | |
| 32 | lhandweld.Part1 = game.Players.LocalPlayer.Character["Left Arm"] | |
| 33 | lhandweld.C0 = CFrame.new(-1.5, 0, 0, 1, -1.6395192e-43, 0, -1.6395192e-43, 1, 0, 0, 0, 1) | |
| 34 | local llegweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso)
| |
| 35 | llegweld.Part0 = game.Players.LocalPlayer.Character.Torso | |
| 36 | llegweld.Part1 = game.Players.LocalPlayer.Character["Left Leg"] | |
| 37 | llegweld.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) * CFrame.new(0,-1,0) | |
| 38 | local rlegclone = game.Players.LocalPlayer.Character.Torso["Right Hip"]:Clone() | |
| 39 | game.Players.LocalPlayer.Character.Torso["Right Hip"]:Remove() | |
| 40 | local rlegweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso)
| |
| 41 | rlegweld.Part0 = game.Players.LocalPlayer.Character.Torso | |
| 42 | rlegweld.Part1 = game.Players.LocalPlayer.Character["Right Leg"] | |
| 43 | rlegweld.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) * CFrame.new(0,-1,0) | |
| 44 | ||
| 45 | ||
| 46 | for i = 0,1 ,0.03 do | |
| 47 | - | game:GetService("RunService").RenderStepped:wait()
|
| 47 | + | |
| 48 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-1.5, 0.0847580433, -0.504649997, 1, 0, 0, 0, 0.826165259, -0.563427925, 0, 0.563427925, 0.826165259),i) | |
| 49 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.5, -1.9787972, -0.643271148, 0, 0, -1, -0.519508898, 0.854465187, 0, 0.854465187, 0.519508898, 0),i) | |
| 50 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.5, 0.0881803036, -0.315132141, 1, 0, 0, 0, 0.840211272, -0.542259157, 0, 0.542259157, 0.840211272),i) | |
| 51 | - | IMAGE.Image = "rbxassetid://39637251" |
| 51 | + | |
| 52 | neck.C0 = neck.C0:lerp(CFrame.new(0, 1.39824653, 0.172113657, 1, 0, 0, 0, 0.860818028, -0.50891304, 0, 0.50891304, 0.860818028),i) | |
| 53 | game:GetService("RunService").Stepped:wait()
| |
| 54 | end | |
| 55 | local SCREENGUI = Instance.new("ScreenGui",plr.PlayerGui)
| |
| 56 | local IMAGE = Instance.new("ImageButton",SCREENGUI)
| |
| 57 | - | SpinDashCharge.SoundId = "rbxassetid://159335846" |
| 57 | + | IMAGE.Image = "rbxassetid://3238698672" |
| 58 | IMAGE.Size = UDim2.new(0.228, 0,0.154, 0) | |
| 59 | IMAGE.Position = UDim2.new(0.368, 0,0.534, 0) | |
| 60 | - | Boost.SoundId = "rbxassetid://1192337951" |
| 60 | + | |
| 61 | - | Boost.Volume = 6 |
| 61 | + | |
| 62 | SpinDashCharge = Instance.new("Sound",char)
| |
| 63 | SpinDashCharge.SoundId = "rbxassetid://202427593" | |
| 64 | SpinDashCharge.Volume = 4 | |
| 65 | Boost = Instance.new("Sound",char)
| |
| 66 | Boost.SoundId = "rbxassetid://1034903243" | |
| 67 | Boost.Volume = 4 | |
| 68 | Boost.Looped = true | |
| 69 | Boost:Play() | |
| 70 | Charge = 0 | |
| 71 | char.Humanoid.JumpPower = 0 | |
| 72 | Pressed = false | |
| 73 | function ChargeBoost() | |
| 74 | Charge = Charge + 5 | |
| 75 | SpinDashCharge:Play() | |
| 76 | end | |
| 77 | game:GetService("UserInputService").InputBegan:Connect(function(key)
| |
| 78 | if key.UserInputType == Enum.UserInputType.Keyboard then | |
| 79 | if key.KeyCode == Enum.KeyCode.Space and SCREENGUI.Parent ~= nil then | |
| 80 | ChargeBoost() | |
| 81 | Pressed = true | |
| 82 | end | |
| 83 | end | |
| 84 | end) | |
| 85 | wait(5) | |
| 86 | SCREENGUI.Parent = nil | |
| 87 | char.Humanoid.WalkSpeed = 16 + Charge | |
| 88 | char.Humanoid.JumpPower = 50 | |
| 89 | BoostColor = BrickColor.new("Bright blue")
| |
| 90 | if Pressed == false then | |
| 91 | char.Humanoid.WalkSpeed = 80 | |
| 92 | end | |
| 93 | ||
| 94 | local trail = Instance.new("Trail",char)
| |
| 95 | trail.Attachment0 = char.Head.FaceCenterAttachment | |
| 96 | trail.Attachment1 = char.HumanoidRootPart.RootAttachment | |
| 97 | trail.Color = ColorSequence.new(BoostColor.Color) | |
| 98 | trail.MaxLength = 0 | |
| 99 | trail.Lifetime = 0.5 | |
| 100 | ||
| 101 | local pose = "Standing" | |
| 102 | - | hum.Health = 100 |
| 102 | + | |
| 103 | char.Torso.Touched:connect(function(part) | |
| 104 | local hum = part.Parent:FindFirstChildOfClass("Humanoid")
| |
| 105 | if hum and pose == "Walking" then | |
| 106 | hum.Health = 0 | |
| 107 | else | |
| 108 | hum.Health = 190 | |
| 109 | end | |
| 110 | end) | |
| 111 | local chara = workspace:WaitForChild(plr.Name) | |
| 112 | local human = chara.Humanoid | |
| 113 | ||
| 114 | local speed = 0 | |
| 115 | - | update.RenderStepped:connect(function() |
| 115 | + | |
| 116 | human.Running:connect(function(s) | |
| 117 | speed = s | |
| 118 | end) | |
| 119 | cananimate = true | |
| 120 | local update = game:GetService("RunService")
| |
| 121 | update.Stepped:connect(function() | |
| 122 | local ray = Ray.new(chara.Torso.Position, (chara.Torso.Position - Vector3.new(0,9999999,0)).unit * 300) | |
| 123 | local p, position = game.Workspace:FindPartOnRay(ray, char, true, false) | |
| 124 | local dis = (chara.Torso.Position - position).magnitude | |
| 125 | if dis > 3.8 and chara.Torso.Velocity.Y > 0 then | |
| 126 | pose = "Jumping" | |
| 127 | end | |
| 128 | if dis> 3.8 and chara.Torso.Velocity.Y < 0 then | |
| 129 | pose = "Falling" | |
| 130 | end | |
| 131 | if dis < 3.8 and speed == 0 then | |
| 132 | pose = "Standing" | |
| 133 | end | |
| 134 | if dis < 3.8 and speed > 0 then | |
| 135 | pose = "Walking" | |
| 136 | end | |
| 137 | end) | |
| 138 | while true do | |
| 139 | wait() | |
| 140 | if pose == "Standing" and cananimate then | |
| 141 | for i = 0,1 ,0.03 do | |
| 142 | - | game:GetService("RunService").RenderStepped:wait()
|
| 142 | + | |
| 143 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-1.5, 0.0847580433, -0.504649997, 1, 0, 0, 0, 0.826165259, -0.563427925, 0, 0.563427925, 0.826165259),i) | |
| 144 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.5, -1.9787972, -0.643271148, 0, 0, -1, -0.519508898, 0.854465187, 0, 0.854465187, 0.519508898, 0),i) | |
| 145 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.5, 0.0881803036, -0.315132141, 1, 0, 0, 0, 0.840211272, -0.542259157, 0, 0.542259157, 0.840211272),i) | |
| 146 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.5, -1.95825088, -0.666816115, 0, 0, 1, 0.529378891, 0.848385572, 0, -0.848385572, 0.529378891, 0),i) | |
| 147 | neck.C0 = neck.C0:lerp(CFrame.new(0, 1.39824653, 0.172113657, 1, 0, 0, 0, 0.860818028, -0.50891304, 0, 0.50891304, 0.860818028),i) | |
| 148 | game:GetService("RunService").Stepped:wait()
| |
| 149 | end | |
| 150 | end | |
| 151 | - | game:GetService("RunService").RenderStepped:wait()
|
| 151 | + | |
| 152 | for i = 0,1 , 0.3 do | |
| 153 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.49999845, 0.0116631985, 0.62646699, 1.00000012, 3.50177288e-07, -2.71806493e-06, 2.0340085e-06, 0.568486691, 0.822692573, 1.83284283e-06, -0.822692692, 0.568486571),i) | |
| 154 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.50001049, -1.33467507, -1.34572363, 1.00135803e-05, -5.93066216e-06, 1.00000012, 0.95380795, 0.300417304, -7.76350498e-06, -0.300417483, 0.95380795, 8.65757465e-06),i) | |
| 155 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.5, -2.06321907, 0.382456064, 1.89989805e-07, 2.23517418e-07, -1.00000012, 0.324321806, 0.945946872, 2.71946192e-07, 0.945946872, -0.324321896, 1.11758709e-07),i) | |
| 156 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-1.50000167, 0.160489321, 0.409729481, 1.00000012, 3.7252903e-07, -2.71759927e-06, 2.0340085e-06, 0.565193176, 0.824958682, 1.83284283e-06, -0.824958742, 0.565193117),i) | |
| 157 | game:GetService("RunService").Stepped:wait()
| |
| 158 | end | |
| 159 | for i = 0,1 , 0.3 do | |
| 160 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.500000715, -1.4970336, -1.30027473, 2.85357237e-06, -1.40443444e-06, -1.00000012, -0.956139505, 0.292911917, -3.14414501e-06, 0.292912006, 0.956139505, -4.991889e-07),i) | |
| 161 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.499979883, -1.99265182, 0.346698284, 1.71288848e-05, 6.40004873e-06, 1.00000012, -0.34762764, 0.93763268, -4.09781933e-08, -0.937632799, -0.34762764, 1.82762742e-05),i) | |
| 162 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.49999845, 0.0116631985, 0.62646699, 1.00000012, 3.50177288e-07, -2.71806493e-06, 2.0340085e-06, 0.568486691, 0.822692573, 1.83284283e-06, -0.822692692, 0.568486571),i) | |
| 163 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-1.50000167, 0.160489321, 0.409729481, 1.00000012, 3.7252903e-07, -2.71759927e-06, 2.0340085e-06, 0.565193176, 0.824958682, 1.83284283e-06, -0.824958742, 0.565193117),i) | |
| 164 | end | |
| 165 | end | |
| 166 | - | update.RenderStepped:wait() |
| 166 | + | |
| 167 | for i = 0,1 , 0.05 do | |
| 168 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.5, 0.999999285, 0.000862598419, 1, 0, 0, 0, -0.99999845, 0.00172528333, 0, -0.00172528345, -0.99999851),i) | |
| 169 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-1.5, 0.999960184, -0.00631046295, 1, 0, 0, 0, -0.999920309, -0.0126213925, 0, 0.0126213934, -0.999920368),i) | |
| 170 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.5, -1.99999988, 0, 1, 0, 0, 0, 0.999999881, 0, 0, 0, 1),i) | |
| 171 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.5, -1.99999988, 0, 1, 0, 0, 0, 0.999999881, 0, 0, 0, 1),i) | |
| 172 | update.Stepped:wait() | |
| 173 | end | |
| 174 | end | |
| 175 | - | update.RenderStepped:wait() |
| 175 | + | |
| 176 | for i = 0,1 , 0.05 do | |
| 177 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.5, 0.999999285, 0.000862598419, 1, 0, 0, 0, -0.99999845, 0.00172528333, 0, -0.00172528345, -0.99999851),i) | |
| 178 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-1.5, 0.999960184, -0.00631046295, 1, 0, 0, 0, -0.999920309, -0.0126213925, 0, 0.0126213934, -0.999920368),i) | |
| 179 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.5, -1.99999988, 0, 1, 0, 0, 0, 0.999999881, 0, 0, 0, 1),i) | |
| 180 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.5, -1.99999988, 0, 1, 0, 0, 0, 0.999999881, 0, 0, 0, 1),i) | |
| 181 | update.Stepped:wait() | |
| 182 | end | |
| 183 | end | |
| 184 | end |