Josemmoya

Untitled

Jul 13th, 2020
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.55 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,Mouse,mouse,UserInputService,ContextActionService = owner
  3. do
  4. print("FE Compatibility code by Mokiros")
  5. script.Parent = Player.Character
  6.  
  7. --RemoteEvent for communicating
  8. local Event = Instance.new("RemoteEvent")
  9. Event.Name = "UserInput_Event"
  10.  
  11. --Fake event to make stuff like Mouse.KeyDown work
  12. local function fakeEvent()
  13. local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  14. t.connect = t.Connect
  15. return t
  16. end
  17.  
  18. --Creating fake input objects with fake variables
  19. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  20. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  21. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  22. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  23. end}
  24. --Merged 2 functions into one by checking amount of arguments
  25. CAS.UnbindAction = CAS.BindAction
  26.  
  27. --This function will trigger the events that have been :Connect()'ed
  28. local function te(self,ev,...)
  29. local t = m[ev]
  30. if t and t._fakeEvent and t.Function then
  31. t.Function(...)
  32. end
  33. end
  34. m.TrigEvent = te
  35. UIS.TrigEvent = te
  36.  
  37. Event.OnServerEvent:Connect(function(plr,io)
  38. if plr~=Player then return end
  39. if io.isMouse then
  40. m.Target = io.Target
  41. m.Hit = io.Hit
  42. else
  43. local b = io.UserInputState == Enum.UserInputState.Begin
  44. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  45. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  46. end
  47. for _,t in pairs(CAS.Actions) do
  48. for _,k in pairs(t.Keys) do
  49. if k==io.KeyCode then
  50. t.Function(t.Name,io.UserInputState,io)
  51. end
  52. end
  53. end
  54. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  55. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  56. end
  57. end)
  58. Event.Parent = NLS([==[
  59. local Player = game:GetService("Players").xavivb01065
  60. local Event = script:WaitForChild("UserInput_Event")
  61.  
  62. local UIS = game:GetService("UserInputService")
  63. local input = function(io,a)
  64. if a then return end
  65. --Since InputObject is a client-side instance, we create and pass table instead
  66. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  67. end
  68. UIS.InputBegan:Connect(input)
  69. UIS.InputEnded:Connect(input)
  70.  
  71. local Mouse = Player:GetMouse()
  72. local h,t
  73. --Give the server mouse data 30 times every second, but only if the values changed
  74. --If player is not moving their mouse, client won't fire events
  75. while wait(1/30) do
  76. if h~=Mouse.Hit or t~=Mouse.Target then
  77. h,t=Mouse.Hit,Mouse.Target
  78. Event:FireServer({isMouse=true,Target=t,Hit=h})
  79. end
  80. end]==],Player.Character)
  81. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  82. end
  83. --[[
  84. Hi!
  85. If you open the output while this is running
  86. You'll notice It says "swait" Or something like that is broken.
  87. It's best to just ignore it, as it does nothing to the chat itself, just it won't remove the ending, when it fades away.
  88. The Command is chatfunc("Put what you want here")
  89. Enjoy! :D
  90. --]]
  91.  
  92. --Starting--
  93. local p = owner
  94. local char = p.Character
  95. --Do not edit or delete this.--
  96.  
  97. --Chat--
  98.  
  99. function chatfunc(text)
  100. local chat = coroutine.wrap(function()
  101. if char:FindFirstChild("TalkingBillBoard")~= nil then
  102. char:FindFirstChild("TalkingBillBoard"):destroy()
  103. end
  104. local naeeym2 = Instance.new("BillboardGui",char)
  105. naeeym2.Size = UDim2.new(0,100,0,40)
  106. naeeym2.StudsOffset = Vector3.new(0,3,0)
  107. naeeym2.Adornee = char.Head
  108. naeeym2.Name = "TalkingBillBoard"
  109. local tecks2 = Instance.new("TextLabel",naeeym2)
  110. tecks2.BackgroundTransparency = 1
  111. tecks2.BorderSizePixel = 0
  112. tecks2.Text = ""
  113. tecks2.Font = "Fantasy"
  114. tecks2.TextSize = 30
  115. tecks2.TextStrokeTransparency = 0
  116. tecks2.TextColor3 = Color3.new(.6,0,0)
  117. tecks2.TextStrokeColor3 = Color3.new(0,0,0)
  118. tecks2.Size = UDim2.new(1,0,0.5,0)
  119. local tecks3 = Instance.new("TextLabel",naeeym2)
  120. tecks3.BackgroundTransparency = 1
  121. tecks3.BorderSizePixel = 0
  122. tecks3.Text = ""
  123. tecks3.Font = "Fantasy"
  124. tecks3.TextSize = 30
  125. tecks3.TextStrokeTransparency = 0
  126. tecks3.TextColor3 = Color3.new(0,0,0)
  127. tecks3.TextStrokeColor3 = Color3.new(1,1,1)
  128. tecks3.Size = UDim2.new(1,0,0.5,0)
  129. for i = 1,string.len(text),1 do
  130. tecks2.Text = string.sub(text,1,i)
  131. tecks3.Text = string.sub(text,1,i)
  132. wait(0.01)
  133. end
  134. wait(2)
  135. for i = 1, 50 do
  136. --lets wait for the s together ;)
  137. tecks2.Position = tecks2.Position - UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))
  138. tecks2.Rotation = tecks2.Rotation - .8
  139. tecks2.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
  140. tecks2.TextTransparency = tecks2.TextTransparency + .04
  141. tecks3.Position = tecks2.Position - UDim2.new(math.random(-.4,.4),math.random(-5,5),.05,math.random(-5,5))
  142. tecks3.Rotation = tecks2.Rotation + .8
  143. tecks3.TextStrokeTransparency = tecks2.TextStrokeTransparency +.04
  144. tecks3.TextTransparency = tecks2.TextTransparency + .04
  145. end
  146. naeeym2:Destroy()
  147. end)
  148. chat()
  149. end
  150. function onChatted(msg)
  151. chatfunc(msg)
  152. end
  153. p.Chatted:connect(onChatted)
  154.  
  155. --End chat--
Add Comment
Please, Sign In to add comment