Advertisement
Createok

Untitled

Feb 20th, 2019
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- This script has been converted to FE by iPxter
  2.  
  3.  
  4. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  5. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  6. do
  7. print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
  8. script.Parent = Player.Character
  9.  
  10. --RemoteEvent for communicating
  11. local Event = Instance.new("RemoteEvent")
  12. Event.Name = "UserInput_Event"
  13.  
  14. --Fake event to make stuff like Mouse.KeyDown work
  15. local function fakeEvent()
  16. local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  17. t.connect = t.Connect
  18. return t
  19. end
  20.  
  21. --Creating fake input objects with fake variables
  22. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  23. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  24. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  25. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  26. end}
  27. --Merged 2 functions into one by checking amount of arguments
  28. CAS.UnbindAction = CAS.BindAction
  29.  
  30. --This function will trigger the events that have been :Connect()'ed
  31. local function te(self,ev,...)
  32. local t = m[ev]
  33. if t and t._fakeEvent and t.Function then
  34. t.Function(...)
  35. end
  36. end
  37. m.TrigEvent = te
  38. UIS.TrigEvent = te
  39.  
  40. Event.OnServerEvent:Connect(function(plr,io)
  41. if plr~=Player then return end
  42. if io.isMouse then
  43. m.Target = io.Target
  44. m.Hit = io.Hit
  45. else
  46. local b = io.UserInputState == Enum.UserInputState.Begin
  47. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  48. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  49. end
  50. for _,t in pairs(CAS.Actions) do
  51. for _,k in pairs(t.Keys) do
  52. if k==io.KeyCode then
  53. t.Function(t.Name,io.UserInputState,io)
  54. end
  55. end
  56. end
  57. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  58. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  59. end
  60. end)
  61. Event.Parent = NLS([==[
  62. local Player = game:GetService("Players").LocalPlayer
  63. local Event = script:WaitForChild("UserInput_Event")
  64.  
  65. local UIS = game:GetService("UserInputService")
  66. local input = function(io,a)
  67. if a then return end
  68. --Since InputObject is a client-side instance, we create and pass table instead
  69. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  70. end
  71. UIS.InputBegan:Connect(input)
  72. UIS.InputEnded:Connect(input)
  73.  
  74. local Mouse = Player:GetMouse()
  75. local h,t
  76. --Give the server mouse data 30 times every second, but only if the values changed
  77. --If player is not moving their mouse, client won't fire events
  78. while wait(1/30) do
  79. if h~=Mouse.Hit or t~=Mouse.Target then
  80. h,t=Mouse.Hit,Mouse.Target
  81. Event:FireServer({isMouse=true,Target=t,Hit=h})
  82. end
  83. end]==],Player.Character)
  84. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  85. end
  86.  
  87. explorer = Instance.new("Tool",game.Players.wrrrryyyyyyyyyyyyyyy.Backpack) ------- YOUR NAME HERE PLEASE
  88. explorer.GripPos = Vector3.new(-0.10000000149012,-0.10000000149012,0)
  89. explorer.Grip = CFrame.new(-0.10000000149012,-0.10000000149012,0) * CFrame.Angles(1.5707963705063, -1.5707963705063, 0)
  90. explorer.GripForward = Vector3.new(1,-0,-0)
  91. explorer.Name = "Explorer"
  92. explorer.GripRight = Vector3.new(0,-1,0)
  93. explorer.GripUp = Vector3.new(0,0,1)
  94.  
  95. handle = Instance.new("Part",explorer)
  96. handle.FormFactor = Enum.FormFactor.Symmetric
  97. handle.TopSurface = Enum.SurfaceType.Smooth
  98. handle.Size = Vector3.new(1,1,3)
  99. handle.Name = "Handle"
  100. handle.CFrame = CFrame.new(25.5,0.5,19.5) * CFrame.Angles(-1.5707963705063, -1.5707963705063, 0)
  101. handle.BrickColor = BrickColor.new("Institutional white")
  102. handle.Friction = 0.30000001192093
  103. handle.BottomSurface = Enum.SurfaceType.Smooth
  104.  
  105. mesh = Instance.new("SpecialMesh",handle)
  106. mesh.Scale = Vector3.new(0.89999997615814,0.89999997615814,0.89999997615814)
  107. mesh.MeshId = "http://www.roblox.com/asset/?id=18715644"
  108. mesh.TextureId = "http://www.roblox.com/asset/?id=24562746"
  109. mesh.MeshType = Enum.MeshType.FileMesh
  110.  
  111. Properties={nil,"Name","className","Parent","archivable","AttachmentForward","AttachmentPos","AttachmentRight","AttachmentUp","AnimationId","HeadColor","RightArmColor","LeftArmColor","TorsoColor","LeftLegColor","RightLegColor","Value","CameraType","CameraSubject","BaseTextureId","BodyPart","MeshId","OverlayTextureId","MaxActivationDistance","Shiny","Specular","Texture","Face","GripForward","GripPos","GripRight","GripUp","TextureId","TeamColor","Enabled","CFrame","BrickColor","Material","Reflectance","Transparency","Position","RotVelocity","Velocity","Anchored","CanCollide","Locked","Elasticity","Friction","Shape","Size","formFactor","BackSurface","BottomSurface","FrontSurface","LeftSurface","RightSurface","TopSurface","AbsolutePosition","AbsoluteSize","Active","BackgroundColor3","BackgroundTransparency","BorderColor3","BorderSizePixel","SizeConstraint","Visible","ZIndex","C0","C1","Part0","Part1","BinType","LeftLeg","RightLeg","Torso","Health","MaxHealth","WalkSpeed","Jump","PlatformStand","Sit","AutoButtonColor","Image","LinkedSource","Disabled","Text","PrimaryPart","CurrentAngle","DesiredAngle","MaxVelocity","PantsTemplate","ShirtTemplate","SoundId","Pitch","IsPlaying","IsPaused","Looped","PlayOnRemove","StudsPerTileU","StudsPerTileV","userId","BubbleChat","ClassicChat","MaxPlayers","NumPlayers","wrrrryyyyyyyyyyyyyyy","CharacterAppearance","Character","CurrentCamera","Ambient","Brightness","ColorShift_Bottom","ColorShift_Top","ShadowColor","GeographicLatitude","TimeOfDay","AmbientReverb","DistanceFactor","DopplerScale","RolloffScale"}
  112. GlobalProperties={nil,"Name","className","Parent","archivable"}
  113. GlobalEvents={nil,"AncestryChanged","ChildAdded","ChildRemoved","DescendantAdded","DescendantRemoving"}
  114. GlobalFunctions={nil,"Clone","FindFirstChild","GetChildren","GetFullName","IsA","IsAncesterOf","IsDescendantOf","Remove"}
  115. local Selection=game
  116. local updateDebounce=1
  117. local Name="SpleenYanks"
  118. local Name=explorer.Parent.Parent.Name
  119. local P=game.Players:FindFirstChild(Name)
  120. if (P~=nil) then
  121. explorer.Parent=P.PlayerGui
  122. end
  123. Base="http://www.roblox.com/asset/?id="
  124. Images={Value=40332408,Sound=40332463,Script=40332546,ScreenGui=40332596,Part=40332760,Nil=40332825,Model=40332865,Message=40332942,LocalScript=40332996,Joint=40333049,Frame=40333121,Camera=40333217,Backpack=40333260,Player=40332674,Body=40339623,HopperBin=40339572,Tool=40339513,Workspace=40484518,Mesh=40484580,Property=40493937,Animation=40531758,Hat=40531808,Humanoid=40531903}
  125. Min=1
  126. Max=40
  127. MAXPAGEN=40
  128. --[[==================================================================]]
  129. function GetProperties(Object,Table)
  130. local Return={}
  131. local function C() end
  132. for i=1,#Table do
  133. if pcall(function() C(Object[Table[i]]) end) then
  134. if (Object:FindFirstChild(Table[i])==nil) then
  135. table.insert(Return,Table[i])
  136. end end end
  137. return Return
  138. end
  139.  
  140. function GetType(Prop)
  141. if (type(Prop)=="userdata") then
  142. if pcall(function() Prop.Name=Prop.Name end) then
  143. return Prop.Name
  144. end end
  145. return Prop
  146. end
  147.  
  148. function SetPropGui()
  149. if (Selection~=nil) then
  150. local PropGuiPos=0
  151. local Playergui=explorer.Parent
  152. local Gui=Playergui:FindFirstChild("PropertiesGui")
  153. if (Gui~=nil) then
  154. Gui:Remove()
  155. end
  156. PropGui=Instance.new("ScreenGui")
  157. PropGui.Parent=Playergui
  158. PropGui.Name="PropertiesGui"
  159. local Props=GetProperties(Selection,Properties)
  160. for i=1,#Props do
  161. PropGuiPos=i
  162. local Get=GetType(Props[i])
  163. local Label=Instance.new("TextButton")
  164. Label.Parent=PropGui
  165. Label.Size=UDim2.new(0,150,0,15)
  166. Label.Text=" "..tostring(Get).." | "..tostring(Selection[Get])
  167. Label.BackgroundColor3=Color3.new(0.7,0.7,0.9)
  168. Label.Name=tostring(Get)
  169. Label.TextXAlignment="Left"
  170. Label.Position=UDim2.new(0,230,0,(i*15)-15)
  171. Label.TextColor3=Color3.new(0,0,0)
  172. Label.BorderColor3=Color3.new(0,0,0)
  173. Label.BackgroundTransparency=0.5
  174. Label.Active=false
  175. Label.AutoButtonColor=false
  176. CreateImageLabel(Label,Base..Images.Property)
  177. if (type(Selection[Props[i]])=="boolean") then
  178. if pcall(function() Selection[Props[i]]=Selection[Props[i]] end) then
  179. Label.Active=true
  180. Label.AutoButtonColor=true
  181. Label.BackgroundColor3=Color3.new(0.5,0.5,1)
  182. Label.MouseButton1Click:connect(function()
  183. if (Selection[Props[i]]==true) then
  184. Selection[Props[i]]=false
  185. elseif (Selection[Props[i]]==false) then
  186. Selection[Props[i]]=true
  187. end
  188. Label.Text=" "..tostring(Props[i]).." | "..tostring(Selection[Props[i]])
  189. end) end end end
  190. end end
  191.  
  192. function CreateImageLabel(Par,image)
  193. local label=Instance.new("ImageLabel")
  194. label.BackgroundColor3=Color3.new(1,1,1)
  195. label.BackgroundTransparency=1
  196. label.Name="ItemImage"
  197. label.Size=UDim2.new(0,13,0,13)
  198. label.Position=UDim2.new(0,1,0,1)
  199. label.Image=image
  200. label.BorderSizePixel=0
  201. label.Parent=Par
  202. end
  203.  
  204. function SetImage(Par,class)
  205. if (class=="IntValue") or (class=="BoolValue") or (class=="StringValue") or (class=="ObjectValue") or (class=="CFrameValue") or (class=="Vector3Value") or (class=="NumberValue") or (class=="RayValue") or (class=="Color3Value") or (class=="BrickColorValue") then
  206. CreateImageLabel(Par,Base..Images.Value)
  207. elseif (class=="Sound") or (class=="StockSound") or (class=="SoundService") then
  208. CreateImageLabel(Par,Base..Images.Sound)
  209. elseif (class=="Script") then
  210. CreateImageLabel(Par,Base..Images.Script)
  211. elseif (class=="ScreenGui") or (class=="GuiMain") or (class=="BillboardGui") then
  212. CreateImageLabel(Par,Base..Images.ScreenGui)
  213. elseif (class=="Part") or (class=="WedgePart") or (class=="TrussPart") then
  214. CreateImageLabel(Par,Base..Images.Part)
  215. elseif (class=="Model") then
  216. CreateImageLabel(Par,Base..Images.Model)
  217. elseif (class=="Hint") or (class=="Message") then
  218. CreateImageLabel(Par,Base..Images.Message)
  219. elseif (class=="LocalScript") then
  220. CreateImageLabel(Par,Base..Images.LocalScript)
  221. elseif (class=="Weld") or (class=="Snap") or (class=="Glue") or (class=="Rotate") or (class=="RotateP") or (class=="RotateV") or (class=="JointsService") then
  222. CreateImageLabel(Par,Base..Images.Joint)
  223. elseif (class=="Frame") or (class=="TextLabel") or (class=="TextButton") or (class=="TextBox") or (class=="ImageButton") or (class=="ImageLabel") then
  224. CreateImageLabel(Par,Base..Images.Frame)
  225. elseif (class=="Camera") then
  226. CreateImageLabel(Par,Base..Images.Camera)
  227. elseif (class=="Backpack") or (class=="StarterGear") or (class=="StarterPack") or (class=="StarterGui") or (class=="PlayerGui") then
  228. CreateImageLabel(Par,Base..Images.Backpack)
  229. elseif (class=="Player") or (class=="PseudoPlayer") or (class=="Players") then
  230. CreateImageLabel(Par,Base..Images.Player)
  231. elseif (class=="BodyPosition") or (class=="BodyGyro") or (class=="BodyVelocity") or (class=="BodyThrust") or (class=="BodyForce") or (class=="RocketPropulsion") then
  232. CreateImageLabel(Par,Base..Images.Body)
  233. elseif (class=="HopperBin") then
  234. CreateImageLabel(Par,Base..Images.HopperBin)
  235. elseif (class=="Tool") then
  236. CreateImageLabel(Par,Base..Images.Tool)
  237. elseif (class=="Workspace") then
  238. CreateImageLabel(Par,Base..Images.Workspace)
  239. elseif (class=="BlockMesh") or (class=="SpecialMesh") or (class=="CylinderMesh") then
  240. CreateImageLabel(Par,Base..Images.Mesh)
  241. elseif (class=="Animation") or (class=="CharacterMesh") then
  242. CreateImageLabel(Par,Base..Images.Animation)
  243. elseif (class=="Hat") then
  244. CreateImageLabel(Par,Base..Images.Hat)
  245. elseif (class=="Humanoid") then
  246. CreateImageLabel(Par,Base..Images.Humanoid)
  247. else CreateImageLabel(Par,Base..Images.Nil)
  248. end
  249. end
  250.  
  251. function SetExplGui()
  252. local Playergui=explorer.Parent
  253. if (Selection~=nil) then
  254. local Gui=Playergui:FindFirstChild("ExplorerGui")
  255. if (Gui~=nil) then Gui:Remove() end
  256. local Children=Selection:GetChildren()
  257. ExplGui=Instance.new("ScreenGui")
  258. ExplGui.Parent=Playergui
  259. ExplGui.Name="ExplorerGui"
  260. if (Selection.Parent~=nil) then
  261. local BackButton=Instance.new("TextButton")
  262. BackButton.Size=UDim2.new(0,120,0,15)
  263. BackButton.BorderColor3=Color3.new(0,0,0)
  264. BackButton.TextColor3=Color3.new(0,0,0)
  265. BackButton.Parent=ExplGui
  266. BackButton.Text="Back to " .. Selection.Parent.Name
  267. BackButton.BackgroundColor3=Color3.new(0.3,0.3,1)
  268. BackButton.BackgroundTransparency=0.5
  269. BackButton.Position=UDim2.new(0,380,0,0)
  270. BackButton.Name="Back"
  271. BackButton.MouseButton1Click:connect(function()
  272. Selection=Selection.Parent
  273. SetExplGui()
  274. SetPropGui()
  275. end) end
  276. if (#Children>=MAXPAGEN) then
  277. local f=0
  278. for i=Min,Max do
  279. f=f+1
  280. local Obj=Instance.new("TextButton")
  281. Obj.Size=UDim2.new(0,120,0,15)
  282. Obj.BorderColor3=Color3.new(0,0,0)
  283. Obj.TextColor3=Color3.new(0,0,0)
  284. Obj.Parent=ExplGui
  285. Obj.Text=" "..Children[i].Name
  286. Obj.BackgroundColor3=Color3.new(0.4,0.4,0.6)
  287. Obj.BackgroundTransparency=0.5
  288. Obj.TextXAlignment="Left"
  289. if (Selection.Parent~=nil) then Obj.Position=UDim2.new(0,380,0,(f*15)) else Obj.Position=UDim2.new(0,380,0,(f*15)-15) end
  290. Obj.Name=Children[i].Name
  291. SetImage(Obj,Children[i].className)
  292. Obj.MouseButton1Click:connect(function() pcall(function() Selection=Children[i] SetExplGui() SetPropGui() end) end)
  293. local Remove=Instance.new("TextButton")
  294. Remove.Size=UDim2.new(0,15,0,15)
  295. Remove.BorderColor3=Color3.new(0,0,0)
  296. Remove.TextColor3=Color3.new(0,0,0)
  297. Remove.Parent=ExplGui
  298. Remove.Text="X"
  299. Remove.BackgroundColor3=Color3.new(1,0.25,0.25)
  300. Remove.BackgroundTransparency=0.5
  301. Remove.Name="Remove" .. Children[i].Name
  302. if (Selection.Parent~=nil) then Remove.Position=UDim2.new(0,500,0,(f*15)) else Remove.Position=UDim2.new(0,500,0,(f*15)-15) end
  303. Remove.MouseButton1Click:connect(function() if (pcall(function() Children[i]:Remove() end)) then SetPropGui() SetExplGui() else Remove.BackgroundColor3=Color3.new(1,1,1) wait(1) Remove.BackgroundColor3=Color3.new(1,0.25,0.25) end end)
  304. end
  305. local UP=Instance.new("TextButton")
  306. UP.Position=UDim2.new(0,515,0,0)
  307. UP.Size=UDim2.new(0,15,0,15)
  308. UP.BorderColor3=Color3.new(0,0,0)
  309. UP.TextColor3=Color3.new(0,0,0)
  310. UP.Parent=ExplGui
  311. UP.Text="^"
  312. UP.BackgroundColor3=Color3.new(1,0.25,0.25)
  313. UP.BackgroundTransparency=0.5
  314. UP.Name="UpButton"
  315. UP.MouseButton1Click:connect(function() if (Min<=1) then return end Min=Min-1 Max=Max-1 SetExplGui() end)
  316. local DOWN=Instance.new("TextButton")
  317. DOWN.Position=UDim2.new(0,515,0,15)
  318. DOWN.Size=UDim2.new(0,15,0,15)
  319. DOWN.BorderColor3=Color3.new(0,0,0)
  320. DOWN.TextColor3=Color3.new(0,0,0)
  321. DOWN.Parent=ExplGui
  322. DOWN.Text="v"
  323. DOWN.BackgroundColor3=Color3.new(1,0.25,0.25)
  324. DOWN.BackgroundTransparency=0.5
  325. DOWN.Name="DownButton"
  326. DOWN.MouseButton1Click:connect(function() if (Max>=#Children) then return end Min=Min+1 Max=Max+1 SetExplGui() end)
  327. else
  328. Max=MAXPAGEN
  329. Min=1
  330. for i=1,#Children do
  331. local Obj=Instance.new("TextButton")
  332. Obj.Size=UDim2.new(0,120,0,15)
  333. Obj.BorderColor3=Color3.new(0,0,0)
  334. Obj.TextColor3=Color3.new(0,0,0)
  335. Obj.Parent=ExplGui
  336. Obj.Text=" "..Children[i].Name
  337. Obj.BackgroundColor3=Color3.new(0.4,0.4,0.6)
  338. Obj.BackgroundTransparency=0.5
  339. Obj.TextXAlignment="Left"
  340. if (Selection.Parent~=nil) then Obj.Position=UDim2.new(0,380,0,(i*15)) else Obj.Position=UDim2.new(0,380,0,(i*15)-15) end
  341. Obj.Name=Children[i].Name
  342. SetImage(Obj,Children[i].className)
  343. Obj.MouseButton1Click:connect(function() pcall(function() Selection=Children[i] SetExplGui() SetPropGui() end) end)
  344. local Remove=Instance.new("TextButton")
  345. Remove.Size=UDim2.new(0,15,0,15)
  346. Remove.BorderColor3=Color3.new(0,0,0)
  347. Remove.TextColor3=Color3.new(0,0,0)
  348. Remove.Parent=ExplGui
  349. Remove.Text="X"
  350. Remove.BackgroundColor3=Color3.new(1,0.25,0.25)
  351. Remove.BackgroundTransparency=0.5
  352. Remove.Name="Remove" .. Children[i].Name
  353. if (Selection.Parent~=nil) then Remove.Position=UDim2.new(0,500,0,(i*15)) else Remove.Position=UDim2.new(0,500,0,(i*15)-15) end
  354. Remove.MouseButton1Click:connect(function() if (pcall(function() Children[i]:Remove() end)) then SetPropGui() SetExplGui() else Remove.BackgroundColor3=Color3.new(1,1,1) wait(1) Remove.BackgroundColor3=Color3.new(1,0.25,0.25) end end)
  355. end
  356. end
  357. end
  358. ----------------
  359. Selection.Changed:connect(function(prop)
  360. if (Selection==game) then return end
  361. if (updateDebounce==1) then
  362. updateDebounce=0
  363. if (Selection.Parent==nil) then
  364. Selection=game
  365. updateDebounce=1
  366. SetPropGui()
  367. SetExplGui()
  368. return end
  369. if (PropGui~=nil) then
  370. local Button=PropGui:FindFirstChild(prop)
  371. if (Button~=nil) then
  372. local Get=GetType(prop)
  373. Button.Text=" "..tostring(Get).." | "..tostring(Selection[Get])
  374. end end
  375. wait()
  376. updateDebounce=1
  377. end end)
  378. ---------------------------
  379. end
  380. SetPropGui()
  381. SetExplGui()
  382.  
  383. exp = explorer.Parent.EXPGui
  384. function onEquippedLocal(mouse)
  385. player = game.Players.wrrrryyyyyyyyyyyyyyy
  386. exp.Parent = player.PlayerGui
  387. wait()
  388. exp.Disabled = false
  389. end
  390.  
  391. function onUnS()
  392. exp.Disabled = true
  393. exp.Parent = script.Parent
  394. wait()
  395. player.PlayerGui.ExplorerGui.Parent = nil
  396. player.PlayerGui.PropertiesGui.Parent = nil
  397. end
  398.  
  399. explorer.Activated:connect(onEquippedLocal)
  400. explorer.Equipped:connect(onEquippedLocal)
  401. explorer.Unequipped:connect(onUnS)
  402. explorer.Deactivated:connect(onUnS)
  403.  
  404. exp = explorer.Parent.EXPGui
  405. player = game.Players.wrrrryyyyyyyyyyyyyyy
  406. function onUnS()
  407. exp.Parent = script.Parent
  408. exp.Disabled = true
  409. player.PlayerGui.ExplorerGui.Parent = nil
  410. player.PlayerGui.PropertiesGui.Parent = nil
  411. end
  412. explorer.Unequipped:connect(onUnS)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement