radical larry

Run Settings
LanguageLua
Language Version
Run Command
--https://github.com/Mokiros/roblox-FE-compatibility if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end local Player,game,owner = owner,game local RealPlayer = Player do local RealPlayer = RealPlayer script.Parent = RealPlayer.Character --Fake event to make stuff like Mouse.KeyDown work local Disconnect_Function = function(this) this[1].Functions[this[2]] = nil end local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}} local FakeEvent_Metatable = {__index={ Connect = function(this,f) local i = tostring(math.random(0,10000)) while this.Functions[i] do i = tostring(math.random(0,10000)) end this.Functions[i] = f return setmetatable({this,i},Disconnect_Metatable) end }} FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect local function fakeEvent() return setmetatable({Functions={}},FakeEvent_Metatable) end --Creating fake input objects with fake variables local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()} FakeMouse.keyUp = FakeMouse.KeyUp FakeMouse.keyDown = FakeMouse.KeyDown local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()} local CAS = {Actions={},BindAction=function(self,name,fun,touch,...) CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil end} --Merged 2 functions into one by checking amount of arguments CAS.UnbindAction = CAS.BindAction --This function will trigger the events that have been :Connect()'ed local function TriggerEvent(self,ev,...) for _,f in pairs(self[ev].Functions) do f(...) end end FakeMouse.TriggerEvent = TriggerEvent UIS.TriggerEvent = TriggerEvent --Client communication local Event = Instance.new("RemoteEvent") Event.Name = "UserInput_Event" Event.OnServerEvent:Connect(function(plr,io) if plr~=RealPlayer then return end FakeMouse.Target = io.Target FakeMouse.Hit = io.Hit if not io.isMouse then local b = io.UserInputState == Enum.UserInputState.Begin if io.UserInputType == Enum.UserInputType.MouseButton1 then return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up") end if io.UserInputType == Enum.UserInputType.MouseButton2 then return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up") end for _,t in pairs(CAS.Actions) do for _,k in pairs(t.Keys) do if k==io.KeyCode then t.Function(t.Name,io.UserInputState,io) end end end FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower()) UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false) end end) Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event") local Mouse = owner:GetMouse() local UIS = game:GetService("UserInputService") local input = function(io,RobloxHandled) if RobloxHandled then return end --Since InputObject is a client-side instance, we create and pass table instead Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target}) end UIS.InputBegan:Connect(input) UIS.InputEnded:Connect(input) local h,t --Give the server mouse data every second frame, but only if the values changed --If player is not moving their mouse, client won't fire events local HB = game:GetService("RunService").Heartbeat while true do if h~=Mouse.Hit or t~=Mouse.Target then h,t=Mouse.Hit,Mouse.Target Event:FireServer({isMouse=true,Target=t,Hit=h}) end --Wait 2 frames for i=1,2 do HB:Wait() end end]==],script) ----Sandboxed game object that allows the usage of client-side methods and services --Real game object local RealGame = game --Metatable for fake service local FakeService_Metatable = { __index = function(self,k) local s = rawget(self,"_RealService") if s then return typeof(s[k])=="function" and function(_,...)return s[k](s,...)end or s[k] end end, __newindex = function(self,k,v) local s = rawget(self,"_RealService") if s then s[k]=v end end } local function FakeService(t,RealService) t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService return setmetatable(t,FakeService_Metatable) end --Fake game object local FakeGame = { GetService = function(self,s) return rawget(self,s) or RealGame:GetService(s) end, Players = FakeService({ LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player) },"Players"), UserInputService = FakeService(UIS,"UserInputService"), ContextActionService = FakeService(CAS,"ContextActionService"), RunService = FakeService({ _btrs = {}, RenderStepped = RealGame:GetService("RunService").Heartbeat, BindToRenderStep = function(self,name,_,fun) self._btrs[name] = self.Heartbeat:Connect(fun) end, UnbindFromRenderStep = function(self,name) self._btrs[name]:Disconnect() end, },"RunService") } rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer) FakeGame.service = FakeGame.GetService FakeService(FakeGame,game) --Changing owner to fake player object to support owner:GetMouse() game,owner = FakeGame,FakeGame.Players.LocalPlayer end local character = RealPlayer.Character or RealPlayer.CharacterAdded:Wait() local humanoid: Humanoid = character:WaitForChild("Humanoid") local head: Part = character:WaitForChild("Head") local torso: Part = character:WaitForChild("Torso") local mesh: SpecialMesh = head:WaitForChild("Mesh") local breathing = Instance.new("Sound") breathing.SoundId = "rbxassetid://177339878" breathing.Volume = 1 breathing.Looped = true breathing.Parent = head breathing:Play() for _,x in ipairs(character:GetDescendants()) do if x:IsA("Clothing") or x:IsA("Accessory") or x:IsA("Decal") then x:Destroy() end end local shirt = Instance.new("Shirt") shirt.ShirtTemplate = "rbxassetid://188608369" shirt.Parent = character local pants = Instance.new("Pants") pants.PantsTemplate = "rbxassetid://188607890" pants.Parent = character local sg = Instance.new("ShirtGraphic") sg.Graphic = "http://www.roblox.com/asset/?id=47730520" sg.Parent = character mesh.MeshId = "http://www.roblox.com/asset/?id=17392637" mesh.TextureId = "http://www.roblox.com/asset/?id=188606054" mesh.Scale = Vector3.new(1,1,1) local eye1 = Instance.new("Part") eye1.BrickColor = BrickColor.White() eye1.Size = Vector3.new(0.05,0.05,0.05) eye1.CanCollide = false eye1.CanQuery = false eye1.CanTouch = false eye1.Massless = true eye1.Shape = Enum.PartType.Ball eye1.Material = Enum.Material.Neon eye1.Parent = head local eye2 = Instance.new("Part") eye2.BrickColor = BrickColor.White() eye2.Size = Vector3.new(0.05,0.05,0.05) eye2.CanCollide = false eye2.CanQuery = false eye2.CanTouch = false eye2.Massless = true eye2.Shape = Enum.PartType.Ball eye2.Material = Enum.Material.Neon eye2.Parent = head local eyeWeld1 = Instance.new("Weld") eyeWeld1.Parent = head eyeWeld1.Part0 = head eyeWeld1.Part1 = eye1 eyeWeld1.C0 = CFrame.new(-0.25,0.05,-0.61) local eyeWeld2 = Instance.new("Weld") eyeWeld2.Parent = head eyeWeld2.Part0 = head eyeWeld2.Part1 = eye2 eyeWeld2.C0 = CFrame.new(0.23,0.05,-0.61) character.DescendantAdded:Connect(function(x) if x:IsA("Clothing") or x:IsA("Accessory") or x:IsA("Decal") then x:Destroy() end end) NLS([==[ local runService = game:GetService("RunService") local player = game:GetService("Players").LocalPlayer local character = player.Character or player.CharacterAdded:Wait() local humanoid = character:WaitForChild("Humanoid") local head = character:WaitForChild("Head") local torso = character:WaitForChild("Torso") local overlapParams = OverlapParams.new() overlapParams.FilterDescendantsInstances = {character} overlapParams.FilterType = Enum.RaycastFilterType.Exclude runService.Heartbeat:Connect(function() local parts = workspace:GetPartBoundsInRadius(humanoid.RootPart.Position,1.5,overlapParams) for _,part in ipairs(workspace:GetDescendants()) do if part:IsA("BasePart") and not part:IsDescendantOf(character) then if table.find(parts,part) then part.CanCollide = false else part.CanCollide = true end end end end) ]==],character)
Editor Settings
Theme
Key bindings
Full width
Lines