Advertisement
lafur

Untitled

Sep 9th, 2018
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.67 KB | None | 0 0
  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 lp = owner
  6. rl = "rbxassetid://138084889"
  7. sh = "rbxassetid://131070686"
  8. na = "rbxassetid://132464034"
  9. gun = Instance.new("Tool")
  10. gun.Name = "Russian Roulette"
  11. gun.GripPos = Vector3.new(0,0,1)
  12. handle = Instance.new("Part",gun)
  13. handle.Size = Vector3.new(0.675, 1.213, 2.123)
  14. handle.Name = "Handle"
  15. handle.BrickColor = BrickColor.Black()
  16. mesh = Instance.new("FileMesh",handle)
  17. mesh.MeshId = "rbxassetid://435705367"
  18. mesh.Scale = Vector3.new(0.675/10, 1.213/10, 2.123/10)
  19. gun.Parent = lp.Backpack
  20. rs = Instance.new("Sound",handle)
  21. rs.SoundId = rl
  22. ss = Instance.new("Sound",handle)
  23. ss.SoundId = sh
  24. ss.Volume = 1.5
  25. ns = Instance.new("Sound",handle)
  26. ns.SoundId = na
  27. debounce = false
  28. gun.Activated:connect(function()
  29. if debounce == false then
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47. debounce = true
  48. gun.GripRight = Vector3.new(-1,0,0)
  49. gun.GripPos = Vector3.new(-1.5,-0.5,0.5)
  50. rs:Play()
  51. repeat
  52. wait(0.01)
  53. until rs.IsLoaded and rs.IsPlaying
  54. repeat
  55. wait(0.01)
  56. until rs.IsPlaying == false
  57. chance = math.random(1,4)
  58. if chance == 4 then
  59. ss:Play()
  60. lp.Character.Head:BreakJoints()
  61. for i=1, 15 do
  62. b = Instance.new("Part",workspace)
  63. b.Size = Vector3.new(1,0.1,1)
  64. b.CFrame = lp.Character.Head.CFrame + Vector3.new(math.random(-1,1),math.random(-1,1),math.random(-1,1))
  65. b.BrickColor = BrickColor.Red()
  66. end
  67. lp.Character.Head.CFrame = lp.Character.Head.CFrame + Vector3.new(0,1,0)
  68. else
  69. ns:Play()
  70. wait(1.5)
  71. gun.GripRight = Vector3.new(0,0,0)
  72. gun.GripPos = Vector3.new(0,0,1)
  73. debounce = false
  74. end
  75. end
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement