SHARE
TWEET

Untitled

PR0J3CT11 Aug 22nd, 2019 80 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  2. print(" this script was (NOT) edited by An ignorant / zach ")
  3. warn(" credits goes to Dark eccentric and Mr steal yo bork ")
  4. warn(" im too lazy to edit so here i only convert im tired")
  5. warn(" you can just clone it and edit the color yourself")
  6. warn(" im tired bruh ")
  7.  if game:GetService("RunService"):IsClient()then error("Please run as a server script. Use h/ instead of hl/.")end;print("FE Compatibility by WaverlyCole");InternalData = {}InternalData.RealOwner = owner;InternalData.RealObjs = {};InternalData.SoundLoudness = {};
  8. do
  9.     script.Parent = InternalData.RealOwner.Character
  10.     local Event = Instance.new("RemoteEvent");Event.Name = "UserInput";InternalData.Event = Event
  11.     local function createObject (connections, index)
  12.         local proxy = newproxy (true);local meta = getmetatable (proxy);
  13.         local runbind = function (self, i, ...) connections[i]:Fire (...); end;
  14.         while (#connections > 0) do connections[table.remove(connections, 1)] = Instance.new ('BindableEvent');end;
  15.         meta.__index = function (self, i)
  16.             if (i == 'TriggerEvent') then return runbind end;
  17.             return connections[i] and connections[i].Event or index[i];
  18.         end;
  19.         meta.__newindex = index;meta.__metatable = false;return proxy
  20.     end;
  21.     local Mouse = createObject({"KeyUp","KeyDown","Button1Down","Button1Up"},{["Target"] = nil;["Hit"] = CFrame.new()})
  22.     local UserInputService = createObject({"InputBegan","InputEnded"},{})
  23.     local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
  24.         self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
  25.     end};ContextActionService.UnBindAction = ContextActionService.BindAction
  26.     Event.OnServerEvent:Connect(function(FiredBy,Input)
  27.         if FiredBy ~= InternalData.RealOwner then return end
  28.         if Input.MouseEvent then
  29.             Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
  30.         elseif Input.Sound then
  31.             if InternalData.SoundLoudness[Input.Sound] then InternalData.SoundLoudness[Input.Sound] = Input.Loudness end
  32.         else
  33.             local Begin = Input.UserInputState == Enum.UserInputState.Begin
  34.             if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TriggerEvent(Begin and "Button1Down" or "Button1Up") end
  35.             for _,Action in pairs(ContextActionService.Actions) do
  36.                 for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
  37.             end
  38.             Mouse:TriggerEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower());UserInputService:TriggerEvent(Begin and "InputBegan" or "InputEnded",Input,false)
  39.         end
  40.     end)
  41.     InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
  42.     Event.Parent = NLS([[
  43.         local Player = owner;
  44.         local Sounds = {};
  45.         local Event = script:WaitForChild("UserInput");
  46.         local UserInputService = game:GetService("UserInputService");
  47.         local Mouse = Player:GetMouse();
  48.         local Input = function(Input,gameProcessedEvent)
  49.             if gameProcessedEvent then return end
  50.             Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
  51.         end
  52.         Event.OnClientEvent:connect(function(Args)
  53.             if Args[1] == "NewSound" then table.insert(Sounds,Args[2]) end
  54.         end)
  55.         UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
  56.         local Hit,Target
  57.         while wait(1/30) do
  58.             for x,Sound in pairs(Sounds) do
  59.                 if Sound.Parent then Event:FireServer({["Sound"]=Sound,["Loudness"]=Sound.PlaybackLoudness}) end
  60.             end
  61.             if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
  62.                 Hit = Mouse.Hit;Target = Mouse.Target;
  63.                 Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
  64.             end
  65.         end
  66.     ]],InternalData.RealOwner.Character)
  67. end
  68. InternalData.NewOwner = setmetatable({},{
  69.     __index = function (self,Index)
  70.             local Type = type(InternalData.RealOwner[Index])
  71.             if Type == "function" then
  72.                 if Index:lower() == "getmouse" or Index:lower() == "mouse" then
  73.                 return function (self)return InternalData["Mouse"] end
  74.                 end
  75.             return function (self,...)return InternalData.RealOwner[Index](InternalData.RealOwner,...) end
  76.         elseif Index == "FakePlayer" then
  77.             return true
  78.         end
  79.         return InternalData.RealOwner[Index]
  80.     end;
  81.     __tostring = function(self) return tostring(InternalData.RealOwner) end
  82. })
  83. --LoadLibrary("RbxUtility").Create
  84. rans=string.reverse'!321enirboreheibmoz yb edam'
  85. InternalData.LoadLibrary = LoadLibrary;LoadLibrary = function(Library)
  86.     if Library == "RbxUtility" then
  87.         return setmetatable({},{
  88.             __tostring = function() return "RbxUtility" end;
  89.             __index = function(self, Index)
  90.                 if Index:lower() == "create" then
  91.                     return function(Type)
  92.                         return function(Data)
  93.                             Data = Data or {}
  94.                             local Inst = Instance.new(Type)
  95.                             for x,y in pairs(Data) do
  96.                                 if InternalData.RealObjs[y] then y = InternalData.RealObjs[y] end
  97.                                 if y == owner then y = InternalData.RealOwner end
  98.                                 Inst[x] = y
  99.                             end
  100.                             return Inst
  101.                         end
  102.                     end
  103.                 end
  104.                 return InternalData.LoadLibrary(Library)[Index]
  105.             end
  106.         })
  107.     end
  108.     return InternalData.LoadLibrary(Library)
  109. end
  110. InternalData.RealInstance = Instance;Instance = setmetatable({},{
  111.     __index = function (self,Index)
  112.         if Index:lower() == 'new' then
  113.             return function (Type, Parent)
  114.                 if Parent == owner then Parent = InternalData.RealOwner end
  115.                 if InternalData.RealObjs[Parent] then Parent = InternalData.RealObjs[Parent] end
  116.                 local Real = InternalData.RealInstance.new(Type,Parent)
  117.                 if not Type then return end
  118.                 if Type == "BillboardGui" then
  119.                     local ToReturn = setmetatable({},{
  120.                         __index = function (self,Index)
  121.                             if type(Real[Index]) == "function" then
  122.                                 if Index:lower() == "clone" then
  123.                                     return function (self)
  124.                                         local Real = Real:Clone()
  125.                                         local ToReturn = setmetatable({RealObject = Real},{
  126.                                             __index = function (self,Index)
  127.                                                 if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
  128.                                                 return Real[Index]
  129.                                             end;
  130.                                             __newindex = function (self,Index,Value)
  131.                                                 if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  132.                                                 if Value == owner then Value = InternalData.RealOwner end
  133.                                                 Real[Index] = Value
  134.                                             end;
  135.                                             __tostring = function(self) return tostring(Real) end;
  136.                                         })
  137.                                         InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  138.                                     end
  139.                                 end
  140.                                 return function (self,...) return Real[Index](Real,...)end
  141.                             end
  142.                             return Real[Index]
  143.                         end;
  144.                         __newindex = function (self,Index,Value)
  145.                             if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  146.                             if Value == owner then Value = InternalData.RealOwner end
  147.                             Real[Index] = Value
  148.                         end;
  149.                         __tostring = function(self) return tostring(Real) end;
  150.                     })
  151.                     InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  152.                 elseif Type:lower() == "sound" then
  153.                     Real.Parent = owner.Character;
  154.                     local ToReturn = setmetatable({RealObject = Real},{
  155.                         __index = function (self,Index)
  156.                             if Index:lower() == "playbackloudness" then
  157.                                 return InternalData.SoundLoudness[Real] or 0
  158.                             elseif type(Real[Index]) == "function" then
  159.                                 if Index:lower() == "clone" then
  160.                                     return function (self)
  161.                                         local Real = Real:Clone()
  162.                                         local ToReturn = setmetatable({},{
  163.                                             __index = function (self,Index)
  164.                                                 if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
  165.                                                 return Real[Index]
  166.                                             end;
  167.                                             __newindex = function (self,Index,Value)
  168.                                                 if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  169.                                                 if Value == owner then Value = InternalData.RealOwner end
  170.                                                 Real[Index] = Value
  171.                                             end;
  172.                                             __tostring = function(self) return tostring(Real) end;
  173.                                         })
  174.                                         InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  175.                                     end
  176.                                 end
  177.                                 return function (self,...) return Real[Index](Real,...)end
  178.                             end
  179.                             return Real[Index]
  180.                         end;
  181.                         __newindex = function (self,Index,Value)
  182.                             if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  183.                             if Value == owner then Value = InternalData.RealOwner end
  184.                             Real[Index] = Value
  185.                         end;
  186.                         __tostring = function(self) return tostring(Real) end;
  187.                     })
  188.                     InternalData.RealObjs[ToReturn] = Real;InternalData.SoundLoudness[Real] = 0;repeat wait() until InternalData.Event.Parent InternalData.Event:FireClient(InternalData.RealOwner,{"NewSound",Real}) return ToReturn;
  189.                 else
  190.                     local ToReturn = setmetatable({RealObject = Real},{
  191.                         __index = function (self,Index)
  192.                             if type(Real[Index]) == "function" then
  193.                                 if Index:lower() == "clone" then
  194.                                     return function (self)
  195.                                         local Real = Real:Clone()
  196.                                         local ToReturn = setmetatable({},{
  197.                                             __index = function (self,Index)
  198.                                                 if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end
  199.                                                 return Real[Index]
  200.                                             end;
  201.                                             __newindex = function (self,Index,Value)
  202.                                                 if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  203.                                                 if Value == owner then Value = InternalData.RealOwner end
  204.                                                 Real[Index] = Value
  205.                                             end;
  206.                                             __tostring = function(self) return tostring(Real) end;
  207.                                         })
  208.                                         InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  209.                                     end
  210.                                 end
  211.                                 return function (self,...) return Real[Index](Real,...)end
  212.                             end
  213.                             return Real[Index]
  214.                         end;
  215.                         __newindex = function (self,Index,Value)
  216.                             if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end
  217.                             if Value == owner then Value = InternalData.RealOwner end
  218.                             Real[Index] = Value
  219.                         end;
  220.                         __tostring = function(self) return tostring(Real) end;
  221.                     })
  222.                     InternalData.RealObjs[ToReturn] = Real;return ToReturn;
  223.                 end
  224.             end
  225.         end
  226.         return InternalData.RealInstance[Index]
  227.     end;
  228.     __tostring = function(self) return tostring(InternalData.RealInstance) end;
  229. });
  230. InternalData.RealGame = game;game = setmetatable({},{
  231.     __index = function (self,Index)
  232.         if InternalData.RealGame[Index] then
  233.             local Type = type(InternalData.RealGame[Index])
  234.             if Type == "function" then
  235.                 if Index:lower() == "getservice" or Index:lower() == "service" then
  236.                     return function (self,Service)
  237.                         local FakeServices = {
  238.                             ["players"] = function()
  239.                                 return setmetatable({},{
  240.                                     __index = function (self2,Index2)
  241.                                         local RealService = InternalData.RealGame:GetService(Service)
  242.                                         local Type2 = type(RealService[Index2])
  243.                                         if Type2 == "function" then
  244.                                             return function (self,...) return RealService[Index2](RealService,...)end
  245.                                         else
  246.                                             if Index2:lower() == "localplayer" then return InternalData.NewOwner end
  247.                                             return RealService[Index2]
  248.                                         end
  249.                                     end;
  250.                                     __tostring = function(self) return tostring(InternalData.RealGame:GetService(Service)) end
  251.                                 })
  252.                             end;
  253.                             ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
  254.                             ["userinputservice"] = function() return InternalData["UserInputService"] end;
  255.                             ["debris"] = function()
  256.                                 return setmetatable({},{
  257.                                     __index = function(self2,Index2)
  258.                                         local RealService = InternalData.RealGame:GetService(Service)
  259.                                         local Type2 = type(RealService[Index2])
  260.                                         if Type2 == "function" then
  261.                                             if Index2:lower() == "additem" then
  262.                                                 return function (self,Item,Time)
  263.                                                     if InternalData.RealObjs[Item] then Item = InternalData.RealObjs[Item] end
  264.                                                     return RealService:AddItem(Item,Time)
  265.                                                 end
  266.                                             end
  267.                                             return function (self,...) return RealService[Index2](RealService,...) end
  268.                                         end
  269.                                         return RealService[Index2]
  270.                                     end;
  271.                                     __tostring = function(self) return tostring(InternalData.RealGame:GetService("Debris")) end
  272.                                 })
  273.                             end;
  274.                             ["runservice"] = function()
  275.                                 return setmetatable({},{
  276.                                     __index = function(self2,Index2)
  277.                                         local RealService = InternalData.RealGame:GetService(Service)
  278.                                         local Type2 = type(RealService[Index2])
  279.                                         if Type2 == "function" then
  280.                                             return function (self,...) return RealService[Index2](RealService,...) end
  281.                                         else
  282.                                             local RunServices = {
  283.                                                 ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return InternalData.RealGame:GetService("RunService").Stepped:Connect(Function) end end;
  284.                                                 ["renderstepped"] = function() return RealService["Stepped"] end
  285.                                             }
  286.                                             if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
  287.                                             return RealService[Index2]
  288.                                         end
  289.                                     end;
  290.                                     __tostring = function(self) return tostring(InternalData.RealGame:GetService("RunService")) end
  291.                                 })
  292.                             end
  293.                         }
  294.                         if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
  295.                         return InternalData.RealGame:GetService(Service)
  296.                     end
  297.                 end
  298.                 return function (self,...) return InternalData.RealGame[Index](InternalData.RealGame,...) end
  299.             else
  300.                 if game:GetService(Index) then return game:GetService(Index) end
  301.                 return InternalData.RealGame[Index]
  302.             end
  303.         end
  304.         return nil
  305.     end;
  306.     __tostring = function(self) return tostring(InternalData.game) end
  307. });Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete!")
  308.  
  309. p = game.Players.LocalPlayer
  310. t = Instance.new("Tool")
  311. t.Parent = p.Backpack
  312. t.Name = "Sign lololo"
  313. local handlelol = Instance.new("Part")
  314. handlelol.Name = "Handle"
  315. handlelol.Parent = t
  316. handlelol.formFactor = "Plate"
  317. handlelol.BrickColor = BrickColor.new("Brown")
  318. handlelol.Size = Vector3.new(1, 4.5, .5)
  319. handlelol.TopSurface = "Smooth"
  320. handlelol.BottomSurface = "Smooth"
  321. handlelol.Reflectance = 0
  322. handlelol.Material = "Wood"
  323. local sign = Instance.new("Part")
  324. sign.Name = "Part"
  325. sign.Parent = t
  326. sign.formFactor = "Plate"
  327. sign.BrickColor = BrickColor.new("Brown")
  328. sign.Size = Vector3.new(5, 4, 1)
  329. sign.TopSurface = "Smooth"
  330. sign.BottomSurface = "Smooth"
  331. sign.Reflectance = 0
  332.  
  333. mesh123 = Instance.new("BlockMesh")
  334. mesh123.Parent = sign
  335. mesh123.Scale = Vector3.new(1.1, 1.1, 0.8)
  336.  
  337. w2 = Instance.new("Weld")
  338. w2.Parent = handlelol
  339. w2.Part0 = sign
  340. w2.Part1 = handlelol
  341. w2.C0 = CFrame.fromEulerAnglesXYZ(0, 0, 0) + Vector3.new(0, -2.5, 0)
  342. -----------------------------------------------------------------------
  343. local SurfaceGui = Instance.new("SurfaceGui")
  344. local TextBox = Instance.new("TextBox")
  345. local ScreenGui = Instance.new("ScreenGui")
  346. local TextLabel = Instance.new("TextBox")
  347. ScreenGui.Parent = p.PlayerGui
  348. TextBox.Parent = ScreenGui
  349. TextBox.BackgroundColor3 = Color3.new(0.756863, 0.705882, 1)
  350. TextBox.Position = UDim2.new(0, 74, 0, 374)
  351. TextBox.Size = UDim2.new(0, 176, 0, 50)
  352. TextBox.Font = Enum.Font.Highway
  353. TextBox.FontSize = Enum.FontSize.Size28
  354. TextBox.Text = "Type text you want here"
  355. TextBox.TextSize = 10
  356. TextBox.TextWrapped = true
  357. TextBox.Visible = false
  358. SurfaceGui.Parent = sign
  359. SurfaceGui.Face = Enum.NormalId.Front
  360. TextLabel.Parent = SurfaceGui
  361. TextLabel.BackgroundColor3 = Color3.new(1, 1, 1)
  362. TextLabel.BackgroundTransparency = 1
  363. TextLabel.Size = UDim2.new(0, 800, 0, 600)
  364. TextLabel.Font = Enum.Font.SourceSans
  365. TextLabel.FontSize = Enum.FontSize.Size96
  366. TextLabel.Text = "same"
  367. TextLabel.TextColor3 = Color3.new(0.956863, 0.345098, 0.0588235)
  368. TextLabel.TextSize = 100
  369. TextLabel.TextWrapped = true
  370. t.Equipped:connect(function()
  371.     TextBox.Visible = true
  372. end)
  373.  
  374. t.Unequipped:connect(function()
  375.     TextBox.Visible = false
  376. end)
  377. wait(1)
  378. TextBox.Changed:connect(function()
  379.     TextLabel.Text = TextBox.Text
  380. end)
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top