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,Mouse,mouse,UserInputService,ContextActionService = owner | |
| 4 | local RealPlayer = Player | |
| 5 | do print("FE Compatibility code by Mokiros")local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c(),Button2Up=c(),Button2Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;if o.UserInputType==Enum.UserInputType.MouseButton2 then return f:TrigEvent(p and"Button2Down"or"Button2Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return typeof(t[q])=="function"and function(m,...)return t[q](t,...)end or t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return rawget(self,t)or r:GetService(t)end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService"),RunService=v({_btrs={},RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;v(x,game)game,owner=x,x.Players.LocalPlayer end
| |
| 6 | ||
| 7 | --I removed phrases it won't break a data model | |
| 8 | print("HAHAHAHAHAHA DRINK THE GOD DAMN SODA " .. game.Players.LocalPlayer.name .. " YOU SUCK COCK")
| |
| 9 | player = game.Players.LocalPlayer | |
| 10 | chara = player.Character | |
| 11 | debby = game.Debris | |
| 12 | rs = game:GetService("RunService").RenderStepped
| |
| 13 | Mouse = player:GetMouse() | |
| 14 | ||
| 15 | --Outfit-- | |
| 16 | New = function(Object, Parent, Name, Data) | |
| 17 | local Object = Instance.new(Object) | |
| 18 | for Index, Value in pairs(Data or {}) do
| |
| 19 | Object[Index] = Value | |
| 20 | end | |
| 21 | Object.Parent = Parent | |
| 22 | Object.Name = Name | |
| 23 | return Object | |
| 24 | end | |
| 25 | ||
| 26 | Can = New("Part",chara,"Can",{Size = Vector3.new(0.800000012, 1.20000005, 0.800000012),CFrame = CFrame.new(-30.8000011, 1.60000002, -33, 0.707107842, 0, -0.70710814, 0, 1, 0, 0.70710814, 0, 0.707107842),})
| |
| 27 | CanMesh = New("SpecialMesh",Can,"CanMesh",{Scale = Vector3.new(1.20000005, 1.20000005, 1.20000005),MeshId = "http://www.roblox.com/asset/?id=10470609",TextureId = "rbxassetid://1210046942",MeshType = Enum.MeshType.FileMesh,})
| |
| 28 | Weld = New("ManualWeld",Can,"Weld",{Part0 = Can,Part1 = chara["Right Arm"],C0 = CFrame.new(0, 0, 0, 0.707107842, 0, 0.70710814, 0, 1, 0, -0.70710814, 0, 0.707107842),C1 = CFrame.new(-0.300001144, -1, -0.100000024, 1, 0, 0, 0, 0, 1, -0, -1, -0),})
| |
| 29 | ||
| 30 | --Sounds-- | |
| 31 | function LoadSnd(id,loop,vol,pit) | |
| 32 | local snd = New("Sound",chara,"Sound",{SoundId = "rbxassetid://"..id,Looped = loop,Volume = vol,Pitch = pit})
| |
| 33 | return snd | |
| 34 | end | |
| 35 | DrinkSnd = LoadSnd(10722059,true,1,1) | |
| 36 | StartUpSnd = LoadSnd(10721950,false,1,1) | |
| 37 | SwingSnd = LoadSnd(158037267,false,1,1) | |
| 38 | ||
| 39 | function CreateTrailObj(parent,color1,color2,ofsx,ofsz) | |
| 40 | local Att1 = New("Attachment",parent,"Att1",{Position = Vector3.new(ofsx,parent.Size.Y/2,ofsz)})
| |
| 41 | local Att2 = New("Attachment",parent,"Att2",{Position = Vector3.new(ofsx,-(parent.Size.Y/2),ofsz)})
| |
| 42 | local TEff = New("Trail",parent,"TrailEff",{Color = ColorSequence.new({ColorSequenceKeypoint.new(0,BrickColor.new(color1).Color),ColorSequenceKeypoint.new(1,BrickColor.new(color2).Color)}),Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,.5),NumberSequenceKeypoint.new(1,1)}),Attachment0 = Att1,Attachment1 = Att2,Enabled = false,Lifetime = .5,MinLength = .001})
| |
| 43 | return TEff | |
| 44 | end | |
| 45 | ||
| 46 | --Clerp Animations-- | |
| 47 | TC = chara.HumanoidRootPart.RootJoint | |
| 48 | HC = chara.Torso.Neck | |
| 49 | RAC = chara.Torso["Right Shoulder"] | |
| 50 | LAC = chara.Torso["Left Shoulder"] | |
| 51 | RLC = chara.Torso["Right Hip"] | |
| 52 | LLC = chara.Torso["Left Hip"] | |
| 53 | TCF = CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0) | |
| 54 | HCF = CFrame.new(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0) | |
| 55 | RACF = CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0) | |
| 56 | LACF = CFrame.new(-1, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0) | |
| 57 | RLCF = CFrame.new(1, -1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0) | |
| 58 | LLCF = CFrame.new(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0) | |
| 59 | RWF = CFrame.new(-1.5, 0, 0) * CFrame.fromEulerAnglesXYZ(0,0,0) | |
| 60 | LWF = CFrame.new(1.5, 0, 0) * CFrame.fromEulerAnglesXYZ(0,0,0) | |
| 61 | RLWF = CFrame.new(-.5, 2, 0) * CFrame.fromEulerAnglesXYZ(0,0,0) | |
| 62 | LLWF = CFrame.new(.5, 2, 0) * CFrame.fromEulerAnglesXYZ(0,0,0) | |
| 63 | RW = Instance.new("Weld",HC.Parent)
| |
| 64 | RW.Part1 = HC.Parent | |
| 65 | RW.Part0 = chara["Right Arm"] | |
| 66 | RW.C0 = RWF | |
| 67 | ||
| 68 | function clerp(a,b,c) | |
| 69 | return a:lerp(b,c) | |
| 70 | end | |
| 71 | ||
| 72 | --TC.C0 = TCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)) | |
| 73 | --HC.C0 = HCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-50)) | |
| 74 | --RW.C0 = (RWF + Vector3.new(1,2,0)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90)) | |
| 75 | --LW.C0 = LWF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(2)) | |
| 76 | ||
| 77 | RW.C0 = RWF | |
| 78 | ||
| 79 | --Idle Clerp-- | |
| 80 | IRWF = (RWF - Vector3.new(-.2,0,-.5)) * CFrame.fromEulerAnglesXYZ(math.rad(-90),math.rad(-20),0) | |
| 81 | ||
| 82 | function res() | |
| 83 | RW.C0 = IRWF | |
| 84 | end | |
| 85 | res() | |
| 86 | ||
| 87 | --Mouse Functions-- | |
| 88 | function onKeyDown(key) | |
| 89 | if key == "q" then | |
| 90 | warn("Hey " .. game.Players.LocalPlayer.name .. " You can't Switch a texture")
| |
| 91 | end | |
| 92 | end | |
| 93 | del = false | |
| 94 | normalwel = Weld.C0 | |
| 95 | function onButton1Down() | |
| 96 | if del == false then | |
| 97 | del = true | |
| 98 | for i = 0,1,.2 do | |
| 99 | rs:wait() | |
| 100 | RW.C0 = clerp(IRWF,(RWF - Vector3.new(-.3,.1,-.7)) * CFrame.fromEulerAnglesXYZ(math.rad(-110),math.rad(-70),math.rad(20)),i) | |
| 101 | HC.C0 = clerp(HCF,HCF * CFrame.fromEulerAnglesXYZ(math.rad(-10),0,0),i) | |
| 102 | end | |
| 103 | Weld.C0 = CFrame.new(0, 0, 0, -0.122617364, -0.0738587826, 0.989701807, -0.81083709, 0.582491338, -0.0569874756, -0.572283864, -0.809474528, -0.13131094) | |
| 104 | DrinkSnd:Play() | |
| 105 | wait(2) | |
| 106 | DrinkSnd:Stop() | |
| 107 | Weld.C0 = normalwel | |
| 108 | for i = 0,1,.2 do | |
| 109 | rs:wait() | |
| 110 | RW.C0 = clerp(IRWF,(RWF - Vector3.new(-.3,.1,-.7)) * CFrame.fromEulerAnglesXYZ(math.rad(-110),math.rad(-70),math.rad(20)),1-i) | |
| 111 | HC.C0 = clerp(HCF,HCF * CFrame.fromEulerAnglesXYZ(math.rad(-10),0,0),1-i) | |
| 112 | end | |
| 113 | SwingSnd:Play() | |
| 114 | for i = 0,1,.25 do | |
| 115 | rs:wait() | |
| 116 | RW.C0 = clerp(IRWF,(RWF - Vector3.new(0,-1,0)) * CFrame.fromEulerAnglesXYZ(math.rad(-190),0,0),i) | |
| 117 | end | |
| 118 | -- input | |
| 119 | function GetRecursiveChildren(Part, Children) | |
| 120 | for _, Part in pairs(Part:GetChildren()) do | |
| 121 | pcall(function() | |
| 122 | table.insert(Children, Part) | |
| 123 | GetRecursiveChildren(Part, Children) | |
| 124 | end) | |
| 125 | end | |
| 126 | return Children | |
| 127 | end | |
| 128 | ||
| 129 | ||
| 130 | ||
| 131 | ||
| 132 | ||
| 133 | Textures = {
| |
| 134 | "http://www.roblox.com/Asset/?id=408809895", | |
| 135 | "http://www.roblox.com/Asset/?id=898385177", | |
| 136 | "http://www.roblox.com/Asset/?id=15635484", | |
| 137 | "http://www.roblox.com/Asset/?id=55589461", | |
| 138 | "http://www.roblox.com/Asset/?id=286476639", | |
| 139 | "http://www.roblox.com/Asset/?id=126744729", | |
| 140 | "http://www.roblox.com/Asset/?id=534888816", | |
| 141 | "http://www.roblox.com/Asset/?id=605031999", | |
| 142 | "http://www.roblox.com/Asset/?id=448221417", | |
| 143 | "http://www.roblox.com/Asset/?id=448221417" | |
| 144 | } | |
| 145 | ||
| 146 | ||
| 147 | Instance.new("Sky", game:GetService("Lighting")).CelestialBodiesShown = false
| |
| 148 | ||
| 149 | ||
| 150 | ||
| 151 | while true do | |
| 152 | for _, Part in pairs(GetRecursiveChildren(game, {})) do
| |
| 153 | pcall(function() | |
| 154 | if not Part:IsA("Player")then
| |
| 155 | pcall(function() Part.Image = Textures[math.random(1, #Textures)] end) | |
| 156 | pcall(function() Part.TextureId = Textures[math.random(1, #Textures)] end) | |
| 157 | pcall(function() Part.Texture = Textures[math.random(1, #Textures)] end) | |
| 158 | pcall(function() Part.ShirtTemplate = Textures[math.random(1, #Textures)] end) | |
| 159 | pcall(function() Part.PantsTemplate = Textures[math.random(1, #Textures)] end) | |
| 160 | pcall(function() Part.Graphic = Textures[math.random(1, #Textures)] end) | |
| 161 | pcall(function() Part.Color = Color3.new(math.random(), math.random(), math.random()) end) | |
| 162 | pcall(function() Part.Color3 = Color3.new(math.random(), math.random(), math.random()) end) | |
| 163 | pcall(function() | |
| 164 | Part.SkyboxUp = Textures[math.random(1, #Textures)] | |
| 165 | Part.SkyboxDn = Textures[math.random(1, #Textures)] | |
| 166 | Part.SkyboxLf = Textures[math.random(1, #Textures)] | |
| 167 | Part.SkyboxRt = Textures[math.random(1, #Textures)] | |
| 168 | Part.SkyboxFt = Textures[math.random(1, #Textures)] | |
| 169 | Part.SkyboxBk = Textures[math.random(1, #Textures)] | |
| 170 | end) | |
| 171 | pcall(function() | |
| 172 | Part.TextColor3 = Color3.new(math.random(), math.random(), math.random()) | |
| 173 | Part.BackgroundColor3 = Color3.new(math.random(), math.random(), math.random()) | |
| 174 | Part.BorderColor3 = Color3.new(math.random(), math.random(), math.random()) | |
| 175 | end) | |
| 176 | pcall(function() | |
| 177 | Part.Pitch = math.random() * 5 | |
| 178 | Part.Volume = 1 | |
| 179 | Part.Looped = true | |
| 180 | Part:Play() | |
| 181 | end) | |
| 182 | pcall(function() | |
| 183 | if math.random(1, 5) == 1 then Part.Anchored = false end | |
| 184 | if Part.Anchored == false then | |
| 185 | Part.Velocity = Vector3.new(math.random(-10, 10), math.random(0, 50), math.random(-10, 10)) | |
| 186 | Part.RotVelocity = Vector3.new(math.random(-100, 100), math.random(-100, 100), math.random(-100, 100)) | |
| 187 | end | |
| 188 | Part.Locked = false | |
| 189 | Part.BrickColor = BrickColor.random() | |
| 190 | Part.TopSurface = "Motor" | |
| 191 | Part.BottomSurface = "Motor" | |
| 192 | Part.FrontSurface = "Motor" | |
| 193 | Part.BackSurface = "Motor" | |
| 194 | Part.LeftSurface = "Motor" | |
| 195 | Part.RightSurface = "Motor" | |
| 196 | Part:BreakJoints() | |
| 197 | end) | |
| 198 | end | |
| 199 | end) | |
| 200 | if math.random(1, 50) == 1 then wait() end | |
| 201 | end | |
| 202 | end | |
| 203 | s.Parent = game.workspace | |
| 204 | end | |
| 205 | end | |
| 206 | ||
| 207 | --Mouse Activation-- | |
| 208 | if Mouse then | |
| 209 | Mouse.KeyDown:connect(onKeyDown) | |
| 210 | Mouse.Button1Down:connect(onButton1Down) | |
| 211 | end |