Advertisement
Guest User

eaturhair

a guest
Jul 17th, 2019
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.40 KB | None | 0 0
  1. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  2. local Player = owner
  3. local Mouse,mouse,UserInputService,ContextActionService
  4. do
  5. script.Parent = Player.Character
  6. local CAS = {Actions={}}
  7. local Event = Instance.new("RemoteEvent")
  8. Event.Name = "UserInput_Event"
  9. Event.Parent = Player.Character
  10. local fakeEvent = function()
  11. local t = {_fakeEvent=true}
  12. t.Connect = function(self,f)self.Function=f end
  13. t.connect = t.Connect
  14. return t
  15. end
  16. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  17. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  18. function CAS:BindAction(name,fun,touch,...)
  19. CAS.Actions[name] = {Name=name,Function=fun,Keys={...}}
  20. end
  21. function CAS:UnbindAction(name)
  22. CAS.Actions[name] = nil
  23. end
  24. local function te(self,ev,...)
  25. local t = m[ev]
  26. if t and t._fakeEvent and t.Function then
  27. t.Function(...)
  28. end
  29. end
  30. m.TrigEvent = te
  31. UIS.TrigEvent = te
  32. Event.OnServerEvent:Connect(function(plr,io)
  33. if plr~=Player then return end
  34. if io.isMouse then
  35. m.Target = io.Target
  36. m.Hit = io.Hit
  37. elseif io.UserInputType == Enum.UserInputType.MouseButton1 then
  38. if io.UserInputState == Enum.UserInputState.Begin then
  39. m:TrigEvent("Button1Down")
  40. else
  41. m:TrigEvent("Button1Up")
  42. end
  43. else
  44. for n,t in pairs(CAS.Actions) do
  45. for _,k in pairs(t.Keys) do
  46. if k==io.KeyCode then
  47. t.Function(t.Name,io.UserInputState,io)
  48. end
  49. end
  50. end
  51. if io.UserInputState == Enum.UserInputState.Begin then
  52. m:TrigEvent("KeyDown",io.KeyCode.Name:lower())
  53. UIS:TrigEvent("InputBegan",io,false)
  54. else
  55. m:TrigEvent("KeyUp",io.KeyCode.Name:lower())
  56. UIS:TrigEvent("InputEnded",io,false)
  57. end
  58. end
  59. end)
  60. NLS([==[
  61. local Player = game:GetService("Players").LocalPlayer
  62.  
  63. local Char = Player.Character
  64. local Event = Char:WaitForChild("UserInput_Event")
  65.  
  66. local UIS = game:GetService("UserInputService")
  67.  
  68. local input = function(io,a)
  69. if a then return end
  70. local io = {KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState}
  71. Event:FireServer(io)
  72. end
  73. UIS.InputBegan:Connect(input)
  74. UIS.InputEnded:Connect(input)
  75. local Changed = false
  76. local Mouse = Player:GetMouse()
  77. local h,t = Mouse.Hit,Mouse.Target
  78. while wait(1/30) do
  79. if h~=Mouse.Hit or t~=Mouse.Target then
  80. Event:FireServer({isMouse=true,Target=Mouse.Target,Hit=Mouse.Hit})
  81. h,t=Mouse.Hit,Mouse.Target
  82. end
  83. end
  84. ]==],Player.Character)
  85. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  86. end
  87. local p = owner
  88. local c = p.Character
  89. local la = c["Left Arm"]
  90. local h = c.Head
  91. local t = c.Torso
  92. h.face:Destroy()
  93. h.Transparency = 1
  94. la.Transparency = 1
  95. c.Animate:Destroy()
  96.  
  97. function onTouched(part)
  98. part.Parent = nil
  99. end
  100.  
  101. connection = t.Touched:connect(onTouched)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement