
KeylessUniversal

local UIS = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local mouseUnlocked = false
-- Toggle function
local function toggleMouse()
mouseUnlocked = not mouseUnlocked
if mouseUnlocked then
print("Mouse UNLOCKED - will not lock automatically")
else
print("Mouse LOCKED")
end
end
-- V key press
UIS.InputBegan:Connect(function(input, processed)
if processed then return end
if input.KeyCode == Enum.KeyCode.V then
toggleMouse()
end
end)
-- Force keep mouse unlocked every frame
RunService.RenderStepped:Connect(function()
if mouseUnlocked then
UIS.MouseBehavior = Enum.MouseBehavior.Default
UIS.MouseIconEnabled = true
end
end)
print("V = Toggle mouse lock/unlock")
local Rayfield = loadstring(game:HttpGet('https://raw.githubusercontent.com/rajasabagun/Roblox/refs/heads/main/rayfield.lua'))()
local Window = Rayfield:CreateWindow({
Name = "Jaz Hub",
Icon = 0, -- Icon in Topbar. Can use Lucide Icons (string) or Roblox Image (number). 0 to use no icon (default).
LoadingTitle = "JAZ HUB",
LoadingSubtitle = "By Rajasa",
ShowText = "Jaz", -- for mobile users to unhide rayfield, change if you'd like
Theme = "Light", -- Check https://docs.sirius.menu/rayfield/configuration/themes
ToggleUIKeybind = Enum.KeyCode.Insert, -- The keybind to toggle the UI visibility (string like "K" or Enum.KeyCode)
DisableRayfieldPrompts = false,
DisableBuildWarnings = false, -- Prevents Rayfield from warning when the script has a version mismatch with the interface
ConfigurationSaving = {
Enabled = true,
FolderName = nil, -- Create a custom folder for your hub/game
FileName = "Big Hub"
},
Discord = {
Enabled = false, -- Prompt the user to join your Discord server if their executor supports it
Invite = "noinvitelink", -- The Discord invite code, do not include discord.gg/. E.g. discord.gg/ ABCD would be ABCD
RememberJoins = true -- Set this to false to make them join the discord every time they load it up
},
KeySystem = false, -- Set this to true to use our key system
KeySettings = {
Title = "Untitled",
Subtitle = "Key System",
Note = "No method of obtaining the key is provided", -- Use this to tell the user how to get a key
FileName = "Key", -- It is recommended to use something unique as other scripts using Rayfield may overwrite your key file
SaveKey = true, -- The user's key will be saved, but if you change the key, they will be unable to use your script
GrabKeyFromSite = false, -- If this is true, set Key below to the RAW site you would like Rayfield to get the key from
Key = {"Hello"} -- List of keys that will be accepted by the system, can be RAW file links (pastebin, github etc) or simple strings ("hello","key22")
}
})
local Tab = Window:CreateTab("Basic", 4483362458) -- Title, Image
local Section = Tab:CreateSection("Basic")
Section:Set("Basic")
local Button = Tab:CreateButton({
Name = "No Fall Damage",
Callback = function()
local v0=game:GetService("Players");local v1=game:GetService("RunService");local v2=game:GetService("UserInputService");local v3=v0.LocalPlayer;local v4=v3.Character or v3.CharacterAdded:Wait() ;local v5=v4:WaitForChild("Humanoid");local v6=v4:WaitForChild("HumanoidRootPart");local v7=false;local v8=v6.Position.Y;local v9=false;local v10= -(1847 -(1228 + 618));local v11=50;v3.CharacterAdded:Connect(function(v12) local v13=0;while true do if (v13==0) then v4=v12;v5=v12:WaitForChild("Humanoid");v13=1 -0 ;end if (v13==1) then v6=v12:WaitForChild("HumanoidRootPart");v7=false;v13=7 -5 ;end if (v13==2) then pcall(function() v5.PlatformStand=false;end);v8=v6.Position.Y;break;end end end);v2.InputBegan:Connect(function(v14) if v7 then local v20=952 -(802 + 150) ;local v21;while true do if (v20==(0 -0)) then v21={Enum.KeyCode.W,Enum.KeyCode.A,Enum.KeyCode.S,Enum.KeyCode.D,Enum.KeyCode.Space,Enum.KeyCode.LeftShift};for v33=1 + 0 , #v21 do if (v14.KeyCode==v21[v33]) then return;end end break;end end end end);v2.InputChanged:Connect(function(v15) if v7 then local v22={Enum.KeyCode.W,Enum.KeyCode.A,Enum.KeyCode.S,Enum.KeyCode.D,Enum.KeyCode.Space,Enum.KeyCode.LeftShift};for v24=1 -0 , #v22 do if (v15.KeyCode==v22[v24]) then return;end end end end);v1.Heartbeat:Connect(function(v16) local v17=0 + 0 ;local v18;local v19;while true do if (v17==(792 -(368 + 423))) then v19=v18-v8 ;v8=v18;v17=6 -4 ;end if (0==v17) then if v5.SeatPart then local v27=18 -(10 + 8) ;while true do if (1==v27) then return;end if (v27==0) then if v7 then local v39=0 -0 ;while true do if (v39==(443 -(416 + 26))) then print("Flug pausiert wegen Sitzen");break;end if (v39==0) then v7=false;pcall(function() v5.PlatformStand=false;end);v39=3 -2 ;end end end v9=true;v27=1 + 0 ;end end else v9=false;end v18=v6.Position.Y;v17=1 -0 ;end if (v17==2) then if ((v19<v10) and not v7 and not v9) then local v28=438 -(145 + 293) ;while true do if (v28==(431 -(44 + 386))) then print("Flugmodus: AN");break;end if (v28==(1486 -(998 + 488))) then v7=true;pcall(function() v5.PlatformStand=true;end);v28=1 + 0 ;end end end if (v7 and (math.abs(v19)<(0.01 + 0))) then v7=false;pcall(function() v5.PlatformStand=false;end);print("Flugmodus: AUS (Y stabil)");return;end v17=775 -(201 + 571) ;end if (v17==3) then if v7 then local v29=1138 -(116 + 1022) ;local v30;local v31;local v32;while true do if (v29==(0 -0)) then v30=v6.Position;v31,v32,v31=v6.Orientation:ToEulerAnglesYXZ();v29=1 + 0 ;end if (v29==(3 -2)) then v6.CFrame=CFrame.new(v30) * CFrame.Angles(0 -0 ,math.rad(v32),859 -(814 + 45) ) ;v6.Velocity=Vector3.new(0 -0 ,v6.Velocity.Y,0);break;end end end break;end end end);
end,
})
Button:Set("No Fall Damage")
local Button = Tab:CreateButton({
Name = "Full Bright",
Callback = function()
--[[
WARNING: Heads up! This script has not been verified by ScriptBlox. Use at your own risk!
]]
if not _G.FullBrightExecuted then
_G.FullBrightEnabled = false
_G.NormalLightingSettings = {
Brightness = game:GetService("Lighting").Brightness,
ClockTime = game:GetService("Lighting").ClockTime,
FogEnd = game:GetService("Lighting").FogEnd,
GlobalShadows = game:GetService("Lighting").GlobalShadows,
Ambient = game:GetService("Lighting").Ambient
}
game:GetService("Lighting"):GetPropertyChangedSignal("Brightness"):Connect(function()
if game:GetService("Lighting").Brightness ~= 1 and game:GetService("Lighting").Brightness ~= _G.NormalLightingSettings.Brightness then
_G.NormalLightingSettings.Brightness = game:GetService("Lighting").Brightness
if not _G.FullBrightEnabled then
repeat
wait()
until _G.FullBrightEnabled
end
game:GetService("Lighting").Brightness = 1
end
end)
game:GetService("Lighting"):GetPropertyChangedSignal("ClockTime"):Connect(function()
if game:GetService("Lighting").ClockTime ~= 12 and game:GetService("Lighting").ClockTime ~= _G.NormalLightingSettings.ClockTime then
_G.NormalLightingSettings.ClockTime = game:GetService("Lighting").ClockTime
if not _G.FullBrightEnabled then
repeat
wait()
until _G.FullBrightEnabled
end
game:GetService("Lighting").ClockTime = 12
end
end)
game:GetService("Lighting"):GetPropertyChangedSignal("FogEnd"):Connect(function()
if game:GetService("Lighting").FogEnd ~= 786543 and game:GetService("Lighting").FogEnd ~= _G.NormalLightingSettings.FogEnd then
_G.NormalLightingSettings.FogEnd = game:GetService("Lighting").FogEnd
if not _G.FullBrightEnabled then
repeat
wait()
until _G.FullBrightEnabled
end
game:GetService("Lighting").FogEnd = 786543
end
end)
game:GetService("Lighting"):GetPropertyChangedSignal("GlobalShadows"):Connect(function()
if game:GetService("Lighting").GlobalShadows ~= false and game:GetService("Lighting").GlobalShadows ~= _G.NormalLightingSettings.GlobalShadows then
_G.NormalLightingSettings.GlobalShadows = game:GetService("Lighting").GlobalShadows
if not _G.FullBrightEnabled then
repeat
wait()
until _G.FullBrightEnabled
end
game:GetService("Lighting").GlobalShadows = false
end
end)
game:GetService("Lighting"):GetPropertyChangedSignal("Ambient"):Connect(function()
if game:GetService("Lighting").Ambient ~= Color3.fromRGB(178, 178, 178) and game:GetService("Lighting").Ambient ~= _G.NormalLightingSettings.Ambient then
_G.NormalLightingSettings.Ambient = game:GetService("Lighting").Ambient
if not _G.FullBrightEnabled then
repeat
wait()
until _G.FullBrightEnabled
end
game:GetService("Lighting").Ambient = Color3.fromRGB(178, 178, 178)
end
end)
game:GetService("Lighting").Brightness = 1
game:GetService("Lighting").ClockTime = 12
game:GetService("Lighting").FogEnd = 786543
game:GetService("Lighting").GlobalShadows = false
game:GetService("Lighting").Ambient = Color3.fromRGB(178, 178, 178)
local LatestValue = true
spawn(function()
repeat
wait()
until _G.FullBrightEnabled
while wait() do
if _G.FullBrightEnabled ~= LatestValue then
if not _G.FullBrightEnabled then
game:GetService("Lighting").Brightness = _G.NormalLightingSettings.Brightness
game:GetService("Lighting").ClockTime = _G.NormalLightingSettings.ClockTime
game:GetService("Lighting").FogEnd = _G.NormalLightingSettings.FogEnd
game:GetService("Lighting").GlobalShadows = _G.NormalLightingSettings.GlobalShadows
game:GetService("Lighting").Ambient = _G.NormalLightingSettings.Ambient
else
game:GetService("Lighting").Brightness = 1
game:GetService("Lighting").ClockTime = 12
game:GetService("Lighting").FogEnd = 786543
game:GetService("Lighting").GlobalShadows = false
game:GetService("Lighting").Ambient = Color3.fromRGB(178, 178, 178)
end
LatestValue = not LatestValue
end
end
end)
end
_G.FullBrightExecuted = true
_G.FullBrightEnabled = not _G.FullBrightEnabled
end,
})
Button:Set("Full Bright")
local Button = Tab:CreateButton({
Name = "Dex Explorer",
Callback = function()
function GetFullName(instance)
if instance == game:GetService("Players").LocalPlayer then return 'game:GetService("Players").LocalPlayer' end
local p = instance
local lo = {}
while (p ~= game and p.Parent ~= nil) do
table.insert(lo, p)
p = p.Parent
end
local fullName
if #lo == 0 then
return "nil --[[ PARENTED TO NIL OR DESTROYED ]]"
end
if lo[#lo].ClassName ~= "Workspace" then
fullName = 'game:GetService("' .. lo[#lo].ClassName .. '")'
else
fullName = "workspace"
end
for i = #lo - 1, 1, -1 do
if lo[i] then
fullName = fullName .. ':FindFirstChild("' .. lo[i].Name .. '")'
end
end
return fullName:gsub(":FindFirstChild%(." .. game:GetService("Players").LocalPlayer.Name .. '.%)', '.LocalPlayer')
end
CreateGui = function()
local NewGuiPart1 = Instance.new("ScreenGui")
local NewGuiPart2 = Instance.new("Frame")
local NewGuiPart3 = Instance.new("Frame")
local NewGuiPart4 = Instance.new("TextLabel")
local NewGuiPart5 = Instance.new("TextBox")
local NewGuiPart6 = Instance.new("Frame")
local NewGuiPart7 = Instance.new("Frame")
local NewGuiPart8 = Instance.new("TextButton")
local NewGuiPart9 = Instance.new("TextLabel")
local NewGuiPart10 = Instance.new("TextLabel")
local NewGuiPart11 = Instance.new("ImageLabel")
local NewGuiPart12 = Instance.new("Frame")
local NewGuiPart13 = Instance.new("Frame")
local NewGuiPart14 = Instance.new("Frame")
local NewGuiPart15 = Instance.new("TextButton")
local NewGuiPart16 = Instance.new("ImageLabel")
local NewGuiPart17 = Instance.new("TextButton")
local NewGuiPart18 = Instance.new("ImageLabel")
local NewGuiPart19 = Instance.new("TextButton")
local NewGuiPart20 = Instance.new("ImageLabel")
local NewGuiPart21 = Instance.new("TextButton")
local NewGuiPart22 = Instance.new("ImageLabel")
local NewGuiPart23 = Instance.new("TextButton")
local NewGuiPart24 = Instance.new("ImageLabel")
local NewGuiPart25 = Instance.new("TextButton")
local NewGuiPart26 = Instance.new("ImageLabel")
local NewGuiPart27 = Instance.new("TextButton")
local NewGuiPart28 = Instance.new("Frame")
local NewGuiPart29 = Instance.new("Frame")
local NewGuiPart30 = Instance.new("TextLabel")
local NewGuiPart31 = Instance.new("Frame")
local NewGuiPart32 = Instance.new("TextLabel")
local NewGuiPart33 = Instance.new("TextLabel")
local NewGuiPart34 = Instance.new("TextButton")
local NewGuiPart35 = Instance.new("TextLabel")
local NewGuiPart36 = Instance.new("TextLabel")
local NewGuiPart37 = Instance.new("Frame")
local NewGuiPart38 = Instance.new("Frame")
local NewGuiPart39 = Instance.new("TextLabel")
local NewGuiPart40 = Instance.new("Frame")
local NewGuiPart41 = Instance.new("TextButton")
local NewGuiPart42 = Instance.new("TextLabel")
local NewGuiPart43 = Instance.new("TextButton")
local NewGuiPart44 = Instance.new("TextBox")
local NewGuiPart45 = Instance.new("TextButton")
local NewGuiPart46 = Instance.new("TextLabel")
local NewGuiPart47 = Instance.new("TextLabel")
local NewGuiPart48 = Instance.new("Frame")
local NewGuiPart49 = Instance.new("TextLabel")
local NewGuiPart50 = Instance.new("Frame")
local NewGuiPart51 = Instance.new("TextButton")
local NewGuiPart52 = Instance.new("TextLabel")
local NewGuiPart53 = Instance.new("TextButton")
local NewGuiPart54 = Instance.new("Frame")
local NewGuiPart55 = Instance.new("TextLabel")
local NewGuiPart56 = Instance.new("Frame")
local NewGuiPart57 = Instance.new("TextLabel")
local NewGuiPart58 = Instance.new("TextButton")
local NewGuiPart59 = Instance.new("Frame")
local NewGuiPart60 = Instance.new("TextLabel")
local NewGuiPart61 = Instance.new("Frame")
local NewGuiPart62 = Instance.new("TextLabel")
local NewGuiPart63 = Instance.new("ScrollingFrame")
local NewGuiPart64 = Instance.new("TextButton")
local NewGuiPart65 = Instance.new("TextLabel")
local NewGuiPart66 = Instance.new("TextLabel")
local NewGuiPart67 = Instance.new("TextButton")
local NewGuiPart68 = Instance.new("TextButton")
local NewGuiPart69 = Instance.new("Frame")
local NewGuiPart70 = Instance.new("TextButton")
local NewGuiPart71 = Instance.new("TextBox")
local NewGuiPart72 = Instance.new("TextButton")
local NewGuiPart73 = Instance.new("TextButton")
local NewGuiPart74 = Instance.new("Frame")
local NewGuiPart75 = Instance.new("Frame")
local NewGuiPart76 = Instance.new("TextButton")
local NewGuiPart77 = Instance.new("ScrollingFrame")
local NewGuiPart78 = Instance.new("Frame")
local NewGuiPart79 = Instance.new("TextLabel")
local NewGuiPart80 = Instance.new("TextLabel")
local NewGuiPart81 = Instance.new("TextLabel")
local NewGuiPart82 = Instance.new("Frame")
local NewGuiPart83 = Instance.new("TextLabel")
local NewGuiPart84 = Instance.new("Frame")
local NewGuiPart85 = Instance.new("Frame")
local NewGuiPart86 = Instance.new("Frame")
local NewGuiPart87 = Instance.new("ImageButton")
local NewGuiPart88 = Instance.new("Frame")
local NewGuiPart89 = Instance.new("Frame")
local NewGuiPart90 = Instance.new("Frame")
local NewGuiPart91 = Instance.new("Frame")
local NewGuiPart92 = Instance.new("Frame")
local NewGuiPart93 = Instance.new("ImageButton")
local NewGuiPart94 = Instance.new("Frame")
local NewGuiPart95 = Instance.new("Frame")
local NewGuiPart96 = Instance.new("Frame")
local NewGuiPart97 = Instance.new("Frame")
local NewGuiPart98 = Instance.new("Frame")
local NewGuiPart99 = Instance.new("TextButton")
local NewGuiPart100 = Instance.new("Frame")
local NewGuiPart101 = Instance.new("Frame")
local NewGuiPart102 = Instance.new("TextButton")
local NewGuiPart103 = Instance.new("TextButton")
local NewGuiPart104 = Instance.new("TextButton")
local NewGuiPart105 = Instance.new("Frame")
local NewGuiPart106 = Instance.new("Frame")
local NewGuiPart107 = Instance.new("TextLabel")
local NewGuiPart108 = Instance.new("TextLabel")
local NewGuiPart109 = Instance.new("TextLabel")
local NewGuiPart110 = Instance.new("ImageLabel")
local NewGuiPart111 = Instance.new("Frame")
local NewGuiPart112 = Instance.new("Frame")
local NewGuiPart113 = Instance.new("TextLabel")
local NewGuiPart114 = Instance.new("Frame")
local NewGuiPart115 = Instance.new("Frame")
local NewGuiPart116 = Instance.new("TextLabel")
local NewGuiPart117 = Instance.new("TextLabel")
local NewGuiPart118 = Instance.new("TextButton")
local NewGuiPart119 = Instance.new("TextLabel")
local NewGuiPart120 = Instance.new("TextLabel")
local NewGuiPart121 = Instance.new("Frame")
local NewGuiPart122 = Instance.new("TextLabel")
local NewGuiPart123 = Instance.new("TextLabel")
local NewGuiPart124 = Instance.new("TextButton")
local NewGuiPart125 = Instance.new("TextLabel")
local NewGuiPart126 = Instance.new("TextLabel")
local NewGuiPart127 = Instance.new("Frame")
local NewGuiPart128 = Instance.new("TextLabel")
local NewGuiPart129 = Instance.new("TextLabel")
local NewGuiPart130 = Instance.new("TextButton")
local NewGuiPart131 = Instance.new("TextLabel")
local NewGuiPart132 = Instance.new("TextLabel")
local NewGuiPart133 = Instance.new("Frame")
local NewGuiPart134 = Instance.new("TextLabel")
local NewGuiPart135 = Instance.new("TextLabel")
local NewGuiPart136 = Instance.new("TextButton")
local NewGuiPart137 = Instance.new("TextLabel")
local NewGuiPart138 = Instance.new("TextLabel")
local NewGuiPart139 = Instance.new("TextLabel")
local NewGuiPart140 = Instance.new("Frame")
local NewGuiPart141 = Instance.new("Frame")
local NewGuiPart142 = Instance.new("TextLabel")
local NewGuiPart143 = Instance.new("TextButton")
local NewGuiPart144 = Instance.new("TextBox")
local NewGuiPart145 = Instance.new("Frame")
local NewGuiPart146 = Instance.new("TextButton")
local NewGuiPart147 = Instance.new("TextLabel")
local NewGuiPart148 = Instance.new("TextLabel")
local NewGuiPart149 = Instance.new("Frame")
local NewGuiPart150 = Instance.new("Frame")
local NewGuiPart151 = Instance.new("TextLabel")
local NewGuiPart152 = Instance.new("TextLabel")
local NewGuiPart153 = Instance.new("BindableFunction")
local NewGuiPart154 = Instance.new("BindableFunction")
local NewGuiPart155 = Instance.new("BindableFunction")
local NewGuiPart156 = Instance.new("BindableFunction")
local NewGuiPart157 = Instance.new("BindableEvent")
local NewGuiPart158 = Instance.new("BindableFunction")
local NewGuiPart159 = Instance.new("BindableFunction")
local NewGuiPart160 = Instance.new("BindableEvent")
local NewGuiPart161 = Instance.new("BindableFunction")
local NewGuiPart162 = Instance.new("BindableFunction")
local NewGuiPart163 = Instance.new("BindableEvent")
-- Properties
NewGuiPart1.Name = "Dex"
NewGuiPart1.Parent = game:GetService("CoreGui")
NewGuiPart2.Name = "PropertiesFrame"
NewGuiPart2.Parent = NewGuiPart1
NewGuiPart2.Active = true
NewGuiPart2.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart2.BackgroundTransparency = 0.10000000149012
NewGuiPart2.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
NewGuiPart2.Position = UDim2.new(1, 0, 0.5, 36)
NewGuiPart2.Size = UDim2.new(0, 300, 0.5, -36)
NewGuiPart158.Name = "GetApi"
NewGuiPart158.Parent = NewGuiPart2
NewGuiPart158.Archivable = true
NewGuiPart159.Name = "GetAwaiting"
NewGuiPart159.Parent = NewGuiPart2
NewGuiPart159.Archivable = true
NewGuiPart160.Name = "SetAwaiting"
NewGuiPart160.Parent = NewGuiPart2
NewGuiPart160.Archivable = true
NewGuiPart3.Name = "Header"
NewGuiPart3.Parent = NewGuiPart2
NewGuiPart3.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart3.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart3.Position = UDim2.new(0, 0, 0, -36)
NewGuiPart3.Size = UDim2.new(1, 0, 0, 35)
NewGuiPart4.Parent = NewGuiPart3
NewGuiPart4.BackgroundTransparency = 1
NewGuiPart4.Position = UDim2.new(0, 4, 0, 0)
NewGuiPart4.Size = UDim2.new(1, -4, 0.5, 0)
NewGuiPart4.Font = Enum.Font.Gotham
NewGuiPart4.FontSize = Enum.FontSize.Size14
NewGuiPart4.Text = "Properties"
NewGuiPart4.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart4.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart5.Parent = NewGuiPart3
NewGuiPart5.BackgroundTransparency = 0.80000001192093
NewGuiPart5.Position = UDim2.new(0, 4, 0.5, 0)
NewGuiPart5.Size = UDim2.new(1, -8, 0.5, -3)
NewGuiPart5.Font = Enum.Font.Gotham
NewGuiPart5.FontSize = Enum.FontSize.Size14
NewGuiPart5.Text = "Search Properties"
--NewGuiPart5.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart5.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart6.Name = "ExplorerPanel"
NewGuiPart6.Parent = NewGuiPart1
NewGuiPart6.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart6.BackgroundTransparency = 0.10000000149012
NewGuiPart6.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
NewGuiPart6.Position = UDim2.new(1, 0, 0, 0)
NewGuiPart6.Size = UDim2.new(0, 300, 0.5, 0)
NewGuiPart153.Name = "GetOption"
NewGuiPart153.Parent = NewGuiPart6
NewGuiPart153.Archivable = true
NewGuiPart154.Name = "TotallyNotGetSelection"
NewGuiPart154.Parent = NewGuiPart6
NewGuiPart154.Archivable = true
NewGuiPart155.Name = "SetOption"
NewGuiPart155.Parent = NewGuiPart6
NewGuiPart155.Archivable = true
NewGuiPart156.Name = "TotallyNotSetSelection"
NewGuiPart156.Parent = NewGuiPart6
NewGuiPart156.Archivable = true
NewGuiPart157.Name = "TotallyNotSelectionChanged"
NewGuiPart157.Parent = NewGuiPart6
NewGuiPart157.Archivable = true
NewGuiPart7.Name = "SideMenu"
NewGuiPart7.Parent = NewGuiPart1
NewGuiPart7.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart7.BackgroundTransparency = 1
NewGuiPart7.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart7.BorderSizePixel = 0
NewGuiPart7.Position = UDim2.new(1, -330, 0, 0)
NewGuiPart7.Size = UDim2.new(0, 30, 0, 180)
NewGuiPart7.Visible = false
NewGuiPart7.ZIndex = 2
NewGuiPart8.Name = "Toggle"
NewGuiPart8.Parent = NewGuiPart7
NewGuiPart8.Active = false
NewGuiPart8.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart8.BorderSizePixel = 0
NewGuiPart8.Position = UDim2.new(0, 0, 0, 60)
NewGuiPart8.Size = UDim2.new(0, 30, 0, 30)
NewGuiPart8.AutoButtonColor = false
NewGuiPart8.Font = Enum.Font.Gotham
NewGuiPart8.FontSize = Enum.FontSize.Size24
NewGuiPart8.Text = ">"
NewGuiPart8.TextTransparency = 1
NewGuiPart8.TextWrapped = true
NewGuiPart9.Name = "Title"
NewGuiPart9.Parent = NewGuiPart7
NewGuiPart9.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart9.BackgroundTransparency = 1
NewGuiPart9.Size = UDim2.new(0, 30, 0, 20)
NewGuiPart9.ZIndex = 2
NewGuiPart9.Font = Enum.Font.GothamBold
NewGuiPart9.FontSize = Enum.FontSize.Size14
NewGuiPart9.Text = "DEX"
NewGuiPart9.TextWrapped = true
NewGuiPart10.Name = "Version"
NewGuiPart10.Parent = NewGuiPart7
NewGuiPart10.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart10.BackgroundTransparency = 1
NewGuiPart10.Position = UDim2.new(0, 0, 0, 15)
NewGuiPart10.Size = UDim2.new(0, 30, 0, 20)
NewGuiPart10.ZIndex = 2
NewGuiPart10.Font = Enum.Font.GothamBold
NewGuiPart10.FontSize = Enum.FontSize.Size12
NewGuiPart10.Text = "V2.0.0"
NewGuiPart10.TextWrapped = true
NewGuiPart11.Name = "Slant"
NewGuiPart11.Parent = NewGuiPart7
NewGuiPart11.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart11.BackgroundTransparency = 1
NewGuiPart11.Position = UDim2.new(0, 0, 0, 90)
NewGuiPart11.Rotation = 180
NewGuiPart11.Size = UDim2.new(0, 30, 0, 30)
NewGuiPart11.Image = "rbxassetid://474172996"
NewGuiPart11.ImageColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart12.Name = "Main"
NewGuiPart12.Parent = NewGuiPart7
NewGuiPart12.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart12.BorderSizePixel = 0
NewGuiPart12.Size = UDim2.new(0, 30, 0, 30)
NewGuiPart13.Name = "SlideOut"
NewGuiPart13.Parent = NewGuiPart7
NewGuiPart13.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
NewGuiPart13.BackgroundTransparency = 1
NewGuiPart13.BorderSizePixel = 0
NewGuiPart13.ClipsDescendants = true
NewGuiPart13.Position = UDim2.new(0, 0, 0, 30)
NewGuiPart13.Size = UDim2.new(0, 30, 0, 150)
NewGuiPart14.Name = "SlideFrame"
NewGuiPart14.Parent = NewGuiPart13
NewGuiPart14.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
NewGuiPart14.BorderSizePixel = 0
NewGuiPart14.Position = UDim2.new(0, 0, 0, -150)
NewGuiPart14.Size = UDim2.new(0, 30, 0, 150)
NewGuiPart15.Name = "Explorer"
NewGuiPart15.Parent = NewGuiPart14
NewGuiPart15.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart15.BackgroundTransparency = 1
NewGuiPart15.BorderSizePixel = 0
NewGuiPart15.Position = UDim2.new(0, 0, 0, 120)
NewGuiPart15.Size = UDim2.new(0, 30, 0, 30)
NewGuiPart15.ZIndex = 2
NewGuiPart15.AutoButtonColor = false
NewGuiPart15.Font = Enum.Font.Gotham
NewGuiPart15.FontSize = Enum.FontSize.Size24
NewGuiPart15.Text = ""
NewGuiPart16.Name = "Icon"
NewGuiPart16.Parent = NewGuiPart15
NewGuiPart16.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart16.BackgroundTransparency = 1
NewGuiPart16.Position = UDim2.new(0, 5, 0, 5)
NewGuiPart16.Size = UDim2.new(0, 20, 0, 20)
NewGuiPart16.ZIndex = 2
NewGuiPart16.Image = "rbxassetid://472635937"
NewGuiPart16.ImageColor3 = Color3.new(0.27451, 0.27451, 0.27451)
NewGuiPart17.Name = "SaveMap"
NewGuiPart17.Parent = NewGuiPart14
NewGuiPart17.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart17.BackgroundTransparency = 1
NewGuiPart17.BorderSizePixel = 0
NewGuiPart17.Position = UDim2.new(0, 0, 0, 90)
NewGuiPart17.Size = UDim2.new(0, 30, 0, 30)
NewGuiPart17.ZIndex = 2
NewGuiPart17.AutoButtonColor = false
NewGuiPart17.Font = Enum.Font.Gotham
NewGuiPart17.FontSize = Enum.FontSize.Size24
NewGuiPart17.Text = ""
NewGuiPart18.Name = "Icon"
NewGuiPart18.Parent = NewGuiPart17
NewGuiPart18.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart18.BackgroundTransparency = 1
NewGuiPart18.Position = UDim2.new(0, 5, 0, 5)
NewGuiPart18.Size = UDim2.new(0, 20, 0, 20)
NewGuiPart18.ZIndex = 2
NewGuiPart18.Image = "rbxassetid://472636337"
NewGuiPart18.ImageColor3 = Color3.new(0.27451, 0.27451, 0.27451)
NewGuiPart19.Name = "Settings"
NewGuiPart19.Parent = NewGuiPart14
NewGuiPart19.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart19.BackgroundTransparency = 1
NewGuiPart19.BorderSizePixel = 0
NewGuiPart19.Position = UDim2.new(0, 0, 0, 30)
NewGuiPart19.Size = UDim2.new(0, 30, 0, 30)
NewGuiPart19.ZIndex = 2
NewGuiPart19.AutoButtonColor = false
NewGuiPart19.Font = Enum.Font.Gotham
NewGuiPart19.FontSize = Enum.FontSize.Size24
NewGuiPart19.Text = ""
NewGuiPart20.Name = "Icon"
NewGuiPart20.Parent = NewGuiPart19
NewGuiPart20.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart20.BackgroundTransparency = 1
NewGuiPart20.Position = UDim2.new(0, 5, 0, 5)
NewGuiPart20.Size = UDim2.new(0, 20, 0, 20)
NewGuiPart20.ZIndex = 2
NewGuiPart20.Image = "rbxassetid://472635774"
NewGuiPart20.ImageColor3 = Color3.new(0.27451, 0.27451, 0.27451)
NewGuiPart21.Name = "Remotes"
NewGuiPart21.Parent = NewGuiPart14
NewGuiPart21.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart21.BackgroundTransparency = 1
NewGuiPart21.BorderSizePixel = 0
NewGuiPart21.Position = UDim2.new(0, 0, 0, 60)
NewGuiPart21.Size = UDim2.new(0, 30, 0, 30)
NewGuiPart21.ZIndex = 2
NewGuiPart21.AutoButtonColor = false
NewGuiPart21.Font = Enum.Font.Gotham
NewGuiPart21.FontSize = Enum.FontSize.Size24
NewGuiPart21.Text = ""
NewGuiPart22.Name = "Icon"
NewGuiPart22.Parent = NewGuiPart21
NewGuiPart22.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart22.BackgroundTransparency = 1
NewGuiPart22.Position = UDim2.new(0, 5, 0, 5)
NewGuiPart22.Size = UDim2.new(0, 20, 0, 20)
NewGuiPart22.ZIndex = 2
NewGuiPart22.Image = "rbxassetid://472636187"
NewGuiPart22.ImageColor3 = Color3.new(0.27451, 0.27451, 0.27451)
NewGuiPart23.Name = "About"
NewGuiPart23.Parent = NewGuiPart14
NewGuiPart23.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart23.BackgroundTransparency = 1
NewGuiPart23.BorderSizePixel = 0
NewGuiPart23.Size = UDim2.new(0, 30, 0, 30)
NewGuiPart23.ZIndex = 2
NewGuiPart23.AutoButtonColor = false
NewGuiPart23.Font = Enum.Font.Gotham
NewGuiPart23.FontSize = Enum.FontSize.Size24
NewGuiPart23.Text = ""
NewGuiPart24.Name = "Icon"
NewGuiPart24.Parent = NewGuiPart23
NewGuiPart24.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart24.BackgroundTransparency = 1
NewGuiPart24.Position = UDim2.new(0, 5, 0, 5)
NewGuiPart24.Size = UDim2.new(0, 20, 0, 20)
NewGuiPart24.ZIndex = 2
NewGuiPart24.Image = "rbxassetid://476354004"
NewGuiPart24.ImageColor3 = Color3.new(0.27451, 0.27451, 0.27451)
NewGuiPart25.Name = "OpenScriptEditor"
NewGuiPart25.Parent = NewGuiPart7
NewGuiPart25.Active = false
NewGuiPart25.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart25.BorderSizePixel = 0
NewGuiPart25.Position = UDim2.new(0, 0, 0, 30)
NewGuiPart25.Size = UDim2.new(0, 30, 0, 30)
NewGuiPart25.ZIndex = 2
NewGuiPart25.AutoButtonColor = false
NewGuiPart25.Font = Enum.Font.Gotham
NewGuiPart25.FontSize = Enum.FontSize.Size24
NewGuiPart25.Text = ""
NewGuiPart26.Name = "Icon"
NewGuiPart26.Parent = NewGuiPart25
NewGuiPart26.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart26.BackgroundTransparency = 1
NewGuiPart26.Position = UDim2.new(0, 5, 0, 5)
NewGuiPart26.Size = UDim2.new(0, 20, 0, 20)
NewGuiPart26.ZIndex = 2
NewGuiPart26.Image = "rbxassetid://475456048"
NewGuiPart26.ImageColor3 = Color3.new(0.105882, 0.164706, 0.207843)
NewGuiPart26.ImageTransparency = 1
NewGuiPart27.Name = "Toggle"
NewGuiPart27.Parent = NewGuiPart1
NewGuiPart27.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart27.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart27.Position = UDim2.new(1, 0, 0, 0)
NewGuiPart27.Size = UDim2.new(0, 30, 0, 30)
NewGuiPart27.Font = Enum.Font.Gotham
NewGuiPart27.FontSize = Enum.FontSize.Size24
NewGuiPart27.Text = "<"
NewGuiPart28.Name = "SettingsPanel"
NewGuiPart28.Parent = NewGuiPart1
NewGuiPart28.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart28.BackgroundTransparency = 0.10000000149012
NewGuiPart28.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
NewGuiPart28.Position = UDim2.new(1, 0, 0, 0)
NewGuiPart28.Size = UDim2.new(0, 300, 1, 0)
NewGuiPart162.Name = "GetSetting"
NewGuiPart162.Parent = NewGuiPart28
NewGuiPart162.Archivable = true
NewGuiPart29.Name = "Header"
NewGuiPart29.Parent = NewGuiPart28
NewGuiPart29.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart29.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart29.Size = UDim2.new(1, 0, 0, 17)
NewGuiPart30.Parent = NewGuiPart29
NewGuiPart30.BackgroundTransparency = 1
NewGuiPart30.Position = UDim2.new(0, 4, 0, 0)
NewGuiPart30.Size = UDim2.new(1, -4, 1, 0)
NewGuiPart30.Font = Enum.Font.Gotham
NewGuiPart30.FontSize = Enum.FontSize.Size14
NewGuiPart30.Text = "Settings"
NewGuiPart30.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart30.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart31.Name = "SettingTemplate"
NewGuiPart31.Parent = NewGuiPart28
NewGuiPart31.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart31.BackgroundTransparency = 1
NewGuiPart31.Position = UDim2.new(0, 0, 0, 18)
NewGuiPart31.Size = UDim2.new(1, 0, 0, 60)
NewGuiPart31.Visible = false
NewGuiPart32.Name = "SName"
NewGuiPart32.Parent = NewGuiPart31
NewGuiPart32.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart32.BackgroundTransparency = 1
NewGuiPart32.Position = UDim2.new(0, 10, 0, 0)
NewGuiPart32.Size = UDim2.new(1, -20, 0, 30)
NewGuiPart32.Font = Enum.Font.Gotham
NewGuiPart32.FontSize = Enum.FontSize.Size18
NewGuiPart32.Text = "SettingName"
NewGuiPart32.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart33.Name = "Status"
NewGuiPart33.Parent = NewGuiPart31
NewGuiPart33.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart33.BackgroundTransparency = 1
NewGuiPart33.Position = UDim2.new(0, 60, 0, 30)
NewGuiPart33.Size = UDim2.new(0, 50, 0, 15)
NewGuiPart33.Font = Enum.Font.Gotham
NewGuiPart33.FontSize = Enum.FontSize.Size18
NewGuiPart33.Text = "Off"
NewGuiPart33.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart34.Name = "Change"
NewGuiPart34.Parent = NewGuiPart31
NewGuiPart34.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
NewGuiPart34.BorderSizePixel = 0
NewGuiPart34.Position = UDim2.new(0, 10, 0, 30)
NewGuiPart34.Size = UDim2.new(0, 40, 0, 15)
NewGuiPart34.Font = Enum.Font.Gotham
NewGuiPart34.FontSize = Enum.FontSize.Size14
NewGuiPart34.Text = ""
NewGuiPart35.Name = "OnBar"
NewGuiPart35.Parent = NewGuiPart34
NewGuiPart35.BackgroundColor3 = Color3.new(0, 0.576471, 0.862745)
NewGuiPart35.BorderSizePixel = 0
NewGuiPart35.Size = UDim2.new(0, 0, 0, 15)
NewGuiPart35.Font = Enum.Font.Gotham
NewGuiPart35.FontSize = Enum.FontSize.Size14
NewGuiPart35.Text = ""
NewGuiPart36.Name = "Bar"
NewGuiPart36.Parent = NewGuiPart34
NewGuiPart36.BackgroundColor3 = Color3.new(0, 0, 0)
NewGuiPart36.BorderSizePixel = 0
NewGuiPart36.ClipsDescendants = true
NewGuiPart36.Position = UDim2.new(0, -2, 0, -2)
NewGuiPart36.Size = UDim2.new(0, 10, 0, 19)
NewGuiPart36.Font = Enum.Font.Gotham
NewGuiPart36.FontSize = Enum.FontSize.Size14
NewGuiPart36.Text = ""
NewGuiPart37.Name = "SettingList"
NewGuiPart37.Parent = NewGuiPart28
NewGuiPart37.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart37.BackgroundTransparency = 1
NewGuiPart37.Position = UDim2.new(0, 0, 0, 17)
NewGuiPart37.Size = UDim2.new(1, 0, 1, -17)
NewGuiPart38.Name = "SaveInstance"
NewGuiPart38.Parent = NewGuiPart1
NewGuiPart38.Active = true
NewGuiPart38.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart38.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart38.Draggable = true
NewGuiPart38.Position = UDim2.new(0.300000012, 0, 0.300000012, 0)
NewGuiPart38.Size = UDim2.new(0, 350, 0, 20)
NewGuiPart38.Visible = false
NewGuiPart38.ZIndex = 2
NewGuiPart39.Name = "Title"
NewGuiPart39.Parent = NewGuiPart38
NewGuiPart39.BackgroundTransparency = 1
NewGuiPart39.Size = UDim2.new(1, 0, 1, 0)
NewGuiPart39.ZIndex = 2
NewGuiPart39.Font = Enum.Font.Gotham
NewGuiPart39.FontSize = Enum.FontSize.Size14
NewGuiPart39.Text = "Save Instance"
NewGuiPart39.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart39.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart40.Name = "MainWindow"
NewGuiPart40.Parent = NewGuiPart38
NewGuiPart40.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart40.BackgroundTransparency = 0.10000000149012
NewGuiPart40.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
NewGuiPart40.Size = UDim2.new(1, 0, 0, 200)
NewGuiPart41.Name = "Save"
NewGuiPart41.Parent = NewGuiPart40
NewGuiPart41.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart41.BackgroundTransparency = 0.5
NewGuiPart41.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart41.Position = UDim2.new(0.075000003, 0, 1, -40)
NewGuiPart41.Size = UDim2.new(0.400000006, 0, 0, 30)
NewGuiPart41.Font = Enum.Font.Gotham
NewGuiPart41.FontSize = Enum.FontSize.Size18
NewGuiPart41.Text = "Save"
NewGuiPart42.Name = "Desc"
NewGuiPart42.Parent = NewGuiPart40
NewGuiPart42.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart42.BackgroundTransparency = 1
NewGuiPart42.Position = UDim2.new(0, 0, 0, 20)
NewGuiPart42.Size = UDim2.new(1, 0, 0, 40)
NewGuiPart42.Font = Enum.Font.Gotham
NewGuiPart42.FontSize = Enum.FontSize.Size14
NewGuiPart42.Text = "This will save an instance to your PC. Type in the name for your instance. (.rbxmx will be added automatically.)"
NewGuiPart42.TextWrapped = true
NewGuiPart43.Name = "Cancel"
NewGuiPart43.Parent = NewGuiPart40
NewGuiPart43.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart43.BackgroundTransparency = 0.5
NewGuiPart43.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart43.Position = UDim2.new(0.524999976, 0, 1, -40)
NewGuiPart43.Size = UDim2.new(0.400000006, 0, 0, 30)
NewGuiPart43.Font = Enum.Font.Gotham
NewGuiPart43.FontSize = Enum.FontSize.Size18
NewGuiPart43.Text = "Cancel"
NewGuiPart44.Name = "FileName"
NewGuiPart44.Parent = NewGuiPart40
NewGuiPart44.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart44.BackgroundTransparency = 0.20000000298023
NewGuiPart44.Position = UDim2.new(0.075000003, 0, 0.400000006, 0)
NewGuiPart44.Size = UDim2.new(0.850000024, 0, 0, 30)
NewGuiPart44.Font = Enum.Font.Gotham
NewGuiPart44.FontSize = Enum.FontSize.Size18
NewGuiPart44.Text = ""
NewGuiPart44.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart45.Name = "SaveObjects"
NewGuiPart45.Parent = NewGuiPart40
NewGuiPart45.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart45.BackgroundTransparency = 0.60000002384186
NewGuiPart45.Position = UDim2.new(0.075000003, 0, 0.625, 0)
NewGuiPart45.Size = UDim2.new(0, 20, 0, 20)
NewGuiPart45.ZIndex = 2
NewGuiPart45.Font = Enum.Font.Gotham
NewGuiPart45.FontSize = Enum.FontSize.Size18
NewGuiPart45.Text = ""
NewGuiPart45.TextColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart46.Name = "enabled"
NewGuiPart46.Parent = NewGuiPart45
NewGuiPart46.BackgroundColor3 = Color3.new(0.380392, 0.380392, 0.380392)
NewGuiPart46.BackgroundTransparency = 0.40000000596046
NewGuiPart46.BorderSizePixel = 0
NewGuiPart46.Position = UDim2.new(0, 3, 0, 3)
NewGuiPart46.Size = UDim2.new(0, 14, 0, 14)
NewGuiPart46.Font = Enum.Font.Gotham
NewGuiPart46.FontSize = Enum.FontSize.Size14
NewGuiPart46.Text = ""
NewGuiPart47.Name = "Desc2"
NewGuiPart47.Parent = NewGuiPart40
NewGuiPart47.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart47.BackgroundTransparency = 1
NewGuiPart47.Position = UDim2.new(0.075000003, 30, 0.625, 0)
NewGuiPart47.Size = UDim2.new(0.925000012, -30, 0, 20)
NewGuiPart47.Font = Enum.Font.Gotham
NewGuiPart47.FontSize = Enum.FontSize.Size14
NewGuiPart47.Text = "Save \"Object\" type values"
NewGuiPart47.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart48.Name = "Confirmation"
NewGuiPart48.Parent = NewGuiPart1
NewGuiPart48.Active = true
NewGuiPart48.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart48.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart48.Draggable = true
NewGuiPart48.Position = UDim2.new(0.300000012, 0, 0.349999994, 0)
NewGuiPart48.Size = UDim2.new(0, 350, 0, 20)
NewGuiPart48.Visible = false
NewGuiPart48.ZIndex = 3
NewGuiPart49.Name = "Title"
NewGuiPart49.Parent = NewGuiPart48
NewGuiPart49.BackgroundTransparency = 1
NewGuiPart49.Size = UDim2.new(1, 0, 1, 0)
NewGuiPart49.ZIndex = 3
NewGuiPart49.Font = Enum.Font.Gotham
NewGuiPart49.FontSize = Enum.FontSize.Size14
NewGuiPart49.Text = "Confirm"
NewGuiPart49.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart49.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart50.Name = "MainWindow"
NewGuiPart50.Parent = NewGuiPart48
NewGuiPart50.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart50.BackgroundTransparency = 0.10000000149012
NewGuiPart50.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
NewGuiPart50.Size = UDim2.new(1, 0, 0, 150)
NewGuiPart50.ZIndex = 2
NewGuiPart51.Name = "Yes"
NewGuiPart51.Parent = NewGuiPart50
NewGuiPart51.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart51.BackgroundTransparency = 0.5
NewGuiPart51.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart51.Position = UDim2.new(0.075000003, 0, 1, -40)
NewGuiPart51.Size = UDim2.new(0.400000006, 0, 0, 30)
NewGuiPart51.ZIndex = 2
NewGuiPart51.Font = Enum.Font.Gotham
NewGuiPart51.FontSize = Enum.FontSize.Size18
NewGuiPart51.Text = "Yes"
NewGuiPart52.Name = "Desc"
NewGuiPart52.Parent = NewGuiPart50
NewGuiPart52.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart52.BackgroundTransparency = 1
NewGuiPart52.Position = UDim2.new(0, 0, 0, 20)
NewGuiPart52.Size = UDim2.new(1, 0, 0, 40)
NewGuiPart52.ZIndex = 2
NewGuiPart52.Font = Enum.Font.Gotham
NewGuiPart52.FontSize = Enum.FontSize.Size14
NewGuiPart52.Text = "The file, FILENAME, already exists. Overwrite?"
NewGuiPart52.TextWrapped = true
NewGuiPart53.Name = "No"
NewGuiPart53.Parent = NewGuiPart50
NewGuiPart53.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart53.BackgroundTransparency = 0.5
NewGuiPart53.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart53.Position = UDim2.new(0.524999976, 0, 1, -40)
NewGuiPart53.Size = UDim2.new(0.400000006, 0, 0, 30)
NewGuiPart53.ZIndex = 2
NewGuiPart53.Font = Enum.Font.Gotham
NewGuiPart53.FontSize = Enum.FontSize.Size18
NewGuiPart53.Text = "No"
NewGuiPart54.Name = "Caution"
NewGuiPart54.Parent = NewGuiPart1
NewGuiPart54.Active = true
NewGuiPart54.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart54.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart54.Draggable = true
NewGuiPart54.Position = UDim2.new(0.300000012, 0, 0.300000012, 0)
NewGuiPart54.Size = UDim2.new(0, 350, 0, 20)
NewGuiPart54.Visible = false
NewGuiPart54.ZIndex = 5
NewGuiPart55.Name = "Title"
NewGuiPart55.Parent = NewGuiPart54
NewGuiPart55.BackgroundTransparency = 1
NewGuiPart55.Size = UDim2.new(1, 0, 1, 0)
NewGuiPart55.ZIndex = 5
NewGuiPart55.Font = Enum.Font.Gotham
NewGuiPart55.FontSize = Enum.FontSize.Size14
NewGuiPart55.Text = "Caution"
NewGuiPart55.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart55.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart56.Name = "MainWindow"
NewGuiPart56.Parent = NewGuiPart54
NewGuiPart56.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart56.BackgroundTransparency = 0.10000000149012
NewGuiPart56.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
NewGuiPart56.Size = UDim2.new(1, 0, 0, 150)
NewGuiPart56.ZIndex = 4
NewGuiPart57.Name = "Desc"
NewGuiPart57.Parent = NewGuiPart56
NewGuiPart57.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart57.BackgroundTransparency = 1
NewGuiPart57.Position = UDim2.new(0, 0, 0, 20)
NewGuiPart57.Size = UDim2.new(1, 0, 0, 42)
NewGuiPart57.ZIndex = 4
NewGuiPart57.Font = Enum.Font.Gotham
NewGuiPart57.FontSize = Enum.FontSize.Size14
NewGuiPart57.Text = "The file, FILENAME, already exists. Overwrite?"
NewGuiPart57.TextWrapped = true
NewGuiPart58.Name = "Ok"
NewGuiPart58.Parent = NewGuiPart56
NewGuiPart58.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart58.BackgroundTransparency = 0.5
NewGuiPart58.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart58.Position = UDim2.new(0.300000012, 0, 1, -40)
NewGuiPart58.Size = UDim2.new(0.400000006, 0, 0, 30)
NewGuiPart58.ZIndex = 4
NewGuiPart58.Font = Enum.Font.Gotham
NewGuiPart58.FontSize = Enum.FontSize.Size18
NewGuiPart58.Text = "Ok"
NewGuiPart59.Name = "CallRemote"
NewGuiPart59.Parent = NewGuiPart1
NewGuiPart59.Active = true
NewGuiPart59.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart59.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart59.Draggable = true
NewGuiPart59.Position = UDim2.new(0.300000012, 0, 0.300000012, 0)
NewGuiPart59.Size = UDim2.new(0, 350, 0, 20)
NewGuiPart59.Visible = false
NewGuiPart59.ZIndex = 2
NewGuiPart60.Name = "Title"
NewGuiPart60.Parent = NewGuiPart59
NewGuiPart60.BackgroundTransparency = 1
NewGuiPart60.Size = UDim2.new(1, 0, 1, 0)
NewGuiPart60.ZIndex = 2
NewGuiPart60.Font = Enum.Font.Gotham
NewGuiPart60.FontSize = Enum.FontSize.Size14
NewGuiPart60.Text = "Call Remote"
NewGuiPart60.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart60.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart61.Name = "MainWindow"
NewGuiPart61.Parent = NewGuiPart59
NewGuiPart61.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart61.BackgroundTransparency = 0.10000000149012
NewGuiPart61.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
NewGuiPart61.Size = UDim2.new(1, 0, 0, 200)
NewGuiPart62.Name = "Desc"
NewGuiPart62.Parent = NewGuiPart61
NewGuiPart62.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart62.BackgroundTransparency = 1
NewGuiPart62.Position = UDim2.new(0, 0, 0, 20)
NewGuiPart62.Size = UDim2.new(1, 0, 0, 20)
NewGuiPart62.Font = Enum.Font.Gotham
NewGuiPart62.FontSize = Enum.FontSize.Size14
NewGuiPart62.Text = "Arguments"
NewGuiPart62.TextWrapped = true
NewGuiPart63.Name = "Arguments"
NewGuiPart63.Parent = NewGuiPart61
NewGuiPart63.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart63.BackgroundTransparency = 1
NewGuiPart63.Position = UDim2.new(0, 0, 0, 40)
NewGuiPart63.Size = UDim2.new(1, 0, 0, 80)
NewGuiPart63.BottomImage = "rbxasset://textures/blackBkg_square.png"
NewGuiPart63.CanvasSize = UDim2.new(0, 0, 0, 0)
NewGuiPart63.MidImage = "rbxasset://textures/blackBkg_square.png"
NewGuiPart63.TopImage = "rbxasset://textures/blackBkg_square.png"
NewGuiPart64.Name = "DisplayReturned"
NewGuiPart64.Parent = NewGuiPart61
NewGuiPart64.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart64.BackgroundTransparency = 0.60000002384186
NewGuiPart64.Position = UDim2.new(0.075000003, 0, 0.625, 0)
NewGuiPart64.Size = UDim2.new(0, 20, 0, 20)
NewGuiPart64.ZIndex = 2
NewGuiPart64.Font = Enum.Font.Gotham
NewGuiPart64.FontSize = Enum.FontSize.Size18
NewGuiPart64.Text = ""
NewGuiPart64.TextColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart65.Name = "enabled"
NewGuiPart65.Parent = NewGuiPart64
NewGuiPart65.BackgroundColor3 = Color3.new(0.380392, 0.380392, 0.380392)
NewGuiPart65.BackgroundTransparency = 0.40000000596046
NewGuiPart65.BorderSizePixel = 0
NewGuiPart65.Position = UDim2.new(0, 3, 0, 3)
NewGuiPart65.Size = UDim2.new(0, 14, 0, 14)
NewGuiPart65.Visible = false
NewGuiPart65.Font = Enum.Font.Gotham
NewGuiPart65.FontSize = Enum.FontSize.Size14
NewGuiPart65.Text = ""
NewGuiPart66.Name = "Desc2"
NewGuiPart66.Parent = NewGuiPart61
NewGuiPart66.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart66.BackgroundTransparency = 1
NewGuiPart66.Position = UDim2.new(0.075000003, 30, 0.625, 0)
NewGuiPart66.Size = UDim2.new(0.925000012, -30, 0, 20)
NewGuiPart66.Font = Enum.Font.Gotham
NewGuiPart66.FontSize = Enum.FontSize.Size14
NewGuiPart66.Text = "Display values returned"
NewGuiPart66.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart67.Name = "Add"
NewGuiPart67.Parent = NewGuiPart61
NewGuiPart67.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart67.BackgroundTransparency = 0.5
NewGuiPart67.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart67.Position = UDim2.new(0.800000012, 0, 0.625, 0)
NewGuiPart67.Size = UDim2.new(0, 20, 0, 20)
NewGuiPart67.Font = Enum.Font.GothamBold
NewGuiPart67.FontSize = Enum.FontSize.Size24
NewGuiPart67.Text = "+"
NewGuiPart68.Name = "Subtract"
NewGuiPart68.Parent = NewGuiPart61
NewGuiPart68.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart68.BackgroundTransparency = 0.5
NewGuiPart68.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart68.Position = UDim2.new(0.899999976, 0, 0.625, 0)
NewGuiPart68.Size = UDim2.new(0, 20, 0, 20)
NewGuiPart68.Font = Enum.Font.GothamBold
NewGuiPart68.FontSize = Enum.FontSize.Size24
NewGuiPart68.Text = "-"
NewGuiPart69.Name = "ArgumentTemplate"
NewGuiPart69.Parent = NewGuiPart61
NewGuiPart69.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart69.BackgroundTransparency = 0.5
NewGuiPart69.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
NewGuiPart69.Size = UDim2.new(1, 0, 0, 20)
NewGuiPart69.Visible = false
NewGuiPart70.Name = "Type"
NewGuiPart70.Parent = NewGuiPart69
NewGuiPart70.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart70.BackgroundTransparency = 0.89999997615814
NewGuiPart70.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart70.Size = UDim2.new(0.400000006, 0, 0, 20)
NewGuiPart70.Font = Enum.Font.Gotham
NewGuiPart70.FontSize = Enum.FontSize.Size18
NewGuiPart70.Text = "Script"
NewGuiPart71.Name = "Value"
NewGuiPart71.Parent = NewGuiPart69
NewGuiPart71.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart71.BackgroundTransparency = 0.89999997615814
NewGuiPart71.Position = UDim2.new(0.400000006, 0, 0, 0)
NewGuiPart71.Size = UDim2.new(0.600000024, -12, 0, 20)
NewGuiPart71.Font = Enum.Font.Gotham
NewGuiPart71.FontSize = Enum.FontSize.Size14
NewGuiPart71.Text = ""
NewGuiPart71.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart72.Name = "Cancel"
NewGuiPart72.Parent = NewGuiPart61
NewGuiPart72.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart72.BackgroundTransparency = 0.5
NewGuiPart72.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart72.Size = UDim2.new(0.400000006, 0, 0, 30)
NewGuiPart72.Font = Enum.Font.Gotham
NewGuiPart72.FontSize = Enum.FontSize.Size18
NewGuiPart72.Text = "Cancel"
NewGuiPart73.Name = "Ok"
NewGuiPart73.Parent = NewGuiPart61
NewGuiPart73.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart73.BackgroundTransparency = 0.5
NewGuiPart73.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart73.Position = UDim2.new(0.075000003, 0, 1, -40)
NewGuiPart73.Size = UDim2.new(0.400000006, 0, 0, 30)
NewGuiPart73.Font = Enum.Font.Gotham
NewGuiPart73.FontSize = Enum.FontSize.Size18
NewGuiPart73.Text = "Call"
NewGuiPart74.Name = "TableCaution"
NewGuiPart74.Parent = NewGuiPart1
NewGuiPart74.Active = true
NewGuiPart74.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart74.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart74.Draggable = true
NewGuiPart74.Position = UDim2.new(0.300000012, 0, 0.300000012, 0)
NewGuiPart74.Size = UDim2.new(0, 350, 0, 20)
NewGuiPart74.Visible = false
NewGuiPart74.ZIndex = 2
NewGuiPart75.Name = "MainWindow"
NewGuiPart75.Parent = NewGuiPart74
NewGuiPart75.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart75.BackgroundTransparency = 0.10000000149012
NewGuiPart75.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
NewGuiPart75.Size = UDim2.new(1, 0, 0, 150)
NewGuiPart76.Name = "Ok"
NewGuiPart76.Parent = NewGuiPart75
NewGuiPart76.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart76.BackgroundTransparency = 0.5
NewGuiPart76.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart76.Position = UDim2.new(0.300000012, 0, 1, -40)
NewGuiPart76.Size = UDim2.new(0.400000006, 0, 0, 30)
NewGuiPart76.Font = Enum.Font.Gotham
NewGuiPart76.FontSize = Enum.FontSize.Size18
NewGuiPart76.Text = "Ok"
NewGuiPart77.Name = "TableResults"
NewGuiPart77.Parent = NewGuiPart75
NewGuiPart77.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart77.BackgroundTransparency = 1
NewGuiPart77.Position = UDim2.new(0, 0, 0, 20)
NewGuiPart77.Size = UDim2.new(1, 0, 0, 80)
NewGuiPart77.BottomImage = "rbxasset://textures/blackBkg_square.png"
NewGuiPart77.CanvasSize = UDim2.new(0, 0, 0, 0)
NewGuiPart77.MidImage = "rbxasset://textures/blackBkg_square.png"
NewGuiPart77.TopImage = "rbxasset://textures/blackBkg_square.png"
NewGuiPart78.Name = "TableTemplate"
NewGuiPart78.Parent = NewGuiPart75
NewGuiPart78.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart78.BackgroundTransparency = 0.5
NewGuiPart78.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
NewGuiPart78.Size = UDim2.new(1, 0, 0, 20)
NewGuiPart78.Visible = false
NewGuiPart79.Name = "Type"
NewGuiPart79.Parent = NewGuiPart78
NewGuiPart79.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart79.BackgroundTransparency = 0.89999997615814
NewGuiPart79.Size = UDim2.new(0.400000006, 0, 0, 20)
NewGuiPart79.Font = Enum.Font.Gotham
NewGuiPart79.FontSize = Enum.FontSize.Size18
NewGuiPart79.Text = "Script"
NewGuiPart80.Name = "Value"
NewGuiPart80.Parent = NewGuiPart78
NewGuiPart80.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart80.BackgroundTransparency = 0.89999997615814
NewGuiPart80.Position = UDim2.new(0.400000006, 0, 0, 0)
NewGuiPart80.Size = UDim2.new(0.600000024, -12, 0, 20)
NewGuiPart80.Font = Enum.Font.Gotham
NewGuiPart80.FontSize = Enum.FontSize.Size14
NewGuiPart80.Text = "Script"
NewGuiPart81.Name = "Title"
NewGuiPart81.Parent = NewGuiPart74
NewGuiPart81.BackgroundTransparency = 1
NewGuiPart81.Size = UDim2.new(1, 0, 1, 0)
NewGuiPart81.ZIndex = 2
NewGuiPart81.Font = Enum.Font.Gotham
NewGuiPart81.FontSize = Enum.FontSize.Size14
NewGuiPart81.Text = "Caution"
NewGuiPart81.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart81.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart82.Name = "ScriptEditor"
NewGuiPart82.Parent = NewGuiPart1
NewGuiPart82.Active = true
NewGuiPart82.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart82.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart82.Draggable = true
NewGuiPart82.Position = UDim2.new(0.300000012, 0, 0.300000012, 0)
NewGuiPart82.Size = UDim2.new(0, 516, 0, 20)
NewGuiPart82.Visible = false
NewGuiPart82.ZIndex = 5
NewGuiPart163.Name = "OpenScript"
NewGuiPart163.Parent = NewGuiPart82
NewGuiPart163.Archivable = true
NewGuiPart83.Name = "Title"
NewGuiPart83.Parent = NewGuiPart82
NewGuiPart83.BackgroundTransparency = 1
NewGuiPart83.Size = UDim2.new(1, 0, 1, 0)
NewGuiPart83.ZIndex = 5
NewGuiPart83.Font = Enum.Font.Gotham
NewGuiPart83.FontSize = Enum.FontSize.Size14
NewGuiPart83.Text = "Script Viewer"
NewGuiPart83.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart83.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart84.Name = "Cover"
NewGuiPart84.Parent = NewGuiPart82
NewGuiPart84.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart84.BorderSizePixel = 0
NewGuiPart84.Position = UDim2.new(0, 0, 3, 0)
NewGuiPart84.Size = UDim2.new(0, 516, 0, 416)
NewGuiPart85.Name = "EditorGrid"
NewGuiPart85.Parent = NewGuiPart82
NewGuiPart85.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart85.BorderSizePixel = 0
NewGuiPart85.Position = UDim2.new(0, 0, 3, 0)
NewGuiPart85.Size = UDim2.new(0, 500, 0, 400)
NewGuiPart86.Name = "TopBar"
NewGuiPart86.Parent = NewGuiPart82
NewGuiPart86.BackgroundColor3 = Color3.new(0.941177, 0.941177, 0.941177)
NewGuiPart86.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart86.Size = UDim2.new(1, 0, 3, 0)
NewGuiPart87.Name = "ScriptBarLeft"
NewGuiPart87.Parent = NewGuiPart86
NewGuiPart87.Active = false
NewGuiPart87.BackgroundColor3 = Color3.new(0.866667, 0.866667, 0.866667)
NewGuiPart87.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart87.Position = UDim2.new(1, -32, 0, 40)
NewGuiPart87.Size = UDim2.new(0, 16, 0, 20)
NewGuiPart87.AutoButtonColor = false
NewGuiPart88.Name = "Arrow Graphic"
NewGuiPart88.Parent = NewGuiPart87
NewGuiPart88.BackgroundTransparency = 1
NewGuiPart88.BorderSizePixel = 0
NewGuiPart88.Position = UDim2.new(0.5, -4, 0.5, -4)
NewGuiPart88.Size = UDim2.new(0, 8, 0, 8)
NewGuiPart89.Name = "Graphic"
NewGuiPart89.Parent = NewGuiPart88
NewGuiPart89.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart89.BackgroundTransparency = 0.69999998807907
NewGuiPart89.BorderSizePixel = 0
NewGuiPart89.Position = UDim2.new(0.25, 0, 0.375, 0)
NewGuiPart89.Size = UDim2.new(0.125, 0, 0.25, 0)
NewGuiPart90.Name = "Graphic"
NewGuiPart90.Parent = NewGuiPart88
NewGuiPart90.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart90.BackgroundTransparency = 0.69999998807907
NewGuiPart90.BorderSizePixel = 0
NewGuiPart90.Position = UDim2.new(0.375, 0, 0.25, 0)
NewGuiPart90.Size = UDim2.new(0.125, 0, 0.5, 0)
NewGuiPart91.Name = "Graphic"
NewGuiPart91.Parent = NewGuiPart88
NewGuiPart91.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart91.BackgroundTransparency = 0.69999998807907
NewGuiPart91.BorderSizePixel = 0
NewGuiPart91.Position = UDim2.new(0.5, 0, 0.125, 0)
NewGuiPart91.Size = UDim2.new(0.125, 0, 0.75, 0)
NewGuiPart92.Name = "Graphic"
NewGuiPart92.Parent = NewGuiPart88
NewGuiPart92.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart92.BackgroundTransparency = 0.69999998807907
NewGuiPart92.BorderSizePixel = 0
NewGuiPart92.Position = UDim2.new(0.625, 0, 0, 0)
NewGuiPart92.Size = UDim2.new(0.125, 0, 1, 0)
NewGuiPart93.Name = "ScriptBarRight"
NewGuiPart93.Parent = NewGuiPart86
NewGuiPart93.Active = false
NewGuiPart93.BackgroundColor3 = Color3.new(0.866667, 0.866667, 0.866667)
NewGuiPart93.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart93.Position = UDim2.new(1, -16, 0, 40)
NewGuiPart93.Size = UDim2.new(0, 16, 0, 20)
NewGuiPart93.AutoButtonColor = false
NewGuiPart94.Name = "Arrow Graphic"
NewGuiPart94.Parent = NewGuiPart93
NewGuiPart94.BackgroundTransparency = 1
NewGuiPart94.BorderSizePixel = 0
NewGuiPart94.Position = UDim2.new(0.5, -4, 0.5, -4)
NewGuiPart94.Size = UDim2.new(0, 8, 0, 8)
NewGuiPart95.Name = "Graphic"
NewGuiPart95.Parent = NewGuiPart94
NewGuiPart95.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart95.BackgroundTransparency = 0.69999998807907
NewGuiPart95.BorderSizePixel = 0
NewGuiPart95.Position = UDim2.new(0.625, 0, 0.375, 0)
NewGuiPart95.Size = UDim2.new(0.125, 0, 0.25, 0)
NewGuiPart96.Name = "Graphic"
NewGuiPart96.Parent = NewGuiPart94
NewGuiPart96.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart96.BackgroundTransparency = 0.69999998807907
NewGuiPart96.BorderSizePixel = 0
NewGuiPart96.Position = UDim2.new(0.5, 0, 0.25, 0)
NewGuiPart96.Size = UDim2.new(0.125, 0, 0.5, 0)
NewGuiPart97.Name = "Graphic"
NewGuiPart97.Parent = NewGuiPart94
NewGuiPart97.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart97.BackgroundTransparency = 0.69999998807907
NewGuiPart97.BorderSizePixel = 0
NewGuiPart97.Position = UDim2.new(0.375, 0, 0.125, 0)
NewGuiPart97.Size = UDim2.new(0.125, 0, 0.75, 0)
NewGuiPart98.Name = "Graphic"
NewGuiPart98.Parent = NewGuiPart94
NewGuiPart98.BackgroundColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart98.BackgroundTransparency = 0.69999998807907
NewGuiPart98.BorderSizePixel = 0
NewGuiPart98.Position = UDim2.new(0.25, 0, 0, 0)
NewGuiPart98.Size = UDim2.new(0.125, 0, 1, 0)
NewGuiPart99.Name = "Clipboard"
NewGuiPart99.Parent = NewGuiPart86
NewGuiPart99.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart99.BackgroundTransparency = 0.5
NewGuiPart99.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart99.Position = UDim2.new(0, 0, 0, 20)
NewGuiPart99.Size = UDim2.new(0, 80, 0, 20)
NewGuiPart99.Font = Enum.Font.Gotham
NewGuiPart99.FontSize = Enum.FontSize.Size14
NewGuiPart99.Text = "To Clipboard"
NewGuiPart100.Name = "ScriptBar"
NewGuiPart100.Parent = NewGuiPart86
NewGuiPart100.BackgroundColor3 = Color3.new(0.823529, 0.823529, 0.823529)
NewGuiPart100.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart100.ClipsDescendants = true
NewGuiPart100.Position = UDim2.new(0, 0, 0, 40)
NewGuiPart100.Size = UDim2.new(1, -32, 0, 20)
NewGuiPart101.Name = "Entry"
NewGuiPart101.Parent = NewGuiPart86
NewGuiPart101.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart101.BackgroundTransparency = 1
NewGuiPart101.Size = UDim2.new(0, 100, 1, 0)
NewGuiPart101.Visible = false
NewGuiPart102.Name = "Button"
NewGuiPart102.Parent = NewGuiPart101
NewGuiPart102.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart102.BackgroundTransparency = 0.60000002384186
NewGuiPart102.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart102.ClipsDescendants = true
NewGuiPart102.Size = UDim2.new(1, 0, 1, 0)
NewGuiPart102.ZIndex = 4
NewGuiPart102.Font = Enum.Font.Gotham
NewGuiPart102.FontSize = Enum.FontSize.Size12
NewGuiPart102.Text = ""
NewGuiPart102.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart103.Name = "Close"
NewGuiPart103.Parent = NewGuiPart101
NewGuiPart103.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart103.BackgroundTransparency = 1
NewGuiPart103.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart103.Position = UDim2.new(1, -20, 0, 0)
NewGuiPart103.Size = UDim2.new(0, 20, 0, 20)
NewGuiPart103.ZIndex = 4
NewGuiPart103.Font = Enum.Font.Gotham
NewGuiPart103.FontSize = Enum.FontSize.Size14
NewGuiPart103.Text = "X"
NewGuiPart104.Name = "Close"
NewGuiPart104.Parent = NewGuiPart82
NewGuiPart104.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart104.BackgroundTransparency = 1
NewGuiPart104.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart104.Position = UDim2.new(1, -20, 0, 0)
NewGuiPart104.Size = UDim2.new(0, 20, 0, 20)
NewGuiPart104.ZIndex = 5
NewGuiPart104.Font = Enum.Font.Gotham
NewGuiPart104.FontSize = Enum.FontSize.Size14
NewGuiPart104.Text = "X"
NewGuiPart105.Name = "IntroFrame"
NewGuiPart105.Parent = NewGuiPart1
NewGuiPart105.BackgroundColor3 = Color3.new(0.960784, 0.960784, 0.960784)
NewGuiPart105.BorderSizePixel = 0
NewGuiPart105.Position = UDim2.new(1, 30, 0, 0)
NewGuiPart105.Size = UDim2.new(0, 300, 1, 0)
NewGuiPart105.ZIndex = 2
NewGuiPart106.Name = "Main"
NewGuiPart106.Parent = NewGuiPart105
NewGuiPart106.BackgroundColor3 = Color3.new(0.960784, 0.960784, 0.960784)
NewGuiPart106.BorderSizePixel = 0
NewGuiPart106.Position = UDim2.new(0, -30, 0, 0)
NewGuiPart106.Size = UDim2.new(0, 30, 0, 90)
NewGuiPart106.ZIndex = 2
NewGuiPart107.Name = "Title"
NewGuiPart107.Parent = NewGuiPart105
NewGuiPart107.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart107.BackgroundTransparency = 1
NewGuiPart107.Position = UDim2.new(0, 100, 0, 150)
NewGuiPart107.Size = UDim2.new(0, 100, 0, 60)
NewGuiPart107.ZIndex = 2
NewGuiPart107.Font = Enum.Font.GothamBold
NewGuiPart107.FontSize = Enum.FontSize.Size60
NewGuiPart107.Text = "DEX"
NewGuiPart107.TextWrapped = true
NewGuiPart108.Name = "Version"
NewGuiPart108.Parent = NewGuiPart105
NewGuiPart108.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart108.BackgroundTransparency = 1
NewGuiPart108.Position = UDim2.new(0, 100, 0, 210)
NewGuiPart108.Size = UDim2.new(0, 100, 0, 30)
NewGuiPart108.ZIndex = 2
NewGuiPart108.Font = Enum.Font.GothamBold
NewGuiPart108.FontSize = Enum.FontSize.Size28
NewGuiPart108.Text = "V2.0.0"
NewGuiPart108.TextWrapped = true
NewGuiPart109.Name = "Creator"
NewGuiPart109.Parent = NewGuiPart105
NewGuiPart109.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart109.BackgroundTransparency = 1
NewGuiPart109.Position = UDim2.new(0, 80, 0, 300)
NewGuiPart109.Size = UDim2.new(0, 140, 0, 30)
NewGuiPart109.ZIndex = 2
NewGuiPart109.Font = Enum.Font.GothamBold
NewGuiPart109.FontSize = Enum.FontSize.Size28
NewGuiPart109.Text = "Raspberry Pi , Script Made By Advancedev"
NewGuiPart109.TextWrapped = true
NewGuiPart110.Name = "Slant"
NewGuiPart110.Parent = NewGuiPart105
NewGuiPart110.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart110.BackgroundTransparency = 1
NewGuiPart110.Position = UDim2.new(0, -30, 0, 90)
NewGuiPart110.Rotation = 180
NewGuiPart110.Size = UDim2.new(0, 30, 0, 30)
NewGuiPart110.ZIndex = 2
NewGuiPart110.Image = "rbxassetid://474172996"
NewGuiPart110.ImageColor3 = Color3.new(0.960784, 0.960784, 0.960784)
NewGuiPart111.Name = "SaveMapWindow"
NewGuiPart111.Parent = NewGuiPart1
NewGuiPart111.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart111.BackgroundTransparency = 0.10000000149012
NewGuiPart111.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
NewGuiPart111.Position = UDim2.new(1, 0, 0, 0)
NewGuiPart111.Size = UDim2.new(0, 300, 1, 0)
NewGuiPart112.Name = "Header"
NewGuiPart112.Parent = NewGuiPart111
NewGuiPart112.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart112.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart112.Size = UDim2.new(1, 0, 0, 17)
NewGuiPart113.Parent = NewGuiPart112
NewGuiPart113.BackgroundTransparency = 1
NewGuiPart113.Position = UDim2.new(0, 4, 0, 0)
NewGuiPart113.Size = UDim2.new(1, -4, 1, 0)
NewGuiPart113.Font = Enum.Font.Gotham
NewGuiPart113.FontSize = Enum.FontSize.Size14
NewGuiPart113.Text = "Map Downloader"
NewGuiPart113.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart113.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart114.Name = "MapSettings"
NewGuiPart114.Parent = NewGuiPart111
NewGuiPart114.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart114.BackgroundTransparency = 1
NewGuiPart114.Position = UDim2.new(0, 0, 0, 200)
NewGuiPart114.Size = UDim2.new(1, 0, 0, 240)
NewGuiPart115.Name = "Terrain"
NewGuiPart115.Parent = NewGuiPart114
NewGuiPart115.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart115.BackgroundTransparency = 1
NewGuiPart115.Position = UDim2.new(0, 0, 0, 60)
NewGuiPart115.Size = UDim2.new(1, 0, 0, 60)
NewGuiPart116.Name = "SName"
NewGuiPart116.Parent = NewGuiPart115
NewGuiPart116.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart116.BackgroundTransparency = 1
NewGuiPart116.Position = UDim2.new(0, 10, 0, 0)
NewGuiPart116.Size = UDim2.new(1, -20, 0, 30)
NewGuiPart116.Font = Enum.Font.Gotham
NewGuiPart116.FontSize = Enum.FontSize.Size18
NewGuiPart116.Text = "Save Terrain"
NewGuiPart116.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart117.Name = "Status"
NewGuiPart117.Parent = NewGuiPart115
NewGuiPart117.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart117.BackgroundTransparency = 1
NewGuiPart117.Position = UDim2.new(0, 60, 0, 30)
NewGuiPart117.Size = UDim2.new(0, 50, 0, 15)
NewGuiPart117.Font = Enum.Font.Gotham
NewGuiPart117.FontSize = Enum.FontSize.Size18
NewGuiPart117.Text = "Off"
NewGuiPart117.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart118.Name = "Change"
NewGuiPart118.Parent = NewGuiPart115
NewGuiPart118.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
NewGuiPart118.BorderSizePixel = 0
NewGuiPart118.Position = UDim2.new(0, 10, 0, 30)
NewGuiPart118.Size = UDim2.new(0, 40, 0, 15)
NewGuiPart118.Font = Enum.Font.Gotham
NewGuiPart118.FontSize = Enum.FontSize.Size14
NewGuiPart118.Text = ""
NewGuiPart119.Name = "OnBar"
NewGuiPart119.Parent = NewGuiPart118
NewGuiPart119.BackgroundColor3 = Color3.new(0, 0.576471, 0.862745)
NewGuiPart119.BorderSizePixel = 0
NewGuiPart119.Size = UDim2.new(0, 0, 0, 15)
NewGuiPart119.Font = Enum.Font.Gotham
NewGuiPart119.FontSize = Enum.FontSize.Size14
NewGuiPart119.Text = ""
NewGuiPart120.Name = "Bar"
NewGuiPart120.Parent = NewGuiPart118
NewGuiPart120.BackgroundColor3 = Color3.new(0, 0, 0)
NewGuiPart120.BorderSizePixel = 0
NewGuiPart120.ClipsDescendants = true
NewGuiPart120.Position = UDim2.new(0, -2, 0, -2)
NewGuiPart120.Size = UDim2.new(0, 10, 0, 19)
NewGuiPart120.Font = Enum.Font.Gotham
NewGuiPart120.FontSize = Enum.FontSize.Size14
NewGuiPart120.Text = ""
NewGuiPart121.Name = "Lighting"
NewGuiPart121.Parent = NewGuiPart114
NewGuiPart121.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart121.BackgroundTransparency = 1
NewGuiPart121.Position = UDim2.new(0, 0, 0, 120)
NewGuiPart121.Size = UDim2.new(1, 0, 0, 60)
NewGuiPart122.Name = "SName"
NewGuiPart122.Parent = NewGuiPart121
NewGuiPart122.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart122.BackgroundTransparency = 1
NewGuiPart122.Position = UDim2.new(0, 10, 0, 0)
NewGuiPart122.Size = UDim2.new(1, -20, 0, 30)
NewGuiPart122.Font = Enum.Font.Gotham
NewGuiPart122.FontSize = Enum.FontSize.Size18
NewGuiPart122.Text = "Lighting Properties"
NewGuiPart122.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart123.Name = "Status"
NewGuiPart123.Parent = NewGuiPart121
NewGuiPart123.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart123.BackgroundTransparency = 1
NewGuiPart123.Position = UDim2.new(0, 60, 0, 30)
NewGuiPart123.Size = UDim2.new(0, 50, 0, 15)
NewGuiPart123.Font = Enum.Font.Gotham
NewGuiPart123.FontSize = Enum.FontSize.Size18
NewGuiPart123.Text = "Off"
NewGuiPart123.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart124.Name = "Change"
NewGuiPart124.Parent = NewGuiPart121
NewGuiPart124.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
NewGuiPart124.BorderSizePixel = 0
NewGuiPart124.Position = UDim2.new(0, 10, 0, 30)
NewGuiPart124.Size = UDim2.new(0, 40, 0, 15)
NewGuiPart124.Font = Enum.Font.Gotham
NewGuiPart124.FontSize = Enum.FontSize.Size14
NewGuiPart124.Text = ""
NewGuiPart125.Name = "OnBar"
NewGuiPart125.Parent = NewGuiPart124
NewGuiPart125.BackgroundColor3 = Color3.new(0, 0.576471, 0.862745)
NewGuiPart125.BorderSizePixel = 0
NewGuiPart125.Size = UDim2.new(0, 0, 0, 15)
NewGuiPart125.Font = Enum.Font.Gotham
NewGuiPart125.FontSize = Enum.FontSize.Size14
NewGuiPart125.Text = ""
NewGuiPart126.Name = "Bar"
NewGuiPart126.Parent = NewGuiPart124
NewGuiPart126.BackgroundColor3 = Color3.new(0, 0, 0)
NewGuiPart126.BorderSizePixel = 0
NewGuiPart126.ClipsDescendants = true
NewGuiPart126.Position = UDim2.new(0, -2, 0, -2)
NewGuiPart126.Size = UDim2.new(0, 10, 0, 19)
NewGuiPart126.Font = Enum.Font.Gotham
NewGuiPart126.FontSize = Enum.FontSize.Size14
NewGuiPart126.Text = ""
NewGuiPart127.Name = "CameraInstances"
NewGuiPart127.Parent = NewGuiPart114
NewGuiPart127.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart127.BackgroundTransparency = 1
NewGuiPart127.Position = UDim2.new(0, 0, 0, 180)
NewGuiPart127.Size = UDim2.new(1, 0, 0, 60)
NewGuiPart128.Name = "SName"
NewGuiPart128.Parent = NewGuiPart127
NewGuiPart128.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart128.BackgroundTransparency = 1
NewGuiPart128.Position = UDim2.new(0, 10, 0, 0)
NewGuiPart128.Size = UDim2.new(1, -20, 0, 30)
NewGuiPart128.Font = Enum.Font.Gotham
NewGuiPart128.FontSize = Enum.FontSize.Size18
NewGuiPart128.Text = "Camera Instances"
NewGuiPart128.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart129.Name = "Status"
NewGuiPart129.Parent = NewGuiPart127
NewGuiPart129.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart129.BackgroundTransparency = 1
NewGuiPart129.Position = UDim2.new(0, 60, 0, 30)
NewGuiPart129.Size = UDim2.new(0, 50, 0, 15)
NewGuiPart129.Font = Enum.Font.Gotham
NewGuiPart129.FontSize = Enum.FontSize.Size18
NewGuiPart129.Text = "Off"
NewGuiPart129.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart130.Name = "Change"
NewGuiPart130.Parent = NewGuiPart127
NewGuiPart130.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
NewGuiPart130.BorderSizePixel = 0
NewGuiPart130.Position = UDim2.new(0, 10, 0, 30)
NewGuiPart130.Size = UDim2.new(0, 40, 0, 15)
NewGuiPart130.Font = Enum.Font.Gotham
NewGuiPart130.FontSize = Enum.FontSize.Size14
NewGuiPart130.Text = ""
NewGuiPart131.Name = "OnBar"
NewGuiPart131.Parent = NewGuiPart130
NewGuiPart131.BackgroundColor3 = Color3.new(0, 0.576471, 0.862745)
NewGuiPart131.BorderSizePixel = 0
NewGuiPart131.Size = UDim2.new(0, 0, 0, 15)
NewGuiPart131.Font = Enum.Font.Gotham
NewGuiPart131.FontSize = Enum.FontSize.Size14
NewGuiPart131.Text = ""
NewGuiPart132.Name = "Bar"
NewGuiPart132.Parent = NewGuiPart130
NewGuiPart132.BackgroundColor3 = Color3.new(0, 0, 0)
NewGuiPart132.BorderSizePixel = 0
NewGuiPart132.ClipsDescendants = true
NewGuiPart132.Position = UDim2.new(0, -2, 0, -2)
NewGuiPart132.Size = UDim2.new(0, 10, 0, 19)
NewGuiPart132.Font = Enum.Font.Gotham
NewGuiPart132.FontSize = Enum.FontSize.Size14
NewGuiPart132.Text = ""
NewGuiPart133.Name = "Scripts"
NewGuiPart133.Parent = NewGuiPart114
NewGuiPart133.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart133.BackgroundTransparency = 1
NewGuiPart133.Size = UDim2.new(1, 0, 0, 60)
NewGuiPart134.Name = "SName"
NewGuiPart134.Parent = NewGuiPart133
NewGuiPart134.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart134.BackgroundTransparency = 1
NewGuiPart134.Position = UDim2.new(0, 10, 0, 0)
NewGuiPart134.Size = UDim2.new(1, -20, 0, 30)
NewGuiPart134.Font = Enum.Font.Gotham
NewGuiPart134.FontSize = Enum.FontSize.Size18
NewGuiPart134.Text = "Save Scripts"
NewGuiPart134.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart135.Name = "Status"
NewGuiPart135.Parent = NewGuiPart133
NewGuiPart135.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart135.BackgroundTransparency = 1
NewGuiPart135.Position = UDim2.new(0, 60, 0, 30)
NewGuiPart135.Size = UDim2.new(0, 50, 0, 15)
NewGuiPart135.Font = Enum.Font.Gotham
NewGuiPart135.FontSize = Enum.FontSize.Size18
NewGuiPart135.Text = "Off"
NewGuiPart135.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart136.Name = "Change"
NewGuiPart136.Parent = NewGuiPart133
NewGuiPart136.BackgroundColor3 = Color3.new(0.862745, 0.862745, 0.862745)
NewGuiPart136.BorderSizePixel = 0
NewGuiPart136.Position = UDim2.new(0, 10, 0, 30)
NewGuiPart136.Size = UDim2.new(0, 40, 0, 15)
NewGuiPart136.Font = Enum.Font.Gotham
NewGuiPart136.FontSize = Enum.FontSize.Size14
NewGuiPart136.Text = ""
NewGuiPart137.Name = "OnBar"
NewGuiPart137.Parent = NewGuiPart136
NewGuiPart137.BackgroundColor3 = Color3.new(0, 0.576471, 0.862745)
NewGuiPart137.BorderSizePixel = 0
NewGuiPart137.Size = UDim2.new(0, 0, 0, 15)
NewGuiPart137.Font = Enum.Font.Gotham
NewGuiPart137.FontSize = Enum.FontSize.Size14
NewGuiPart137.Text = ""
NewGuiPart138.Name = "Bar"
NewGuiPart138.Parent = NewGuiPart136
NewGuiPart138.BackgroundColor3 = Color3.new(0, 0, 0)
NewGuiPart138.BorderSizePixel = 0
NewGuiPart138.ClipsDescendants = true
NewGuiPart138.Position = UDim2.new(0, -2, 0, -2)
NewGuiPart138.Size = UDim2.new(0, 10, 0, 19)
NewGuiPart138.Font = Enum.Font.Gotham
NewGuiPart138.FontSize = Enum.FontSize.Size14
NewGuiPart138.Text = ""
NewGuiPart139.Name = "ToSave"
NewGuiPart139.Parent = NewGuiPart111
NewGuiPart139.BackgroundTransparency = 1
NewGuiPart139.Position = UDim2.new(0, 0, 0, 17)
NewGuiPart139.Size = UDim2.new(1, 0, 0, 20)
NewGuiPart139.Font = Enum.Font.Gotham
NewGuiPart139.FontSize = Enum.FontSize.Size18
NewGuiPart139.Text = "To Save"
NewGuiPart139.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart140.Name = "CopyList"
NewGuiPart140.Parent = NewGuiPart111
NewGuiPart140.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart140.BackgroundTransparency = 0.80000001192093
NewGuiPart140.Position = UDim2.new(0, 0, 0, 37)
NewGuiPart140.Size = UDim2.new(1, 0, 0, 163)
NewGuiPart141.Name = "Bottom"
NewGuiPart141.Parent = NewGuiPart111
NewGuiPart141.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart141.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart141.Position = UDim2.new(0, 0, 1, -50)
NewGuiPart141.Size = UDim2.new(1, 0, 0, 50)
NewGuiPart142.Parent = NewGuiPart141
NewGuiPart142.BackgroundTransparency = 1
NewGuiPart142.Position = UDim2.new(0, 4, 0, 0)
NewGuiPart142.Size = UDim2.new(1, -4, 1, 0)
NewGuiPart142.Font = Enum.Font.Gotham
NewGuiPart142.FontSize = Enum.FontSize.Size14
NewGuiPart142.Text = "After the map saves, open a new place on studio, then right click Lighting and \"Insert from file...\", then select your file and run the unpacker script inside the folder."
NewGuiPart142.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart142.TextWrapped = true
NewGuiPart142.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart142.TextYAlignment = Enum.TextYAlignment.Top
NewGuiPart143.Name = "Save"
NewGuiPart143.Parent = NewGuiPart111
NewGuiPart143.BackgroundColor3 = Color3.new(0.941177, 0.941177, 0.941177)
NewGuiPart143.BackgroundTransparency = 0.80000001192093
NewGuiPart143.BorderColor3 = Color3.new(0, 0, 0)
NewGuiPart143.Position = UDim2.new(0, 0, 1, -80)
NewGuiPart143.Size = UDim2.new(1, 0, 0, 30)
NewGuiPart143.Font = Enum.Font.Gotham
NewGuiPart143.FontSize = Enum.FontSize.Size18
NewGuiPart143.Text = "Save"
NewGuiPart144.Name = "FileName"
NewGuiPart144.Parent = NewGuiPart111
NewGuiPart144.BackgroundColor3 = Color3.new(0.941177, 0.941177, 0.941177)
NewGuiPart144.BackgroundTransparency = 0.60000002384186
NewGuiPart144.Position = UDim2.new(0, 0, 1, -105)
NewGuiPart144.Size = UDim2.new(1, 0, 0, 25)
NewGuiPart144.Font = Enum.Font.Gotham
NewGuiPart144.FontSize = Enum.FontSize.Size18
NewGuiPart144.Text = "PlaceName"
NewGuiPart144.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart145.Name = "Entry"
NewGuiPart145.Parent = NewGuiPart111
NewGuiPart145.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart145.BackgroundTransparency = 1
NewGuiPart145.Size = UDim2.new(1, 0, 0, 22)
NewGuiPart145.Visible = false
NewGuiPart146.Name = "Change"
NewGuiPart146.Parent = NewGuiPart145
NewGuiPart146.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart146.BackgroundTransparency = 0.60000002384186
NewGuiPart146.Position = UDim2.new(0, 10, 0, 1)
NewGuiPart146.Size = UDim2.new(0, 20, 0, 20)
NewGuiPart146.ZIndex = 2
NewGuiPart146.Font = Enum.Font.Gotham
NewGuiPart146.FontSize = Enum.FontSize.Size18
NewGuiPart146.Text = ""
NewGuiPart146.TextColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart147.Name = "enabled"
NewGuiPart147.Parent = NewGuiPart146
NewGuiPart147.BackgroundColor3 = Color3.new(0.380392, 0.380392, 0.380392)
NewGuiPart147.BackgroundTransparency = 0.40000000596046
NewGuiPart147.BorderSizePixel = 0
NewGuiPart147.Position = UDim2.new(0, 3, 0, 3)
NewGuiPart147.Size = UDim2.new(0, 14, 0, 14)
NewGuiPart147.Font = Enum.Font.Gotham
NewGuiPart147.FontSize = Enum.FontSize.Size14
NewGuiPart147.Text = ""
NewGuiPart148.Name = "Info"
NewGuiPart148.Parent = NewGuiPart145
NewGuiPart148.BackgroundTransparency = 1
NewGuiPart148.Position = UDim2.new(0, 40, 0, 0)
NewGuiPart148.Size = UDim2.new(1, -40, 0, 22)
NewGuiPart148.Font = Enum.Font.Gotham
NewGuiPart148.FontSize = Enum.FontSize.Size18
NewGuiPart148.Text = "Workspace"
NewGuiPart148.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart148.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart149.Name = "RemoteDebugWindow"
NewGuiPart149.Parent = NewGuiPart1
NewGuiPart149.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart149.BackgroundTransparency = 0.10000000149012
NewGuiPart149.BorderColor3 = Color3.new(0.74902, 0.74902, 0.74902)
NewGuiPart149.Position = UDim2.new(1, 0, 0, 0)
NewGuiPart149.Size = UDim2.new(0, 300, 1, 0)
NewGuiPart161.Name = "GetSetting"
NewGuiPart161.Parent = NewGuiPart149
NewGuiPart161.Archivable = true
NewGuiPart150.Name = "Header"
NewGuiPart150.Parent = NewGuiPart149
NewGuiPart150.BackgroundColor3 = Color3.new(0.913726, 0.913726, 0.913726)
NewGuiPart150.BorderColor3 = Color3.new(0.584314, 0.584314, 0.584314)
NewGuiPart150.Size = UDim2.new(1, 0, 0, 17)
NewGuiPart151.Parent = NewGuiPart150
NewGuiPart151.BackgroundTransparency = 1
NewGuiPart151.Position = UDim2.new(0, 4, 0, 0)
NewGuiPart151.Size = UDim2.new(1, -4, 1, 0)
NewGuiPart151.Font = Enum.Font.Gotham
NewGuiPart151.FontSize = Enum.FontSize.Size14
NewGuiPart151.Text = "Remote Debugger"
NewGuiPart151.TextColor3 = Color3.new(0, 0, 0)
NewGuiPart151.TextXAlignment = Enum.TextXAlignment.Left
NewGuiPart152.Name = "Desc"
NewGuiPart152.Parent = NewGuiPart149
NewGuiPart152.BackgroundColor3 = Color3.fromRGB(54, 54, 54)
NewGuiPart152.BackgroundTransparency = 1
NewGuiPart152.Position = UDim2.new(0, 0, 0, 20)
NewGuiPart152.Size = UDim2.new(1, 0, 0, 40)
NewGuiPart152.Font = Enum.Font.Gotham
NewGuiPart152.FontSize = Enum.FontSize.Size32
NewGuiPart152.Text = "Have fun with remotes"
NewGuiPart152.TextWrapped = true
return NewGuiPart1
end
local D_E_X = CreateGui()
D_E_X.Parent = game:FindFirstChildOfClass("CoreGui")
task.spawn(function()
local Gui = D_E_X
local IntroFrame = Gui:WaitForChild("IntroFrame")
local SideMenu = Gui:WaitForChild("SideMenu")
local OpenToggleButton = Gui:WaitForChild("Toggle")
local CloseToggleButton = SideMenu:WaitForChild("Toggle")
local OpenScriptEditorButton = SideMenu:WaitForChild("OpenScriptEditor")
local ScriptEditor = Gui:WaitForChild("ScriptEditor")
local SlideOut = SideMenu:WaitForChild("SlideOut")
local SlideFrame = SlideOut:WaitForChild("SlideFrame")
local Slant = SideMenu:WaitForChild("Slant")
local ExplorerButton = SlideFrame:WaitForChild("Explorer")
local SettingsButton = SlideFrame:WaitForChild("Settings")
local SelectionBox = Instance.new("SelectionBox")
SelectionBox.Parent = Gui
local ExplorerPanel = Gui:WaitForChild("ExplorerPanel")
local PropertiesFrame = Gui:WaitForChild("PropertiesFrame")
local SaveMapWindow = Gui:WaitForChild("SaveMapWindow")
local RemoteDebugWindow = Gui:WaitForChild("RemoteDebugWindow")
local SettingsPanel = Gui:WaitForChild("SettingsPanel")
local SettingsListener = SettingsPanel:WaitForChild("GetSetting")
local SettingTemplate = SettingsPanel:WaitForChild("SettingTemplate")
local SettingList = SettingsPanel:WaitForChild("SettingList")
local SaveMapCopyList = SaveMapWindow:WaitForChild("CopyList")
local SaveMapSettingFrame = SaveMapWindow:WaitForChild("MapSettings")
local SaveMapName = SaveMapWindow:WaitForChild("FileName")
local SaveMapButton = SaveMapWindow:WaitForChild("Save")
local SaveMapCopyTemplate = SaveMapWindow:WaitForChild("Entry")
local SaveMapSettings = {
CopyWhat = {
Workspace = true,
Lighting = true,
ReplicatedStorage = true,
ReplicatedFirst = true,
StarterPack = true,
StarterGui = true,
StarterPlayer = true
},
SaveScripts = true,
SaveTerrain = true,
LightingProperties = true,
CameraInstances = true
}
local TotallyNotSelectionChanged = ExplorerPanel:WaitForChild("TotallyNotSelectionChanged")
local TotallyNotGetSelection = ExplorerPanel:WaitForChild("TotallyNotGetSelection")
local TotallyNotSetSelection = ExplorerPanel:WaitForChild("TotallyNotSetSelection")
local Player = game:GetService("Players").LocalPlayer
local Mouse = Player:GetMouse()
local CurrentWindow = "Nothing c:"
local Windows = {
Explorer = {
ExplorerPanel,
PropertiesFrame
},
Settings = {SettingsPanel},
SaveMap = {SaveMapWindow},
Remotes = {RemoteDebugWindow}
}
function switchWindows(wName,over)
if CurrentWindow == wName and not over then return end
local count = 0
for i,v in pairs(Windows) do
count = 0
if i ~= wName then
for _,c in pairs(v) do c:TweenPosition(UDim2.new(1, 30, count * 0.5, count * 36), "Out", "Quad", 0.5, true) count = count + 1 end
end
end
count = 0
if Windows[wName] then
for _,c in pairs(Windows[wName]) do c:TweenPosition(UDim2.new(1, -300, count * 0.5, count * 36), "Out", "Quad", 0.5, true) count = count + 1 end
end
if wName ~= "Nothing c:" then
CurrentWindow = wName
for i,v in pairs(SlideFrame:GetChildren()) do
v.BackgroundTransparency = 1
v.Icon.ImageColor3 = Color3.new(70/255, 70/255, 70/255)
end
if SlideFrame:FindFirstChild(wName) then
SlideFrame[wName].BackgroundTransparency = 0.5
SlideFrame[wName].Icon.ImageColor3 = Color3.new(0,0,0)
end
end
end
function toggleDex(on)
if on then
SideMenu:TweenPosition(UDim2.new(1, -330, 0, 0), "Out", "Quad", 0.5, true)
OpenToggleButton:TweenPosition(UDim2.new(1,0,0,0), "Out", "Quad", 0.5, true)
switchWindows(CurrentWindow,true)
else
SideMenu:TweenPosition(UDim2.new(1, 0, 0, 0), "Out", "Quad", 0.5, true)
OpenToggleButton:TweenPosition(UDim2.new(1,-30,0,0), "Out", "Quad", 0.5, true)
switchWindows("Nothing c:")
end
end
local Settings = {
ClickSelect = false,
SelBox = false,
ClearProps = false,
SelectUngrouped = true,
SaveInstanceScripts = true
}
function ReturnSetting(set)
if set == "ClearProps" then
return Settings.ClearProps
elseif set == "SelectUngrouped" then
return Settings.SelectUngrouped
end
end
OpenToggleButton.MouseButton1Up:connect(function()
toggleDex(true)
end)
OpenScriptEditorButton.MouseButton1Up:connect(function()
if OpenScriptEditorButton.Active then
ScriptEditor.Visible = true
end
end)
CloseToggleButton.MouseButton1Up:connect(function()
if CloseToggleButton.Active then
toggleDex(false)
end
end)
for i,v in pairs(SlideFrame:GetChildren()) do
v.MouseButton1Click:connect(function()
switchWindows(v.Name)
end)
v.MouseEnter:connect(function()v.BackgroundTransparency = 0.5 end)
v.MouseLeave:connect(function()if CurrentWindow~=v.Name then v.BackgroundTransparency = 1 end end)
end
function createSetting(name,interName,defaultOn)
local newSetting = SettingTemplate:Clone()
newSetting.Position = UDim2.new(0,0,0,#SettingList:GetChildren() * 60)
newSetting.SName.Text = name
local function toggle(on)
if on then
newSetting.Change.Bar:TweenPosition(UDim2.new(0,32,0,-2),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
newSetting.Change.OnBar:TweenSize(UDim2.new(0,34,0,15),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
newSetting.Status.Text = "On"
Settings[interName] = true
else
newSetting.Change.Bar:TweenPosition(UDim2.new(0,-2,0,-2),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
newSetting.Change.OnBar:TweenSize(UDim2.new(0,0,0,15),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
newSetting.Status.Text = "Off"
Settings[interName] = false
end
end
newSetting.Change.MouseButton1Click:connect(function()
toggle(not Settings[interName])
end)
newSetting.Visible = true
newSetting.Parent = SettingList
if defaultOn then
toggle(true)
end
end
createSetting("Click part to select","ClickSelect",false)
createSetting("Selection Box","SelBox",false)
createSetting("Clear property value on focus","ClearProps",false)
createSetting("Select ungrouped models","SelectUngrouped",true)
createSetting("SaveInstance decompiles scripts","SaveInstanceScripts",true)
local function getSelection()
local t = GetSelection:Invoke()
if t and #t > 0 then
return t[1]
else
return nil
end
end
Mouse.Button1Down:connect(function()
if CurrentWindow == "Explorer" and Settings.ClickSelect then
local target = Mouse.Target
if target then
bindSetSelection:Invoke({target})
end
end
end)
TotallyNotSelectionChanged.Event:connect(function()
if Settings.SelBox then
local success,err = pcall(function()
local selection = getSelection()
SelectionBox.Adornee = selection
end)
if err then
SelectionBox.Adornee = nil
end
end
end)
SettingsListener.OnInvoke = ReturnSetting
-- Map Copier
function createMapSetting(obj,interName,defaultOn)
local function toggle(on)
if on then
obj.Change.Bar:TweenPosition(UDim2.new(0,32,0,-2),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
obj.Change.OnBar:TweenSize(UDim2.new(0,34,0,15),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
obj.Status.Text = "On"
SaveMapSettings[interName] = true
else
obj.Change.Bar:TweenPosition(UDim2.new(0,-2,0,-2),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
obj.Change.OnBar:TweenSize(UDim2.new(0,0,0,15),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.25,true)
obj.Status.Text = "Off"
SaveMapSettings[interName] = false
end
end
obj.Change.MouseButton1Click:connect(function()
toggle(not SaveMapSettings[interName])
end)
obj.Visible = true
obj.Parent = SaveMapSettingFrame
if defaultOn then
toggle(true)
end
end
function createCopyWhatSetting(serv)
if SaveMapSettings.CopyWhat[serv] then
local newSetting = SaveMapCopyTemplate:Clone()
newSetting.Position = UDim2.new(0,0,0,#SaveMapCopyList:GetChildren() * 22 + 5)
newSetting.Info.Text = serv
local function toggle(on)
if on then
newSetting.Change.enabled.Visible = true
SaveMapSettings.CopyWhat[serv] = true
else
newSetting.Change.enabled.Visible = false
SaveMapSettings.CopyWhat[serv] = false
end
end
newSetting.Change.MouseButton1Click:connect(function()
toggle(not SaveMapSettings.CopyWhat[serv])
end)
newSetting.Visible = true
newSetting.Parent = SaveMapCopyList
end
end
createMapSetting(SaveMapSettingFrame.Scripts,"SaveScripts",true)
createMapSetting(SaveMapSettingFrame.Terrain,"SaveTerrain",true)
createMapSetting(SaveMapSettingFrame.Lighting,"LightingProperties",true)
createMapSetting(SaveMapSettingFrame.CameraInstances,"CameraInstances",true)
createCopyWhatSetting("Workspace")
createCopyWhatSetting("Lighting")
createCopyWhatSetting("ReplicatedStorage")
createCopyWhatSetting("ReplicatedFirst")
createCopyWhatSetting("StarterPack")
createCopyWhatSetting("StarterGui")
createCopyWhatSetting("StarterPlayer")
SaveMapName.Text = tostring(game.PlaceId).."MapCopy"
SaveMapButton.MouseButton1Click:connect(function()
local copyWhat = {}
local copyGroup = Instance.new("Model",game.ReplicatedStorage)
local copyScripts = SaveMapSettings.SaveScripts
local copyTerrain = SaveMapSettings.SaveTerrain
local lightingProperties = SaveMapSettings.LightingProperties
local cameraInstances = SaveMapSettings.CameraInstances
-----------------------------------------------------------------------------------
for i,v in pairs(SaveMapSettings.CopyWhat) do
if v then
table.insert(copyWhat,i)
end
end
local consoleFunc = printconsole or writeconsole
if consoleFunc then
consoleFunc("Raspberry Pi's place copier loaded.")
consoleFunc("Copying map of game "..tostring(game.PlaceId)..".")
end
function archivable(root)
for i,v in pairs(root:GetChildren()) do
if not game:GetService("Players"):GetPlayerFromCharacter(v) then
v.Archivable = true
archivable(v)
end
end
end
function decompileS(root)
for i,v in pairs(root:GetChildren()) do
pcall(function()
if v:IsA("LocalScript") then
local isDisabled = v.Disabled
v.Disabled = true
v.Source = decompile(v)
v.Disabled = isDisabled
if v.Source == "" then
if consoleFunc then consoleFunc("LocalScript "..v.Name.." had a problem decompiling.") end
else
if consoleFunc then consoleFunc("LocalScript "..v.Name.." decompiled.") end
end
elseif v:IsA("ModuleScript") then
v.Source = decompile(v)
if v.Source == "" then
if consoleFunc then consoleFunc("ModuleScript "..v.Name.." had a problem decompiling.") end
else
if consoleFunc then consoleFunc("ModuleScript "..v.Name.." decompiled.") end
end
end
end)
decompileS(v)
end
end
for i,v in pairs(copyWhat) do archivable(game[v]) end
for j,obj in pairs(copyWhat) do
if obj ~= "StarterPlayer" then
local newFolder = Instance.new("Folder",copyGroup)
newFolder.Name = obj
for i,v in pairs(game[obj]:GetChildren()) do
if v ~= copyGroup then
pcall(function()
v:Clone().Parent = newFolder
end)
end
end
else
local newFolder = Instance.new("Model",copyGroup)
newFolder.Name = "StarterPlayer"
for i,v in pairs(game[obj]:GetChildren()) do
local newObj = Instance.new("Folder",newFolder)
newObj.Name = v.Name
for _,c in pairs(v:GetChildren()) do
if c.Name ~= "ControlScript" and c.Name ~= "CameraScript" then
c:Clone().Parent = newObj
end
end
end
end
end
if workspace.CurrentCamera and cameraInstances then
local cameraFolder = Instance.new("Model",copyGroup)
cameraFolder.Name = "CameraItems"
for i,v in pairs(workspace.CurrentCamera:GetChildren()) do v:Clone().Parent = cameraFolder end
end
if copyTerrain then
local myTerrain = workspace.Terrain:CopyRegion(workspace.Terrain.MaxExtents)
myTerrain.Parent = copyGroup
end
function saveProp(obj,prop,par)
local myProp = obj[prop]
if type(myProp) == "boolean" then
local newProp = Instance.new("BoolValue",par)
newProp.Name = prop
newProp.Value = myProp
elseif type(myProp) == "number" then
local newProp = Instance.new("IntValue",par)
newProp.Name = prop
newProp.Value = myProp
elseif type(myProp) == "string" then
local newProp = Instance.new("StringValue",par)
newProp.Name = prop
newProp.Value = myProp
elseif type(myProp) == "userdata" then -- Assume Color3
pcall(function()
local newProp = Instance.new("Color3Value",par)
newProp.Name = prop
newProp.Value = myProp
end)
end
end
if lightingProperties then
local lightingProps = Instance.new("Model",copyGroup)
lightingProps.Name = "LightingProperties"
saveProp(game.Lighting,"Ambient",lightingProps)
saveProp(game.Lighting,"Brightness",lightingProps)
saveProp(game.Lighting,"ColorShift_Bottom",lightingProps)
saveProp(game.Lighting,"ColorShift_Top",lightingProps)
saveProp(game.Lighting,"GlobalShadows",lightingProps)
saveProp(game.Lighting,"OutdoorAmbient",lightingProps)
saveProp(game.Lighting,"Outlines",lightingProps)
saveProp(game.Lighting,"GeographicLatitude",lightingProps)
saveProp(game.Lighting,"TimeOfDay",lightingProps)
saveProp(game.Lighting,"FogColor",lightingProps)
saveProp(game.Lighting,"FogEnd",lightingProps)
saveProp(game.Lighting,"FogStart",lightingProps)
end
if decompile and copyScripts then
decompileS(copyGroup)
end
if SaveInstance then
SaveInstance(copyGroup,SaveMapName.Text..".rbxm")
elseif saveinstance then
saveinstance(getelysianpath()..SaveMapName.Text..".rbxm",copyGroup)
end
--print("Saved!")
if consoleFunc then
consoleFunc("The map has been copied.")
end
SaveMapButton.Text = "The map has been saved"
wait(5)
SaveMapButton.Text = "Save"
end)
-- End Copier
wait()
IntroFrame:TweenPosition(UDim2.new(1,-300,0,0),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
switchWindows("Explorer")
wait(1)
SideMenu.Visible = true
for i = 0,1,0.1 do
IntroFrame.BackgroundTransparency = i
IntroFrame.Main.BackgroundTransparency = i
IntroFrame.Slant.ImageTransparency = i
IntroFrame.Title.TextTransparency = i
IntroFrame.Version.TextTransparency = i
IntroFrame.Creator.TextTransparency = i
wait()
end
IntroFrame.Visible = false
SlideFrame:TweenPosition(UDim2.new(0,0,0,0),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
OpenScriptEditorButton:TweenPosition(UDim2.new(0,0,0,180),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
CloseToggleButton:TweenPosition(UDim2.new(0,0,0,210),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
Slant:TweenPosition(UDim2.new(0,0,0,240),Enum.EasingDirection.Out,Enum.EasingStyle.Quart,0.5,true)
wait(0.5)
for i = 1,0,-0.1 do
OpenScriptEditorButton.Icon.ImageTransparency = i
CloseToggleButton.TextTransparency = i
wait()
end
CloseToggleButton.Active = true
CloseToggleButton.AutoButtonColor = true
OpenScriptEditorButton.Active = true
OpenScriptEditorButton.AutoButtonColor = true
end)
spawn(function()
-- initial states
local Option = {
-- can modify object parents in the hierarchy
Modifiable = false;
-- can select objects
Selectable = true;
}
-- MERELY
Option.Modifiable = true
-- END MERELY
-- general size of GUI objects, in pixels
local GUI_SIZE = 16
-- padding between items within each entry
local ENTRY_PADDING = 1
-- padding between each entry
local ENTRY_MARGIN = 1
local Input = game:GetService("UserInputService")
local HoldingCtrl = false
local HoldingShift = false
--[[
# Explorer Panel
A GUI panel that displays the game hierarchy.
## Selection Bindables
- `Function GetSelection ( )`
Returns an array of objects representing the objects currently
selected in the panel.
- `Function SetSelection ( Objects selection )`
Sets the objects that are selected in the panel. `selection` is an array
of objects.
- `Event SelectionChanged ( )`
Fired after the selection changes.
## Option Bindables
- `Function GetOption ( string optionName )`
If `optionName` is given, returns the value of that option. Otherwise,
returns a table of options and their current values.
- `Function SetOption ( string optionName, bool value )`
Sets `optionName` to `value`.
Options:
- Modifiable
Whether objects can be modified by the panel.
Note that modifying objects depends on being able to select them. If
Selectable is false, then Actions will not be available. Reparenting
is still possible, but only for the dragged object.
- Selectable
Whether objects can be selected.
If Modifiable is false, then left-clicking will perform a drag
selection.
## Updates
- 2013-09-18
- Fixed explorer icons to match studio explorer.
- 2013-09-14
- Added GetOption and SetOption bindables.
- Option: Modifiable; sets whether objects can be modified by the panel.
- Option: Selectable; sets whether objects can be selected.
- Slight modification to left-click selection behavior.
- Improved layout and scaling.
- 2013-09-13
- Added drag to reparent objects.
- Left-click to select/deselect object.
- Left-click and drag unselected object to reparent single object.
- Left-click and drag selected object to move reparent entire selection.
- Right-click while dragging to cancel.
- 2013-09-11
- Added explorer panel header with actions.
- Added Cut action.
- Added Copy action.
- Added Paste action.
- Added Delete action.
- Added drag selection.
- Left-click: Add to selection on drag.
- Right-click: Add to or remove from selection on drag.
- Ensured SelectionChanged fires only when the selection actually changes.
- Added documentation and change log.
- Fixed thread issue.
- 2013-09-09
- Added basic multi-selection.
- Left-click to set selection.
- Right-click to add to or remove from selection.
- Removed "Selection" ObjectValue.
- Added GetSelection BindableFunction.
- Added SetSelection BindableFunction.
- Added SelectionChanged BindableEvent.
- Changed font to Gotham.
- 2013-08-31
- Improved GUI sizing based off of `GUI_SIZE` constant.
- Automatic font size detection.
- 2013-08-27
- Initial explorer panel.
## Todo
- Sorting
- by ExplorerOrder
- by children
- by name
- Drag objects to reparent
]]
local ENTRY_SIZE = GUI_SIZE + ENTRY_PADDING*2
local ENTRY_BOUND = ENTRY_SIZE + ENTRY_MARGIN
local HEADER_SIZE = ENTRY_SIZE*2
local FONT = 'Gotham'
local FONT_SIZE do
local size = {8,9,10,11,12,14,18,24,36,48}
local s
local n = math.huge
for i = 1,#size do
if size[i] <= GUI_SIZE then
FONT_SIZE = i - 1
end
end
end
local GuiColor = {
Background = Color3.new(233/255, 233/255, 233/255);
Border = Color3.new(149/255, 149/255, 149/255);
Selected = Color3.new( 96/255, 140/255, 211/255);
BorderSelected = Color3.new( 86/255, 125/255, 188/255);
Text = Color3.new( 0/255, 0/255, 0/255);
TextDisabled = Color3.new(128/255, 128/255, 128/255);
TextSelected = Color3.new(255/255, 255/255, 255/255);
Button = Color3.new(221/255, 221/255, 221/255);
ButtonBorder = Color3.new(149/255, 149/255, 149/255);
ButtonSelected = Color3.new(255/255, 0/255, 0/255);
Field = Color3.new(255/255, 255/255, 255/255);
FieldBorder = Color3.new(191/255, 191/255, 191/255);
TitleBackground = Color3.new(178/255, 178/255, 178/255);
}
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
---- Icon map constants
local MAP_ID = 483448923
-- Indices based on implementation of Icon function.
local ACTION_CUT = 160
local ACTION_COPY = 161
local ACTION_PASTE = 162
local ACTION_DELETE = 163
local ACTION_SORT = 164
local ACTION_CUT_OVER = 174
local ACTION_COPY_OVER = 175
local ACTION_PASTE_OVER = 176
local ACTION_DELETE_OVER = 177
local ACTION_SORT_OVER = 178
local ACTION_EDITQUICKACCESS = 190
local ACTION_FREEZE = 188
local ACTION_STARRED = 189
local ACTION_ADDSTAR = 184
local ACTION_ADDSTAR_OVER = 187
local NODE_COLLAPSED = 165
local NODE_EXPANDED = 166
local NODE_COLLAPSED_OVER = 179
local NODE_EXPANDED_OVER = 180
local ExplorerIndex = {
["Accessory"] = 32;
["Accoutrement"] = 32;
["AdService"] = 73;
["Animation"] = 60;
["AnimationController"] = 60;
["AnimationTrack"] = 60;
["Animator"] = 60;
["ArcHandles"] = 56;
["AssetService"] = 72;
["Attachment"] = 34;
["Backpack"] = 20;
["BadgeService"] = 75;
["BallSocketConstraint"] = 89;
["BillboardGui"] = 64;
["BinaryStringValue"] = 4;
["BindableEvent"] = 67;
["BindableFunction"] = 66;
["BlockMesh"] = 8;
["BloomEffect"] = 90;
["BlurEffect"] = 90;
["BodyAngularVelocity"] = 14;
["BodyForce"] = 14;
["BodyGyro"] = 14;
["BodyPosition"] = 14;
["BodyThrust"] = 14;
["BodyVelocity"] = 14;
["BoolValue"] = 4;
["BoxHandleAdornment"] = 54;
["BrickColorValue"] = 4;
["Camera"] = 5;
["CFrameValue"] = 4;
["CharacterMesh"] = 60;
["Chat"] = 33;
["ClickDetector"] = 41;
["CollectionService"] = 30;
["Color3Value"] = 4;
["ColorCorrectionEffect"] = 90;
["ConeHandleAdornment"] = 54;
["Configuration"] = 58;
["ContentProvider"] = 72;
["ContextActionService"] = 41;
["CoreGui"] = 46;
["CoreScript"] = 18;
["CornerWedgePart"] = 1;
["CustomEvent"] = 4;
["CustomEventReceiver"] = 4;
["CylinderHandleAdornment"] = 54;
["CylinderMesh"] = 8;
["CylindricalConstraint"] = 89;
["Debris"] = 30;
["Decal"] = 7;
["Dialog"] = 62;
["DialogChoice"] = 63;
["DoubleConstrainedValue"] = 4;
["Explosion"] = 36;
["FileMesh"] = 8;
["Fire"] = 61;
["Flag"] = 38;
["FlagStand"] = 39;
["FloorWire"] = 4;
["Folder"] = 70;
["ForceField"] = 37;
["Frame"] = 48;
["GamePassService"] = 19;
["Glue"] = 34;
["GuiButton"] = 52;
["GuiMain"] = 47;
["GuiService"] = 47;
["Handles"] = 53;
["HapticService"] = 84;
["Hat"] = 45;
["HingeConstraint"] = 89;
["Hint"] = 33;
["HopperBin"] = 22;
["HttpService"] = 76;
["Humanoid"] = 9;
["ImageButton"] = 52;
["ImageLabel"] = 49;
["InsertService"] = 72;
["IntConstrainedValue"] = 4;
["IntValue"] = 4;
["JointInstance"] = 34;
["JointsService"] = 34;
["Keyframe"] = 60;
["KeyframeSequence"] = 60;
["KeyframeSequenceProvider"] = 60;
["Lighting"] = 13;
["LineHandleAdornment"] = 54;
["LocalScript"] = 18;
["LogService"] = 87;
["MarketplaceService"] = 46;
["Message"] = 33;
["Model"] = 2;
["ModuleScript"] = 71;
["Motor"] = 34;
["Motor6D"] = 34;
["MoveToConstraint"] = 89;
["NegateOperation"] = 78;
["NetworkClient"] = 16;
["NetworkReplicator"] = 29;
["NetworkServer"] = 15;
["NumberValue"] = 4;
["ObjectValue"] = 4;
["Pants"] = 44;
["ParallelRampPart"] = 1;
["Part"] = 1;
["ParticleEmitter"] = 69;
["PartPairLasso"] = 57;
["PathfindingService"] = 37;
["Platform"] = 35;
["Player"] = 12;
["PlayerGui"] = 46;
["Players"] = 21;
["PlayerScripts"] = 82;
["PointLight"] = 13;
["PointsService"] = 83;
["Pose"] = 60;
["PrismaticConstraint"] = 89;
["PrismPart"] = 1;
["PyramidPart"] = 1;
["RayValue"] = 4;
["ReflectionMetadata"] = 86;
["ReflectionMetadataCallbacks"] = 86;
["ReflectionMetadataClass"] = 86;
["ReflectionMetadataClasses"] = 86;
["ReflectionMetadataEnum"] = 86;
["ReflectionMetadataEnumItem"] = 86;
["ReflectionMetadataEnums"] = 86;
["ReflectionMetadataEvents"] = 86;
["ReflectionMetadataFunctions"] = 86;
["ReflectionMetadataMember"] = 86;
["ReflectionMetadataProperties"] = 86;
["ReflectionMetadataYieldFunctions"] = 86;
["RemoteEvent"] = 80;
["RemoteFunction"] = 79;
["ReplicatedFirst"] = 72;
["ReplicatedStorage"] = 72;
["RightAngleRampPart"] = 1;
["RocketPropulsion"] = 14;
["RodConstraint"] = 89;
["RopeConstraint"] = 89;
["Rotate"] = 34;
["RotateP"] = 34;
["RotateV"] = 34;
["RunService"] = 66;
["ScreenGui"] = 47;
["Script"] = 6;
["ScrollingFrame"] = 48;
["Seat"] = 35;
["Selection"] = 55;
["SelectionBox"] = 54;
["SelectionPartLasso"] = 57;
["SelectionPointLasso"] = 57;
["SelectionSphere"] = 54;
["ServerScriptService"] = 0;
["ServerStorage"] = 74;
["Shirt"] = 43;
["ShirtGraphic"] = 40;
["SkateboardPlatform"] = 35;
["Sky"] = 28;
["SlidingBallConstraint"] = 89;
["Smoke"] = 59;
["Snap"] = 34;
["Sound"] = 11;
["SoundService"] = 31;
["Sparkles"] = 42;
["SpawnLocation"] = 25;
["SpecialMesh"] = 8;
["SphereHandleAdornment"] = 54;
["SpotLight"] = 13;
["SpringConstraint"] = 89;
["StarterCharacterScripts"] = 82;
["StarterGear"] = 20;
["StarterGui"] = 46;
["StarterPack"] = 20;
["StarterPlayer"] = 88;
["StarterPlayerScripts"] = 82;
["Status"] = 2;
["StringValue"] = 4;
["SunRaysEffect"] = 90;
["SurfaceGui"] = 64;
["SurfaceLight"] = 13;
["SurfaceSelection"] = 55;
["Team"] = 24;
["Teams"] = 23;
["TeleportService"] = 81;
["Terrain"] = 65;
["TerrainRegion"] = 65;
["TestService"] = 68;
["TextBox"] = 51;
["TextButton"] = 51;
["TextLabel"] = 50;
["Texture"] = 10;
["TextureTrail"] = 4;
["Tool"] = 17;
["TouchTransmitter"] = 37;
["TrussPart"] = 1;
["UnionOperation"] = 77;
["UserInputService"] = 84;
["Vector3Value"] = 4;
["VehicleSeat"] = 35;
["VelocityMotor"] = 34;
["WedgePart"] = 1;
["Weld"] = 34;
["Workspace"] = 19;
}
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
function Create(ty,data)
local obj
if type(ty) == 'string' then
obj = Instance.new(ty)
else
obj = ty
end
for k, v in pairs(data) do
if type(k) == 'number' then
v.Parent = obj
else
obj[k] = v
end
end
return obj
end
local barActive = false
local activeOptions = {}
function createDDown(dBut, callback,...)
if barActive then
for i,v in pairs(activeOptions) do
v:Destroy()
end
activeOptions = {}
barActive = false
return
else
barActive = true
end
local slots = {...}
local base = dBut
for i,v in pairs(slots) do
local newOption = base:Clone()
newOption.ZIndex = 5
newOption.Name = "Option "..tostring(i)
newOption.Parent = base.Parent.Parent.Parent
newOption.BackgroundTransparency = 0
newOption.ZIndex = 2
table.insert(activeOptions,newOption)
newOption.Position = UDim2.new(-0.4, dBut.Position.X.Offset, dBut.Position.Y.Scale, dBut.Position.Y.Offset + (#activeOptions * dBut.Size.Y.Offset))
newOption.Text = slots[i]
newOption.MouseButton1Down:connect(function()
dBut.Text = slots[i]
callback(slots[i])
for i,v in pairs(activeOptions) do
v:Destroy()
end
activeOptions = {}
barActive = false
end)
end
end
-- Connects a function to an event such that it fires asynchronously
function Connect(event,func)
return event:connect(function(...)
local a = {...}
spawn(function() func(unpack(a)) end)
end)
end
-- returns the ascendant ScreenGui of an object
function GetScreen(screen)
if screen == nil then return nil end
while not screen:IsA("ScreenGui") do
screen = screen.Parent
if screen == nil then return nil end
end
return screen
end
do
local ZIndexLock = {}
-- Sets the ZIndex of an object and its descendants. Objects are locked so
-- that SetZIndexOnChanged doesn't spawn multiple threads that set the
-- ZIndex of the same object.
function SetZIndex(object,z)
if not ZIndexLock[object] then
ZIndexLock[object] = true
if object:IsA'GuiObject' then
object.ZIndex = z
end
local children = object:GetChildren()
for i = 1,#children do
SetZIndex(children[i],z)
end
ZIndexLock[object] = nil
end
end
function SetZIndexOnChanged(object)
return object.Changed:connect(function(p)
if p == "ZIndex" then
SetZIndex(object,object.ZIndex)
end
end)
end
end
---- IconMap ----
-- Image size: 256px x 256px
-- Icon size: 16px x 16px
-- Padding between each icon: 2px
-- Padding around image edge: 1px
-- Total icons: 14 x 14 (196)
local Icon do
local iconMap = 'http://www.roblox.com/asset/?id=' .. MAP_ID
game:GetService('ContentProvider'):Preload(iconMap)
local iconDehash do
-- 14 x 14, 0-based input, 0-based output
local f=math.floor
function iconDehash(h)
return f(h/14%14),f(h%14)
end
end
function Icon(IconFrame,index)
local row,col = iconDehash(index)
local mapSize = Vector2.new(256,256)
local pad,border = 2,1
local iconSize = 16
local class = 'Frame'
if type(IconFrame) == 'string' then
class = IconFrame
IconFrame = nil
end
if not IconFrame then
IconFrame = Create(class,{
Name = "Icon";
BackgroundTransparency = 1;
ClipsDescendants = true;
Create('ImageLabel',{
Name = "IconMap";
Active = false;
BackgroundTransparency = 1;
Image = iconMap;
Size = UDim2.new(mapSize.x/iconSize,0,mapSize.y/iconSize,0);
});
})
end
IconFrame.IconMap.Position = UDim2.new(-col - (pad*(col+1) + border)/iconSize,0,-row - (pad*(row+1) + border)/iconSize,0)
return IconFrame
end
end
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
---- ScrollBar
do
-- AutoButtonColor doesn't always reset properly
local function ResetButtonColor(button)
local active = button.Active
button.Active = not active
button.Active = active
end
local function ArrowGraphic(size,dir,scaled,template)
local Frame = Create('Frame',{
Name = "Arrow Graphic";
BorderSizePixel = 0;
Size = UDim2.new(0,size,0,size);
Transparency = 1;
})
if not template then
template = Instance.new("Frame")
template.BorderSizePixel = 0
end
local transform
if dir == nil or dir == 'Up' then
function transform(p,s) return p,s end
elseif dir == 'Down' then
function transform(p,s) return UDim2.new(0,p.X.Offset,0,size-p.Y.Offset-1),s end
elseif dir == 'Left' then
function transform(p,s) return UDim2.new(0,p.Y.Offset,0,p.X.Offset),UDim2.new(0,s.Y.Offset,0,s.X.Offset) end
elseif dir == 'Right' then
function transform(p,s) return UDim2.new(0,size-p.Y.Offset-1,0,p.X.Offset),UDim2.new(0,s.Y.Offset,0,s.X.Offset) end
end
local scale
if scaled then
function scale(p,s) return UDim2.new(p.X.Offset/size,0,p.Y.Offset/size,0),UDim2.new(s.X.Offset/size,0,s.Y.Offset/size,0) end
else
function scale(p,s) return p,s end
end
local o = math.floor(size/4)
if size%2 == 0 then
local n = size/2-1
for i = 0,n do
local t = template:Clone()
local p,s = scale(transform(
UDim2.new(0,n-i,0,o+i),
UDim2.new(0,(i+1)*2,0,1)
))
t.Position = p
t.Size = s
t.Parent = Frame
end
else
local n = (size-1)/2
for i = 0,n do
local t = template:Clone()
local p,s = scale(transform(
UDim2.new(0,n-i,0,o+i),
UDim2.new(0,i*2+1,0,1)
))
t.Position = p
t.Size = s
t.Parent = Frame
end
end
if size%4 > 1 then
local t = template:Clone()
local p,s = scale(transform(
UDim2.new(0,0,0,size-o-1),
UDim2.new(0,size,0,1)
))
t.Position = p
t.Size = s
t.Parent = Frame
end
return Frame
end
local function GripGraphic(size,dir,spacing,scaled,template)
local Frame = Create('Frame',{
Name = "Grip Graphic";
BorderSizePixel = 0;
Size = UDim2.new(0,size.x,0,size.y);
Transparency = 1;
})
if not template then
template = Instance.new("Frame")
template.BorderSizePixel = 0
end
spacing = spacing or 2
local scale
if scaled then
function scale(p) return UDim2.new(p.X.Offset/size.x,0,p.Y.Offset/size.y,0) end
else
function scale(p) return p end
end
if dir == 'Vertical' then
for i=0,size.x-1,spacing do
local t = template:Clone()
t.Size = scale(UDim2.new(0,1,0,size.y))
t.Position = scale(UDim2.new(0,i,0,0))
t.Parent = Frame
end
elseif dir == nil or dir == 'Horizontal' then
for i=0,size.y-1,spacing do
local t = template:Clone()
t.Size = scale(UDim2.new(0,size.x,0,1))
t.Position = scale(UDim2.new(0,0,0,i))
t.Parent = Frame
end
end
return Frame
end
local mt = {
__index = {
GetScrollPercent = function(self)
return self.ScrollIndex/(self.TotalSpace-self.VisibleSpace)
end;
CanScrollDown = function(self)
return self.ScrollIndex + self.VisibleSpace < self.TotalSpace
end;
CanScrollUp = function(self)
return self.ScrollIndex > 0
end;
ScrollDown = function(self)
self.ScrollIndex = self.ScrollIndex + self.PageIncrement
self:Update()
end;
ScrollUp = function(self)
self.ScrollIndex = self.ScrollIndex - self.PageIncrement
self:Update()
end;
ScrollTo = function(self,index)
self.ScrollIndex = index
self:Update()
end;
SetScrollPercent = function(self,percent)
self.ScrollIndex = math.floor((self.TotalSpace - self.VisibleSpace)*percent + 0.5)
self:Update()
end;
};
}
mt.__index.CanScrollRight = mt.__index.CanScrollDown
mt.__index.CanScrollLeft = mt.__index.CanScrollUp
mt.__index.ScrollLeft = mt.__index.ScrollUp
mt.__index.ScrollRight = mt.__index.ScrollDown
function ScrollBar(horizontal)
-- create row scroll bar
local ScrollFrame = Create('Frame',{
Name = "ScrollFrame";
Position = horizontal and UDim2.new(0,0,1,-GUI_SIZE) or UDim2.new(1,-GUI_SIZE,0,0);
Size = horizontal and UDim2.new(1,0,0,GUI_SIZE) or UDim2.new(0,GUI_SIZE,1,0);
BackgroundTransparency = 1;
Create('ImageButton',{
Name = "ScrollDown";
Position = horizontal and UDim2.new(1,-GUI_SIZE,0,0) or UDim2.new(0,0,1,-GUI_SIZE);
Size = UDim2.new(0, GUI_SIZE, 0, GUI_SIZE);
BackgroundColor3 = GuiColor.Button;
BorderColor3 = GuiColor.Border;
--BorderSizePixel = 0;
});
Create('ImageButton',{
Name = "ScrollUp";
Size = UDim2.new(0, GUI_SIZE, 0, GUI_SIZE);
BackgroundColor3 = GuiColor.Button;
BorderColor3 = GuiColor.Border;
--BorderSizePixel = 0;
});
Create('ImageButton',{
Name = "ScrollBar";
Size = horizontal and UDim2.new(1,-GUI_SIZE*2,1,0) or UDim2.new(1,0,1,-GUI_SIZE*2);
Position = horizontal and UDim2.new(0,GUI_SIZE,0,0) or UDim2.new(0,0,0,GUI_SIZE);
AutoButtonColor = false;
BackgroundColor3 = Color3.new(0.94902, 0.94902, 0.94902);
BorderColor3 = GuiColor.Border;
--BorderSizePixel = 0;
Create('ImageButton',{
Name = "ScrollThumb";
AutoButtonColor = false;
Size = UDim2.new(0, GUI_SIZE, 0, GUI_SIZE);
BackgroundColor3 = GuiColor.Button;
BorderColor3 = GuiColor.Border;
--BorderSizePixel = 0;
});
});
})
local graphicTemplate = Create('Frame',{
Name="Graphic";
BorderSizePixel = 0;
BackgroundColor3 = GuiColor.Border;
})
local graphicSize = GUI_SIZE/2
local ScrollDownFrame = ScrollFrame.ScrollDown
local ScrollDownGraphic = ArrowGraphic(graphicSize,horizontal and 'Right' or 'Down',true,graphicTemplate)
ScrollDownGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
ScrollDownGraphic.Parent = ScrollDownFrame
local ScrollUpFrame = ScrollFrame.ScrollUp
local ScrollUpGraphic = ArrowGraphic(graphicSize,horizontal and 'Left' or 'Up',true,graphicTemplate)
ScrollUpGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
ScrollUpGraphic.Parent = ScrollUpFrame
local ScrollBarFrame = ScrollFrame.ScrollBar
local ScrollThumbFrame = ScrollBarFrame.ScrollThumb
do
local size = GUI_SIZE*3/8
local Decal = GripGraphic(Vector2.new(size,size),horizontal and 'Vertical' or 'Horizontal',2,graphicTemplate)
Decal.Position = UDim2.new(0.5,-size/2,0.5,-size/2)
Decal.Parent = ScrollThumbFrame
end
local Class = setmetatable({
GUI = ScrollFrame;
ScrollIndex = 0;
VisibleSpace = 0;
TotalSpace = 0;
PageIncrement = 1;
},mt)
local UpdateScrollThumb
if horizontal then
function UpdateScrollThumb()
ScrollThumbFrame.Size = UDim2.new(Class.VisibleSpace/Class.TotalSpace,0,0,GUI_SIZE)
if ScrollThumbFrame.AbsoluteSize.x < GUI_SIZE then
ScrollThumbFrame.Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE)
end
local barSize = ScrollBarFrame.AbsoluteSize.x
ScrollThumbFrame.Position = UDim2.new(Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.x)/barSize,0,0,0)
end
else
function UpdateScrollThumb()
ScrollThumbFrame.Size = UDim2.new(0,GUI_SIZE,Class.VisibleSpace/Class.TotalSpace,0)
if ScrollThumbFrame.AbsoluteSize.y < GUI_SIZE then
ScrollThumbFrame.Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE)
end
local barSize = ScrollBarFrame.AbsoluteSize.y
ScrollThumbFrame.Position = UDim2.new(0,0,Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.y)/barSize,0)
end
end
local lastDown
local lastUp
local scrollStyle = {BackgroundColor3=GuiColor.Border,BackgroundTransparency=0}
local scrollStyle_ds = {BackgroundColor3=GuiColor.Border,BackgroundTransparency=0.7}
local function Update()
local t = Class.TotalSpace
local v = Class.VisibleSpace
local s = Class.ScrollIndex
if v <= t then
if s > 0 then
if s + v > t then
Class.ScrollIndex = t - v
end
else
Class.ScrollIndex = 0
end
else
Class.ScrollIndex = 0
end
if Class.UpdateCallback then
if Class.UpdateCallback(Class) == false then
return
end
end
local down = Class:CanScrollDown()
local up = Class:CanScrollUp()
if down ~= lastDown then
lastDown = down
ScrollDownFrame.Active = down
ScrollDownFrame.AutoButtonColor = down
local children = ScrollDownGraphic:GetChildren()
local style = down and scrollStyle or scrollStyle_ds
for i = 1,#children do
Create(children[i],style)
end
end
if up ~= lastUp then
lastUp = up
ScrollUpFrame.Active = up
ScrollUpFrame.AutoButtonColor = up
local children = ScrollUpGraphic:GetChildren()
local style = up and scrollStyle or scrollStyle_ds
for i = 1,#children do
Create(children[i],style)
end
end
ScrollThumbFrame.Visible = down or up
UpdateScrollThumb()
end
Class.Update = Update
SetZIndexOnChanged(ScrollFrame)
local MouseDrag = Create('ImageButton',{
Name = "MouseDrag";
Position = UDim2.new(-0.25,0,-0.25,0);
Size = UDim2.new(1.5,0,1.5,0);
Transparency = 1;
AutoButtonColor = false;
Active = true;
ZIndex = 10;
})
local scrollEventID = 0
ScrollDownFrame.MouseButton1Down:connect(function()
scrollEventID = tick()
local current = scrollEventID
local up_con
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollDownFrame)
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
Class:ScrollDown()
wait(0.2) -- delay before auto scroll
while scrollEventID == current do
Class:ScrollDown()
if not Class:CanScrollDown() then break end
wait()
end
end)
ScrollDownFrame.MouseButton1Up:connect(function()
scrollEventID = tick()
end)
ScrollUpFrame.MouseButton1Down:connect(function()
scrollEventID = tick()
local current = scrollEventID
local up_con
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollUpFrame)
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
Class:ScrollUp()
wait(0.2)
while scrollEventID == current do
Class:ScrollUp()
if not Class:CanScrollUp() then break end
wait()
end
end)
ScrollUpFrame.MouseButton1Up:connect(function()
scrollEventID = tick()
end)
if horizontal then
ScrollBarFrame.MouseButton1Down:connect(function(x,y)
scrollEventID = tick()
local current = scrollEventID
local up_con
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollUpFrame)
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
if x > ScrollThumbFrame.AbsolutePosition.x then
Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
wait(0.2)
while scrollEventID == current do
if x < ScrollThumbFrame.AbsolutePosition.x + ScrollThumbFrame.AbsoluteSize.x then break end
Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
wait()
end
else
Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
wait(0.2)
while scrollEventID == current do
if x > ScrollThumbFrame.AbsolutePosition.x then break end
Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
wait()
end
end
end)
else
ScrollBarFrame.MouseButton1Down:connect(function(x,y)
scrollEventID = tick()
local current = scrollEventID
local up_con
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollUpFrame)
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
if y > ScrollThumbFrame.AbsolutePosition.y then
Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
wait(0.2)
while scrollEventID == current do
if y < ScrollThumbFrame.AbsolutePosition.y + ScrollThumbFrame.AbsoluteSize.y then break end
Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
wait()
end
else
Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
wait(0.2)
while scrollEventID == current do
if y > ScrollThumbFrame.AbsolutePosition.y then break end
Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
wait()
end
end
end)
end
if horizontal then
ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
scrollEventID = tick()
local mouse_offset = x - ScrollThumbFrame.AbsolutePosition.x
local drag_con
local up_con
drag_con = MouseDrag.MouseMoved:connect(function(x,y)
local bar_abs_pos = ScrollBarFrame.AbsolutePosition.x
local bar_drag = ScrollBarFrame.AbsoluteSize.x - ScrollThumbFrame.AbsoluteSize.x
local bar_abs_one = bar_abs_pos + bar_drag
x = x - mouse_offset
x = x < bar_abs_pos and bar_abs_pos or x > bar_abs_one and bar_abs_one or x
x = x - bar_abs_pos
Class:SetScrollPercent(x/(bar_drag))
end)
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollThumbFrame)
drag_con:disconnect(); drag_con = nil
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
end)
else
ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
scrollEventID = tick()
local mouse_offset = y - ScrollThumbFrame.AbsolutePosition.y
local drag_con
local up_con
drag_con = MouseDrag.MouseMoved:connect(function(x,y)
local bar_abs_pos = ScrollBarFrame.AbsolutePosition.y
local bar_drag = ScrollBarFrame.AbsoluteSize.y - ScrollThumbFrame.AbsoluteSize.y
local bar_abs_one = bar_abs_pos + bar_drag
y = y - mouse_offset
y = y < bar_abs_pos and bar_abs_pos or y > bar_abs_one and bar_abs_one or y
y = y - bar_abs_pos
Class:SetScrollPercent(y/(bar_drag))
end)
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollThumbFrame)
drag_con:disconnect(); drag_con = nil
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
end)
end
function Class:Destroy()
ScrollFrame:Destroy()
MouseDrag:Destroy()
for k in pairs(Class) do
Class[k] = nil
end
setmetatable(Class,nil)
end
Update()
return Class
end
end
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
---- Explorer panel
local explorerPanel = D_E_X.ExplorerPanel
Create(explorerPanel,{
BackgroundColor3 = GuiColor.Field;
BorderColor3 = GuiColor.Border;
Active = true;
})
local SettingsRemote = explorerPanel.Parent:WaitForChild("SettingsPanel"):WaitForChild("GetSetting")
local GetApiRemote = explorerPanel.Parent:WaitForChild("PropertiesFrame"):WaitForChild("GetApi")
local GetAwaitRemote = explorerPanel.Parent:WaitForChild("PropertiesFrame"):WaitForChild("GetAwaiting")
local bindSetAwaiting = explorerPanel.Parent:WaitForChild("PropertiesFrame"):WaitForChild("SetAwaiting")
local SaveInstanceWindow = explorerPanel.Parent:WaitForChild("SaveInstance")
local ConfirmationWindow = explorerPanel.Parent:WaitForChild("Confirmation")
local CautionWindow = explorerPanel.Parent:WaitForChild("Caution")
local TableCautionWindow = explorerPanel.Parent:WaitForChild("TableCaution")
local RemoteWindow = explorerPanel.Parent:WaitForChild("CallRemote")
local ScriptEditor = explorerPanel.Parent:WaitForChild("ScriptEditor")
local ScriptEditorEvent = ScriptEditor:WaitForChild("OpenScript")
local CurrentSaveInstanceWindow
local CurrentRemoteWindow
local lastSelectedNode
local DexStorage
local DexStorageMain
local DexStorageEnabled
if saveinstance then DexStorageEnabled = true end
if DexStorageEnabled then
DexStorage = Instance.new("Folder")
DexStorage.Name = "Dex"
DexStorageMain = Instance.new("Folder",DexStorage)
DexStorageMain.Name = "DexStorage"
end
local NilStorage
local NilStorageMain
local NilStorageEnabled
if get_nil_instances and IfThisFunctionWasStableEnough then NilStorageEnabled = true end
if NilStorageEnabled then
NilStorage = Instance.new("Folder")
NilStorage.Name = "Dex Internal Storage"
NilStorageMain = Instance.new("Folder",NilStorage)
NilStorageMain.Name = "Nil Instances"
end
local listFrame = Create('Frame',{
Name = "List";
BackgroundTransparency = 1;
ClipsDescendants = true;
Position = UDim2.new(0,0,0,HEADER_SIZE);
Size = UDim2.new(1,-GUI_SIZE,1,-HEADER_SIZE);
Parent = explorerPanel;
})
local scrollBar = ScrollBar(false)
scrollBar.PageIncrement = 1
Create(scrollBar.GUI,{
Position = UDim2.new(1,-GUI_SIZE,0,HEADER_SIZE);
Size = UDim2.new(0,GUI_SIZE,1,-HEADER_SIZE);
Parent = explorerPanel;
})
local scrollBarH = ScrollBar(true)
scrollBarH.PageIncrement = GUI_SIZE
Create(scrollBarH.GUI,{
Position = UDim2.new(0,0,1,-GUI_SIZE);
Size = UDim2.new(1,-GUI_SIZE,0,GUI_SIZE);
Visible = false;
Parent = explorerPanel;
})
local headerFrame = Create('Frame',{
Name = "Header";
BackgroundColor3 = GuiColor.Background;
BorderColor3 = GuiColor.Border;
Position = UDim2.new(0,0,0,0);
Size = UDim2.new(1,0,0,HEADER_SIZE);
Parent = explorerPanel;
Create('TextLabel',{
Text = "Explorer";
BackgroundTransparency = 1;
TextColor3 = GuiColor.Text;
TextXAlignment = 'Left';
Font = FONT;
FontSize = FONT_SIZE;
Position = UDim2.new(0,4,0,0);
Size = UDim2.new(1,-4,0.5,0);
});
})
local explorerFilter = Create('TextBox',{
Text = "Filter Workspace";
BackgroundTransparency = 0.8;
TextColor3 = GuiColor.Text;
TextXAlignment = 'Left';
Font = FONT;
FontSize = FONT_SIZE;
Position = UDim2.new(0,4,0.5,0);
Size = UDim2.new(1,-8,0.5,-2);
});
explorerFilter.Parent = headerFrame
SetZIndexOnChanged(explorerPanel)
local function CreateColor3(r, g, b) return Color3.new(r/255,g/255,b/255) end
local Styles = {
Font = Enum.Font.Arial;
Margin = 5;
Black = CreateColor3(0,0,0);
White = CreateColor3(255,255,255);
}
local DropDown = {
Font = Styles.Font;
FontSize = Enum.FontSize.Size14;
TextColor = CreateColor3(0,0,0);
TextColorOver = Styles.White;
TextXAlignment = Enum.TextXAlignment.Left;
Height = 20;
BackColor = Styles.White;
BackColorOver = CreateColor3(86,125,188);
BorderColor = CreateColor3(216,216,216);
BorderSizePixel = 2;
ArrowColor = CreateColor3(160,160,160);
ArrowColorOver = Styles.Black;
}
local Row = {
Font = Styles.Font;
FontSize = Enum.FontSize.Size14;
TextXAlignment = Enum.TextXAlignment.Left;
TextColor = Styles.Black;
TextColorOver = Styles.White;
TextLockedColor = CreateColor3(120,120,120);
Height = 24;
BorderColor = CreateColor3(216,216,216);
BackgroundColor = Styles.White;
BackgroundColorAlternate = CreateColor3(246,246,246);
BackgroundColorMouseover = CreateColor3(211,224,244);
TitleMarginLeft = 15;
}
local currentRightClickMenu
local CurrentInsertObjectWindow
local CurrentFunctionCallerWindow
local RbxApi
function ClassCanCreate(IName)
local success,err = pcall(function() Instance.new(IName) end)
if err then
return false
else
return true
end
end
function GetClasses()
if RbxApi == nil then return {} end
local classTable = {}
for i,v in pairs(RbxApi.Classes) do
if ClassCanCreate(v.Name) then
table.insert(classTable,v.Name)
end
end
return classTable
end
local function sortAlphabetic(t, property)
table.sort(t,
function(x,y) return x[property] < y[property]
end)
end
local function FunctionIsHidden(functionData)
local tags = functionData["tags"]
for _,name in pairs(tags) do
if name == "deprecated"
or name == "hidden"
or name == "writeonly" then
return true
end
end
return false
end
local function GetAllFunctions(className)
local class = RbxApi.Classes[className]
local functions = {}
if not class then return functions end
while class do
if class.Name == "Instance" then break end
for _,nextFunction in pairs(class.Functions) do
if not FunctionIsHidden(nextFunction) then
table.insert(functions, nextFunction)
end
end
class = RbxApi.Classes[class.Superclass]
end
sortAlphabetic(functions, "Name")
return functions
end
function GetFunctions()
if RbxApi == nil then return {} end
local List = SelectionVar():Get()
if #List == 0 then return end
local MyObject = List[1]
local functionTable = {}
for i,v in pairs(GetAllFunctions(MyObject.ClassName)) do
table.insert(functionTable,v)
end
return functionTable
end
function CreateInsertObjectMenu(choices, currentChoice, readOnly, onClick)
local mouse = game:GetService("Players").LocalPlayer:GetMouse()
local totalSize = explorerPanel.Parent.AbsoluteSize.y
if #choices == 0 then return end
table.sort(choices, function(a,b) return a < b end)
local frame = Instance.new("Frame")
frame.Name = "InsertObject"
frame.Size = UDim2.new(0, 200, 1, 0)
frame.BackgroundTransparency = 1
frame.Active = true
local menu = nil
local arrow = nil
local expanded = false
local margin = DropDown.BorderSizePixel;
--[[
local button = Instance.new("TextButton")
button.Font = Row.Font
button.FontSize = Row.FontSize
button.TextXAlignment = Row.TextXAlignment
button.BackgroundTransparency = 1
button.TextColor3 = Row.TextColor
if readOnly then
button.TextColor3 = Row.TextLockedColor
end
button.Text = currentChoice
button.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
button.Position = UDim2.new(0, Styles.Margin, 0, 0)
button.Parent = frame
--]]
local function hideMenu()
expanded = false
--showArrow(DropDown.ArrowColor)
if frame then
--frame:Destroy()
CurrentInsertObjectWindow.Visible = false
end
end
local function showMenu()
expanded = true
menu = Instance.new("ScrollingFrame")
menu.Size = UDim2.new(0,200,1,0)
menu.CanvasSize = UDim2.new(0, 200, 0, #choices * DropDown.Height)
menu.Position = UDim2.new(0, margin, 0, 0)
menu.BackgroundTransparency = 0
menu.BackgroundColor3 = DropDown.BackColor
menu.BorderColor3 = DropDown.BorderColor
menu.BorderSizePixel = DropDown.BorderSizePixel
menu.TopImage = "rbxasset://textures/blackBkg_square.png"
menu.MidImage = "rbxasset://textures/blackBkg_square.png"
menu.BottomImage = "rbxasset://textures/blackBkg_square.png"
menu.Active = true
menu.ZIndex = 5
menu.Parent = frame
--local parentFrameHeight = script.Parent.List.Size.Y.Offset
--local rowHeight = mouse.Y
--if (rowHeight + menu.Size.Y.Offset) > parentFrameHeight then
-- menu.Position = UDim2.new(0, margin, 0, -1 * (#choices * DropDown.Height) - margin)
--end
local function choice(name)
onClick(name)
hideMenu()
end
for i,name in pairs(choices) do
local option = CreateRightClickMenuItem(name, function()
choice(name)
end,1)
option.Size = UDim2.new(1, 0, 0, 20)
option.Position = UDim2.new(0, 0, 0, (i - 1) * DropDown.Height)
option.ZIndex = menu.ZIndex
option.Parent = menu
end
end
showMenu()
return frame
end
function CreateFunctionCallerMenu(choices, currentChoice, readOnly, onClick)
local mouse = game:GetService("Players").LocalPlayer:GetMouse()
local totalSize = explorerPanel.Parent.AbsoluteSize.y
if #choices == 0 then return end
table.sort(choices, function(a,b) return a.Name < b.Name end)
local frame = Instance.new("Frame")
frame.Name = "InsertObject"
frame.Size = UDim2.new(0, 200, 1, 0)
frame.BackgroundTransparency = 1
frame.Active = true
local menu = nil
local arrow = nil
local expanded = false
local margin = DropDown.BorderSizePixel;
local function hideMenu()
expanded = false
--showArrow(DropDown.ArrowColor)
if frame then
--frame:Destroy()
CurrentInsertObjectWindow.Visible = false
end
end
local function showMenu()
expanded = true
menu = Instance.new("ScrollingFrame")
menu.Size = UDim2.new(0,300,1,0)
menu.CanvasSize = UDim2.new(0, 300, 0, #choices * DropDown.Height)
menu.Position = UDim2.new(0, margin, 0, 0)
menu.BackgroundTransparency = 0
menu.BackgroundColor3 = DropDown.BackColor
menu.BorderColor3 = DropDown.BorderColor
menu.BorderSizePixel = DropDown.BorderSizePixel
menu.TopImage = "rbxasset://textures/blackBkg_square.png"
menu.MidImage = "rbxasset://textures/blackBkg_square.png"
menu.BottomImage = "rbxasset://textures/blackBkg_square.png"
menu.Active = true
menu.ZIndex = 5
menu.Parent = frame
--local parentFrameHeight = script.Parent.List.Size.Y.Offset
--local rowHeight = mouse.Y
--if (rowHeight + menu.Size.Y.Offset) > parentFrameHeight then
-- menu.Position = UDim2.new(0, margin, 0, -1 * (#choices * DropDown.Height) - margin)
--end
local function GetParameters(functionData)
local paraString = ""
paraString = paraString.."("
for i,v in pairs(functionData.Arguments) do
paraString = paraString..v.Type.." "..v.Name
if i < #functionData.Arguments then
paraString = paraString..", "
end
end
paraString = paraString..")"
return paraString
end
local function choice(name)
onClick(name)
hideMenu()
end
for i,name in pairs(choices) do
local option = CreateRightClickMenuItem(name.ReturnType.." "..name.Name..GetParameters(name), function()
choice(name)
end,2)
option.Size = UDim2.new(1, 0, 0, 20)
option.Position = UDim2.new(0, 0, 0, (i - 1) * DropDown.Height)
option.ZIndex = menu.ZIndex
option.Parent = menu
end
end
showMenu()
return frame
end
function CreateInsertObject()
if not CurrentInsertObjectWindow then return end
CurrentInsertObjectWindow.Visible = true
if currentRightClickMenu and CurrentInsertObjectWindow.Visible then
CurrentInsertObjectWindow.Position = UDim2.new(0,currentRightClickMenu.Position.X.Offset-currentRightClickMenu.Size.X.Offset-2,0,0)
end
if CurrentInsertObjectWindow.Visible then
CurrentInsertObjectWindow.Parent = explorerPanel.Parent
end
end
function CreateFunctionCaller()
if CurrentFunctionCallerWindow then
CurrentFunctionCallerWindow:Destroy()
CurrentFunctionCallerWindow = nil
end
CurrentFunctionCallerWindow = CreateFunctionCallerMenu(
GetFunctions(),
"",
false,
function(option)
CurrentFunctionCallerWindow:Destroy()
CurrentFunctionCallerWindow = nil
local list = SelectionVar():Get()
for i = 1,#list do
pcall(function() Instance.new(option,list[i]) end)
end
print(option.Name .. " selected to be called. Function caller being added soon, please wait!")
--CallFunction()
DestroyRightClick()
end
)
if currentRightClickMenu and CurrentFunctionCallerWindow then
CurrentFunctionCallerWindow.Position = UDim2.new(0,currentRightClickMenu.Position.X.Offset-currentRightClickMenu.Size.X.Offset*1.5-2,0,0)
end
if CurrentFunctionCallerWindow then
CurrentFunctionCallerWindow.Parent = explorerPanel.Parent
end
end
function CreateRightClickMenuItem(text, onClick, insObj)
local button = Instance.new("TextButton")
button.Font = DropDown.Font
button.FontSize = DropDown.FontSize
button.TextColor3 = DropDown.TextColor
button.TextXAlignment = DropDown.TextXAlignment
button.BackgroundColor3 = DropDown.BackColor
button.AutoButtonColor = false
button.BorderSizePixel = 0
button.Active = true
button.Text = text
if insObj == 1 then
local newIcon = Icon(nil,ExplorerIndex[text] or 0)
newIcon.Position = UDim2.new(0,0,0,2)
newIcon.Size = UDim2.new(0,16,0,16)
newIcon.IconMap.ZIndex = 5
newIcon.Parent = button
button.Text = "\t\t"..button.Text
elseif insObj == 2 then
button.FontSize = Enum.FontSize.Size11
end
button.MouseEnter:connect(function()
button.TextColor3 = DropDown.TextColorOver
button.BackgroundColor3 = DropDown.BackColorOver
if not insObj and CurrentInsertObjectWindow then
if CurrentInsertObjectWindow.Visible == false and button.Text == "Insert Object" then
CreateInsertObject()
elseif CurrentInsertObjectWindow.Visible and button.Text ~= "Insert Object" then
CurrentInsertObjectWindow.Visible = false
end
end
if not insObj then
if CurrentFunctionCallerWindow and button.Text ~= "Call Function" then
CurrentFunctionCallerWindow:Destroy()
CurrentFunctionCallerWindow = nil
elseif button.Text == "Call Function" then
CreateFunctionCaller()
end
end
end)
button.MouseLeave:connect(function()
button.TextColor3 = DropDown.TextColor
button.BackgroundColor3 = DropDown.BackColor
end)
button.MouseButton1Click:connect(function()
button.TextColor3 = DropDown.TextColor
button.BackgroundColor3 = DropDown.BackColor
onClick(text)
end)
return button
end
function CreateRightClickMenu(choices, currentChoice, readOnly, onClick)
local mouse = game:GetService("Players").LocalPlayer:GetMouse()
local frame = Instance.new("Frame")
frame.Name = "DropDown"
frame.Size = UDim2.new(0, 200, 1, 0)
frame.BackgroundTransparency = 1
frame.Active = true
local menu = nil
local arrow = nil
local expanded = false
local margin = DropDown.BorderSizePixel;
--[[
local button = Instance.new("TextButton")
button.Font = Row.Font
button.FontSize = Row.FontSize
button.TextXAlignment = Row.TextXAlignment
button.BackgroundTransparency = 1
button.TextColor3 = Row.TextColor
if readOnly then
button.TextColor3 = Row.TextLockedColor
end
button.Text = currentChoice
button.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
button.Position = UDim2.new(0, Styles.Margin, 0, 0)
button.Parent = frame
--]]
local function hideMenu()
expanded = false
--showArrow(DropDown.ArrowColor)
if frame then
frame:Destroy()
DestroyRightClick()
end
end
local function showMenu()
expanded = true
menu = Instance.new("Frame")
menu.Size = UDim2.new(0, 200, 0, #choices * DropDown.Height)
menu.Position = UDim2.new(0, margin, 0, 5)
menu.BackgroundTransparency = 0
menu.BackgroundColor3 = DropDown.BackColor
menu.BorderColor3 = DropDown.BorderColor
menu.BorderSizePixel = DropDown.BorderSizePixel
menu.Active = true
menu.ZIndex = 5
menu.Parent = frame
--local parentFrameHeight = script.Parent.List.Size.Y.Offset
--local rowHeight = mouse.Y
--if (rowHeight + menu.Size.Y.Offset) > parentFrameHeight then
-- menu.Position = UDim2.new(0, margin, 0, -1 * (#choices * DropDown.Height) - margin)
--end
local function choice(name)
onClick(name)
hideMenu()
end
for i,name in pairs(choices) do
local option = CreateRightClickMenuItem(name, function()
choice(name)
end)
option.Size = UDim2.new(1, 0, 0, 20)
option.Position = UDim2.new(0, 0, 0, (i - 1) * DropDown.Height)
option.ZIndex = menu.ZIndex
option.Parent = menu
end
end
showMenu()
return frame
end
function checkMouseInGui(gui)
if gui == nil then return false end
local plrMouse = game:GetService("Players").LocalPlayer:GetMouse()
local guiPosition = gui.AbsolutePosition
local guiSize = gui.AbsoluteSize
if plrMouse.X >= guiPosition.x and plrMouse.X <= guiPosition.x + guiSize.x and plrMouse.Y >= guiPosition.y and plrMouse.Y <= guiPosition.y + guiSize.y then
return true
else
return false
end
end
local clipboard = {}
local function delete(o)
o.Parent = nil
end
local getTextWidth do
local text = Create('TextLabel',{
Name = "TextWidth";
TextXAlignment = 'Left';
TextYAlignment = 'Center';
Font = FONT;
FontSize = FONT_SIZE;
Text = "";
Position = UDim2.new(0,0,0,0);
Size = UDim2.new(1,0,1,0);
Visible = false;
Parent = explorerPanel;
})
function getTextWidth(s)
text.Text = s
return text.TextBounds.x
end
end
local nameScanned = false
-- Holds the game tree converted to a list.
local TreeList = {}
-- Matches objects to their tree node representation.
local NodeLookup = {}
local nodeWidth = 0
local QuickButtons = {}
function filteringWorkspace()
if explorerFilter.Text ~= "" and explorerFilter.Text ~= "Filter Workspace" then
return true
end
return false
end
function lookForAName(obj,name)
for i,v in pairs(obj:GetChildren()) do
if string.find(string.lower(v.Name),string.lower(name)) then nameScanned = true end
lookForAName(v,name)
end
end
function scanName(obj)
nameScanned = false
if string.find(string.lower(obj.Name),string.lower(explorerFilter.Text)) then
nameScanned = true
else
lookForAName(obj,explorerFilter.Text)
end
return nameScanned
end
function updateActions()
for i,v in pairs(QuickButtons) do
if v.Cond() then
v.Toggle(true)
else
v.Toggle(false)
end
end
end
local updateList,rawUpdateList,updateScroll,rawUpdateSize do
local function r(t)
for i = 1,#t do
if not filteringWorkspace() or scanName(t[i].Object) then
TreeList[#TreeList+1] = t[i]
local w = (t[i].Depth)*(2+ENTRY_PADDING+GUI_SIZE) + 2 + ENTRY_SIZE + 4 + getTextWidth(t[i].Object.Name) + 4
if w > nodeWidth then
nodeWidth = w
end
if t[i].Expanded or filteringWorkspace() then
r(t[i])
end
end
end
end
function rawUpdateSize()
scrollBarH.TotalSpace = nodeWidth
scrollBarH.VisibleSpace = listFrame.AbsoluteSize.x
scrollBarH:Update()
local visible = scrollBarH:CanScrollDown() or scrollBarH:CanScrollUp()
scrollBarH.GUI.Visible = visible
listFrame.Size = UDim2.new(1,-GUI_SIZE,1,-GUI_SIZE*(visible and 1 or 0) - HEADER_SIZE)
scrollBar.VisibleSpace = math.ceil(listFrame.AbsoluteSize.y/ENTRY_BOUND)
scrollBar.GUI.Size = UDim2.new(0,GUI_SIZE,1,-GUI_SIZE*(visible and 1 or 0) - HEADER_SIZE)
scrollBar.TotalSpace = #TreeList+1
scrollBar:Update()
end
function rawUpdateList()
-- Clear then repopulate the entire list. It appears to be fast enough.
TreeList = {}
nodeWidth = 0
r(NodeLookup[workspace.Parent])
if DexStorageEnabled then
r(NodeLookup[DexStorage])
end
if NilStorageEnabled then
r(NodeLookup[NilStorage])
end
rawUpdateSize()
updateActions()
end
-- Adding or removing large models will cause many updates to occur. We
-- can reduce the number of updates by creating a delay, then dropping any
-- updates that occur during the delay.
local updatingList = false
function updateList()
if updatingList then return end
updatingList = true
wait(0.25)
updatingList = false
rawUpdateList()
end
local updatingScroll = false
function updateScroll()
if updatingScroll then return end
updatingScroll = true
wait(0.25)
updatingScroll = false
scrollBar:Update()
end
end
local Selection do
local bindGetSelection = explorerPanel:FindFirstChild("TotallyNotGetSelection")
if not bindGetSelection then
bindGetSelection = Create('BindableFunction',{Name = "TotallyNotGetSelection"})
bindGetSelection.Parent = explorerPanel
end
bindSetSelection = explorerPanel:FindFirstChild("TotallyNotSetSelection")
if not bindSetSelection then
bindSetSelection = Create('BindableFunction',{Name = "TotallyNotSetSelection"})
bindSetSelection.Parent = explorerPanel
end
local bindSelectionChanged = explorerPanel:FindFirstChild("TotallyNotSelectionChanged")
if not bindSelectionChanged then
bindSelectionChanged = Create('BindableEvent',{Name = "TotallyNotSelectionChanged"})
bindSelectionChanged.Parent = explorerPanel
end
local SelectionList = {}
local SelectionSet = {}
local Updates = true
Selection = {
Selected = SelectionSet;
List = SelectionList;
}
local function addObject(object)
-- list update
local lupdate = false
-- scroll update
local supdate = false
if not SelectionSet[object] then
local node = NodeLookup[object]
if node then
table.insert(SelectionList,object)
SelectionSet[object] = true
node.Selected = true
-- expand all ancestors so that selected node becomes visible
node = node.Parent
while node do
if not node.Expanded then
node.Expanded = true
lupdate = true
end
node = node.Parent
end
supdate = true
end
end
return lupdate,supdate
end
function Selection:Set(objects)
local lupdate = false
local supdate = false
if #SelectionList > 0 then
for i = 1,#SelectionList do
local object = SelectionList[i]
local node = NodeLookup[object]
if node then
node.Selected = false
SelectionSet[object] = nil
end
end
SelectionList = {}
Selection.List = SelectionList
supdate = true
end
for i = 1,#objects do
local l,s = addObject(objects[i])
lupdate = l or lupdate
supdate = s or supdate
end
if lupdate then
rawUpdateList()
supdate = true
elseif supdate then
scrollBar:Update()
end
if supdate then
bindSelectionChanged:Fire()
updateActions()
end
end
function Selection:Add(object)
local l,s = addObject(object)
if l then
rawUpdateList()
if Updates then
bindSelectionChanged:Fire()
updateActions()
end
elseif s then
scrollBar:Update()
if Updates then
bindSelectionChanged:Fire()
updateActions()
end
end
end
function Selection:StopUpdates()
Updates = false
end
function Selection:ResumeUpdates()
Updates = true
bindSelectionChanged:Fire()
updateActions()
end
function Selection:Remove(object,noupdate)
if SelectionSet[object] then
local node = NodeLookup[object]
if node then
node.Selected = false
SelectionSet[object] = nil
for i = 1,#SelectionList do
if SelectionList[i] == object then
table.remove(SelectionList,i)
break
end
end
if not noupdate then
scrollBar:Update()
end
bindSelectionChanged:Fire()
updateActions()
end
end
end
function Selection:Get()
local list = {}
for i = 1,#SelectionList do
list[i] = SelectionList[i]
end
return list
end
bindSetSelection.OnInvoke = function(...)
Selection:Set(...)
end
bindGetSelection.OnInvoke = function()
return Selection:Get()
end
end
function CreateCaution(title,msg)
local newCaution = CautionWindow:Clone()
newCaution.Title.Text = title
newCaution.MainWindow.Desc.Text = msg
newCaution.Parent = explorerPanel.Parent
newCaution.Visible = true
newCaution.MainWindow.Ok.MouseButton1Up:connect(function()
newCaution:Destroy()
end)
end
function CreateTableCaution(title,msg)
if type(msg) ~= "table" then return CreateCaution(title,tostring(msg)) end
local newCaution = TableCautionWindow:Clone()
newCaution.Title.Text = title
local TableList = newCaution.MainWindow.TableResults
local TableTemplate = newCaution.MainWindow.TableTemplate
for i,v in pairs(msg) do
local newResult = TableTemplate:Clone()
newResult.Type.Text = type(v)
newResult.Value.Text = tostring(v)
newResult.Position = UDim2.new(0,0,0,#TableList:GetChildren() * 20)
newResult.Parent = TableList
TableList.CanvasSize = UDim2.new(0,0,0,#TableList:GetChildren() * 20)
newResult.Visible = true
end
newCaution.Parent = explorerPanel.Parent
newCaution.Visible = true
newCaution.MainWindow.Ok.MouseButton1Up:connect(function()
newCaution:Destroy()
end)
end
local function Split(str, delimiter)
local start = 1
local t = {}
while true do
local pos = string.find (str, delimiter, start, true)
if not pos then
break
end
table.insert (t, string.sub (str, start, pos - 1))
start = pos + string.len (delimiter)
end
table.insert (t, string.sub (str, start))
return t
end
local function ToValue(value,type)
if type == "Vector2" then
local list = Split(value,",")
if #list < 2 then return nil end
local x = tonumber(list[1]) or 0
local y = tonumber(list[2]) or 0
return Vector2.new(x,y)
elseif type == "Vector3" then
local list = Split(value,",")
if #list < 3 then return nil end
local x = tonumber(list[1]) or 0
local y = tonumber(list[2]) or 0
local z = tonumber(list[3]) or 0
return Vector3.new(x,y,z)
elseif type == "Color3" then
local list = Split(value,",")
if #list < 3 then return nil end
local r = tonumber(list[1]) or 0
local g = tonumber(list[2]) or 0
local b = tonumber(list[3]) or 0
return Color3.new(r/255,g/255, b/255)
elseif type == "UDim2" then
local list = Split(string.gsub(string.gsub(value, "{", ""),"}",""),",")
if #list < 4 then return nil end
local xScale = tonumber(list[1]) or 0
local xOffset = tonumber(list[2]) or 0
local yScale = tonumber(list[3]) or 0
local yOffset = tonumber(list[4]) or 0
return UDim2.new(xScale, xOffset, yScale, yOffset)
elseif type == "Number" then
return tonumber(value)
elseif type == "String" then
return value
elseif type == "NumberRange" then
local list = Split(value,",")
if #list == 1 then
if tonumber(list[1]) == nil then return nil end
local newVal = tonumber(list[1]) or 0
return NumberRange.new(newVal)
end
if #list < 2 then return nil end
local x = tonumber(list[1]) or 0
local y = tonumber(list[2]) or 0
return NumberRange.new(x,y)
elseif type == "Script" then
local success,err = ypcall(function()
_G.D_E_X_DONOTUSETHISPLEASE = nil
loadstring(
"_G.D_E_X_DONOTUSETHISPLEASE = "..value
)()
return _G.D_E_X_DONOTUSETHISPLEASE
end)
if err then
return nil
end
else
return nil
end
end
local function ToPropValue(value,type)
if type == "Vector2" then
local list = Split(value,",")
if #list < 2 then return nil end
local x = tonumber(list[1]) or 0
local y = tonumber(list[2]) or 0
return Vector2.new(x,y)
elseif type == "Vector3" then
local list = Split(value,",")
if #list < 3 then return nil end
local x = tonumber(list[1]) or 0
local y = tonumber(list[2]) or 0
local z = tonumber(list[3]) or 0
return Vector3.new(x,y,z)
elseif type == "Color3" then
local list = Split(value,",")
if #list < 3 then return nil end
local r = tonumber(list[1]) or 0
local g = tonumber(list[2]) or 0
local b = tonumber(list[3]) or 0
return Color3.new(r/255,g/255, b/255)
elseif type == "UDim2" then
local list = Split(string.gsub(string.gsub(value, "{", ""),"}",""),",")
if #list < 4 then return nil end
local xScale = tonumber(list[1]) or 0
local xOffset = tonumber(list[2]) or 0
local yScale = tonumber(list[3]) or 0
local yOffset = tonumber(list[4]) or 0
return UDim2.new(xScale, xOffset, yScale, yOffset)
elseif type == "Content" then
return value
elseif type == "float" or type == "int" or type == "double" then
return tonumber(value)
elseif type == "string" then
return value
elseif type == "NumberRange" then
local list = Split(value,",")
if #list == 1 then
if tonumber(list[1]) == nil then return nil end
local newVal = tonumber(list[1]) or 0
return NumberRange.new(newVal)
end
if #list < 2 then return nil end
local x = tonumber(list[1]) or 0
local y = tonumber(list[2]) or 0
return NumberRange.new(x,y)
elseif string.sub(value,1,4) == "Enum" then
local getEnum = value
while true do
local x,y = string.find(getEnum,".")
if y then
getEnum = string.sub(getEnum,y+1)
else
break
end
end
print(getEnum)
return getEnum
else
return nil
end
end
function PromptRemoteCaller(inst)
if CurrentRemoteWindow then
CurrentRemoteWindow:Destroy()
CurrentRemoteWindow = nil
end
CurrentRemoteWindow = RemoteWindow:Clone()
CurrentRemoteWindow.Parent = explorerPanel.Parent
CurrentRemoteWindow.Visible = true
local displayValues = false
local ArgumentList = CurrentRemoteWindow.MainWindow.Arguments
local ArgumentTemplate = CurrentRemoteWindow.MainWindow.ArgumentTemplate
if inst:IsA("RemoteEvent") then
CurrentRemoteWindow.Title.Text = "Fire Event"
CurrentRemoteWindow.MainWindow.Ok.Text = "Fire"
CurrentRemoteWindow.MainWindow.DisplayReturned.Visible = false
CurrentRemoteWindow.MainWindow.Desc2.Visible = false
end
local newArgument = ArgumentTemplate:Clone()
newArgument.Parent = ArgumentList
newArgument.Visible = true
newArgument.Type.MouseButton1Down:connect(function()
createDDown(newArgument.Type,function(choice)
newArgument.Type.Text = choice
end,"Script","Number","String","Color3","Vector3","Vector2","UDim2","NumberRange")
end)
CurrentRemoteWindow.MainWindow.Ok.MouseButton1Up:connect(function()
if CurrentRemoteWindow and inst.Parent ~= nil then
local MyArguments = {}
for i,v in pairs(ArgumentList:GetChildren()) do
table.insert(MyArguments,ToValue(v.Value.Text,v.Type.Text))
end
if inst:IsA("RemoteFunction") then
if displayValues then
spawn(function()
local myResults = inst:InvokeServer(unpack(MyArguments))
if myResults then
CreateTableCaution("Remote Caller",myResults)
else
CreateCaution("Remote Caller","This remote did not return anything.")
end
end)
else
spawn(function()
inst:InvokeServer(unpack(MyArguments))
end)
end
else
inst:FireServer(unpack(MyArguments))
end
CurrentRemoteWindow:Destroy()
CurrentRemoteWindow = nil
end
end)
CurrentRemoteWindow.MainWindow.Add.MouseButton1Up:connect(function()
if CurrentRemoteWindow then
local newArgument = ArgumentTemplate:Clone()
newArgument.Position = UDim2.new(0,0,0,#ArgumentList:GetChildren() * 20)
newArgument.Parent = ArgumentList
ArgumentList.CanvasSize = UDim2.new(0,0,0,#ArgumentList:GetChildren() * 20)
newArgument.Visible = true
newArgument.Type.MouseButton1Down:connect(function()
createDDown(newArgument.Type,function(choice)
newArgument.Type.Text = choice
end,"Script","Number","String","Color3","Vector3","Vector2","UDim2","NumberRange")
end)
end
end)
CurrentRemoteWindow.MainWindow.Subtract.MouseButton1Up:connect(function()
if CurrentRemoteWindow then
if #ArgumentList:GetChildren() > 1 then
ArgumentList:GetChildren()[#ArgumentList:GetChildren()]:Destroy()
ArgumentList.CanvasSize = UDim2.new(0,0,0,#ArgumentList:GetChildren() * 20)
end
end
end)
CurrentRemoteWindow.MainWindow.Cancel.MouseButton1Up:connect(function()
if CurrentRemoteWindow then
CurrentRemoteWindow:Destroy()
CurrentRemoteWindow = nil
end
end)
CurrentRemoteWindow.MainWindow.DisplayReturned.MouseButton1Up:connect(function()
if displayValues then
displayValues = false
CurrentRemoteWindow.MainWindow.DisplayReturned.enabled.Visible = false
else
displayValues = true
CurrentRemoteWindow.MainWindow.DisplayReturned.enabled.Visible = true
end
end)
end
function PromptSaveInstance(inst)
if not SaveInstance and not _G.SaveInstance then CreateCaution("SaveInstance Missing","You do not have the SaveInstance function installed. Please go to RaspberryPi's thread to retrieve it.") return end
if CurrentSaveInstanceWindow then
CurrentSaveInstanceWindow:Destroy()
CurrentSaveInstanceWindow = nil
if explorerPanel.Parent:FindFirstChild("SaveInstanceOverwriteCaution") then
explorerPanel.Parent.SaveInstanceOverwriteCaution:Destroy()
end
end
CurrentSaveInstanceWindow = SaveInstanceWindow:Clone()
CurrentSaveInstanceWindow.Parent = explorerPanel.Parent
CurrentSaveInstanceWindow.Visible = true
local filename = CurrentSaveInstanceWindow.MainWindow.FileName
local saveObjects = true
local overwriteCaution = false
CurrentSaveInstanceWindow.MainWindow.Save.MouseButton1Up:connect(function()
if readfile and getelysianpath then
if readfile(getelysianpath()..filename.Text..".rbxmx") then
if not overwriteCaution then
overwriteCaution = true
local newCaution = ConfirmationWindow:Clone()
newCaution.Name = "SaveInstanceOverwriteCaution"
newCaution.MainWindow.Desc.Text = "The file, "..filename.Text..".rbxmx, already exists. Overwrite?"
newCaution.Parent = explorerPanel.Parent
newCaution.Visible = true
newCaution.MainWindow.Yes.MouseButton1Up:connect(function()
ypcall(function()
SaveInstance(inst,filename.Text..".rbxmx",not saveObjects)
end)
overwriteCaution = false
newCaution:Destroy()
if CurrentSaveInstanceWindow then
CurrentSaveInstanceWindow:Destroy()
CurrentSaveInstanceWindow = nil
end
end)
newCaution.MainWindow.No.MouseButton1Up:connect(function()
overwriteCaution = false
newCaution:Destroy()
end)
end
else
ypcall(function()
SaveInstance(inst,filename.Text..".rbxmx",not saveObjects)
end)
if CurrentSaveInstanceWindow then
CurrentSaveInstanceWindow:Destroy()
CurrentSaveInstanceWindow = nil
if explorerPanel.Parent:FindFirstChild("SaveInstanceOverwriteCaution") then
explorerPanel.Parent.SaveInstanceOverwriteCaution:Destroy()
end
end
end
else
ypcall(function()
if SaveInstance then
SaveInstance(inst,filename.Text..".rbxmx",not saveObjects)
else
_G.SaveInstance(inst,filename.Text,not saveObjects)
end
end)
if CurrentSaveInstanceWindow then
CurrentSaveInstanceWindow:Destroy()
CurrentSaveInstanceWindow = nil
if explorerPanel.Parent:FindFirstChild("SaveInstanceOverwriteCaution") then
explorerPanel.Parent.SaveInstanceOverwriteCaution:Destroy()
end
end
end
end)
CurrentSaveInstanceWindow.MainWindow.Cancel.MouseButton1Up:connect(function()
if CurrentSaveInstanceWindow then
CurrentSaveInstanceWindow:Destroy()
CurrentSaveInstanceWindow = nil
if explorerPanel.Parent:FindFirstChild("SaveInstanceOverwriteCaution") then
explorerPanel.Parent.SaveInstanceOverwriteCaution:Destroy()
end
end
end)
CurrentSaveInstanceWindow.MainWindow.SaveObjects.MouseButton1Up:connect(function()
if saveObjects then
saveObjects = false
CurrentSaveInstanceWindow.MainWindow.SaveObjects.enabled.Visible = false
else
saveObjects = true
CurrentSaveInstanceWindow.MainWindow.SaveObjects.enabled.Visible = true
end
end)
end
function DestroyRightClick()
if currentRightClickMenu then
currentRightClickMenu:Destroy()
currentRightClickMenu = nil
end
if CurrentInsertObjectWindow and CurrentInsertObjectWindow.Visible then
CurrentInsertObjectWindow.Visible = false
end
end
function rightClickMenu(sObj)
local mouse = game:GetService("Players").LocalPlayer:GetMouse()
currentRightClickMenu = CreateRightClickMenu(
{"Cut","Copy","Copy Path","Paste Into","Duplicate","Delete","Group","Ungroup","Select Children","Teleport To","Insert Part","Insert Object","View Script","Save Instance","Call Function","Call Remote"},
"",
false,
function(option)
if option == "Cut" then
if not Option.Modifiable then return end
clipboard = {}
local list = Selection.List
local cut = {}
for i = 1,#list do
local obj = list[i]:Clone()
if obj then
table.insert(clipboard,obj)
table.insert(cut,list[i])
end
end
for i = 1,#cut do
pcall(delete,cut[i])
end
updateActions()
elseif option == "Copy" then
if not Option.Modifiable then return end
clipboard = {}
local list = Selection.List
for i = 1,#list do
table.insert(clipboard,list[i]:Clone())
end
updateActions()
elseif option == "Paste Into" then
if not Option.Modifiable then return end
local parent = Selection.List[1] or workspace
for i = 1,#clipboard do
clipboard[i]:Clone().Parent = parent
end
elseif option == "Duplicate" then
if not Option.Modifiable then return end
local list = Selection:Get()
for i = 1,#list do
list[i]:Clone().Parent = Selection.List[1].Parent or workspace
end
elseif option == "Delete" then
if not Option.Modifiable then return end
local list = Selection:Get()
for i = 1,#list do
pcall(delete,list[i])
end
Selection:Set({})
elseif option == "Group" then
if not Option.Modifiable then return end
local newModel = Instance.new("Model")
local list = Selection:Get()
newModel.Parent = Selection.List[1].Parent or workspace
for i = 1,#list do
list[i].Parent = newModel
end
Selection:Set({})
elseif option == "Ungroup" then
if not Option.Modifiable then return end
local ungrouped = {}
local list = Selection:Get()
for i = 1,#list do
if list[i]:IsA("Model") then
for i2,v2 in pairs(list[i]:GetChildren()) do
v2.Parent = list[i].Parent or workspace
table.insert(ungrouped,v2)
end
pcall(delete,list[i])
end
end
Selection:Set({})
if SettingsRemote:Invoke("SelectUngrouped") then
for i,v in pairs(ungrouped) do
Selection:Add(v)
end
end
elseif option == "Select Children" then
if not Option.Modifiable then return end
local list = Selection:Get()
Selection:Set({})
Selection:StopUpdates()
for i = 1,#list do
for i2,v2 in pairs(list[i]:GetChildren()) do
Selection:Add(v2)
end
end
Selection:ResumeUpdates()
elseif option == "Teleport To" then
if not Option.Modifiable then return end
local list = Selection:Get()
for i = 1,#list do
if list[i]:IsA("BasePart") then
pcall(function()
local lp = game:GetService("Players").LocalPlayer
local char = lp.Character or lp.CharacterAdded:Wait()
local root = char:WaitForChild("HumanoidRootPart")
root.CFrame = list[i].CFrame
end)
break
end
end
elseif option == "Insert Part" then
if not Option.Modifiable then return end
local insertedParts = {}
local list = Selection:Get()
for i = 1,#list do
pcall(function()
local newPart = Instance.new("Part")
newPart.Parent = list[i]
newPart.CFrame = CFrame.new(game:GetService("Players").LocalPlayer.Character.Head.Position) + Vector3.new(0,3,0)
table.insert(insertedParts,newPart)
end)
end
elseif option == "Save Instance" then
if not Option.Modifiable then return end
local list = Selection:Get()
if #list == 1 then
list[1].Archivable = true
ypcall(function()PromptSaveInstance(list[1]:Clone())end)
elseif #list > 1 then
local newModel = Instance.new("Model")
newModel.Name = "SavedInstances"
for i = 1,#list do
ypcall(function()
list[i].Archivable = true
list[i]:Clone().Parent = newModel
end)
end
PromptSaveInstance(newModel)
end
elseif option == "Call Remote" then
if not Option.Modifiable then return end
local list = Selection:Get()
for i = 1,#list do
if list[i]:IsA("RemoteFunction") or list[i]:IsA("RemoteEvent") then
PromptRemoteCaller(list[i])
break
end
end
elseif option == "View Script" then
if not Option.Modifiable then return end
local list = Selection:Get()
for i = 1,#list do
if list[i]:IsA("LocalScript") or list[i]:IsA("ModuleScript") then
ScriptEditorEvent:Fire(list[i])
end
end
elseif option == 'Copy Path' then
local Result = ''
for Index, Instance in next, Selection.List do
Result = Result .. GetFullName(Instance) .. (Index ~= #Selection.List and '\n\n' or '')
end
setclipboard(Result)
end
end)
currentRightClickMenu.Parent = explorerPanel.Parent
currentRightClickMenu.Position = UDim2.new(0,mouse.X,0,mouse.Y)
if currentRightClickMenu.AbsolutePosition.X + currentRightClickMenu.AbsoluteSize.X > explorerPanel.AbsolutePosition.X + explorerPanel.AbsoluteSize.X then
currentRightClickMenu.Position = UDim2.new(0, explorerPanel.AbsolutePosition.X + explorerPanel.AbsoluteSize.X - currentRightClickMenu.AbsoluteSize.X, 0, mouse.Y)
end
end
local function cancelReparentDrag()end
local function cancelSelectDrag()end
do
local listEntries = {}
local nameConnLookup = {}
local mouseDrag = Create('ImageButton',{
Name = "MouseDrag";
Position = UDim2.new(-0.25,0,-0.25,0);
Size = UDim2.new(1.5,0,1.5,0);
Transparency = 1;
AutoButtonColor = false;
Active = true;
ZIndex = 10;
})
local function dragSelect(last,add,button)
local connDrag
local conUp
conDrag = mouseDrag.MouseMoved:connect(function(x,y)
local pos = Vector2.new(x,y) - listFrame.AbsolutePosition
local size = listFrame.AbsoluteSize
if pos.x < 0 or pos.x > size.x or pos.y < 0 or pos.y > size.y then return end
local i = math.ceil(pos.y/ENTRY_BOUND) + scrollBar.ScrollIndex
-- Mouse may have made a large step, so interpolate between the
-- last index and the current.
for n = i<last and i or last, i>last and i or last do
local node = TreeList[n]
if node then
if add then
Selection:Add(node.Object)
else
Selection:Remove(node.Object)
end
end
end
last = i
end)
function cancelSelectDrag()
mouseDrag.Parent = nil
conDrag:disconnect()
conUp:disconnect()
function cancelSelectDrag()end
end
conUp = mouseDrag[button]:connect(cancelSelectDrag)
mouseDrag.Parent = GetScreen(listFrame)
end
local function dragReparent(object,dragGhost,clickPos,ghostOffset)
local connDrag
local conUp
local conUp2
local parentIndex = nil
local dragged = false
local parentHighlight = Create('Frame',{
Transparency = 1;
Visible = false;
Create('Frame',{
BorderSizePixel = 0;
BackgroundColor3 = Color3.new(0,0,0);
BackgroundTransparency = 0.1;
Position = UDim2.new(0,0,0,0);
Size = UDim2.new(1,0,0,1);
});
Create('Frame',{
BorderSizePixel = 0;
BackgroundColor3 = Color3.new(0,0,0);
BackgroundTransparency = 0.1;
Position = UDim2.new(1,0,0,0);
Size = UDim2.new(0,1,1,0);
});
Create('Frame',{
BorderSizePixel = 0;
BackgroundColor3 = Color3.new(0,0,0);
BackgroundTransparency = 0.1;
Position = UDim2.new(0,0,1,0);
Size = UDim2.new(1,0,0,1);
});
Create('Frame',{
BorderSizePixel = 0;
BackgroundColor3 = Color3.new(0,0,0);
BackgroundTransparency = 0.1;
Position = UDim2.new(0,0,0,0);
Size = UDim2.new(0,1,1,0);
});
})
SetZIndex(parentHighlight,9)
conDrag = mouseDrag.MouseMoved:connect(function(x,y)
local dragPos = Vector2.new(x,y)
if dragged then
local pos = dragPos - listFrame.AbsolutePosition
local size = listFrame.AbsoluteSize
parentIndex = nil
parentHighlight.Visible = false
if pos.x >= 0 and pos.x <= size.x and pos.y >= 0 and pos.y <= size.y + ENTRY_SIZE*2 then
local i = math.ceil(pos.y/ENTRY_BOUND-2)
local node = TreeList[i + scrollBar.ScrollIndex]
if node and node.Object ~= object and not object:IsAncestorOf(node.Object) then
parentIndex = i
local entry = listEntries[i]
if entry then
parentHighlight.Visible = true
parentHighlight.Position = UDim2.new(0,1,0,entry.AbsolutePosition.y-listFrame.AbsolutePosition.y)
parentHighlight.Size = UDim2.new(0,size.x-4,0,entry.AbsoluteSize.y)
end
end
end
dragGhost.Position = UDim2.new(0,dragPos.x+ghostOffset.x,0,dragPos.y+ghostOffset.y)
elseif (clickPos-dragPos).magnitude > 8 then
dragged = true
SetZIndex(dragGhost,9)
dragGhost.IndentFrame.Transparency = 0.25
dragGhost.IndentFrame.EntryText.TextColor3 = GuiColor.TextSelected
dragGhost.Position = UDim2.new(0,dragPos.x+ghostOffset.x,0,dragPos.y+ghostOffset.y)
dragGhost.Parent = GetScreen(listFrame)
parentHighlight.Parent = listFrame
end
end)
function cancelReparentDrag()
mouseDrag.Parent = nil
conDrag:disconnect()
conUp:disconnect()
conUp2:disconnect()
dragGhost:Destroy()
parentHighlight:Destroy()
function cancelReparentDrag()end
end
local wasSelected = Selection.Selected[object]
if not wasSelected and Option.Selectable then
Selection:Set({object})
end
conUp = mouseDrag.MouseButton1Up:connect(function()
cancelReparentDrag()
if dragged then
if parentIndex then
local parentNode = TreeList[parentIndex + scrollBar.ScrollIndex]
if parentNode then
parentNode.Expanded = true
local parentObj = parentNode.Object
local function parent(a,b)
a.Parent = b
end
if Option.Selectable then
local list = Selection.List
for i = 1,#list do
pcall(parent,list[i],parentObj)
end
else
pcall(parent,object,parentObj)
end
end
end
else
-- do selection click
if wasSelected and Option.Selectable then
Selection:Set({})
end
end
end)
conUp2 = mouseDrag.MouseButton2Down:connect(function()
cancelReparentDrag()
end)
mouseDrag.Parent = GetScreen(listFrame)
end
local entryTemplate = Create('ImageButton',{
Name = "Entry";
Transparency = 1;
AutoButtonColor = false;
Position = UDim2.new(0,0,0,0);
Size = UDim2.new(1,0,0,ENTRY_SIZE);
Create('Frame',{
Name = "IndentFrame";
BackgroundTransparency = 1;
BackgroundColor3 = GuiColor.Selected;
BorderColor3 = GuiColor.BorderSelected;
Position = UDim2.new(0,0,0,0);
Size = UDim2.new(1,0,1,0);
Create(Icon('ImageButton',0),{
Name = "Expand";
AutoButtonColor = false;
Position = UDim2.new(0,-GUI_SIZE,0.5,-GUI_SIZE/2);
Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE);
});
Create(Icon(nil,0),{
Name = "ExplorerIcon";
Position = UDim2.new(0,2+ENTRY_PADDING,0.5,-GUI_SIZE/2);
Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE);
});
Create('TextLabel',{
Name = "EntryText";
BackgroundTransparency = 1;
TextColor3 = GuiColor.Text;
TextXAlignment = 'Left';
TextYAlignment = 'Center';
Font = FONT;
FontSize = FONT_SIZE;
Text = "";
Position = UDim2.new(0,2+ENTRY_SIZE+4,0,0);
Size = UDim2.new(1,-2,1,0);
});
});
})
function scrollBar.UpdateCallback(self)
for i = 1,self.VisibleSpace do
local node = TreeList[i + self.ScrollIndex]
if node then
local entry = listEntries[i]
if not entry then
entry = Create(entryTemplate:Clone(),{
Position = UDim2.new(0,2,0,ENTRY_BOUND*(i-1)+2);
Size = UDim2.new(0,nodeWidth,0,ENTRY_SIZE);
ZIndex = listFrame.ZIndex;
})
listEntries[i] = entry
local expand = entry.IndentFrame.Expand
expand.MouseEnter:connect(function()
local node = TreeList[i + self.ScrollIndex]
if #node > 0 then
if node.Expanded then
Icon(expand,NODE_EXPANDED_OVER)
else
Icon(expand,NODE_COLLAPSED_OVER)
end
end
end)
expand.MouseLeave:connect(function()
local node = TreeList[i + self.ScrollIndex]
if #node > 0 then
if node.Expanded then
Icon(expand,NODE_EXPANDED)
else
Icon(expand,NODE_COLLAPSED)
end
end
end)
expand.MouseButton1Down:connect(function()
local node = TreeList[i + self.ScrollIndex]
if #node > 0 then
node.Expanded = not node.Expanded
if node.Object == explorerPanel.Parent and node.Expanded then
CreateCaution("Warning","Please be careful when editing instances inside here, this is like the System32 of Dex and modifying objects here can break Dex.")
end
-- use raw update so the list updates instantly
rawUpdateList()
end
end)
entry.MouseButton1Down:connect(function(x,y)
local node = TreeList[i + self.ScrollIndex]
DestroyRightClick()
if GetAwaitRemote:Invoke() then
bindSetAwaiting:Fire(node.Object)
return
end
if not HoldingShift then
lastSelectedNode = i + self.ScrollIndex
end
if HoldingShift and not filteringWorkspace() then
if lastSelectedNode then
if i + self.ScrollIndex - lastSelectedNode > 0 then
Selection:StopUpdates()
for i2 = 1, i + self.ScrollIndex - lastSelectedNode do
local newNode = TreeList[lastSelectedNode + i2]
if newNode then
Selection:Add(newNode.Object)
end
end
Selection:ResumeUpdates()
else
Selection:StopUpdates()
for i2 = i + self.ScrollIndex - lastSelectedNode, 1 do
local newNode = TreeList[lastSelectedNode + i2]
if newNode then
Selection:Add(newNode.Object)
end
end
Selection:ResumeUpdates()
end
end
return
end
if HoldingCtrl then
if Selection.Selected[node.Object] then
Selection:Remove(node.Object)
else
Selection:Add(node.Object)
end
return
end
if Option.Modifiable then
local pos = Vector2.new(x,y)
dragReparent(node.Object,entry:Clone(),pos,entry.AbsolutePosition-pos)
elseif Option.Selectable then
if Selection.Selected[node.Object] then
Selection:Set({})
else
Selection:Set({node.Object})
end
dragSelect(i+self.ScrollIndex,true,'MouseButton1Up')
end
end)
entry.MouseButton2Down:connect(function()
if not Option.Selectable then return end
DestroyRightClick()
curSelect = entry
local node = TreeList[i + self.ScrollIndex]
if GetAwaitRemote:Invoke() then
bindSetAwaiting:Fire(node.Object)
return
end
if not Selection.Selected[node.Object] then
Selection:Set({node.Object})
end
end)
entry.MouseButton2Up:connect(function()
if not Option.Selectable then return end
local node = TreeList[i + self.ScrollIndex]
if checkMouseInGui(curSelect) then
rightClickMenu(node.Object)
end
end)
entry.Parent = listFrame
end
entry.Visible = true
local object = node.Object
-- update expand icon
if #node == 0 then
entry.IndentFrame.Expand.Visible = false
elseif node.Expanded then
Icon(entry.IndentFrame.Expand,NODE_EXPANDED)
entry.IndentFrame.Expand.Visible = true
else
Icon(entry.IndentFrame.Expand,NODE_COLLAPSED)
entry.IndentFrame.Expand.Visible = true
end
-- update explorer icon
Icon(entry.IndentFrame.ExplorerIcon,ExplorerIndex[object.ClassName] or 0)
-- update indentation
local w = (node.Depth)*(2+ENTRY_PADDING+GUI_SIZE)
entry.IndentFrame.Position = UDim2.new(0,w,0,0)
entry.IndentFrame.Size = UDim2.new(1,-w,1,0)
-- update name change detection
if nameConnLookup[entry] then
nameConnLookup[entry]:disconnect()
end
local text = entry.IndentFrame.EntryText
text.Text = object.Name
nameConnLookup[entry] = node.Object.Changed:connect(function(p)
if p == 'Name' then
text.Text = object.Name
end
end)
-- update selection
entry.IndentFrame.Transparency = node.Selected and 0 or 1
text.TextColor3 = GuiColor[node.Selected and 'TextSelected' or 'Text']
entry.Size = UDim2.new(0,nodeWidth,0,ENTRY_SIZE)
elseif listEntries[i] then
listEntries[i].Visible = false
end
end
for i = self.VisibleSpace+1,self.TotalSpace do
local entry = listEntries[i]
if entry then
listEntries[i] = nil
entry:Destroy()
end
end
end
function scrollBarH.UpdateCallback(self)
for i = 1,scrollBar.VisibleSpace do
local node = TreeList[i + scrollBar.ScrollIndex]
if node then
local entry = listEntries[i]
if entry then
entry.Position = UDim2.new(0,2 - scrollBarH.ScrollIndex,0,ENTRY_BOUND*(i-1)+2)
end
end
end
end
Connect(listFrame.Changed,function(p)
if p == 'AbsoluteSize' then
rawUpdateSize()
end
end)
local wheelAmount = 6
explorerPanel.MouseWheelForward:connect(function()
if scrollBar.VisibleSpace - 1 > wheelAmount then
scrollBar:ScrollTo(scrollBar.ScrollIndex - wheelAmount)
else
scrollBar:ScrollTo(scrollBar.ScrollIndex - scrollBar.VisibleSpace)
end
end)
explorerPanel.MouseWheelBackward:connect(function()
if scrollBar.VisibleSpace - 1 > wheelAmount then
scrollBar:ScrollTo(scrollBar.ScrollIndex + wheelAmount)
else
scrollBar:ScrollTo(scrollBar.ScrollIndex + scrollBar.VisibleSpace)
end
end)
end
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
---- Object detection
-- Inserts `v` into `t` at `i`. Also sets `Index` field in `v`.
local function insert(t,i,v)
for n = #t,i,-1 do
local v = t[n]
v.Index = n+1
t[n+1] = v
end
v.Index = i
t[i] = v
end
-- Removes `i` from `t`. Also sets `Index` field in removed value.
local function remove(t,i)
local v = t[i]
for n = i+1,#t do
local v = t[n]
v.Index = n-1
t[n-1] = v
end
t[#t] = nil
v.Index = 0
return v
end
-- Returns how deep `o` is in the tree.
local function depth(o)
local d = -1
while o do
o = o.Parent
d = d + 1
end
return d
end
local connLookup = {}
-- Returns whether a node would be present in the tree list
local function nodeIsVisible(node)
local visible = true
node = node.Parent
while node and visible do
visible = visible and node.Expanded
node = node.Parent
end
return visible
end
-- Removes an object's tree node. Called when the object stops existing in the
-- game tree.
local function removeObject(object)
local objectNode = NodeLookup[object]
if not objectNode then
return
end
local visible = nodeIsVisible(objectNode)
Selection:Remove(object,true)
local parent = objectNode.Parent
remove(parent,objectNode.Index)
NodeLookup[object] = nil
connLookup[object]:disconnect()
connLookup[object] = nil
if visible then
updateList()
elseif nodeIsVisible(parent) then
updateScroll()
end
end
-- Moves a tree node to a new parent. Called when an existing object's parent
-- changes.
local function moveObject(object,parent)
local objectNode = NodeLookup[object]
if not objectNode then
return
end
local parentNode = NodeLookup[parent]
if not parentNode then
return
end
local visible = nodeIsVisible(objectNode)
remove(objectNode.Parent,objectNode.Index)
objectNode.Parent = parentNode
objectNode.Depth = depth(object)
local function r(node,d)
for i = 1,#node do
node[i].Depth = d
r(node[i],d+1)
end
end
r(objectNode,objectNode.Depth+1)
insert(parentNode,#parentNode+1,objectNode)
if visible or nodeIsVisible(objectNode) then
updateList()
elseif nodeIsVisible(objectNode.Parent) then
updateScroll()
end
end
-- ScriptContext['/Libraries/LibraryRegistration/LibraryRegistration']
-- This RobloxLocked object lets me index its properties for some reason
local function check(object)
return object.AncestryChanged
end
-- Creates a new tree node from an object. Called when an object starts
-- existing in the game tree.
local function addObject(object,noupdate)
if script then
-- protect against naughty RobloxLocked objects
local s = pcall(check,object)
if not s then
return
end
end
local parentNode = NodeLookup[object.Parent]
if not parentNode then
return
end
local objectNode = {
Object = object;
Parent = parentNode;
Index = 0;
Expanded = false;
Selected = false;
Depth = depth(object);
}
connLookup[object] = Connect(object.AncestryChanged,function(c,p)
if c == object then
if p == nil then
removeObject(c)
else
moveObject(c,p)
end
end
end)
NodeLookup[object] = objectNode
insert(parentNode,#parentNode+1,objectNode)
if not noupdate then
if nodeIsVisible(objectNode) then
updateList()
elseif nodeIsVisible(objectNode.Parent) then
updateScroll()
end
end
end
local function makeObject(obj,par)
local newObject = Instance.new(obj.ClassName)
for i,v in pairs(obj.Properties) do
ypcall(function()
local newProp
newProp = ToPropValue(v.Value,v.Type)
newObject[v.Name] = newProp
end)
end
newObject.Parent = par
end
local function writeObject(obj)
local newObject = {ClassName = obj.ClassName, Properties = {}}
for i,v in pairs(RbxApi.GetProperties(obj.className)) do
if v["Name"] ~= "Parent" then
print("thispassed")
table.insert(newObject.Properties,{Name = v["Name"], Type = v["ValueType"], Value = tostring(obj[v["Name"]])})
end
end
return newObject
end
local function buildDexStorage()
local localDexStorage
local success,err = ypcall(function()
localDexStorage = game:GetObjects("rbxasset://DexStorage.rbxm")[1]
end)
if success and localDexStorage then
for i,v in pairs(localDexStorage:GetChildren()) do
ypcall(function()
v.Parent = DexStorageMain
end)
end
end
updateDexStorageListeners()
--[[
local localDexStorage = readfile(getelysianpath().."DexStorage.txt")--game:GetService("CookiesService"):GetCookieValue("DexStorage")
--local success,err = pcall(function()
if localDexStorage then
local objTable = game:GetService("HttpService"):JSONDecode(localDexStorage)
for i,v in pairs(objTable) do
makeObject(v,DexStorageMain)
end
end
--end)
--]]
end
local dexStorageDebounce = false
local dexStorageListeners = {}
local function updateDexStorage()
if dexStorageDebounce then return end
dexStorageDebounce = true
wait()
pcall(function()
saveinstance("content//DexStorage.rbxm",DexStorageMain)
end)
updateDexStorageListeners()
dexStorageDebounce = false
--[[
local success,err = ypcall(function()
local objs = {}
for i,v in pairs(DexStorageMain:GetChildren()) do
table.insert(objs,writeObject(v))
end
writefile(getelysianpath().."DexStorage.txt",game:GetService("HttpService"):JSONEncode(objs))
--game:GetService("CookiesService"):SetCookieValue("DexStorage",game:GetService("HttpService"):JSONEncode(objs))
end)
if err then
CreateCaution("DexStorage Save Fail!","DexStorage broke! If you see this message, report to Raspberry Pi!")
end
print("hi")
--]]
end
function updateDexStorageListeners()
for i,v in pairs(dexStorageListeners) do
v:Disconnect()
end
dexStorageListeners = {}
for i,v in pairs(DexStorageMain:GetChildren()) do
pcall(function()
local ev = v.Changed:connect(updateDexStorage)
table.insert(dexStorageListeners,ev)
end)
end
end
do
NodeLookup[workspace.Parent] = {
Object = workspace.Parent;
Parent = nil;
Index = 0;
Expanded = true;
}
if DexStorageEnabled then
NodeLookup[DexStorage] = {
Object = DexStorage;
Parent = nil;
Index = 0;
Expanded = true;
}
end
if NilStorageEnabled then
NodeLookup[NilStorage] = {
Object = NilStorage;
Parent = nil;
Index = 0;
Expanded = true;
}
end
Connect(game.DescendantAdded,addObject)
Connect(game.DescendantRemoving,removeObject)
if DexStorageEnabled then
--[[
if readfile(getelysianpath().."DexStorage.txt") == nil then
writefile(getelysianpath().."DexStorage.txt","")
end
--]]
buildDexStorage()
Connect(DexStorage.DescendantAdded,addObject)
Connect(DexStorage.DescendantRemoving,removeObject)
Connect(DexStorage.DescendantAdded,updateDexStorage)
Connect(DexStorage.DescendantRemoving,updateDexStorage)
end
if NilStorageEnabled then
Connect(NilStorage.DescendantAdded,addObject)
Connect(NilStorage.DescendantRemoving,removeObject)
local currentTable = get_nil_instances()
spawn(function()
while wait() do
if #currentTable ~= #get_nil_instances() then
currentTable = get_nil_instances()
--NilStorageMain:ClearAllChildren()
for i,v in pairs(get_nil_instances()) do
if v ~= NilStorage and v ~= DexStorage then
pcall(function()
v.Parent = NilStorageMain
end)
--[[
local newNil = v
newNil.Archivable = true
newNil:Clone().Parent = NilStorageMain
--]]
end
end
end
end
end)
end
local function get(o)
return o:GetChildren()
end
local function r(o)
local s,children = pcall(get,o)
if s then
for i = 1,#children do
addObject(children[i],true)
r(children[i])
end
end
end
r(workspace.Parent)
if DexStorageEnabled then
r(DexStorage)
end
if NilStorageEnabled then
r(NilStorage)
end
scrollBar.VisibleSpace = math.ceil(listFrame.AbsoluteSize.y/ENTRY_BOUND)
updateList()
end
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
---- Actions
local actionButtons do
actionButtons = {}
local totalActions = 1
local currentActions = totalActions
local function makeButton(icon,over,name,vis,cond)
local buttonEnabled = false
local button = Create(Icon('ImageButton',icon),{
Name = name .. "Button";
Visible = Option.Modifiable and Option.Selectable;
Position = UDim2.new(1,-(GUI_SIZE+2)*currentActions+2,0.25,-GUI_SIZE/2);
Size = UDim2.new(0,GUI_SIZE,0,GUI_SIZE);
Parent = headerFrame;
})
local tipText = Create('TextLabel',{
Name = name .. "Text";
Text = name;
Visible = false;
BackgroundTransparency = 1;
TextXAlignment = 'Right';
Font = FONT;
FontSize = FONT_SIZE;
Position = UDim2.new(0,0,0,0);
Size = UDim2.new(1,-(GUI_SIZE+2)*totalActions,1,0);
Parent = headerFrame;
})
button.MouseEnter:connect(function()
if buttonEnabled then
button.BackgroundTransparency = 0.9
end
--Icon(button,over)
--tipText.Visible = true
end)
button.MouseLeave:connect(function()
button.BackgroundTransparency = 1
--Icon(button,icon)
--tipText.Visible = false
end)
currentActions = currentActions + 1
actionButtons[#actionButtons+1] = {Obj = button,Cond = cond}
QuickButtons[#actionButtons+1] = {Obj = button,Cond = cond, Toggle = function(on)
if on then
buttonEnabled = true
Icon(button,over)
else
buttonEnabled = false
Icon(button,icon)
end
end}
return button
end
--local clipboard = {}
local function delete(o)
o.Parent = nil
end
makeButton(ACTION_EDITQUICKACCESS,ACTION_EDITQUICKACCESS,"Options",true,function()return true end).MouseButton1Click:connect(function()
end)
-- DELETE
makeButton(ACTION_DELETE,ACTION_DELETE_OVER,"Delete",true,function() return #Selection:Get() > 0 end).MouseButton1Click:connect(function()
if not Option.Modifiable then return end
local list = Selection:Get()
for i = 1,#list do
pcall(delete,list[i])
end
Selection:Set({})
end)
-- PASTE
makeButton(ACTION_PASTE,ACTION_PASTE_OVER,"Paste",true,function() return #Selection:Get() > 0 and #clipboard > 0 end).MouseButton1Click:connect(function()
if not Option.Modifiable then return end
local parent = Selection.List[1] or workspace
for i = 1,#clipboard do
clipboard[i]:Clone().Parent = parent
end
end)
-- COPY
makeButton(ACTION_COPY,ACTION_COPY_OVER,"Copy",true,function() return #Selection:Get() > 0 end).MouseButton1Click:connect(function()
if not Option.Modifiable then return end
clipboard = {}
local list = Selection.List
for i = 1,#list do
table.insert(clipboard,list[i]:Clone())
end
updateActions()
end)
-- CUT
makeButton(ACTION_CUT,ACTION_CUT_OVER,"Cut",true,function() return #Selection:Get() > 0 end).MouseButton1Click:connect(function()
if not Option.Modifiable then return end
clipboard = {}
local list = Selection.List
local cut = {}
for i = 1,#list do
local obj = list[i]:Clone()
if obj then
table.insert(clipboard,obj)
table.insert(cut,list[i])
end
end
for i = 1,#cut do
pcall(delete,cut[i])
end
updateActions()
end)
-- FREEZE
makeButton(ACTION_FREEZE,ACTION_FREEZE,"Freeze",true,function() return true end)
-- ADD/REMOVE STARRED
makeButton(ACTION_ADDSTAR,ACTION_ADDSTAR_OVER,"Star",true,function() return #Selection:Get() > 0 end)
-- STARRED
makeButton(ACTION_STARRED,ACTION_STARRED,"Starred",true,function() return true end)
-- SORT
-- local actionSort = makeButton(ACTION_SORT,ACTION_SORT_OVER,"Sort")
end
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
---- Option Bindables
do
local optionCallback = {
Modifiable = function(value)
for i = 1,#actionButtons do
actionButtons[i].Obj.Visible = value and Option.Selectable
end
cancelReparentDrag()
end;
Selectable = function(value)
for i = 1,#actionButtons do
actionButtons[i].Obj.Visible = value and Option.Modifiable
end
cancelSelectDrag()
Selection:Set({})
end;
}
local bindSetOption = explorerPanel:FindFirstChild("SetOption")
if not bindSetOption then
bindSetOption = Create('BindableFunction',{Name = "SetOption"})
bindSetOption.Parent = explorerPanel
end
bindSetOption.OnInvoke = function(optionName,value)
if optionCallback[optionName] then
Option[optionName] = value
optionCallback[optionName](value)
end
end
local bindGetOption = explorerPanel:FindFirstChild("GetOption")
if not bindGetOption then
bindGetOption = Create('BindableFunction',{Name = "GetOption"})
bindGetOption.Parent = explorerPanel
end
bindGetOption.OnInvoke = function(optionName)
if optionName then
return Option[optionName]
else
local options = {}
for k,v in pairs(Option) do
options[k] = v
end
return options
end
end
end
function SelectionVar()
return Selection
end
Input.InputBegan:connect(function(key)
if key.KeyCode == Enum.KeyCode.LeftControl then
HoldingCtrl = true
end
if key.KeyCode == Enum.KeyCode.LeftShift then
HoldingShift = true
end
end)
Input.InputEnded:connect(function(key)
if key.KeyCode == Enum.KeyCode.LeftControl then
HoldingCtrl = false
end
if key.KeyCode == Enum.KeyCode.LeftShift then
HoldingShift = false
end
end)
while RbxApi == nil do
RbxApi = GetApiRemote:Invoke()
wait()
end
explorerFilter.Changed:connect(function(prop)
if prop == "Text" then
rawUpdateList()
end
end)
CurrentInsertObjectWindow = CreateInsertObjectMenu(
GetClasses(),
"",
false,
function(option)
CurrentInsertObjectWindow.Visible = false
local list = SelectionVar():Get()
for i = 1,#list do
pcall(function() Instance.new(option,list[i]) end)
end
DestroyRightClick()
end
)
end)
spawn(function()
--[[
Change log:
09/18
Fixed checkbox mouseover sprite
Encapsulated checkbox creation into separate method
Fixed another checkbox issue
09/15
Invalid input is ignored instead of setting to default of that data type
Consolidated control methods and simplified them
All input goes through ToValue method
Fixed position of BrickColor palette
Made DropDown appear above row if it would otherwise exceed the page height
Cleaned up stylesheets
09/14
Made properties window scroll when mouse wheel scrolled
Object/Instance and Color3 data types handled properly
Multiple BrickColor controls interfering with each other fixed
Added support for Content data type
--]]
wait(0.2)
local print = function(s)
print(tostring(s))
end
-- Services
local Teams = game:GetService("Teams")
local Workspace = game:GetService("Workspace")
local Debris = game:GetService("Debris")
local ContentProvider = game:GetService("ContentProvider")
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
-- Functions
function httpGet(url)
return game:HttpGet(url,true)
end
-- RbxApi Stuff
local apiUrl = "http://anaminus.github.io/rbx/json/api/latest.json"
local maxChunkSize = 100 * 1000
local ApiJson
if script:FindFirstChild("RawApiJson") then
ApiJson = script.RawApiJson
else
ApiJson = ""
end
function getLocalApiJson()
local rawApiJson = [===[
[{"Superclass":null,"type":"Class","Name":"Instance","tags":["notbrowsable"]},{"ValueType":"bool","type":"Property","Name":"Archivable","tags":[],"Class":"Instance"},{"ValueType":"string","type":"Property","Name":"ClassName","tags":["readonly"],"Class":"Instance"},{"ValueType":"int","type":"Property","Name":"DataCost","tags":["RobloxPlaceSecurity","readonly"],"Class":"Instance"},{"ValueType":"string","type":"Property","Name":"Name","tags":[],"Class":"Instance"},{"ValueType":"Object","type":"Property","Name":"Parent","tags":[],"Class":"Instance"},{"ValueType":"bool","type":"Property","Name":"RobloxLocked","tags":["PluginSecurity"],"Class":"Instance"},{"ValueType":"bool","type":"Property","Name":"archivable","tags":["hidden"],"Class":"Instance"},{"ValueType":"string","type":"Property","Name":"className","tags":["deprecated","readonly"],"Class":"Instance"},{"ReturnType":"void","Arguments":[],"Name":"ClearAllChildren","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"Clone","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Destroy","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"bool","Name":"recursive","Default":"false"}],"Name":"FindFirstChild","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetChildren","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"scopeLength","Default":"4"}],"Name":"GetDebugId","tags":["PluginSecurity","notbrowsable"],"Class":"Instance","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetFullName","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"className","Default":null}],"Name":"IsA","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Instance","Name":"descendant","Default":null}],"Name":"IsAncestorOf","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Instance","Name":"ancestor","Default":null}],"Name":"IsDescendantOf","tags":[],"Class":"Instance","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Remove","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"children","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"clone","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"destroy","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"bool","Name":"recursive","Default":"false"}],"Name":"findFirstChild","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"getChildren","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"className","Default":null}],"Name":"isA","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Instance","Name":"ancestor","Default":null}],"Name":"isDescendantOf","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"remove","tags":["deprecated"],"Class":"Instance","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"childName","Default":null}],"Name":"WaitForChild","tags":[],"Class":"Instance","type":"YieldFunction"},{"Arguments":[{"Name":"child","Type":"Instance"},{"Name":"parent","Type":"Instance"}],"Name":"AncestryChanged","tags":[],"Class":"Instance","type":"Event"},{"Arguments":[{"Name":"property","Type":"Property"}],"Name":"Changed","tags":[],"Class":"Instance","type":"Event"},{"Arguments":[{"Name":"child","Type":"Instance"}],"Name":"ChildAdded","tags":[],"Class":"Instance","type":"Event"},{"Arguments":[{"Name":"child","Type":"Instance"}],"Name":"ChildRemoved","tags":[],"Class":"Instance","type":"Event"},{"Arguments":[{"Name":"descendant","Type":"Instance"}],"Name":"DescendantAdded","tags":[],"Class":"Instance","type":"Event"},{"Arguments":[{"Name":"descendant","Type":"Instance"}],"Name":"DescendantRemoving","tags":[],"Class":"Instance","type":"Event"},{"Arguments":[{"Name":"child","Type":"Instance"}],"Name":"childAdded","tags":["deprecated"],"Class":"Instance","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Accoutrement","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"AttachmentForward","tags":[],"Class":"Accoutrement"},{"ValueType":"CoordinateFrame","type":"Property","Name":"AttachmentPoint","tags":[],"Class":"Accoutrement"},{"ValueType":"Vector3","type":"Property","Name":"AttachmentPos","tags":[],"Class":"Accoutrement"},{"ValueType":"Vector3","type":"Property","Name":"AttachmentRight","tags":[],"Class":"Accoutrement"},{"ValueType":"Vector3","type":"Property","Name":"AttachmentUp","tags":[],"Class":"Accoutrement"},{"Superclass":"Accoutrement","type":"Class","Name":"Accessory","tags":[]},{"Superclass":"Accoutrement","type":"Class","Name":"Hat","tags":["deprecated"]},{"Superclass":"Instance","type":"Class","Name":"AdService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[],"Name":"ShowVideoAd","tags":[],"Class":"AdService","type":"Function"},{"Arguments":[{"Name":"adShown","Type":"bool"}],"Name":"VideoAdClosed","tags":[],"Class":"AdService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"AdvancedDragger","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Animation","tags":[]},{"ValueType":"Content","type":"Property","Name":"AnimationId","tags":[],"Class":"Animation"},{"Superclass":"Instance","type":"Class","Name":"AnimationController","tags":[]},{"ReturnType":"Array","Arguments":[],"Name":"GetPlayingAnimationTracks","tags":[],"Class":"AnimationController","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"animation","Default":null}],"Name":"LoadAnimation","tags":[],"Class":"AnimationController","type":"Function"},{"Arguments":[{"Name":"animationTrack","Type":"Instance"}],"Name":"AnimationPlayed","tags":[],"Class":"AnimationController","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"AnimationTrack","tags":[]},{"ValueType":"Object","type":"Property","Name":"Animation","tags":["readonly"],"Class":"AnimationTrack"},{"ValueType":"bool","type":"Property","Name":"IsPlaying","tags":["readonly"],"Class":"AnimationTrack"},{"ValueType":"float","type":"Property","Name":"Length","tags":["readonly"],"Class":"AnimationTrack"},{"ValueType":"AnimationPriority","type":"Property","Name":"Priority","tags":[],"Class":"AnimationTrack"},{"ValueType":"float","type":"Property","Name":"TimePosition","tags":[],"Class":"AnimationTrack"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"speed","Default":"1"}],"Name":"AdjustSpeed","tags":[],"Class":"AnimationTrack","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"weight","Default":"1"},{"Type":"float","Name":"fadeTime","Default":"0.100000001"}],"Name":"AdjustWeight","tags":[],"Class":"AnimationTrack","type":"Function"},{"ReturnType":"double","Arguments":[{"Type":"string","Name":"keyframeName","Default":null}],"Name":"GetTimeOfKeyframe","tags":[],"Class":"AnimationTrack","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"fadeTime","Default":"0.100000001"},{"Type":"float","Name":"weight","Default":"1"},{"Type":"float","Name":"speed","Default":"1"}],"Name":"Play","tags":[],"Class":"AnimationTrack","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"fadeTime","Default":"0.100000001"}],"Name":"Stop","tags":[],"Class":"AnimationTrack","type":"Function"},{"Arguments":[{"Name":"keyframeName","Type":"string"}],"Name":"KeyframeReached","tags":[],"Class":"AnimationTrack","type":"Event"},{"Arguments":[],"Name":"Stopped","tags":["deprecated"],"Class":"AnimationTrack","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"AnimationTrackState","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Animator","tags":[]},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"animation","Default":null}],"Name":"LoadAnimation","tags":[],"Class":"Animator","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"AssetService","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"revertUrl","Default":null}],"Name":"SetAssetRevertUrl","tags":["LocalUserSecurity"],"Class":"AssetService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"versionsUrl","Default":null}],"Name":"SetAssetVersionsUrl","tags":["LocalUserSecurity"],"Class":"AssetService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"accessUrl","Default":null}],"Name":"SetPlaceAccessUrl","tags":["LocalUserSecurity"],"Class":"AssetService","type":"Function"},{"ReturnType":"int","Arguments":[{"Type":"string","Name":"placeName","Default":null},{"Type":"int","Name":"templatePlaceID","Default":null},{"Type":"string","Name":"description","Default":""}],"Name":"CreatePlaceAsync","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"string","Name":"placeName","Default":null},{"Type":"int","Name":"templatePlaceID","Default":null},{"Type":"string","Name":"description","Default":""}],"Name":"CreatePlaceInPlayerInventoryAsync","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"Dictionary","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"int","Name":"pageNum","Default":"1"}],"Name":"GetAssetVersions","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"int","Name":"creationID","Default":null}],"Name":"GetCreatorAssetID","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[],"Name":"GetGamePlacesAsync","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"Dictionary","Arguments":[{"Type":"int","Name":"placeId","Default":null}],"Name":"GetPlacePermissions","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"int","Name":"versionNumber","Default":null}],"Name":"RevertAsset","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"void","Arguments":[],"Name":"SavePlaceAsync","tags":[],"Class":"AssetService","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"AccessType","Name":"accessType","Default":"Everyone"},{"Type":"Array","Name":"inviteList","Default":"{}"}],"Name":"SetPlacePermissions","tags":[],"Class":"AssetService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"Attachment","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"Axis","tags":[],"Class":"Attachment"},{"ValueType":"CoordinateFrame","type":"Property","Name":"CFrame","tags":[],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"Position","tags":[],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"Rotation","tags":[],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"SecondaryAxis","tags":[],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"WorldAxis","tags":["readonly"],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"WorldPosition","tags":["readonly"],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"WorldRotation","tags":["readonly"],"Class":"Attachment"},{"ValueType":"Vector3","type":"Property","Name":"WorldSecondaryAxis","tags":["readonly"],"Class":"Attachment"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetAxis","tags":[],"Class":"Attachment","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetSecondaryAxis","tags":[],"Class":"Attachment","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"axis","Default":null}],"Name":"SetAxis","tags":[],"Class":"Attachment","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"axis","Default":null}],"Name":"SetSecondaryAxis","tags":[],"Class":"Attachment","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"BadgeService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetAwardBadgeUrl","tags":["LocalUserSecurity"],"Class":"BadgeService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"seconds","Default":null}],"Name":"SetHasBadgeCooldown","tags":["LocalUserSecurity"],"Class":"BadgeService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetHasBadgeUrl","tags":["LocalUserSecurity"],"Class":"BadgeService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetIsBadgeDisabledUrl","tags":["LocalUserSecurity"],"Class":"BadgeService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetIsBadgeLegalUrl","tags":["LocalUserSecurity"],"Class":"BadgeService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null}],"Name":"SetPlaceId","tags":["LocalUserSecurity"],"Class":"BadgeService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"badgeId","Default":null}],"Name":"AwardBadge","tags":[],"Class":"BadgeService","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"badgeId","Default":null}],"Name":"IsDisabled","tags":[],"Class":"BadgeService","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"badgeId","Default":null}],"Name":"IsLegal","tags":[],"Class":"BadgeService","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"badgeId","Default":null}],"Name":"UserHasBadge","tags":[],"Class":"BadgeService","type":"YieldFunction"},{"Arguments":[{"Name":"message","Type":"string"},{"Name":"userId","Type":"int"},{"Name":"badgeId","Type":"int"}],"Name":"BadgeAwarded","tags":["RobloxScriptSecurity"],"Class":"BadgeService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"BasePlayerGui","tags":[]},{"Superclass":"BasePlayerGui","type":"Class","Name":"CoreGui","tags":["notCreatable","notbrowsable"]},{"ValueType":"Object","type":"Property","Name":"SelectionImageObject","tags":["RobloxScriptSecurity"],"Class":"CoreGui"},{"ValueType":"int","type":"Property","Name":"Version","tags":["readonly"],"Class":"CoreGui"},{"Superclass":"BasePlayerGui","type":"Class","Name":"PlayerGui","tags":["notCreatable"]},{"ValueType":"Object","type":"Property","Name":"SelectionImageObject","tags":[],"Class":"PlayerGui"},{"ReturnType":"float","Arguments":[],"Name":"GetTopbarTransparency","tags":[],"Class":"PlayerGui","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"transparency","Default":null}],"Name":"SetTopbarTransparency","tags":[],"Class":"PlayerGui","type":"Function"},{"Arguments":[{"Name":"transparency","Type":"float"}],"Name":"TopbarTransparencyChangedSignal","tags":[],"Class":"PlayerGui","type":"Event"},{"Superclass":"BasePlayerGui","type":"Class","Name":"StarterGui","tags":[]},{"ValueType":"bool","type":"Property","Name":"ResetPlayerGuiOnSpawn","tags":[],"Class":"StarterGui"},{"ValueType":"bool","type":"Property","Name":"ShowDevelopmentGui","tags":[],"Class":"StarterGui"},{"ReturnType":"bool","Arguments":[{"Type":"CoreGuiType","Name":"coreGuiType","Default":null}],"Name":"GetCoreGuiEnabled","tags":[],"Class":"StarterGui","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"parameterName","Default":null},{"Type":"Function","Name":"getFunction","Default":null}],"Name":"RegisterGetCore","tags":["RobloxScriptSecurity"],"Class":"StarterGui","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"parameterName","Default":null},{"Type":"Function","Name":"setFunction","Default":null}],"Name":"RegisterSetCore","tags":["RobloxScriptSecurity"],"Class":"StarterGui","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"parameterName","Default":null},{"Type":"Variant","Name":"value","Default":null}],"Name":"SetCore","tags":[],"Class":"StarterGui","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"CoreGuiType","Name":"coreGuiType","Default":null},{"Type":"bool","Name":"enabled","Default":null}],"Name":"SetCoreGuiEnabled","tags":[],"Class":"StarterGui","type":"Function"},{"ReturnType":"Variant","Arguments":[{"Type":"string","Name":"parameterName","Default":null}],"Name":"GetCore","tags":[],"Class":"StarterGui","type":"YieldFunction"},{"Arguments":[{"Name":"coreGuiType","Type":"CoreGuiType"},{"Name":"enabled","Type":"bool"}],"Name":"CoreGuiChangedSignal","tags":["RobloxScriptSecurity"],"Class":"StarterGui","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"BinaryStringValue","tags":[]},{"Superclass":"Instance","type":"Class","Name":"BindableEvent","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"Fire","tags":[],"Class":"BindableEvent","type":"Function"},{"Arguments":[{"Name":"arguments","Type":"Tuple"}],"Name":"Event","tags":[],"Class":"BindableEvent","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"BindableFunction","tags":[]},{"ReturnType":"Tuple","Arguments":[{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"Invoke","tags":[],"Class":"BindableFunction","type":"YieldFunction"},{"ReturnType":"Tuple","Arguments":[{"Name":"arguments","Type":"Tuple"}],"Name":"OnInvoke","tags":[],"Class":"BindableFunction","type":"Callback"},{"Superclass":"Instance","type":"Class","Name":"BodyMover","tags":[]},{"Superclass":"BodyMover","type":"Class","Name":"BodyAngularVelocity","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"AngularVelocity","tags":[],"Class":"BodyAngularVelocity"},{"ValueType":"Vector3","type":"Property","Name":"MaxTorque","tags":[],"Class":"BodyAngularVelocity"},{"ValueType":"float","type":"Property","Name":"P","tags":[],"Class":"BodyAngularVelocity"},{"ValueType":"Vector3","type":"Property","Name":"angularvelocity","tags":["deprecated"],"Class":"BodyAngularVelocity"},{"ValueType":"Vector3","type":"Property","Name":"maxTorque","tags":["deprecated"],"Class":"BodyAngularVelocity"},{"Superclass":"BodyMover","type":"Class","Name":"BodyForce","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"Force","tags":[],"Class":"BodyForce"},{"ValueType":"Vector3","type":"Property","Name":"force","tags":["deprecated"],"Class":"BodyForce"},{"Superclass":"BodyMover","type":"Class","Name":"BodyGyro","tags":[]},{"ValueType":"CoordinateFrame","type":"Property","Name":"CFrame","tags":[],"Class":"BodyGyro"},{"ValueType":"float","type":"Property","Name":"D","tags":[],"Class":"BodyGyro"},{"ValueType":"Vector3","type":"Property","Name":"MaxTorque","tags":[],"Class":"BodyGyro"},{"ValueType":"float","type":"Property","Name":"P","tags":[],"Class":"BodyGyro"},{"ValueType":"CoordinateFrame","type":"Property","Name":"cframe","tags":["deprecated"],"Class":"BodyGyro"},{"ValueType":"Vector3","type":"Property","Name":"maxTorque","tags":["deprecated"],"Class":"BodyGyro"},{"Superclass":"BodyMover","type":"Class","Name":"BodyPosition","tags":[]},{"ValueType":"float","type":"Property","Name":"D","tags":[],"Class":"BodyPosition"},{"ValueType":"Vector3","type":"Property","Name":"MaxForce","tags":[],"Class":"BodyPosition"},{"ValueType":"float","type":"Property","Name":"P","tags":[],"Class":"BodyPosition"},{"ValueType":"Vector3","type":"Property","Name":"Position","tags":[],"Class":"BodyPosition"},{"ValueType":"Vector3","type":"Property","Name":"maxForce","tags":["deprecated"],"Class":"BodyPosition"},{"ValueType":"Vector3","type":"Property","Name":"position","tags":["deprecated"],"Class":"BodyPosition"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetLastForce","tags":[],"Class":"BodyPosition","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"lastForce","tags":["deprecated"],"Class":"BodyPosition","type":"Function"},{"Arguments":[],"Name":"ReachedTarget","tags":[],"Class":"BodyPosition","type":"Event"},{"Superclass":"BodyMover","type":"Class","Name":"BodyThrust","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"Force","tags":[],"Class":"BodyThrust"},{"ValueType":"Vector3","type":"Property","Name":"Location","tags":[],"Class":"BodyThrust"},{"ValueType":"Vector3","type":"Property","Name":"force","tags":["deprecated"],"Class":"BodyThrust"},{"ValueType":"Vector3","type":"Property","Name":"location","tags":["deprecated"],"Class":"BodyThrust"},{"Superclass":"BodyMover","type":"Class","Name":"BodyVelocity","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"MaxForce","tags":[],"Class":"BodyVelocity"},{"ValueType":"float","type":"Property","Name":"P","tags":[],"Class":"BodyVelocity"},{"ValueType":"Vector3","type":"Property","Name":"Velocity","tags":[],"Class":"BodyVelocity"},{"ValueType":"Vector3","type":"Property","Name":"maxForce","tags":["deprecated"],"Class":"BodyVelocity"},{"ValueType":"Vector3","type":"Property","Name":"velocity","tags":["deprecated"],"Class":"BodyVelocity"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetLastForce","tags":[],"Class":"BodyVelocity","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"lastForce","tags":[],"Class":"BodyVelocity","type":"Function"},{"Superclass":"BodyMover","type":"Class","Name":"RocketPropulsion","tags":[]},{"ValueType":"float","type":"Property","Name":"CartoonFactor","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"MaxSpeed","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"MaxThrust","tags":[],"Class":"RocketPropulsion"},{"ValueType":"Vector3","type":"Property","Name":"MaxTorque","tags":[],"Class":"RocketPropulsion"},{"ValueType":"Object","type":"Property","Name":"Target","tags":[],"Class":"RocketPropulsion"},{"ValueType":"Vector3","type":"Property","Name":"TargetOffset","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"TargetRadius","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"ThrustD","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"ThrustP","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"TurnD","tags":[],"Class":"RocketPropulsion"},{"ValueType":"float","type":"Property","Name":"TurnP","tags":[],"Class":"RocketPropulsion"},{"ReturnType":"void","Arguments":[],"Name":"Abort","tags":[],"Class":"RocketPropulsion","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Fire","tags":[],"Class":"RocketPropulsion","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"fire","tags":["deprecated"],"Class":"RocketPropulsion","type":"Function"},{"Arguments":[],"Name":"ReachedTarget","tags":[],"Class":"RocketPropulsion","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"BoolValue","tags":[]},{"ValueType":"bool","type":"Property","Name":"Value","tags":[],"Class":"BoolValue"},{"Arguments":[{"Name":"value","Type":"bool"}],"Name":"Changed","tags":[],"Class":"BoolValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"bool"}],"Name":"changed","tags":["deprecated"],"Class":"BoolValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"BrickColorValue","tags":[]},{"ValueType":"BrickColor","type":"Property","Name":"Value","tags":[],"Class":"BrickColorValue"},{"Arguments":[{"Name":"value","Type":"BrickColor"}],"Name":"Changed","tags":[],"Class":"BrickColorValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"BrickColor"}],"Name":"changed","tags":["deprecated"],"Class":"BrickColorValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Button","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"active","Default":null}],"Name":"SetActive","tags":["PluginSecurity"],"Class":"Button","type":"Function"},{"Arguments":[],"Name":"Click","tags":["PluginSecurity"],"Class":"Button","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"CFrameValue","tags":[]},{"ValueType":"CoordinateFrame","type":"Property","Name":"Value","tags":[],"Class":"CFrameValue"},{"Arguments":[{"Name":"value","Type":"CoordinateFrame"}],"Name":"Changed","tags":[],"Class":"CFrameValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"CoordinateFrame"}],"Name":"changed","tags":["deprecated"],"Class":"CFrameValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"CacheableContentProvider","tags":[]},{"Superclass":"CacheableContentProvider","type":"Class","Name":"MeshContentProvider","tags":[]},{"Superclass":"CacheableContentProvider","type":"Class","Name":"SolidModelContentProvider","tags":[]},{"Superclass":"CacheableContentProvider","type":"Class","Name":"TextureContentProvider","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Camera","tags":[]},{"ValueType":"CoordinateFrame","type":"Property","Name":"CFrame","tags":[],"Class":"Camera"},{"ValueType":"Object","type":"Property","Name":"CameraSubject","tags":[],"Class":"Camera"},{"ValueType":"CameraType","type":"Property","Name":"CameraType","tags":[],"Class":"Camera"},{"ValueType":"CoordinateFrame","type":"Property","Name":"CoordinateFrame","tags":["deprecated","hidden"],"Class":"Camera"},{"ValueType":"float","type":"Property","Name":"FieldOfView","tags":[],"Class":"Camera"},{"ValueType":"CoordinateFrame","type":"Property","Name":"Focus","tags":[],"Class":"Camera"},{"ValueType":"bool","type":"Property","Name":"HeadLocked","tags":[],"Class":"Camera"},{"ValueType":"float","type":"Property","Name":"HeadScale","tags":[],"Class":"Camera"},{"ValueType":"Vector2","type":"Property","Name":"ViewportSize","tags":["readonly"],"Class":"Camera"},{"ValueType":"CoordinateFrame","type":"Property","Name":"focus","tags":["deprecated"],"Class":"Camera"},{"ReturnType":"float","Arguments":[],"Name":"GetPanSpeed","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"CoordinateFrame","Arguments":[],"Name":"GetRenderCFrame","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"float","Arguments":[],"Name":"GetRoll","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"float","Arguments":[],"Name":"GetTiltSpeed","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"CoordinateFrame","Name":"endPos","Default":null},{"Type":"CoordinateFrame","Name":"endFocus","Default":null},{"Type":"float","Name":"duration","Default":null}],"Name":"Interpolate","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"units","Default":null}],"Name":"PanUnits","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"Ray","Arguments":[{"Type":"float","Name":"x","Default":null},{"Type":"float","Name":"y","Default":null},{"Type":"float","Name":"depth","Default":"0"}],"Name":"ScreenPointToRay","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"CameraPanMode","Name":"mode","Default":"Classic"}],"Name":"SetCameraPanMode","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"rollAngle","Default":null}],"Name":"SetRoll","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"units","Default":null}],"Name":"TiltUnits","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"Ray","Arguments":[{"Type":"float","Name":"x","Default":null},{"Type":"float","Name":"y","Default":null},{"Type":"float","Name":"depth","Default":"0"}],"Name":"ViewportPointToRay","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"Vector3","Name":"worldPoint","Default":null}],"Name":"WorldToScreenPoint","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"Vector3","Name":"worldPoint","Default":null}],"Name":"WorldToViewportPoint","tags":[],"Class":"Camera","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"float","Name":"distance","Default":null}],"Name":"Zoom","tags":["RobloxScriptSecurity"],"Class":"Camera","type":"Function"},{"Arguments":[{"Name":"entering","Type":"bool"}],"Name":"FirstPersonTransition","tags":["RobloxPlaceSecurity"],"Class":"Camera","type":"Event"},{"Arguments":[],"Name":"InterpolationFinished","tags":[],"Class":"Camera","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ChangeHistoryService","tags":["notCreatable"]},{"ReturnType":"Tuple","Arguments":[],"Name":"GetCanRedo","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"ReturnType":"Tuple","Arguments":[],"Name":"GetCanUndo","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Redo","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ResetWaypoints","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"state","Default":null}],"Name":"SetEnabled","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null}],"Name":"SetWaypoint","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Undo","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Function"},{"Arguments":[{"Name":"waypoint","Type":"string"}],"Name":"OnRedo","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Event"},{"Arguments":[{"Name":"waypoint","Type":"string"}],"Name":"OnUndo","tags":["PluginSecurity"],"Class":"ChangeHistoryService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"CharacterAppearance","tags":[]},{"Superclass":"CharacterAppearance","type":"Class","Name":"BodyColors","tags":[]},{"ValueType":"BrickColor","type":"Property","Name":"HeadColor","tags":[],"Class":"BodyColors"},{"ValueType":"BrickColor","type":"Property","Name":"LeftArmColor","tags":[],"Class":"BodyColors"},{"ValueType":"BrickColor","type":"Property","Name":"LeftLegColor","tags":[],"Class":"BodyColors"},{"ValueType":"BrickColor","type":"Property","Name":"RightArmColor","tags":[],"Class":"BodyColors"},{"ValueType":"BrickColor","type":"Property","Name":"RightLegColor","tags":[],"Class":"BodyColors"},{"ValueType":"BrickColor","type":"Property","Name":"TorsoColor","tags":[],"Class":"BodyColors"},{"Superclass":"CharacterAppearance","type":"Class","Name":"CharacterMesh","tags":[]},{"ValueType":"int","type":"Property","Name":"BaseTextureId","tags":[],"Class":"CharacterMesh"},{"ValueType":"BodyPart","type":"Property","Name":"BodyPart","tags":[],"Class":"CharacterMesh"},{"ValueType":"int","type":"Property","Name":"MeshId","tags":[],"Class":"CharacterMesh"},{"ValueType":"int","type":"Property","Name":"OverlayTextureId","tags":[],"Class":"CharacterMesh"},{"Superclass":"CharacterAppearance","type":"Class","Name":"Clothing","tags":[]},{"Superclass":"Clothing","type":"Class","Name":"Pants","tags":[]},{"ValueType":"Content","type":"Property","Name":"PantsTemplate","tags":[],"Class":"Pants"},{"Superclass":"Clothing","type":"Class","Name":"Shirt","tags":[]},{"ValueType":"Content","type":"Property","Name":"ShirtTemplate","tags":[],"Class":"Shirt"},{"Superclass":"CharacterAppearance","type":"Class","Name":"ShirtGraphic","tags":[]},{"ValueType":"Content","type":"Property","Name":"Graphic","tags":[],"Class":"ShirtGraphic"},{"Superclass":"CharacterAppearance","type":"Class","Name":"Skin","tags":["deprecated"]},{"ValueType":"BrickColor","type":"Property","Name":"SkinColor","tags":[],"Class":"Skin"},{"Superclass":"Instance","type":"Class","Name":"Chat","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"partOrCharacter","Default":null},{"Type":"string","Name":"message","Default":null},{"Type":"ChatColor","Name":"color","Default":"Blue"}],"Name":"Chat","tags":[],"Class":"Chat","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"stringToFilter","Default":null},{"Type":"Instance","Name":"playerFrom","Default":null},{"Type":"Instance","Name":"playerTo","Default":null}],"Name":"FilterStringAsync","tags":[],"Class":"Chat","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"stringToFilter","Default":null},{"Type":"Instance","Name":"playerToFilterFor","Default":null}],"Name":"FilterStringForPlayerAsync","tags":[],"Class":"Chat","type":"YieldFunction"},{"Arguments":[{"Name":"part","Type":"Instance"},{"Name":"message","Type":"string"},{"Name":"color","Type":"ChatColor"}],"Name":"Chatted","tags":[],"Class":"Chat","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ChatFilter","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"ClickDetector","tags":[]},{"ValueType":"float","type":"Property","Name":"MaxActivationDistance","tags":[],"Class":"ClickDetector"},{"Arguments":[{"Name":"playerWhoClicked","Type":"Instance"}],"Name":"MouseClick","tags":[],"Class":"ClickDetector","type":"Event"},{"Arguments":[{"Name":"playerWhoHovered","Type":"Instance"}],"Name":"MouseHoverEnter","tags":[],"Class":"ClickDetector","type":"Event"},{"Arguments":[{"Name":"playerWhoHovered","Type":"Instance"}],"Name":"MouseHoverLeave","tags":[],"Class":"ClickDetector","type":"Event"},{"Arguments":[{"Name":"playerWhoClicked","Type":"Instance"}],"Name":"mouseClick","tags":["deprecated"],"Class":"ClickDetector","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ClusterPacketCache","tags":[]},{"Superclass":"Instance","type":"Class","Name":"CollectionService","tags":[]},{"ReturnType":"Objects","Arguments":[{"Type":"string","Name":"class","Default":null}],"Name":"GetCollection","tags":[],"Class":"CollectionService","type":"Function"},{"Arguments":[{"Name":"instance","Type":"Instance"}],"Name":"ItemAdded","tags":[],"Class":"CollectionService","type":"Event"},{"Arguments":[{"Name":"instance","Type":"Instance"}],"Name":"ItemRemoved","tags":[],"Class":"CollectionService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Color3Value","tags":[]},{"ValueType":"Color3","type":"Property","Name":"Value","tags":[],"Class":"Color3Value"},{"Arguments":[{"Name":"value","Type":"Color3"}],"Name":"Changed","tags":[],"Class":"Color3Value","type":"Event"},{"Arguments":[{"Name":"value","Type":"Color3"}],"Name":"changed","tags":["deprecated"],"Class":"Color3Value","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Configuration","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Constraint","tags":[]},{"ValueType":"Object","type":"Property","Name":"Attachment0","tags":[],"Class":"Constraint"},{"ValueType":"Object","type":"Property","Name":"Attachment1","tags":[],"Class":"Constraint"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"Constraint"},{"Superclass":"Constraint","type":"Class","Name":"BallSocketConstraint","tags":[]},{"ValueType":"bool","type":"Property","Name":"LimitsEnabled","tags":[],"Class":"BallSocketConstraint"},{"ValueType":"float","type":"Property","Name":"Restitution","tags":[],"Class":"BallSocketConstraint"},{"ValueType":"float","type":"Property","Name":"UpperAngle","tags":[],"Class":"BallSocketConstraint"},{"Superclass":"Constraint","type":"Class","Name":"HingeConstraint","tags":[]},{"ValueType":"ActuatorType","type":"Property","Name":"ActuatorType","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"AngularSpeed","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"AngularVelocity","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"CurrentAngle","tags":["readonly"],"Class":"HingeConstraint"},{"ValueType":"bool","type":"Property","Name":"LimitsEnabled","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"LowerAngle","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"MotorMaxAcceleration","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"MotorMaxTorque","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"Restitution","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"ServoMaxTorque","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"TargetAngle","tags":[],"Class":"HingeConstraint"},{"ValueType":"float","type":"Property","Name":"UpperAngle","tags":[],"Class":"HingeConstraint"},{"Superclass":"Constraint","type":"Class","Name":"MoveToConstraint","tags":[]},{"ValueType":"float","type":"Property","Name":"MaxForce","tags":[],"Class":"MoveToConstraint"},{"ValueType":"float","type":"Property","Name":"StabilizingDistance","tags":[],"Class":"MoveToConstraint"},{"ValueType":"float","type":"Property","Name":"Velocity","tags":[],"Class":"MoveToConstraint"},{"Superclass":"Constraint","type":"Class","Name":"RodConstraint","tags":[]},{"ValueType":"float","type":"Property","Name":"CurrentDistance","tags":["readonly"],"Class":"RodConstraint"},{"ValueType":"float","type":"Property","Name":"Length","tags":[],"Class":"RodConstraint"},{"Superclass":"Constraint","type":"Class","Name":"RopeConstraint","tags":[]},{"ValueType":"float","type":"Property","Name":"CurrentLength","tags":["readonly"],"Class":"RopeConstraint"},{"ValueType":"float","type":"Property","Name":"Length","tags":[],"Class":"RopeConstraint"},{"ValueType":"float","type":"Property","Name":"Restitution","tags":[],"Class":"RopeConstraint"},{"Superclass":"Constraint","type":"Class","Name":"SlidingBallConstraint","tags":[]},{"ValueType":"ActuatorType","type":"Property","Name":"ActuatorType","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"CurrentPosition","tags":["readonly"],"Class":"SlidingBallConstraint"},{"ValueType":"bool","type":"Property","Name":"LimitsEnabled","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"LowerLimit","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"MotorMaxAcceleration","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"MotorMaxForce","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"Restitution","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"ServoMaxForce","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"Speed","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"TargetPosition","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"UpperLimit","tags":[],"Class":"SlidingBallConstraint"},{"ValueType":"float","type":"Property","Name":"Velocity","tags":[],"Class":"SlidingBallConstraint"},{"Superclass":"SlidingBallConstraint","type":"Class","Name":"CylindricalConstraint","tags":[]},{"ValueType":"float","type":"Property","Name":"AzimuthalAngle","tags":[],"Class":"CylindricalConstraint"},{"ValueType":"float","type":"Property","Name":"InclinationAngle","tags":[],"Class":"CylindricalConstraint"},{"Superclass":"SlidingBallConstraint","type":"Class","Name":"PrismaticConstraint","tags":[]},{"Superclass":"Constraint","type":"Class","Name":"SpringConstraint","tags":[]},{"ValueType":"float","type":"Property","Name":"CurrentLength","tags":["readonly"],"Class":"SpringConstraint"},{"ValueType":"float","type":"Property","Name":"Damping","tags":[],"Class":"SpringConstraint"},{"ValueType":"float","type":"Property","Name":"FreeLength","tags":[],"Class":"SpringConstraint"},{"ValueType":"bool","type":"Property","Name":"LimitsEnabled","tags":[],"Class":"SpringConstraint"},{"ValueType":"float","type":"Property","Name":"MaxForce","tags":[],"Class":"SpringConstraint"},{"ValueType":"float","type":"Property","Name":"MaxLength","tags":[],"Class":"SpringConstraint"},{"ValueType":"float","type":"Property","Name":"MinLength","tags":[],"Class":"SpringConstraint"},{"ValueType":"float","type":"Property","Name":"Stiffness","tags":[],"Class":"SpringConstraint"},{"Superclass":"Instance","type":"Class","Name":"ContentFilter","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"outstandingRequests","Default":null},{"Type":"int","Name":"cacheSize","Default":null}],"Name":"SetFilterLimits","tags":["LocalUserSecurity"],"Class":"ContentFilter","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetFilterUrl","tags":["LocalUserSecurity"],"Class":"ContentFilter","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"ContentProvider","tags":[]},{"ValueType":"string","type":"Property","Name":"BaseUrl","tags":["readonly"],"Class":"ContentProvider"},{"ValueType":"int","type":"Property","Name":"RequestQueueSize","tags":["readonly"],"Class":"ContentProvider"},{"ReturnType":"void","Arguments":[{"Type":"Content","Name":"contentId","Default":null}],"Name":"Preload","tags":[],"Class":"ContentProvider","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetAssetUrl","tags":["LocalUserSecurity"],"Class":"ContentProvider","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetBaseUrl","tags":["LocalUserSecurity"],"Class":"ContentProvider","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"count","Default":null}],"Name":"SetCacheSize","tags":["LocalUserSecurity"],"Class":"ContentProvider","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"count","Default":null}],"Name":"SetThreadPool","tags":["LocalUserSecurity"],"Class":"ContentProvider","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Array","Name":"contentIdList","Default":null}],"Name":"PreloadAsync","tags":[],"Class":"ContentProvider","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"ContextActionService","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"Function","Name":"functionToBind","Default":null},{"Type":"bool","Name":"createTouchButton","Default":null},{"Type":"Tuple","Name":"inputTypes","Default":null}],"Name":"BindAction","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"Function","Name":"functionToBind","Default":null},{"Type":"bool","Name":"createTouchButton","Default":null},{"Type":"Tuple","Name":"inputTypes","Default":null}],"Name":"BindActionToInputTypes","tags":["deprecated"],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"UserInputType","Name":"userInputTypeForActivation","Default":null},{"Type":"KeyCode","Name":"keyCodeForActivation","Default":"Unknown"}],"Name":"BindActivate","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"Function","Name":"functionToBind","Default":null},{"Type":"bool","Name":"createTouchButton","Default":null},{"Type":"Tuple","Name":"inputTypes","Default":null}],"Name":"BindCoreAction","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"UserInputState","Name":"state","Default":null},{"Type":"Instance","Name":"inputObject","Default":null}],"Name":"CallFunction","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"Instance","Name":"actionButton","Default":null}],"Name":"FireActionButtonFoundSignal","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Function"},{"ReturnType":"Dictionary","Arguments":[],"Name":"GetAllBoundActionInfo","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"Dictionary","Arguments":[{"Type":"string","Name":"actionName","Default":null}],"Name":"GetBoundActionInfo","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetCurrentLocalToolIcon","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"string","Name":"description","Default":null}],"Name":"SetDescription","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"string","Name":"image","Default":null}],"Name":"SetImage","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"UDim2","Name":"position","Default":null}],"Name":"SetPosition","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null},{"Type":"string","Name":"title","Default":null}],"Name":"SetTitle","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null}],"Name":"UnbindAction","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"UserInputType","Name":"userInputTypeForActivation","Default":null},{"Type":"KeyCode","Name":"keyCodeForActivation","Default":"Unknown"}],"Name":"UnbindActivate","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"UnbindAllActions","tags":[],"Class":"ContextActionService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"actionName","Default":null}],"Name":"UnbindCoreAction","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"actionName","Default":null}],"Name":"GetButton","tags":[],"Class":"ContextActionService","type":"YieldFunction"},{"Arguments":[{"Name":"actionAdded","Type":"string"},{"Name":"createTouchButton","Type":"bool"},{"Name":"functionInfoTable","Type":"Dictionary"}],"Name":"BoundActionAdded","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Event"},{"Arguments":[{"Name":"actionChanged","Type":"string"},{"Name":"changeName","Type":"string"},{"Name":"changeTable","Type":"Dictionary"}],"Name":"BoundActionChanged","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Event"},{"Arguments":[{"Name":"actionRemoved","Type":"string"},{"Name":"functionInfoTable","Type":"Dictionary"}],"Name":"BoundActionRemoved","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Event"},{"Arguments":[{"Name":"actionName","Type":"string"}],"Name":"GetActionButtonEvent","tags":["RobloxScriptSecurity"],"Class":"ContextActionService","type":"Event"},{"Arguments":[{"Name":"toolEquipped","Type":"Instance"}],"Name":"LocalToolEquipped","tags":[],"Class":"ContextActionService","type":"Event"},{"Arguments":[{"Name":"toolUnequipped","Type":"Instance"}],"Name":"LocalToolUnequipped","tags":[],"Class":"ContextActionService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Controller","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"Button","Name":"button","Default":null},{"Type":"string","Name":"caption","Default":null}],"Name":"BindButton","tags":[],"Class":"Controller","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Button","Name":"button","Default":null}],"Name":"GetButton","tags":[],"Class":"Controller","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Button","Name":"button","Default":null}],"Name":"UnbindButton","tags":[],"Class":"Controller","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Button","Name":"button","Default":null},{"Type":"string","Name":"caption","Default":null}],"Name":"bindButton","tags":["deprecated"],"Class":"Controller","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Button","Name":"button","Default":null}],"Name":"getButton","tags":["deprecated"],"Class":"Controller","type":"Function"},{"Arguments":[{"Name":"button","Type":"Button"}],"Name":"ButtonChanged","tags":[],"Class":"Controller","type":"Event"},{"Superclass":"Controller","type":"Class","Name":"HumanoidController","tags":[]},{"Superclass":"Controller","type":"Class","Name":"SkateboardController","tags":[]},{"ValueType":"float","type":"Property","Name":"Steer","tags":["readonly"],"Class":"SkateboardController"},{"ValueType":"float","type":"Property","Name":"Throttle","tags":["readonly"],"Class":"SkateboardController"},{"Arguments":[{"Name":"axis","Type":"string"}],"Name":"AxisChanged","tags":[],"Class":"SkateboardController","type":"Event"},{"Superclass":"Controller","type":"Class","Name":"VehicleController","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ControllerService","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"CookiesService","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"DeleteCookieValue","tags":["RobloxSecurity"],"Class":"CookiesService","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"GetCookieValue","tags":["RobloxSecurity"],"Class":"CookiesService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"string","Name":"value","Default":null}],"Name":"SetCookieValue","tags":["RobloxSecurity"],"Class":"CookiesService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"CustomEvent","tags":["deprecated"]},{"ReturnType":"Objects","Arguments":[],"Name":"GetAttachedReceivers","tags":[],"Class":"CustomEvent","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"newValue","Default":null}],"Name":"SetValue","tags":[],"Class":"CustomEvent","type":"Function"},{"Arguments":[{"Name":"receiver","Type":"Instance"}],"Name":"ReceiverConnected","tags":[],"Class":"CustomEvent","type":"Event"},{"Arguments":[{"Name":"receiver","Type":"Instance"}],"Name":"ReceiverDisconnected","tags":[],"Class":"CustomEvent","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"CustomEventReceiver","tags":["deprecated"]},{"ValueType":"Object","type":"Property","Name":"Source","tags":[],"Class":"CustomEventReceiver"},{"ReturnType":"float","Arguments":[],"Name":"GetCurrentValue","tags":[],"Class":"CustomEventReceiver","type":"Function"},{"Arguments":[{"Name":"event","Type":"Instance"}],"Name":"EventConnected","tags":[],"Class":"CustomEventReceiver","type":"Event"},{"Arguments":[{"Name":"event","Type":"Instance"}],"Name":"EventDisconnected","tags":[],"Class":"CustomEventReceiver","type":"Event"},{"Arguments":[{"Name":"newValue","Type":"float"}],"Name":"SourceValueChanged","tags":[],"Class":"CustomEventReceiver","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"DataModelMesh","tags":["notbrowsable"]},{"ValueType":"Vector3","type":"Property","Name":"Offset","tags":[],"Class":"DataModelMesh"},{"ValueType":"Vector3","type":"Property","Name":"Scale","tags":[],"Class":"DataModelMesh"},{"ValueType":"Vector3","type":"Property","Name":"VertexColor","tags":[],"Class":"DataModelMesh"},{"Superclass":"DataModelMesh","type":"Class","Name":"BevelMesh","tags":["deprecated","notbrowsable"]},{"Superclass":"BevelMesh","type":"Class","Name":"BlockMesh","tags":[]},{"Superclass":"BevelMesh","type":"Class","Name":"CylinderMesh","tags":[]},{"Superclass":"DataModelMesh","type":"Class","Name":"FileMesh","tags":[]},{"ValueType":"Content","type":"Property","Name":"MeshId","tags":[],"Class":"FileMesh"},{"ValueType":"Content","type":"Property","Name":"TextureId","tags":[],"Class":"FileMesh"},{"Superclass":"FileMesh","type":"Class","Name":"SpecialMesh","tags":[]},{"ValueType":"MeshType","type":"Property","Name":"MeshType","tags":[],"Class":"SpecialMesh"},{"Superclass":"Instance","type":"Class","Name":"DataStoreService","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"LegacyNamingScheme","tags":["LocalUserSecurity"],"Class":"DataStoreService"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"string","Name":"scope","Default":"global"}],"Name":"GetDataStore","tags":[],"Class":"DataStoreService","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetGlobalDataStore","tags":[],"Class":"DataStoreService","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"string","Name":"scope","Default":"global"}],"Name":"GetOrderedDataStore","tags":[],"Class":"DataStoreService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Debris","tags":[]},{"ValueType":"int","type":"Property","Name":"MaxItems","tags":["deprecated"],"Class":"Debris"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"item","Default":null},{"Type":"double","Name":"lifetime","Default":"10"}],"Name":"AddItem","tags":[],"Class":"Debris","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enabled","Default":null}],"Name":"SetLegacyMaxItems","tags":["LocalUserSecurity"],"Class":"Debris","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"item","Default":null},{"Type":"double","Name":"lifetime","Default":"10"}],"Name":"addItem","tags":["deprecated"],"Class":"Debris","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"DebugSettings","tags":["notbrowsable"]},{"ValueType":"int","type":"Property","Name":"AltCdnFailureCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"AltCdnSuccessCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"AvailablePhysicalMemory","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"BlockMeshSize","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"CPU","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"CdnFailureCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"double","type":"Property","Name":"CdnResponceTime","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"CdnSuccessCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"CpuCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"CpuSpeed","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"DataModel","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"double","type":"Property","Name":"ElapsedTime","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"ErrorReporting","type":"Property","Name":"ErrorReporting","tags":[],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"GfxCard","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"InstanceCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"bool","type":"Property","Name":"IsFmodProfilingEnabled","tags":[],"Class":"DebugSettings"},{"ValueType":"bool","type":"Property","Name":"IsProfilingEnabled","tags":[],"Class":"DebugSettings"},{"ValueType":"bool","type":"Property","Name":"IsScriptStackTracingEnabled","tags":[],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"JobCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"double","type":"Property","Name":"LastCdnFailureTimeSpan","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"LuaRamLimit","tags":[],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"NameDatabaseBytes","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"NameDatabaseSize","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"bool","type":"Property","Name":"OsIs64Bit","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"OsPlatform","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"OsPlatformId","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"OsVer","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"PageFaultsPerSecond","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"PageFileBytes","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"float","type":"Property","Name":"PixelShaderModel","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"PlayerCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"PrivateBytes","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"PrivateWorkingSetBytes","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"double","type":"Property","Name":"ProcessCores","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"ProcessorTime","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"double","type":"Property","Name":"ProfilingWindow","tags":[],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"RAM","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"bool","type":"Property","Name":"ReportExtendedMachineConfiguration","tags":[],"Class":"DebugSettings"},{"ValueType":"bool","type":"Property","Name":"ReportSoundWarnings","tags":[],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"Resolution","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"RobloxFailureCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"RobloxProductName","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"double","type":"Property","Name":"RobloxRespoceTime","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"RobloxSuccessCount","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"RobloxVersion","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"SIMD","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"string","type":"Property","Name":"SystemProductName","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"TickCountSampleMethod","type":"Property","Name":"TickCountPreciseOverride","tags":[],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"TotalPhysicalMemory","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"TotalProcessorTime","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"float","type":"Property","Name":"VertexShaderModel","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"VideoMemory","tags":["readonly"],"Class":"DebugSettings"},{"ValueType":"int","type":"Property","Name":"VirtualBytes","tags":["readonly"],"Class":"DebugSettings"},{"ReturnType":"void","Arguments":[],"Name":"LegacyScriptMode","tags":["LocalUserSecurity","deprecated"],"Class":"DebugSettings","type":"Function"},{"ReturnType":"Tuple","Arguments":[],"Name":"ResetCdnFailureCounts","tags":["LocalUserSecurity"],"Class":"DebugSettings","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SetBlockingRemove","tags":["LocalUserSecurity"],"Class":"DebugSettings","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"DebuggerBreakpoint","tags":["notCreatable"]},{"ValueType":"string","type":"Property","Name":"Condition","tags":[],"Class":"DebuggerBreakpoint"},{"ValueType":"bool","type":"Property","Name":"IsEnabled","tags":[],"Class":"DebuggerBreakpoint"},{"ValueType":"int","type":"Property","Name":"Line","tags":["readonly"],"Class":"DebuggerBreakpoint"},{"Superclass":"Instance","type":"Class","Name":"DebuggerManager","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"DebuggingEnabled","tags":["readonly"],"Class":"DebuggerManager"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"script","Default":null}],"Name":"AddDebugger","tags":[],"Class":"DebuggerManager","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"EnableDebugging","tags":["LocalUserSecurity"],"Class":"DebuggerManager","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetDebuggers","tags":[],"Class":"DebuggerManager","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Resume","tags":[],"Class":"DebuggerManager","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StepIn","tags":[],"Class":"DebuggerManager","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StepOut","tags":[],"Class":"DebuggerManager","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StepOver","tags":[],"Class":"DebuggerManager","type":"Function"},{"Arguments":[{"Name":"debugger","Type":"Instance"}],"Name":"DebuggerAdded","tags":[],"Class":"DebuggerManager","type":"Event"},{"Arguments":[{"Name":"debugger","Type":"Instance"}],"Name":"DebuggerRemoved","tags":[],"Class":"DebuggerManager","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"DebuggerWatch","tags":[]},{"ValueType":"string","type":"Property","Name":"Expression","tags":[],"Class":"DebuggerWatch"},{"ReturnType":"void","Arguments":[],"Name":"CheckSyntax","tags":[],"Class":"DebuggerWatch","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Dialog","tags":[]},{"ValueType":"float","type":"Property","Name":"ConversationDistance","tags":[],"Class":"Dialog"},{"ValueType":"string","type":"Property","Name":"GoodbyeDialog","tags":[],"Class":"Dialog"},{"ValueType":"bool","type":"Property","Name":"InUse","tags":[],"Class":"Dialog"},{"ValueType":"string","type":"Property","Name":"InitialPrompt","tags":[],"Class":"Dialog"},{"ValueType":"DialogPurpose","type":"Property","Name":"Purpose","tags":[],"Class":"Dialog"},{"ValueType":"DialogTone","type":"Property","Name":"Tone","tags":[],"Class":"Dialog"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"Instance","Name":"dialogChoice","Default":null}],"Name":"SignalDialogChoiceSelected","tags":["RobloxScriptSecurity"],"Class":"Dialog","type":"Function"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"dialogChoice","Type":"Instance"}],"Name":"DialogChoiceSelected","tags":[],"Class":"Dialog","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"DialogChoice","tags":[]},{"ValueType":"string","type":"Property","Name":"GoodbyeDialog","tags":[],"Class":"DialogChoice"},{"ValueType":"string","type":"Property","Name":"ResponseDialog","tags":[],"Class":"DialogChoice"},{"ValueType":"string","type":"Property","Name":"UserDialog","tags":[],"Class":"DialogChoice"},{"Superclass":"Instance","type":"Class","Name":"DoubleConstrainedValue","tags":[]},{"ValueType":"double","type":"Property","Name":"ConstrainedValue","tags":["hidden"],"Class":"DoubleConstrainedValue"},{"ValueType":"double","type":"Property","Name":"MaxValue","tags":[],"Class":"DoubleConstrainedValue"},{"ValueType":"double","type":"Property","Name":"MinValue","tags":[],"Class":"DoubleConstrainedValue"},{"ValueType":"double","type":"Property","Name":"Value","tags":[],"Class":"DoubleConstrainedValue"},{"Arguments":[{"Name":"value","Type":"double"}],"Name":"Changed","tags":[],"Class":"DoubleConstrainedValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"double"}],"Name":"changed","tags":["deprecated"],"Class":"DoubleConstrainedValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Dragger","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"Axis","Name":"axis","Default":"X"}],"Name":"AxisRotate","tags":[],"Class":"Dragger","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"mousePart","Default":null},{"Type":"Vector3","Name":"pointOnMousePart","Default":null},{"Type":"Objects","Name":"parts","Default":null}],"Name":"MouseDown","tags":[],"Class":"Dragger","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Ray","Name":"mouseRay","Default":null}],"Name":"MouseMove","tags":[],"Class":"Dragger","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"MouseUp","tags":[],"Class":"Dragger","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Explosion","tags":[]},{"ValueType":"float","type":"Property","Name":"BlastPressure","tags":[],"Class":"Explosion"},{"ValueType":"float","type":"Property","Name":"BlastRadius","tags":[],"Class":"Explosion"},{"ValueType":"float","type":"Property","Name":"DestroyJointRadiusPercent","tags":[],"Class":"Explosion"},{"ValueType":"ExplosionType","type":"Property","Name":"ExplosionType","tags":[],"Class":"Explosion"},{"ValueType":"Vector3","type":"Property","Name":"Position","tags":[],"Class":"Explosion"},{"Arguments":[{"Name":"part","Type":"Instance"},{"Name":"distance","Type":"float"}],"Name":"Hit","tags":[],"Class":"Explosion","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"FaceInstance","tags":["notbrowsable"]},{"ValueType":"NormalId","type":"Property","Name":"Face","tags":[],"Class":"FaceInstance"},{"Superclass":"FaceInstance","type":"Class","Name":"Decal","tags":[]},{"ValueType":"float","type":"Property","Name":"LocalTransparencyModifier","tags":["hidden"],"Class":"Decal"},{"ValueType":"float","type":"Property","Name":"Shiny","tags":["deprecated"],"Class":"Decal"},{"ValueType":"float","type":"Property","Name":"Specular","tags":["deprecated"],"Class":"Decal"},{"ValueType":"Content","type":"Property","Name":"Texture","tags":[],"Class":"Decal"},{"ValueType":"float","type":"Property","Name":"Transparency","tags":[],"Class":"Decal"},{"Superclass":"Decal","type":"Class","Name":"Texture","tags":[]},{"ValueType":"float","type":"Property","Name":"StudsPerTileU","tags":[],"Class":"Texture"},{"ValueType":"float","type":"Property","Name":"StudsPerTileV","tags":[],"Class":"Texture"},{"Superclass":"Instance","type":"Class","Name":"Feature","tags":[]},{"ValueType":"NormalId","type":"Property","Name":"FaceId","tags":[],"Class":"Feature"},{"ValueType":"InOut","type":"Property","Name":"InOut","tags":[],"Class":"Feature"},{"ValueType":"LeftRight","type":"Property","Name":"LeftRight","tags":[],"Class":"Feature"},{"ValueType":"TopBottom","type":"Property","Name":"TopBottom","tags":[],"Class":"Feature"},{"Superclass":"Feature","type":"Class","Name":"Hole","tags":["deprecated"]},{"Superclass":"Feature","type":"Class","Name":"MotorFeature","tags":["deprecated"]},{"Superclass":"Instance","type":"Class","Name":"Fire","tags":[]},{"ValueType":"Color3","type":"Property","Name":"Color","tags":[],"Class":"Fire"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"Fire"},{"ValueType":"float","type":"Property","Name":"Heat","tags":[],"Class":"Fire"},{"ValueType":"Color3","type":"Property","Name":"SecondaryColor","tags":[],"Class":"Fire"},{"ValueType":"float","type":"Property","Name":"Size","tags":[],"Class":"Fire"},{"ValueType":"float","type":"Property","Name":"size","tags":["deprecated"],"Class":"Fire"},{"Superclass":"Instance","type":"Class","Name":"FlagStandService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"FlyweightService","tags":[]},{"Superclass":"FlyweightService","type":"Class","Name":"CSGDictionaryService","tags":[]},{"Superclass":"FlyweightService","type":"Class","Name":"NonReplicatedCSGDictionaryService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Folder","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ForceField","tags":[]},{"Superclass":"Instance","type":"Class","Name":"FriendService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetBreakFriendUrl","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetCreateFriendRequestUrl","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetDeleteFriendRequestUrl","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enable","Default":null}],"Name":"SetEnabled","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetFriendsOnlineUrl","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetGetFriendsUrl","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetMakeFriendUrl","tags":["LocalUserSecurity"],"Class":"FriendService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"FunctionalTest","tags":["deprecated"]},{"ValueType":"string","type":"Property","Name":"Description","tags":[],"Class":"FunctionalTest"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":""}],"Name":"Error","tags":[],"Class":"FunctionalTest","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":""}],"Name":"Failed","tags":[],"Class":"FunctionalTest","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":""}],"Name":"Pass","tags":[],"Class":"FunctionalTest","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":""}],"Name":"Passed","tags":[],"Class":"FunctionalTest","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":""}],"Name":"Warn","tags":[],"Class":"FunctionalTest","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"GamePassService","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"playerHasPassUrl","Default":null}],"Name":"SetPlayerHasPassUrl","tags":["LocalUserSecurity"],"Class":"GamePassService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"int","Name":"gamePassId","Default":null}],"Name":"PlayerHasPass","tags":[],"Class":"GamePassService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"GameSettings","tags":["notbrowsable"]},{"ValueType":"float","type":"Property","Name":"BubbleChatLifetime","tags":[],"Class":"GameSettings"},{"ValueType":"int","type":"Property","Name":"BubbleChatMaxBubbles","tags":[],"Class":"GameSettings"},{"ValueType":"int","type":"Property","Name":"ChatHistory","tags":[],"Class":"GameSettings"},{"ValueType":"int","type":"Property","Name":"ChatScrollLength","tags":[],"Class":"GameSettings"},{"ValueType":"bool","type":"Property","Name":"CollisionSoundEnabled","tags":["deprecated"],"Class":"GameSettings"},{"ValueType":"float","type":"Property","Name":"CollisionSoundVolume","tags":["deprecated"],"Class":"GameSettings"},{"ValueType":"bool","type":"Property","Name":"HardwareMouse","tags":[],"Class":"GameSettings"},{"ValueType":"int","type":"Property","Name":"MaxCollisionSounds","tags":["deprecated"],"Class":"GameSettings"},{"ValueType":"int","type":"Property","Name":"ReportAbuseChatHistory","tags":[],"Class":"GameSettings"},{"ValueType":"bool","type":"Property","Name":"SoftwareSound","tags":[],"Class":"GameSettings"},{"ValueType":"bool","type":"Property","Name":"SoundEnabled","tags":[],"Class":"GameSettings"},{"ValueType":"bool","type":"Property","Name":"VideoCaptureEnabled","tags":[],"Class":"GameSettings"},{"ValueType":"VideoQualitySettings","type":"Property","Name":"VideoQuality","tags":[],"Class":"GameSettings"},{"Arguments":[{"Name":"recording","Type":"bool"}],"Name":"VideoRecordingChangeRequest","tags":["RobloxScriptSecurity"],"Class":"GameSettings","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"GamepadService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Geometry","tags":[]},{"Superclass":"Instance","type":"Class","Name":"GlobalDataStore","tags":[]},{"ReturnType":"Connection","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"Function","Name":"callback","Default":null}],"Name":"OnUpdate","tags":[],"Class":"GlobalDataStore","type":"Function"},{"ReturnType":"Variant","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"GetAsync","tags":[],"Class":"GlobalDataStore","type":"YieldFunction"},{"ReturnType":"Variant","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"int","Name":"delta","Default":"1"}],"Name":"IncrementAsync","tags":[],"Class":"GlobalDataStore","type":"YieldFunction"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"Variant","Name":"value","Default":null}],"Name":"SetAsync","tags":[],"Class":"GlobalDataStore","type":"YieldFunction"},{"ReturnType":"Tuple","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"Function","Name":"transformFunction","Default":null}],"Name":"UpdateAsync","tags":[],"Class":"GlobalDataStore","type":"YieldFunction"},{"Superclass":"GlobalDataStore","type":"Class","Name":"OrderedDataStore","tags":[]},{"ReturnType":"Instance","Arguments":[{"Type":"bool","Name":"ascending","Default":null},{"Type":"int","Name":"pagesize","Default":null},{"Type":"Variant","Name":"minValue","Default":null},{"Type":"Variant","Name":"maxValue","Default":null}],"Name":"GetSortedAsync","tags":[],"Class":"OrderedDataStore","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"GroupService","tags":["notCreatable"]},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"groupId","Default":null}],"Name":"GetAlliesAsync","tags":[],"Class":"GroupService","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"groupId","Default":null}],"Name":"GetEnemiesAsync","tags":[],"Class":"GroupService","type":"YieldFunction"},{"ReturnType":"Variant","Arguments":[{"Type":"int","Name":"groupId","Default":null}],"Name":"GetGroupInfoAsync","tags":[],"Class":"GroupService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetGroupsAsync","tags":[],"Class":"GroupService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"GuiBase","tags":[]},{"Superclass":"GuiBase","type":"Class","Name":"GuiBase2d","tags":["notbrowsable"]},{"ValueType":"Vector2","type":"Property","Name":"AbsolutePosition","tags":["readonly"],"Class":"GuiBase2d"},{"ValueType":"Vector2","type":"Property","Name":"AbsoluteSize","tags":["readonly"],"Class":"GuiBase2d"},{"Superclass":"GuiBase2d","type":"Class","Name":"GuiObject","tags":["notbrowsable"]},{"ValueType":"bool","type":"Property","Name":"Active","tags":[],"Class":"GuiObject"},{"ValueType":"BrickColor","type":"Property","Name":"BackgroundColor","tags":["deprecated","hidden"],"Class":"GuiObject"},{"ValueType":"Color3","type":"Property","Name":"BackgroundColor3","tags":[],"Class":"GuiObject"},{"ValueType":"float","type":"Property","Name":"BackgroundTransparency","tags":[],"Class":"GuiObject"},{"ValueType":"BrickColor","type":"Property","Name":"BorderColor","tags":["deprecated","hidden"],"Class":"GuiObject"},{"ValueType":"Color3","type":"Property","Name":"BorderColor3","tags":[],"Class":"GuiObject"},{"ValueType":"int","type":"Property","Name":"BorderSizePixel","tags":[],"Class":"GuiObject"},{"ValueType":"bool","type":"Property","Name":"ClipsDescendants","tags":[],"Class":"GuiObject"},{"ValueType":"bool","type":"Property","Name":"Draggable","tags":[],"Class":"GuiObject"},{"ValueType":"Object","type":"Property","Name":"NextSelectionDown","tags":[],"Class":"GuiObject"},{"ValueType":"Object","type":"Property","Name":"NextSelectionLeft","tags":[],"Class":"GuiObject"},{"ValueType":"Object","type":"Property","Name":"NextSelectionRight","tags":[],"Class":"GuiObject"},{"ValueType":"Object","type":"Property","Name":"NextSelectionUp","tags":[],"Class":"GuiObject"},{"ValueType":"UDim2","type":"Property","Name":"Position","tags":[],"Class":"GuiObject"},{"ValueType":"float","type":"Property","Name":"Rotation","tags":[],"Class":"GuiObject"},{"ValueType":"bool","type":"Property","Name":"Selectable","tags":[],"Class":"GuiObject"},{"ValueType":"Object","type":"Property","Name":"SelectionImageObject","tags":[],"Class":"GuiObject"},{"ValueType":"UDim2","type":"Property","Name":"Size","tags":[],"Class":"GuiObject"},{"ValueType":"SizeConstraint","type":"Property","Name":"SizeConstraint","tags":[],"Class":"GuiObject"},{"ValueType":"float","type":"Property","Name":"Transparency","tags":["hidden"],"Class":"GuiObject"},{"ValueType":"bool","type":"Property","Name":"Visible","tags":[],"Class":"GuiObject"},{"ValueType":"int","type":"Property","Name":"ZIndex","tags":[],"Class":"GuiObject"},{"ReturnType":"bool","Arguments":[{"Type":"UDim2","Name":"endPosition","Default":null},{"Type":"EasingDirection","Name":"easingDirection","Default":"Out"},{"Type":"EasingStyle","Name":"easingStyle","Default":"Quad"},{"Type":"float","Name":"time","Default":"1"},{"Type":"bool","Name":"override","Default":"false"},{"Type":"Function","Name":"callback","Default":"nil"}],"Name":"TweenPosition","tags":[],"Class":"GuiObject","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"UDim2","Name":"endSize","Default":null},{"Type":"EasingDirection","Name":"easingDirection","Default":"Out"},{"Type":"EasingStyle","Name":"easingStyle","Default":"Quad"},{"Type":"float","Name":"time","Default":"1"},{"Type":"bool","Name":"override","Default":"false"},{"Type":"Function","Name":"callback","Default":"nil"}],"Name":"TweenSize","tags":[],"Class":"GuiObject","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"UDim2","Name":"endSize","Default":null},{"Type":"UDim2","Name":"endPosition","Default":null},{"Type":"EasingDirection","Name":"easingDirection","Default":"Out"},{"Type":"EasingStyle","Name":"easingStyle","Default":"Quad"},{"Type":"float","Name":"time","Default":"1"},{"Type":"bool","Name":"override","Default":"false"},{"Type":"Function","Name":"callback","Default":"nil"}],"Name":"TweenSizeAndPosition","tags":[],"Class":"GuiObject","type":"Function"},{"Arguments":[{"Name":"initialPosition","Type":"UDim2"}],"Name":"DragBegin","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"DragStopped","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"input","Type":"Instance"}],"Name":"InputBegan","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"input","Type":"Instance"}],"Name":"InputChanged","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"input","Type":"Instance"}],"Name":"InputEnded","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseEnter","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseLeave","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseMoved","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseWheelBackward","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseWheelForward","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[],"Name":"SelectionGained","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[],"Name":"SelectionLost","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"state","Type":"UserInputState"}],"Name":"TouchLongPress","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"totalTranslation","Type":"Vector2"},{"Name":"velocity","Type":"Vector2"},{"Name":"state","Type":"UserInputState"}],"Name":"TouchPan","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"scale","Type":"float"},{"Name":"velocity","Type":"float"},{"Name":"state","Type":"UserInputState"}],"Name":"TouchPinch","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"rotation","Type":"float"},{"Name":"velocity","Type":"float"},{"Name":"state","Type":"UserInputState"}],"Name":"TouchRotate","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"swipeDirection","Type":"SwipeDirection"},{"Name":"numberOfTouches","Type":"int"}],"Name":"TouchSwipe","tags":[],"Class":"GuiObject","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"}],"Name":"TouchTap","tags":[],"Class":"GuiObject","type":"Event"},{"Superclass":"GuiObject","type":"Class","Name":"Frame","tags":[]},{"ValueType":"FrameStyle","type":"Property","Name":"Style","tags":[],"Class":"Frame"},{"Superclass":"GuiObject","type":"Class","Name":"GuiButton","tags":["notbrowsable"]},{"ValueType":"bool","type":"Property","Name":"AutoButtonColor","tags":[],"Class":"GuiButton"},{"ValueType":"bool","type":"Property","Name":"Modal","tags":[],"Class":"GuiButton"},{"ValueType":"bool","type":"Property","Name":"Selected","tags":[],"Class":"GuiButton"},{"ValueType":"ButtonStyle","type":"Property","Name":"Style","tags":[],"Class":"GuiButton"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"verb","Default":null}],"Name":"SetVerb","tags":["RobloxScriptSecurity"],"Class":"GuiButton","type":"Function"},{"Arguments":[],"Name":"MouseButton1Click","tags":[],"Class":"GuiButton","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseButton1Down","tags":[],"Class":"GuiButton","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseButton1Up","tags":[],"Class":"GuiButton","type":"Event"},{"Arguments":[],"Name":"MouseButton2Click","tags":[],"Class":"GuiButton","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseButton2Down","tags":[],"Class":"GuiButton","type":"Event"},{"Arguments":[{"Name":"x","Type":"int"},{"Name":"y","Type":"int"}],"Name":"MouseButton2Up","tags":[],"Class":"GuiButton","type":"Event"},{"Superclass":"GuiButton","type":"Class","Name":"ImageButton","tags":[]},{"ValueType":"Content","type":"Property","Name":"Image","tags":[],"Class":"ImageButton"},{"ValueType":"Color3","type":"Property","Name":"ImageColor3","tags":[],"Class":"ImageButton"},{"ValueType":"Vector2","type":"Property","Name":"ImageRectOffset","tags":[],"Class":"ImageButton"},{"ValueType":"Vector2","type":"Property","Name":"ImageRectSize","tags":[],"Class":"ImageButton"},{"ValueType":"float","type":"Property","Name":"ImageTransparency","tags":[],"Class":"ImageButton"},{"ValueType":"ScaleType","type":"Property","Name":"ScaleType","tags":[],"Class":"ImageButton"},{"ValueType":"Rect2D","type":"Property","Name":"SliceCenter","tags":[],"Class":"ImageButton"},{"Superclass":"GuiButton","type":"Class","Name":"TextButton","tags":[]},{"ValueType":"Font","type":"Property","Name":"Font","tags":[],"Class":"TextButton"},{"ValueType":"FontSize","type":"Property","Name":"FontSize","tags":[],"Class":"TextButton"},{"ValueType":"string","type":"Property","Name":"Text","tags":[],"Class":"TextButton"},{"ValueType":"Vector2","type":"Property","Name":"TextBounds","tags":["readonly"],"Class":"TextButton"},{"ValueType":"BrickColor","type":"Property","Name":"TextColor","tags":["deprecated","hidden"],"Class":"TextButton"},{"ValueType":"Color3","type":"Property","Name":"TextColor3","tags":[],"Class":"TextButton"},{"ValueType":"bool","type":"Property","Name":"TextFits","tags":["readonly"],"Class":"TextButton"},{"ValueType":"bool","type":"Property","Name":"TextScaled","tags":[],"Class":"TextButton"},{"ValueType":"Color3","type":"Property","Name":"TextStrokeColor3","tags":[],"Class":"TextButton"},{"ValueType":"float","type":"Property","Name":"TextStrokeTransparency","tags":[],"Class":"TextButton"},{"ValueType":"float","type":"Property","Name":"TextTransparency","tags":[],"Class":"TextButton"},{"ValueType":"bool","type":"Property","Name":"TextWrap","tags":["deprecated"],"Class":"TextButton"},{"ValueType":"bool","type":"Property","Name":"TextWrapped","tags":[],"Class":"TextButton"},{"ValueType":"TextXAlignment","type":"Property","Name":"TextXAlignment","tags":[],"Class":"TextButton"},{"ValueType":"TextYAlignment","type":"Property","Name":"TextYAlignment","tags":[],"Class":"TextButton"},{"Superclass":"GuiObject","type":"Class","Name":"GuiLabel","tags":[]},{"Superclass":"GuiLabel","type":"Class","Name":"ImageLabel","tags":[]},{"ValueType":"Content","type":"Property","Name":"Image","tags":[],"Class":"ImageLabel"},{"ValueType":"Color3","type":"Property","Name":"ImageColor3","tags":[],"Class":"ImageLabel"},{"ValueType":"Vector2","type":"Property","Name":"ImageRectOffset","tags":[],"Class":"ImageLabel"},{"ValueType":"Vector2","type":"Property","Name":"ImageRectSize","tags":[],"Class":"ImageLabel"},{"ValueType":"float","type":"Property","Name":"ImageTransparency","tags":[],"Class":"ImageLabel"},{"ValueType":"ScaleType","type":"Property","Name":"ScaleType","tags":[],"Class":"ImageLabel"},{"ValueType":"Rect2D","type":"Property","Name":"SliceCenter","tags":[],"Class":"ImageLabel"},{"Superclass":"GuiLabel","type":"Class","Name":"TextLabel","tags":[]},{"ValueType":"Font","type":"Property","Name":"Font","tags":[],"Class":"TextLabel"},{"ValueType":"FontSize","type":"Property","Name":"FontSize","tags":[],"Class":"TextLabel"},{"ValueType":"string","type":"Property","Name":"Text","tags":[],"Class":"TextLabel"},{"ValueType":"Vector2","type":"Property","Name":"TextBounds","tags":["readonly"],"Class":"TextLabel"},{"ValueType":"BrickColor","type":"Property","Name":"TextColor","tags":["deprecated","hidden"],"Class":"TextLabel"},{"ValueType":"Color3","type":"Property","Name":"TextColor3","tags":[],"Class":"TextLabel"},{"ValueType":"bool","type":"Property","Name":"TextFits","tags":["readonly"],"Class":"TextLabel"},{"ValueType":"bool","type":"Property","Name":"TextScaled","tags":[],"Class":"TextLabel"},{"ValueType":"Color3","type":"Property","Name":"TextStrokeColor3","tags":[],"Class":"TextLabel"},{"ValueType":"float","type":"Property","Name":"TextStrokeTransparency","tags":[],"Class":"TextLabel"},{"ValueType":"float","type":"Property","Name":"TextTransparency","tags":[],"Class":"TextLabel"},{"ValueType":"bool","type":"Property","Name":"TextWrap","tags":["deprecated"],"Class":"TextLabel"},{"ValueType":"bool","type":"Property","Name":"TextWrapped","tags":[],"Class":"TextLabel"},{"ValueType":"TextXAlignment","type":"Property","Name":"TextXAlignment","tags":[],"Class":"TextLabel"},{"ValueType":"TextYAlignment","type":"Property","Name":"TextYAlignment","tags":[],"Class":"TextLabel"},{"Superclass":"GuiObject","type":"Class","Name":"Scale9Frame","tags":[]},{"ValueType":"Vector2int16","type":"Property","Name":"ScaleEdgeSize","tags":[],"Class":"Scale9Frame"},{"ValueType":"string","type":"Property","Name":"SlicePrefix","tags":[],"Class":"Scale9Frame"},{"Superclass":"GuiObject","type":"Class","Name":"ScrollingFrame","tags":[]},{"ValueType":"Vector2","type":"Property","Name":"AbsoluteWindowSize","tags":["readonly"],"Class":"ScrollingFrame"},{"ValueType":"Content","type":"Property","Name":"BottomImage","tags":[],"Class":"ScrollingFrame"},{"ValueType":"Vector2","type":"Property","Name":"CanvasPosition","tags":[],"Class":"ScrollingFrame"},{"ValueType":"UDim2","type":"Property","Name":"CanvasSize","tags":[],"Class":"ScrollingFrame"},{"ValueType":"Content","type":"Property","Name":"MidImage","tags":[],"Class":"ScrollingFrame"},{"ValueType":"int","type":"Property","Name":"ScrollBarThickness","tags":[],"Class":"ScrollingFrame"},{"ValueType":"bool","type":"Property","Name":"ScrollingEnabled","tags":[],"Class":"ScrollingFrame"},{"ValueType":"Content","type":"Property","Name":"TopImage","tags":[],"Class":"ScrollingFrame"},{"Superclass":"GuiObject","type":"Class","Name":"TextBox","tags":[]},{"ValueType":"bool","type":"Property","Name":"ClearTextOnFocus","tags":[],"Class":"TextBox"},{"ValueType":"Font","type":"Property","Name":"Font","tags":[],"Class":"TextBox"},{"ValueType":"FontSize","type":"Property","Name":"FontSize","tags":[],"Class":"TextBox"},{"ValueType":"bool","type":"Property","Name":"MultiLine","tags":[],"Class":"TextBox"},{"ValueType":"string","type":"Property","Name":"Text","tags":[],"Class":"TextBox"},{"ValueType":"Vector2","type":"Property","Name":"TextBounds","tags":["readonly"],"Class":"TextBox"},{"ValueType":"BrickColor","type":"Property","Name":"TextColor","tags":["deprecated","hidden"],"Class":"TextBox"},{"ValueType":"Color3","type":"Property","Name":"TextColor3","tags":[],"Class":"TextBox"},{"ValueType":"bool","type":"Property","Name":"TextFits","tags":["readonly"],"Class":"TextBox"},{"ValueType":"bool","type":"Property","Name":"TextScaled","tags":[],"Class":"TextBox"},{"ValueType":"Color3","type":"Property","Name":"TextStrokeColor3","tags":[],"Class":"TextBox"},{"ValueType":"float","type":"Property","Name":"TextStrokeTransparency","tags":[],"Class":"TextBox"},{"ValueType":"float","type":"Property","Name":"TextTransparency","tags":[],"Class":"TextBox"},{"ValueType":"bool","type":"Property","Name":"TextWrap","tags":["deprecated"],"Class":"TextBox"},{"ValueType":"bool","type":"Property","Name":"TextWrapped","tags":[],"Class":"TextBox"},{"ValueType":"TextXAlignment","type":"Property","Name":"TextXAlignment","tags":[],"Class":"TextBox"},{"ValueType":"TextYAlignment","type":"Property","Name":"TextYAlignment","tags":[],"Class":"TextBox"},{"ReturnType":"void","Arguments":[],"Name":"CaptureFocus","tags":[],"Class":"TextBox","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsFocused","tags":[],"Class":"TextBox","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ReleaseFocus","tags":[],"Class":"TextBox","type":"Function"},{"Arguments":[{"Name":"enterPressed","Type":"bool"},{"Name":"inputThatCausedFocusLoss","Type":"Instance"}],"Name":"FocusLost","tags":[],"Class":"TextBox","type":"Event"},{"Arguments":[],"Name":"Focused","tags":[],"Class":"TextBox","type":"Event"},{"Superclass":"GuiBase2d","type":"Class","Name":"LayerCollector","tags":[]},{"Superclass":"LayerCollector","type":"Class","Name":"BillboardGui","tags":[]},{"ValueType":"bool","type":"Property","Name":"Active","tags":[],"Class":"BillboardGui"},{"ValueType":"Object","type":"Property","Name":"Adornee","tags":[],"Class":"BillboardGui"},{"ValueType":"bool","type":"Property","Name":"AlwaysOnTop","tags":[],"Class":"BillboardGui"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"BillboardGui"},{"ValueType":"Vector3","type":"Property","Name":"ExtentsOffset","tags":[],"Class":"BillboardGui"},{"ValueType":"Object","type":"Property","Name":"PlayerToHideFrom","tags":[],"Class":"BillboardGui"},{"ValueType":"UDim2","type":"Property","Name":"Size","tags":[],"Class":"BillboardGui"},{"ValueType":"Vector2","type":"Property","Name":"SizeOffset","tags":[],"Class":"BillboardGui"},{"ValueType":"Vector3","type":"Property","Name":"StudsOffset","tags":[],"Class":"BillboardGui"},{"Superclass":"LayerCollector","type":"Class","Name":"ScreenGui","tags":[]},{"Superclass":"ScreenGui","type":"Class","Name":"GuiMain","tags":["deprecated"]},{"Superclass":"LayerCollector","type":"Class","Name":"SurfaceGui","tags":[]},{"ValueType":"bool","type":"Property","Name":"Active","tags":[],"Class":"SurfaceGui"},{"ValueType":"Object","type":"Property","Name":"Adornee","tags":[],"Class":"SurfaceGui"},{"ValueType":"bool","type":"Property","Name":"AlwaysOnTop","tags":[],"Class":"SurfaceGui"},{"ValueType":"Vector2","type":"Property","Name":"CanvasSize","tags":[],"Class":"SurfaceGui"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"SurfaceGui"},{"ValueType":"NormalId","type":"Property","Name":"Face","tags":[],"Class":"SurfaceGui"},{"ValueType":"float","type":"Property","Name":"ToolPunchThroughDistance","tags":[],"Class":"SurfaceGui"},{"Superclass":"GuiBase","type":"Class","Name":"GuiBase3d","tags":[]},{"ValueType":"BrickColor","type":"Property","Name":"Color","tags":["deprecated","hidden"],"Class":"GuiBase3d"},{"ValueType":"Color3","type":"Property","Name":"Color3","tags":[],"Class":"GuiBase3d"},{"ValueType":"float","type":"Property","Name":"Transparency","tags":[],"Class":"GuiBase3d"},{"ValueType":"bool","type":"Property","Name":"Visible","tags":[],"Class":"GuiBase3d"},{"Superclass":"GuiBase3d","type":"Class","Name":"FloorWire","tags":["deprecated"]},{"ValueType":"float","type":"Property","Name":"CycleOffset","tags":[],"Class":"FloorWire"},{"ValueType":"Object","type":"Property","Name":"From","tags":[],"Class":"FloorWire"},{"ValueType":"float","type":"Property","Name":"StudsBetweenTextures","tags":[],"Class":"FloorWire"},{"ValueType":"Content","type":"Property","Name":"Texture","tags":[],"Class":"FloorWire"},{"ValueType":"Vector2","type":"Property","Name":"TextureSize","tags":[],"Class":"FloorWire"},{"ValueType":"Object","type":"Property","Name":"To","tags":[],"Class":"FloorWire"},{"ValueType":"float","type":"Property","Name":"Velocity","tags":[],"Class":"FloorWire"},{"ValueType":"float","type":"Property","Name":"WireRadius","tags":[],"Class":"FloorWire"},{"Superclass":"GuiBase3d","type":"Class","Name":"PVAdornment","tags":[]},{"ValueType":"Object","type":"Property","Name":"Adornee","tags":[],"Class":"PVAdornment"},{"Superclass":"PVAdornment","type":"Class","Name":"HandleAdornment","tags":[]},{"ValueType":"bool","type":"Property","Name":"AlwaysOnTop","tags":[],"Class":"HandleAdornment"},{"ValueType":"CoordinateFrame","type":"Property","Name":"CFrame","tags":[],"Class":"HandleAdornment"},{"ValueType":"Vector3","type":"Property","Name":"SizeRelativeOffset","tags":[],"Class":"HandleAdornment"},{"ValueType":"int","type":"Property","Name":"ZIndex","tags":[],"Class":"HandleAdornment"},{"Arguments":[],"Name":"MouseButton1Down","tags":[],"Class":"HandleAdornment","type":"Event"},{"Arguments":[],"Name":"MouseButton1Up","tags":[],"Class":"HandleAdornment","type":"Event"},{"Arguments":[],"Name":"MouseEnter","tags":[],"Class":"HandleAdornment","type":"Event"},{"Arguments":[],"Name":"MouseLeave","tags":[],"Class":"HandleAdornment","type":"Event"},{"Superclass":"HandleAdornment","type":"Class","Name":"BoxHandleAdornment","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"Size","tags":[],"Class":"BoxHandleAdornment"},{"Superclass":"HandleAdornment","type":"Class","Name":"ConeHandleAdornment","tags":[]},{"ValueType":"float","type":"Property","Name":"Height","tags":[],"Class":"ConeHandleAdornment"},{"ValueType":"float","type":"Property","Name":"Radius","tags":[],"Class":"ConeHandleAdornment"},{"Superclass":"HandleAdornment","type":"Class","Name":"CylinderHandleAdornment","tags":[]},{"ValueType":"float","type":"Property","Name":"Height","tags":[],"Class":"CylinderHandleAdornment"},{"ValueType":"float","type":"Property","Name":"Radius","tags":[],"Class":"CylinderHandleAdornment"},{"Superclass":"HandleAdornment","type":"Class","Name":"ImageHandleAdornment","tags":[]},{"ValueType":"Content","type":"Property","Name":"Image","tags":[],"Class":"ImageHandleAdornment"},{"ValueType":"Vector2","type":"Property","Name":"Size","tags":[],"Class":"ImageHandleAdornment"},{"Superclass":"HandleAdornment","type":"Class","Name":"LineHandleAdornment","tags":[]},{"ValueType":"float","type":"Property","Name":"Length","tags":[],"Class":"LineHandleAdornment"},{"ValueType":"float","type":"Property","Name":"Thickness","tags":[],"Class":"LineHandleAdornment"},{"Superclass":"HandleAdornment","type":"Class","Name":"SphereHandleAdornment","tags":[]},{"ValueType":"float","type":"Property","Name":"Radius","tags":[],"Class":"SphereHandleAdornment"},{"Superclass":"PVAdornment","type":"Class","Name":"SelectionBox","tags":[]},{"ValueType":"float","type":"Property","Name":"LineThickness","tags":[],"Class":"SelectionBox"},{"ValueType":"BrickColor","type":"Property","Name":"SurfaceColor","tags":["deprecated","hidden"],"Class":"SelectionBox"},{"ValueType":"Color3","type":"Property","Name":"SurfaceColor3","tags":[],"Class":"SelectionBox"},{"ValueType":"float","type":"Property","Name":"SurfaceTransparency","tags":[],"Class":"SelectionBox"},{"Superclass":"PVAdornment","type":"Class","Name":"SelectionSphere","tags":[]},{"ValueType":"BrickColor","type":"Property","Name":"SurfaceColor","tags":["deprecated","hidden"],"Class":"SelectionSphere"},{"ValueType":"Color3","type":"Property","Name":"SurfaceColor3","tags":[],"Class":"SelectionSphere"},{"ValueType":"float","type":"Property","Name":"SurfaceTransparency","tags":[],"Class":"SelectionSphere"},{"Superclass":"GuiBase3d","type":"Class","Name":"PartAdornment","tags":[]},{"ValueType":"Object","type":"Property","Name":"Adornee","tags":[],"Class":"PartAdornment"},{"Superclass":"PartAdornment","type":"Class","Name":"HandlesBase","tags":[]},{"Superclass":"HandlesBase","type":"Class","Name":"ArcHandles","tags":[]},{"ValueType":"Axes","type":"Property","Name":"Axes","tags":[],"Class":"ArcHandles"},{"Arguments":[{"Name":"axis","Type":"Axis"}],"Name":"MouseButton1Down","tags":[],"Class":"ArcHandles","type":"Event"},{"Arguments":[{"Name":"axis","Type":"Axis"}],"Name":"MouseButton1Up","tags":[],"Class":"ArcHandles","type":"Event"},{"Arguments":[{"Name":"axis","Type":"Axis"},{"Name":"relativeAngle","Type":"float"},{"Name":"deltaRadius","Type":"float"}],"Name":"MouseDrag","tags":[],"Class":"ArcHandles","type":"Event"},{"Arguments":[{"Name":"axis","Type":"Axis"}],"Name":"MouseEnter","tags":[],"Class":"ArcHandles","type":"Event"},{"Arguments":[{"Name":"axis","Type":"Axis"}],"Name":"MouseLeave","tags":[],"Class":"ArcHandles","type":"Event"},{"Superclass":"HandlesBase","type":"Class","Name":"Handles","tags":[]},{"ValueType":"Faces","type":"Property","Name":"Faces","tags":[],"Class":"Handles"},{"ValueType":"HandlesStyle","type":"Property","Name":"Style","tags":[],"Class":"Handles"},{"Arguments":[{"Name":"face","Type":"NormalId"}],"Name":"MouseButton1Down","tags":[],"Class":"Handles","type":"Event"},{"Arguments":[{"Name":"face","Type":"NormalId"}],"Name":"MouseButton1Up","tags":[],"Class":"Handles","type":"Event"},{"Arguments":[{"Name":"face","Type":"NormalId"},{"Name":"distance","Type":"float"}],"Name":"MouseDrag","tags":[],"Class":"Handles","type":"Event"},{"Arguments":[{"Name":"face","Type":"NormalId"}],"Name":"MouseEnter","tags":[],"Class":"Handles","type":"Event"},{"Arguments":[{"Name":"face","Type":"NormalId"}],"Name":"MouseLeave","tags":[],"Class":"Handles","type":"Event"},{"Superclass":"PartAdornment","type":"Class","Name":"SurfaceSelection","tags":[]},{"ValueType":"NormalId","type":"Property","Name":"TargetSurface","tags":[],"Class":"SurfaceSelection"},{"Superclass":"GuiBase3d","type":"Class","Name":"SelectionLasso","tags":[]},{"ValueType":"Object","type":"Property","Name":"Humanoid","tags":[],"Class":"SelectionLasso"},{"Superclass":"SelectionLasso","type":"Class","Name":"SelectionPartLasso","tags":["deprecated"]},{"ValueType":"Object","type":"Property","Name":"Part","tags":[],"Class":"SelectionPartLasso"},{"Superclass":"SelectionLasso","type":"Class","Name":"SelectionPointLasso","tags":["deprecated"]},{"ValueType":"Vector3","type":"Property","Name":"Point","tags":[],"Class":"SelectionPointLasso"},{"Superclass":"GuiBase3d","type":"Class","Name":"TextureTrail","tags":["deprecated"]},{"ValueType":"float","type":"Property","Name":"CycleOffset","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"ValueType":"Object","type":"Property","Name":"From","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"ValueType":"float","type":"Property","Name":"StudsBetweenTextures","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"ValueType":"Content","type":"Property","Name":"Texture","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"ValueType":"Vector2","type":"Property","Name":"TextureSize","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"ValueType":"Object","type":"Property","Name":"To","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"ValueType":"float","type":"Property","Name":"Velocity","tags":["RobloxPlaceSecurity"],"Class":"TextureTrail"},{"Superclass":"Instance","type":"Class","Name":"GuiItem","tags":[]},{"Superclass":"GuiItem","type":"Class","Name":"Backpack","tags":[]},{"Superclass":"GuiItem","type":"Class","Name":"BackpackItem","tags":[]},{"ValueType":"Content","type":"Property","Name":"TextureId","tags":[],"Class":"BackpackItem"},{"Superclass":"BackpackItem","type":"Class","Name":"HopperBin","tags":["deprecated"]},{"ValueType":"bool","type":"Property","Name":"Active","tags":[],"Class":"HopperBin"},{"ValueType":"BinType","type":"Property","Name":"BinType","tags":[],"Class":"HopperBin"},{"ReturnType":"void","Arguments":[],"Name":"Disable","tags":["RobloxScriptSecurity"],"Class":"HopperBin","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ToggleSelect","tags":["RobloxScriptSecurity"],"Class":"HopperBin","type":"Function"},{"Arguments":[],"Name":"Deselected","tags":[],"Class":"HopperBin","type":"Event"},{"Arguments":[{"Name":"mouse","Type":"Instance"}],"Name":"Selected","tags":[],"Class":"HopperBin","type":"Event"},{"Superclass":"BackpackItem","type":"Class","Name":"Tool","tags":[]},{"ValueType":"bool","type":"Property","Name":"CanBeDropped","tags":[],"Class":"Tool"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"Tool"},{"ValueType":"CoordinateFrame","type":"Property","Name":"Grip","tags":[],"Class":"Tool"},{"ValueType":"Vector3","type":"Property","Name":"GripForward","tags":[],"Class":"Tool"},{"ValueType":"Vector3","type":"Property","Name":"GripPos","tags":[],"Class":"Tool"},{"ValueType":"Vector3","type":"Property","Name":"GripRight","tags":[],"Class":"Tool"},{"ValueType":"Vector3","type":"Property","Name":"GripUp","tags":[],"Class":"Tool"},{"ValueType":"bool","type":"Property","Name":"ManualActivationOnly","tags":[],"Class":"Tool"},{"ValueType":"bool","type":"Property","Name":"RequiresHandle","tags":[],"Class":"Tool"},{"ValueType":"string","type":"Property","Name":"ToolTip","tags":[],"Class":"Tool"},{"ReturnType":"void","Arguments":[],"Name":"Activate","tags":[],"Class":"Tool","type":"Function"},{"Arguments":[],"Name":"Activated","tags":[],"Class":"Tool","type":"Event"},{"Arguments":[],"Name":"Deactivated","tags":[],"Class":"Tool","type":"Event"},{"Arguments":[{"Name":"mouse","Type":"Instance"}],"Name":"Equipped","tags":[],"Class":"Tool","type":"Event"},{"Arguments":[],"Name":"Unequipped","tags":[],"Class":"Tool","type":"Event"},{"Superclass":"Tool","type":"Class","Name":"Flag","tags":["deprecated"]},{"ValueType":"BrickColor","type":"Property","Name":"TeamColor","tags":[],"Class":"Flag"},{"Superclass":"GuiItem","type":"Class","Name":"ButtonBindingWidget","tags":[]},{"Superclass":"GuiItem","type":"Class","Name":"GuiRoot","tags":["notCreatable"]},{"Superclass":"GuiItem","type":"Class","Name":"Hopper","tags":["deprecated"]},{"Superclass":"GuiItem","type":"Class","Name":"StarterPack","tags":[]},{"Superclass":"Instance","type":"Class","Name":"GuiService","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"AutoSelectGuiEnabled","tags":[],"Class":"GuiService"},{"ValueType":"bool","type":"Property","Name":"CoreGuiNavigationEnabled","tags":[],"Class":"GuiService"},{"ValueType":"bool","type":"Property","Name":"GuiNavigationEnabled","tags":[],"Class":"GuiService"},{"ValueType":"bool","type":"Property","Name":"IsModalDialog","tags":["deprecated","readonly"],"Class":"GuiService"},{"ValueType":"bool","type":"Property","Name":"IsWindows","tags":["deprecated","readonly"],"Class":"GuiService"},{"ValueType":"bool","type":"Property","Name":"MenuIsOpen","tags":["readonly"],"Class":"GuiService"},{"ValueType":"bool","type":"Property","Name":"ScreenGuiEnabled","tags":["RobloxScriptSecurity"],"Class":"GuiService"},{"ValueType":"Object","type":"Property","Name":"SelectedCoreObject","tags":["RobloxScriptSecurity"],"Class":"GuiService"},{"ValueType":"Object","type":"Property","Name":"SelectedObject","tags":[],"Class":"GuiService"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"dialog","Default":null},{"Type":"CenterDialogType","Name":"centerDialogType","Default":null},{"Type":"Function","Name":"showFunction","Default":null},{"Type":"Function","Name":"hideFunction","Default":null}],"Name":"AddCenterDialog","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"AddKey","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"selectionName","Default":null},{"Type":"Instance","Name":"selectionParent","Default":null}],"Name":"AddSelectionParent","tags":[],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"selectionName","Default":null},{"Type":"Tuple","Name":"selections","Default":null}],"Name":"AddSelectionTuple","tags":[],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"SpecialKey","Name":"key","Default":null}],"Name":"AddSpecialKey","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"int","Arguments":[],"Name":"GetBrickCount","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Vector3","Name":"position","Default":null}],"Name":"GetClosestDialogToPosition","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetErrorMessage","tags":["RobloxScriptSecurity","deprecated"],"Class":"GuiService","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetUiMessage","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsTenFootInterface","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"OpenBrowserWindow","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"dialog","Default":null}],"Name":"RemoveCenterDialog","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"RemoveKey","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"selectionName","Default":null}],"Name":"RemoveSelectionGroup","tags":[],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"SpecialKey","Name":"key","Default":null}],"Name":"RemoveSpecialKey","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"errorMessage","Default":null}],"Name":"SetErrorMessage","tags":["LocalUserSecurity","deprecated"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"x1","Default":null},{"Type":"int","Name":"y1","Default":null},{"Type":"int","Name":"x2","Default":null},{"Type":"int","Name":"y2","Default":null}],"Name":"SetGlobalGuiInset","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"open","Default":null}],"Name":"SetMenuIsOpen","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"UiMessageType","Name":"msgType","Default":null},{"Type":"string","Name":"uiMessage","Default":null}],"Name":"SetUiMessage","tags":["LocalUserSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"input","Default":null}],"Name":"ShowStatsBasedOnInputString","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ToggleFullscreen","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Function"},{"ReturnType":"Vector2","Arguments":[],"Name":"GetScreenResolution","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"YieldFunction"},{"Arguments":[],"Name":"BrowserWindowClosed","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Event"},{"Arguments":[{"Name":"newErrorMessage","Type":"string"}],"Name":"ErrorMessageChanged","tags":["RobloxScriptSecurity","deprecated"],"Class":"GuiService","type":"Event"},{"Arguments":[],"Name":"EscapeKeyPressed","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Event"},{"Arguments":[{"Name":"key","Type":"string"},{"Name":"modifiers","Type":"string"}],"Name":"KeyPressed","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Event"},{"Arguments":[],"Name":"MenuClosed","tags":[],"Class":"GuiService","type":"Event"},{"Arguments":[],"Name":"MenuOpened","tags":[],"Class":"GuiService","type":"Event"},{"Arguments":[],"Name":"ShowLeaveConfirmation","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Event"},{"Arguments":[{"Name":"key","Type":"SpecialKey"},{"Name":"modifiers","Type":"string"}],"Name":"SpecialKeyPressed","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Event"},{"Arguments":[{"Name":"msgType","Type":"UiMessageType"},{"Name":"newUiMessage","Type":"string"}],"Name":"UiMessageChanged","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Event"},{"ReturnType":"void","Arguments":[{"Name":"title","Type":"string"},{"Name":"text","Type":"string"}],"Name":"SendCoreUiNotification","tags":["RobloxScriptSecurity"],"Class":"GuiService","type":"Callback"},{"Superclass":"Instance","type":"Class","Name":"GuidRegistryService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"HapticService","tags":["notCreatable"]},{"ReturnType":"Tuple","Arguments":[{"Type":"UserInputType","Name":"inputType","Default":null},{"Type":"VibrationMotor","Name":"vibrationMotor","Default":null}],"Name":"GetMotor","tags":[],"Class":"HapticService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"UserInputType","Name":"inputType","Default":null},{"Type":"VibrationMotor","Name":"vibrationMotor","Default":null}],"Name":"IsMotorSupported","tags":[],"Class":"HapticService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"UserInputType","Name":"inputType","Default":null}],"Name":"IsVibrationSupported","tags":[],"Class":"HapticService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"UserInputType","Name":"inputType","Default":null},{"Type":"VibrationMotor","Name":"vibrationMotor","Default":null},{"Type":"Tuple","Name":"vibrationValues","Default":null}],"Name":"SetMotor","tags":[],"Class":"HapticService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"HttpRbxApiService","tags":["notCreatable"]},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"apiUrlPath","Default":null},{"Type":"bool","Name":"useHttps","Default":"true"},{"Type":"ThrottlingPriority","Name":"priority","Default":"Default"}],"Name":"GetAsync","tags":["RobloxScriptSecurity"],"Class":"HttpRbxApiService","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"apiUrlPath","Default":null},{"Type":"string","Name":"data","Default":null},{"Type":"bool","Name":"useHttps","Default":"true"},{"Type":"ThrottlingPriority","Name":"priority","Default":"Default"},{"Type":"HttpContentType","Name":"content_type","Default":"ApplicationJson"}],"Name":"PostAsync","tags":["RobloxScriptSecurity"],"Class":"HttpRbxApiService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"HttpService","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"HttpEnabled","tags":["LocalUserSecurity"],"Class":"HttpService"},{"ReturnType":"string","Arguments":[{"Type":"bool","Name":"wrapInCurlyBraces","Default":"true"}],"Name":"GenerateGUID","tags":[],"Class":"HttpService","type":"Function"},{"ReturnType":"Variant","Arguments":[{"Type":"string","Name":"input","Default":null}],"Name":"JSONDecode","tags":[],"Class":"HttpService","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"Variant","Name":"input","Default":null}],"Name":"JSONEncode","tags":[],"Class":"HttpService","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"input","Default":null}],"Name":"UrlEncode","tags":[],"Class":"HttpService","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"url","Default":null},{"Type":"bool","Name":"nocache","Default":"false"}],"Name":"GetAsync","tags":[],"Class":"HttpService","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"url","Default":null},{"Type":"string","Name":"data","Default":null},{"Type":"HttpContentType","Name":"content_type","Default":"ApplicationJson"},{"Type":"bool","Name":"compress","Default":"false"}],"Name":"PostAsync","tags":[],"Class":"HttpService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"Humanoid","tags":[]},{"ValueType":"bool","type":"Property","Name":"AutoJumpEnabled","tags":[],"Class":"Humanoid"},{"ValueType":"bool","type":"Property","Name":"AutoRotate","tags":[],"Class":"Humanoid"},{"ValueType":"Vector3","type":"Property","Name":"CameraOffset","tags":[],"Class":"Humanoid"},{"ValueType":"HumanoidDisplayDistanceType","type":"Property","Name":"DisplayDistanceType","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"Health","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"HealthDisplayDistance","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"HipHeight","tags":[],"Class":"Humanoid"},{"ValueType":"bool","type":"Property","Name":"Jump","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"JumpPower","tags":[],"Class":"Humanoid"},{"ValueType":"Object","type":"Property","Name":"LeftLeg","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"MaxHealth","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"MaxSlopeAngle","tags":[],"Class":"Humanoid"},{"ValueType":"Vector3","type":"Property","Name":"MoveDirection","tags":["readonly"],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"NameDisplayDistance","tags":[],"Class":"Humanoid"},{"ValueType":"NameOcclusion","type":"Property","Name":"NameOcclusion","tags":[],"Class":"Humanoid"},{"ValueType":"bool","type":"Property","Name":"PlatformStand","tags":[],"Class":"Humanoid"},{"ValueType":"HumanoidRigType","type":"Property","Name":"RigType","tags":[],"Class":"Humanoid"},{"ValueType":"Object","type":"Property","Name":"RightLeg","tags":[],"Class":"Humanoid"},{"ValueType":"Object","type":"Property","Name":"SeatPart","tags":["readonly"],"Class":"Humanoid"},{"ValueType":"bool","type":"Property","Name":"Sit","tags":[],"Class":"Humanoid"},{"ValueType":"Vector3","type":"Property","Name":"TargetPoint","tags":[],"Class":"Humanoid"},{"ValueType":"Object","type":"Property","Name":"Torso","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"WalkSpeed","tags":[],"Class":"Humanoid"},{"ValueType":"Object","type":"Property","Name":"WalkToPart","tags":[],"Class":"Humanoid"},{"ValueType":"Vector3","type":"Property","Name":"WalkToPoint","tags":[],"Class":"Humanoid"},{"ValueType":"float","type":"Property","Name":"maxHealth","tags":["deprecated"],"Class":"Humanoid"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"status","Default":null}],"Name":"AddCustomStatus","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Status","Name":"status","Default":"Poison"}],"Name":"AddStatus","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"HumanoidStateType","Name":"state","Default":"None"}],"Name":"ChangeState","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"tool","Default":null}],"Name":"EquipTool","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetPlayingAnimationTracks","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"HumanoidStateType","Arguments":[],"Name":"GetState","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"HumanoidStateType","Name":"state","Default":null}],"Name":"GetStateEnabled","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetStatuses","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"status","Default":null}],"Name":"HasCustomStatus","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Status","Name":"status","Default":"Poison"}],"Name":"HasStatus","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"animation","Default":null}],"Name":"LoadAnimation","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"moveDirection","Default":null},{"Type":"bool","Name":"relativeToCamera","Default":"false"}],"Name":"Move","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"location","Default":null},{"Type":"Instance","Name":"part","Default":"nil"}],"Name":"MoveTo","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"status","Default":null}],"Name":"RemoveCustomStatus","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Status","Name":"status","Default":"Poison"}],"Name":"RemoveStatus","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enabled","Default":null}],"Name":"SetClickToWalkEnabled","tags":["RobloxScriptSecurity"],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"HumanoidStateType","Name":"state","Default":null},{"Type":"bool","Name":"enabled","Default":null}],"Name":"SetStateEnabled","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"amount","Default":null}],"Name":"TakeDamage","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"UnequipTools","tags":[],"Class":"Humanoid","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"animation","Default":null}],"Name":"loadAnimation","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"amount","Default":null}],"Name":"takeDamage","tags":["deprecated"],"Class":"Humanoid","type":"Function"},{"Arguments":[{"Name":"animationTrack","Type":"Instance"}],"Name":"AnimationPlayed","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"speed","Type":"float"}],"Name":"Climbing","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"status","Type":"string"}],"Name":"CustomStatusAdded","tags":["deprecated"],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"status","Type":"string"}],"Name":"CustomStatusRemoved","tags":["deprecated"],"Class":"Humanoid","type":"Event"},{"Arguments":[],"Name":"Died","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"FallingDown","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"FreeFalling","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"GettingUp","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"health","Type":"float"}],"Name":"HealthChanged","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"Jumping","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"reached","Type":"bool"}],"Name":"MoveToFinished","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"PlatformStanding","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"Ragdoll","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"speed","Type":"float"}],"Name":"Running","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"},{"Name":"currentSeatPart","Type":"Instance"}],"Name":"Seated","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"old","Type":"HumanoidStateType"},{"Name":"new","Type":"HumanoidStateType"}],"Name":"StateChanged","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"state","Type":"HumanoidStateType"},{"Name":"isEnabled","Type":"bool"}],"Name":"StateEnabledChanged","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"status","Type":"Status"}],"Name":"StatusAdded","tags":["deprecated"],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"status","Type":"Status"}],"Name":"StatusRemoved","tags":["deprecated"],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"active","Type":"bool"}],"Name":"Strafing","tags":[],"Class":"Humanoid","type":"Event"},{"Arguments":[{"Name":"speed","Type":"float"}],"Name":"Swimming","tags":[],"Class":"Humanoid","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"InputObject","tags":["notCreatable"]},{"ValueType":"Vector3","type":"Property","Name":"Delta","tags":[],"Class":"InputObject"},{"ValueType":"KeyCode","type":"Property","Name":"KeyCode","tags":[],"Class":"InputObject"},{"ValueType":"Vector3","type":"Property","Name":"Position","tags":[],"Class":"InputObject"},{"ValueType":"UserInputState","type":"Property","Name":"UserInputState","tags":[],"Class":"InputObject"},{"ValueType":"UserInputType","type":"Property","Name":"UserInputType","tags":[],"Class":"InputObject"},{"Superclass":"Instance","type":"Class","Name":"InsertService","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"AllowInsertFreeModels","tags":[],"Class":"InsertService"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"assetId","Default":null}],"Name":"ApproveAssetId","tags":["deprecated"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"assetVersionId","Default":null}],"Name":"ApproveAssetVersionId","tags":["deprecated"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"instance","Default":null}],"Name":"Insert","tags":["deprecated"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enable","Default":null},{"Type":"bool","Name":"user","Default":"false"}],"Name":"SetAdvancedResults","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"assetUrl","Default":null}],"Name":"SetAssetUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"assetVersionUrl","Default":null}],"Name":"SetAssetVersionUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"baseSetsUrl","Default":null}],"Name":"SetBaseCategoryUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"baseSetsUrl","Default":null}],"Name":"SetBaseSetsUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"collectionUrl","Default":null}],"Name":"SetCollectionUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"freeDecalUrl","Default":null}],"Name":"SetFreeDecalUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"freeModelUrl","Default":null}],"Name":"SetFreeModelUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"trustLevel","Default":null}],"Name":"SetTrustLevel","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"userSetsUrl","Default":null}],"Name":"SetUserCategoryUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"userSetsUrl","Default":null}],"Name":"SetUserSetsUrl","tags":["LocalUserSecurity"],"Class":"InsertService","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetBaseCategories","tags":["deprecated"],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[],"Name":"GetBaseSets","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[{"Type":"int","Name":"categoryId","Default":null}],"Name":"GetCollection","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[{"Type":"string","Name":"searchText","Default":null},{"Type":"int","Name":"pageNum","Default":null}],"Name":"GetFreeDecals","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[{"Type":"string","Name":"searchText","Default":null},{"Type":"int","Name":"pageNum","Default":null}],"Name":"GetFreeModels","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"int","Name":"assetId","Default":null}],"Name":"GetLatestAssetVersionAsync","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetUserCategories","tags":["deprecated"],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Array","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetUserSets","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"assetId","Default":null}],"Name":"LoadAsset","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"assetVersionId","Default":null}],"Name":"LoadAssetVersion","tags":[],"Class":"InsertService","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"assetId","Default":null}],"Name":"loadAsset","tags":["deprecated"],"Class":"InsertService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"InstancePacketCache","tags":[]},{"Superclass":"Instance","type":"Class","Name":"IntConstrainedValue","tags":[]},{"ValueType":"int","type":"Property","Name":"ConstrainedValue","tags":["hidden"],"Class":"IntConstrainedValue"},{"ValueType":"int","type":"Property","Name":"MaxValue","tags":[],"Class":"IntConstrainedValue"},{"ValueType":"int","type":"Property","Name":"MinValue","tags":[],"Class":"IntConstrainedValue"},{"ValueType":"int","type":"Property","Name":"Value","tags":[],"Class":"IntConstrainedValue"},{"Arguments":[{"Name":"value","Type":"int"}],"Name":"Changed","tags":[],"Class":"IntConstrainedValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"int"}],"Name":"changed","tags":["deprecated"],"Class":"IntConstrainedValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"IntValue","tags":[]},{"ValueType":"int","type":"Property","Name":"Value","tags":[],"Class":"IntValue"},{"Arguments":[{"Name":"value","Type":"int"}],"Name":"Changed","tags":[],"Class":"IntValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"int"}],"Name":"changed","tags":["deprecated"],"Class":"IntValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"JointInstance","tags":[]},{"ValueType":"CoordinateFrame","type":"Property","Name":"C0","tags":[],"Class":"JointInstance"},{"ValueType":"CoordinateFrame","type":"Property","Name":"C1","tags":[],"Class":"JointInstance"},{"ValueType":"Object","type":"Property","Name":"Part0","tags":[],"Class":"JointInstance"},{"ValueType":"Object","type":"Property","Name":"Part1","tags":[],"Class":"JointInstance"},{"ValueType":"Object","type":"Property","Name":"part1","tags":["deprecated","hidden"],"Class":"JointInstance"},{"Superclass":"JointInstance","type":"Class","Name":"DynamicRotate","tags":[]},{"ValueType":"float","type":"Property","Name":"BaseAngle","tags":[],"Class":"DynamicRotate"},{"Superclass":"DynamicRotate","type":"Class","Name":"RotateP","tags":[]},{"Superclass":"DynamicRotate","type":"Class","Name":"RotateV","tags":[]},{"Superclass":"JointInstance","type":"Class","Name":"Glue","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"F0","tags":[],"Class":"Glue"},{"ValueType":"Vector3","type":"Property","Name":"F1","tags":[],"Class":"Glue"},{"ValueType":"Vector3","type":"Property","Name":"F2","tags":[],"Class":"Glue"},{"ValueType":"Vector3","type":"Property","Name":"F3","tags":[],"Class":"Glue"},{"Superclass":"JointInstance","type":"Class","Name":"ManualSurfaceJointInstance","tags":[]},{"Superclass":"ManualSurfaceJointInstance","type":"Class","Name":"ManualGlue","tags":[]},{"Superclass":"ManualSurfaceJointInstance","type":"Class","Name":"ManualWeld","tags":[]},{"Superclass":"JointInstance","type":"Class","Name":"Motor","tags":[]},{"ValueType":"float","type":"Property","Name":"CurrentAngle","tags":[],"Class":"Motor"},{"ValueType":"float","type":"Property","Name":"DesiredAngle","tags":[],"Class":"Motor"},{"ValueType":"float","type":"Property","Name":"MaxVelocity","tags":[],"Class":"Motor"},{"ReturnType":"void","Arguments":[{"Type":"float","Name":"value","Default":null}],"Name":"SetDesiredAngle","tags":[],"Class":"Motor","type":"Function"},{"Superclass":"Motor","type":"Class","Name":"Motor6D","tags":[]},{"Superclass":"JointInstance","type":"Class","Name":"Rotate","tags":[]},{"Superclass":"JointInstance","type":"Class","Name":"Snap","tags":[]},{"Superclass":"JointInstance","type":"Class","Name":"VelocityMotor","tags":[]},{"ValueType":"float","type":"Property","Name":"CurrentAngle","tags":[],"Class":"VelocityMotor"},{"ValueType":"float","type":"Property","Name":"DesiredAngle","tags":[],"Class":"VelocityMotor"},{"ValueType":"Object","type":"Property","Name":"Hole","tags":[],"Class":"VelocityMotor"},{"ValueType":"float","type":"Property","Name":"MaxVelocity","tags":[],"Class":"VelocityMotor"},{"Superclass":"JointInstance","type":"Class","Name":"Weld","tags":[]},{"Superclass":"Instance","type":"Class","Name":"JointsService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[],"Name":"ClearJoinAfterMoveJoints","tags":[],"Class":"JointsService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"CreateJoinAfterMoveJoints","tags":[],"Class":"JointsService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"joinInstance","Default":null}],"Name":"SetJoinAfterMoveInstance","tags":[],"Class":"JointsService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"joinTarget","Default":null}],"Name":"SetJoinAfterMoveTarget","tags":[],"Class":"JointsService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ShowPermissibleJoints","tags":[],"Class":"JointsService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Keyframe","tags":[]},{"ValueType":"float","type":"Property","Name":"Time","tags":[],"Class":"Keyframe"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"pose","Default":null}],"Name":"AddPose","tags":[],"Class":"Keyframe","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetPoses","tags":[],"Class":"Keyframe","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"pose","Default":null}],"Name":"RemovePose","tags":[],"Class":"Keyframe","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"KeyframeSequence","tags":[]},{"ValueType":"bool","type":"Property","Name":"Loop","tags":[],"Class":"KeyframeSequence"},{"ValueType":"AnimationPriority","type":"Property","Name":"Priority","tags":[],"Class":"KeyframeSequence"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"keyframe","Default":null}],"Name":"AddKeyframe","tags":[],"Class":"KeyframeSequence","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetKeyframes","tags":[],"Class":"KeyframeSequence","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"keyframe","Default":null}],"Name":"RemoveKeyframe","tags":[],"Class":"KeyframeSequence","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"KeyframeSequenceProvider","tags":[]},{"ReturnType":"Instance","Arguments":[{"Type":"Content","Name":"assetId","Default":null}],"Name":"GetKeyframeSequence","tags":[],"Class":"KeyframeSequenceProvider","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"assetId","Default":null},{"Type":"bool","Name":"useCache","Default":null}],"Name":"GetKeyframeSequenceById","tags":[],"Class":"KeyframeSequenceProvider","type":"Function"},{"ReturnType":"Content","Arguments":[{"Type":"Instance","Name":"keyframeSequence","Default":null}],"Name":"RegisterActiveKeyframeSequence","tags":[],"Class":"KeyframeSequenceProvider","type":"Function"},{"ReturnType":"Content","Arguments":[{"Type":"Instance","Name":"keyframeSequence","Default":null}],"Name":"RegisterKeyframeSequence","tags":[],"Class":"KeyframeSequenceProvider","type":"Function"},{"ReturnType":"Dictionary","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"page","Default":"1"}],"Name":"GetAnimations","tags":[],"Class":"KeyframeSequenceProvider","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"Light","tags":[]},{"ValueType":"float","type":"Property","Name":"Brightness","tags":[],"Class":"Light"},{"ValueType":"Color3","type":"Property","Name":"Color","tags":[],"Class":"Light"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"Light"},{"ValueType":"bool","type":"Property","Name":"Shadows","tags":[],"Class":"Light"},{"Superclass":"Light","type":"Class","Name":"PointLight","tags":[]},{"ValueType":"float","type":"Property","Name":"Range","tags":[],"Class":"PointLight"},{"Superclass":"Light","type":"Class","Name":"SpotLight","tags":[]},{"ValueType":"float","type":"Property","Name":"Angle","tags":[],"Class":"SpotLight"},{"ValueType":"NormalId","type":"Property","Name":"Face","tags":[],"Class":"SpotLight"},{"ValueType":"float","type":"Property","Name":"Range","tags":[],"Class":"SpotLight"},{"Superclass":"Light","type":"Class","Name":"SurfaceLight","tags":[]},{"ValueType":"float","type":"Property","Name":"Angle","tags":[],"Class":"SurfaceLight"},{"ValueType":"NormalId","type":"Property","Name":"Face","tags":[],"Class":"SurfaceLight"},{"ValueType":"float","type":"Property","Name":"Range","tags":[],"Class":"SurfaceLight"},{"Superclass":"Instance","type":"Class","Name":"Lighting","tags":["notCreatable"]},{"ValueType":"Color3","type":"Property","Name":"Ambient","tags":[],"Class":"Lighting"},{"ValueType":"float","type":"Property","Name":"Brightness","tags":[],"Class":"Lighting"},{"ValueType":"Color3","type":"Property","Name":"ColorShift_Bottom","tags":[],"Class":"Lighting"},{"ValueType":"Color3","type":"Property","Name":"ColorShift_Top","tags":[],"Class":"Lighting"},{"ValueType":"Color3","type":"Property","Name":"FogColor","tags":[],"Class":"Lighting"},{"ValueType":"float","type":"Property","Name":"FogEnd","tags":[],"Class":"Lighting"},{"ValueType":"float","type":"Property","Name":"FogStart","tags":[],"Class":"Lighting"},{"ValueType":"float","type":"Property","Name":"GeographicLatitude","tags":[],"Class":"Lighting"},{"ValueType":"bool","type":"Property","Name":"GlobalShadows","tags":[],"Class":"Lighting"},{"ValueType":"Color3","type":"Property","Name":"OutdoorAmbient","tags":[],"Class":"Lighting"},{"ValueType":"bool","type":"Property","Name":"Outlines","tags":[],"Class":"Lighting"},{"ValueType":"Color3","type":"Property","Name":"ShadowColor","tags":[],"Class":"Lighting"},{"ValueType":"string","type":"Property","Name":"TimeOfDay","tags":[],"Class":"Lighting"},{"ReturnType":"double","Arguments":[],"Name":"GetMinutesAfterMidnight","tags":[],"Class":"Lighting","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetMoonDirection","tags":[],"Class":"Lighting","type":"Function"},{"ReturnType":"float","Arguments":[],"Name":"GetMoonPhase","tags":[],"Class":"Lighting","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetSunDirection","tags":[],"Class":"Lighting","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"double","Name":"minutes","Default":null}],"Name":"SetMinutesAfterMidnight","tags":[],"Class":"Lighting","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"getMinutesAfterMidnight","tags":["deprecated"],"Class":"Lighting","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"double","Name":"minutes","Default":null}],"Name":"setMinutesAfterMidnight","tags":["deprecated"],"Class":"Lighting","type":"Function"},{"Arguments":[{"Name":"skyboxChanged","Type":"bool"}],"Name":"LightingChanged","tags":[],"Class":"Lighting","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"LocalWorkspace","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"LogService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"source","Default":null}],"Name":"ExecuteScript","tags":["RobloxScriptSecurity"],"Class":"LogService","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetLogHistory","tags":[],"Class":"LogService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"RequestServerOutput","tags":["RobloxScriptSecurity"],"Class":"LogService","type":"Function"},{"Arguments":[{"Name":"message","Type":"string"},{"Name":"messageType","Type":"MessageType"}],"Name":"MessageOut","tags":[],"Class":"LogService","type":"Event"},{"Arguments":[{"Name":"message","Type":"string"},{"Name":"messageType","Type":"MessageType"},{"Name":"timestamp","Type":"int"}],"Name":"ServerMessageOut","tags":["RobloxScriptSecurity"],"Class":"LogService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"LoginService","tags":[]},{"ReturnType":"void","Arguments":[],"Name":"Logout","tags":["RobloxSecurity"],"Class":"LoginService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"PromptLogin","tags":["RobloxSecurity"],"Class":"LoginService","type":"Function"},{"Arguments":[{"Name":"loginError","Type":"string"}],"Name":"LoginFailed","tags":["RobloxSecurity"],"Class":"LoginService","type":"Event"},{"Arguments":[{"Name":"username","Type":"string"}],"Name":"LoginSucceeded","tags":["RobloxSecurity"],"Class":"LoginService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"LuaSettings","tags":[]},{"ValueType":"bool","type":"Property","Name":"AreScriptStartsReported","tags":[],"Class":"LuaSettings"},{"ValueType":"double","type":"Property","Name":"DefaultWaitTime","tags":[],"Class":"LuaSettings"},{"ValueType":"int","type":"Property","Name":"GcFrequency","tags":[],"Class":"LuaSettings"},{"ValueType":"int","type":"Property","Name":"GcLimit","tags":[],"Class":"LuaSettings"},{"ValueType":"int","type":"Property","Name":"GcPause","tags":[],"Class":"LuaSettings"},{"ValueType":"int","type":"Property","Name":"GcStepMul","tags":[],"Class":"LuaSettings"},{"ValueType":"float","type":"Property","Name":"WaitingThreadsBudget","tags":[],"Class":"LuaSettings"},{"Superclass":"Instance","type":"Class","Name":"LuaSourceContainer","tags":[]},{"Superclass":"LuaSourceContainer","type":"Class","Name":"BaseScript","tags":[]},{"ValueType":"bool","type":"Property","Name":"Disabled","tags":[],"Class":"BaseScript"},{"ValueType":"Content","type":"Property","Name":"LinkedSource","tags":[],"Class":"BaseScript"},{"Superclass":"BaseScript","type":"Class","Name":"CoreScript","tags":["notCreatable"]},{"Superclass":"BaseScript","type":"Class","Name":"Script","tags":[]},{"ValueType":"ProtectedString","type":"Property","Name":"Source","tags":["PluginSecurity"],"Class":"Script"},{"ReturnType":"string","Arguments":[],"Name":"GetHash","tags":["RobloxPlaceSecurity"],"Class":"Script","type":"Function"},{"Superclass":"Script","type":"Class","Name":"LocalScript","tags":[]},{"Superclass":"LuaSourceContainer","type":"Class","Name":"ModuleScript","tags":[]},{"ValueType":"Content","type":"Property","Name":"LinkedSource","tags":[],"Class":"ModuleScript"},{"ValueType":"ProtectedString","type":"Property","Name":"Source","tags":["PluginSecurity"],"Class":"ModuleScript"},{"Superclass":"Instance","type":"Class","Name":"LuaWebService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"MarketplaceService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"string","Name":"productId","Default":null}],"Name":"PromptNativePurchase","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"int","Name":"productId","Default":null},{"Type":"bool","Name":"equipIfPurchased","Default":"true"},{"Type":"CurrencyType","Name":"currencyType","Default":"Default"}],"Name":"PromptProductPurchase","tags":[],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"int","Name":"assetId","Default":null},{"Type":"bool","Name":"equipIfPurchased","Default":"true"},{"Type":"CurrencyType","Name":"currencyType","Default":"Default"}],"Name":"PromptPurchase","tags":[],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"string","Name":"productId","Default":null}],"Name":"PromptThirdPartyPurchase","tags":["RobloxPlaceSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"assetId","Default":null},{"Type":"int","Name":"robuxAmount","Default":null}],"Name":"ReportAssetSale","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ReportRobuxUpsellStarted","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"ticket","Default":null},{"Type":"int","Name":"playerId","Default":null},{"Type":"int","Name":"productId","Default":null}],"Name":"SignalClientPurchaseSuccess","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"productId","Default":null},{"Type":"bool","Name":"success","Default":null}],"Name":"SignalPromptProductPurchaseFinished","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"int","Name":"assetId","Default":null},{"Type":"bool","Name":"success","Default":null}],"Name":"SignalPromptPurchaseFinished","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SignalServerLuaDialogClosed","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetDeveloperProductsAsync","tags":[],"Class":"MarketplaceService","type":"YieldFunction"},{"ReturnType":"Dictionary","Arguments":[{"Type":"int","Name":"assetId","Default":null},{"Type":"InfoType","Name":"infoType","Default":"Asset"}],"Name":"GetProductInfo","tags":[],"Class":"MarketplaceService","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"int","Name":"assetId","Default":null}],"Name":"PlayerOwnsAsset","tags":[],"Class":"MarketplaceService","type":"YieldFunction"},{"Arguments":[{"Name":"arguments","Type":"Tuple"}],"Name":"ClientLuaDialogRequested","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"ticket","Type":"string"},{"Name":"playerId","Type":"int"},{"Name":"productId","Type":"int"}],"Name":"ClientPurchaseSuccess","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"productId","Type":"string"},{"Name":"wasPurchased","Type":"bool"}],"Name":"NativePurchaseFinished","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"userId","Type":"int"},{"Name":"productId","Type":"int"},{"Name":"isPurchased","Type":"bool"}],"Name":"PromptProductPurchaseFinished","tags":["deprecated"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"productId","Type":"int"},{"Name":"equipIfPurchased","Type":"bool"},{"Name":"currencyType","Type":"CurrencyType"}],"Name":"PromptProductPurchaseRequested","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"assetId","Type":"int"},{"Name":"isPurchased","Type":"bool"}],"Name":"PromptPurchaseFinished","tags":[],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"assetId","Type":"int"},{"Name":"equipIfPurchased","Type":"bool"},{"Name":"currencyType","Type":"CurrencyType"}],"Name":"PromptPurchaseRequested","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"serverResponseTable","Type":"Dictionary"}],"Name":"ServerPurchaseVerification","tags":["RobloxScriptSecurity"],"Class":"MarketplaceService","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"productId","Type":"string"},{"Name":"receipt","Type":"string"},{"Name":"wasPurchased","Type":"bool"}],"Name":"ThirdPartyPurchaseFinished","tags":["RobloxPlaceSecurity"],"Class":"MarketplaceService","type":"Event"},{"ReturnType":"ProductPurchaseDecision","Arguments":[{"Name":"receiptInfo","Type":"Dictionary"}],"Name":"ProcessReceipt","tags":[],"Class":"MarketplaceService","type":"Callback"},{"Superclass":"Instance","type":"Class","Name":"Message","tags":["deprecated"]},{"ValueType":"string","type":"Property","Name":"Text","tags":[],"Class":"Message"},{"Superclass":"Message","type":"Class","Name":"Hint","tags":["deprecated"]},{"Superclass":"Instance","type":"Class","Name":"Mouse","tags":[]},{"ValueType":"CoordinateFrame","type":"Property","Name":"Hit","tags":["readonly"],"Class":"Mouse"},{"ValueType":"Content","type":"Property","Name":"Icon","tags":[],"Class":"Mouse"},{"ValueType":"CoordinateFrame","type":"Property","Name":"Origin","tags":["readonly"],"Class":"Mouse"},{"ValueType":"Object","type":"Property","Name":"Target","tags":["readonly"],"Class":"Mouse"},{"ValueType":"Object","type":"Property","Name":"TargetFilter","tags":[],"Class":"Mouse"},{"ValueType":"NormalId","type":"Property","Name":"TargetSurface","tags":["readonly"],"Class":"Mouse"},{"ValueType":"Ray","type":"Property","Name":"UnitRay","tags":["readonly"],"Class":"Mouse"},{"ValueType":"int","type":"Property","Name":"ViewSizeX","tags":["readonly"],"Class":"Mouse"},{"ValueType":"int","type":"Property","Name":"ViewSizeY","tags":["readonly"],"Class":"Mouse"},{"ValueType":"int","type":"Property","Name":"X","tags":["readonly"],"Class":"Mouse"},{"ValueType":"int","type":"Property","Name":"Y","tags":["readonly"],"Class":"Mouse"},{"ValueType":"CoordinateFrame","type":"Property","Name":"hit","tags":["deprecated","hidden","readonly"],"Class":"Mouse"},{"ValueType":"Object","type":"Property","Name":"target","tags":["deprecated","readonly"],"Class":"Mouse"},{"Arguments":[],"Name":"Button1Down","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"Button1Up","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"Button2Down","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"Button2Up","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"Idle","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[{"Name":"key","Type":"string"}],"Name":"KeyDown","tags":["deprecated"],"Class":"Mouse","type":"Event"},{"Arguments":[{"Name":"key","Type":"string"}],"Name":"KeyUp","tags":["deprecated"],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"Move","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"WheelBackward","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[],"Name":"WheelForward","tags":[],"Class":"Mouse","type":"Event"},{"Arguments":[{"Name":"key","Type":"string"}],"Name":"keyDown","tags":["deprecated"],"Class":"Mouse","type":"Event"},{"Superclass":"Mouse","type":"Class","Name":"PlayerMouse","tags":[]},{"Superclass":"Mouse","type":"Class","Name":"PluginMouse","tags":[]},{"Arguments":[{"Name":"instances","Type":"Objects"}],"Name":"DragEnter","tags":["PluginSecurity"],"Class":"PluginMouse","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"NetworkMarker","tags":["notbrowsable"]},{"Arguments":[],"Name":"Received","tags":[],"Class":"NetworkMarker","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"NetworkPeer","tags":["notbrowsable"]},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"limit","Default":null}],"Name":"SetOutgoingKBPSLimit","tags":["PluginSecurity"],"Class":"NetworkPeer","type":"Function"},{"Superclass":"NetworkPeer","type":"Class","Name":"NetworkClient","tags":["notCreatable"]},{"ValueType":"string","type":"Property","Name":"Ticket","tags":[],"Class":"NetworkClient"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"blockDuration","Default":"3000"}],"Name":"Disconnect","tags":["LocalUserSecurity"],"Class":"NetworkClient","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"string","Name":"server","Default":null},{"Type":"int","Name":"serverPort","Default":null},{"Type":"int","Name":"clientPort","Default":"0"},{"Type":"int","Name":"threadSleepTime","Default":"30"}],"Name":"PlayerConnect","tags":["PluginSecurity"],"Class":"NetworkClient","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"gameSessionID","Default":null}],"Name":"SetGameSessionID","tags":["RobloxSecurity"],"Class":"NetworkClient","type":"Function"},{"Arguments":[{"Name":"peer","Type":"string"},{"Name":"replicator","Type":"Instance"}],"Name":"ConnectionAccepted","tags":[],"Class":"NetworkClient","type":"Event"},{"Arguments":[{"Name":"peer","Type":"string"},{"Name":"code","Type":"int"},{"Name":"reason","Type":"string"}],"Name":"ConnectionFailed","tags":[],"Class":"NetworkClient","type":"Event"},{"Arguments":[{"Name":"peer","Type":"string"}],"Name":"ConnectionRejected","tags":[],"Class":"NetworkClient","type":"Event"},{"Superclass":"NetworkPeer","type":"Class","Name":"NetworkServer","tags":["notCreatable"]},{"ValueType":"int","type":"Property","Name":"Port","tags":["readonly"],"Class":"NetworkServer"},{"ReturnType":"void","Arguments":[],"Name":"ConfigureAsCloudEditServer","tags":["RobloxSecurity"],"Class":"NetworkServer","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ConfigureAsTeamTestServer","tags":["RobloxSecurity"],"Class":"NetworkServer","type":"Function"},{"ReturnType":"int","Arguments":[],"Name":"GetClientCount","tags":["LocalUserSecurity"],"Class":"NetworkServer","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SetIsPlayerAuthenticationRequired","tags":["RobloxSecurity"],"Class":"NetworkServer","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"port","Default":"0"},{"Type":"int","Name":"threadSleepTime","Default":"20"}],"Name":"Start","tags":["PluginSecurity"],"Class":"NetworkServer","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"blockDuration","Default":"1000"}],"Name":"Stop","tags":["LocalUserSecurity"],"Class":"NetworkServer","type":"Function"},{"Arguments":[{"Name":"peer","Type":"Instance"},{"Name":"result","Type":"FilterResult"},{"Name":"instance","Type":"Instance"},{"Name":"member","Type":"string"}],"Name":"DataBasicFiltered","tags":["LocalUserSecurity"],"Class":"NetworkServer","type":"Event"},{"Arguments":[{"Name":"peer","Type":"Instance"},{"Name":"result","Type":"FilterResult"},{"Name":"instance","Type":"Instance"},{"Name":"member","Type":"string"}],"Name":"DataCustomFiltered","tags":["LocalUserSecurity"],"Class":"NetworkServer","type":"Event"},{"Arguments":[{"Name":"peer","Type":"string"},{"Name":"replicator","Type":"Instance"}],"Name":"IncommingConnection","tags":["RobloxScriptSecurity"],"Class":"NetworkServer","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"NetworkReplicator","tags":["notCreatable"]},{"ValueType":"string","type":"Property","Name":"MachineAddress","tags":["LocalUserSecurity","readonly"],"Class":"NetworkReplicator"},{"ValueType":"int","type":"Property","Name":"Port","tags":["LocalUserSecurity","readonly"],"Class":"NetworkReplicator"},{"ReturnType":"void","Arguments":[],"Name":"CloseConnection","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"DisableProcessPackets","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"EnableProcessPackets","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetPlayer","tags":[],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"verbosityLevel","Default":"0"}],"Name":"GetRakStatsString","tags":["PluginSecurity"],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"RequestCharacter","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"SendMarker","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"double","Name":"seconds","Default":null}],"Name":"SetPropSyncExpiration","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Function"},{"Arguments":[{"Name":"peer","Type":"string"},{"Name":"lostConnection","Type":"bool"}],"Name":"Disconnection","tags":["LocalUserSecurity"],"Class":"NetworkReplicator","type":"Event"},{"Superclass":"NetworkReplicator","type":"Class","Name":"ClientReplicator","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"request","Default":null}],"Name":"RequestServerStats","tags":["RobloxScriptSecurity"],"Class":"ClientReplicator","type":"Function"},{"Arguments":[{"Name":"stats","Type":"Dictionary"}],"Name":"StatsReceived","tags":["RobloxScriptSecurity"],"Class":"ClientReplicator","type":"Event"},{"Superclass":"NetworkReplicator","type":"Class","Name":"ServerReplicator","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[],"Name":"PreventTerrainChanges","tags":["RobloxPlaceSecurity"],"Class":"ServerReplicator","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SetBasicFilteringEnabled","tags":["RobloxPlaceSecurity"],"Class":"ServerReplicator","type":"Function"},{"Arguments":[{"Name":"userId","Type":"int"},{"Name":"isAuthenticated","Type":"bool"},{"Name":"protocolVersion","Type":"int"}],"Name":"TicketProcessed","tags":[],"Class":"ServerReplicator","type":"Event"},{"ReturnType":"FilterResult","Arguments":[{"Name":"deletingItem","Type":"Instance"}],"Name":"DeleteFilter","tags":["RobloxPlaceSecurity","noyield"],"Class":"ServerReplicator","type":"Callback"},{"ReturnType":"FilterResult","Arguments":[{"Name":"firingItem","Type":"Instance"},{"Name":"event","Type":"string"}],"Name":"EventFilter","tags":["RobloxPlaceSecurity","noyield"],"Class":"ServerReplicator","type":"Callback"},{"ReturnType":"FilterResult","Arguments":[{"Name":"newItem","Type":"Instance"},{"Name":"parent","Type":"Instance"}],"Name":"NewFilter","tags":["RobloxPlaceSecurity","noyield"],"Class":"ServerReplicator","type":"Callback"},{"ReturnType":"FilterResult","Arguments":[{"Name":"changingItem","Type":"Instance"},{"Name":"member","Type":"string"},{"Name":"value","Type":"Variant"}],"Name":"PropertyFilter","tags":["RobloxPlaceSecurity","noyield"],"Class":"ServerReplicator","type":"Callback"},{"Superclass":"Instance","type":"Class","Name":"NetworkSettings","tags":["notbrowsable"]},{"ValueType":"bool","type":"Property","Name":"ArePhysicsRejectionsReported","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"CanSendPacketBufferLimit","tags":[],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"ClientPhysicsSendRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"DataGCRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"DataMtuAdjust","tags":[],"Class":"NetworkSettings"},{"ValueType":"PacketPriority","type":"Property","Name":"DataSendPriority","tags":["hidden"],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"DataSendRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"EnableHeavyCompression","tags":["hidden"],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"ExperimentalPhysicsEnabled","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"ExtraMemoryUsed","tags":["PluginSecurity","hidden"],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"FreeMemoryMBytes","tags":["PluginSecurity","hidden","readonly"],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"FreeMemoryPoolMBytes","tags":["PluginSecurity","hidden","readonly"],"Class":"NetworkSettings"},{"ValueType":"double","type":"Property","Name":"IncommingReplicationLag","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"IsQueueErrorComputed","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"IsThrottledByCongestionControl","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"IsThrottledByOutgoingBandwidthLimit","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"MaxDataModelSendBuffer","tags":["deprecated"],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"NetworkOwnerRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"PhysicsMtuAdjust","tags":[],"Class":"NetworkSettings"},{"ValueType":"PhysicsReceiveMethod","type":"Property","Name":"PhysicsReceive","tags":[],"Class":"NetworkSettings"},{"ValueType":"PhysicsSendMethod","type":"Property","Name":"PhysicsSend","tags":[],"Class":"NetworkSettings"},{"ValueType":"PacketPriority","type":"Property","Name":"PhysicsSendPriority","tags":["hidden"],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"PhysicsSendRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"PreferredClientPort","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintBits","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintEvents","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintFilters","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintInstances","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintPhysicsErrors","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintProperties","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintSplitMessage","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintStreamInstanceQuota","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"PrintTouches","tags":[],"Class":"NetworkSettings"},{"ValueType":"double","type":"Property","Name":"ReceiveRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"RenderStreamedRegions","tags":[],"Class":"NetworkSettings"},{"ValueType":"string","type":"Property","Name":"ReportStatURL","tags":["deprecated","hidden"],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"SendPacketBufferLimit","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"ShowActiveAnimationAsset","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"ShowPartMovementWayPoint","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"TotalNumMovementWayPoint","tags":[],"Class":"NetworkSettings"},{"ValueType":"float","type":"Property","Name":"TouchSendRate","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"TrackDataTypes","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"TrackPhysicsDetails","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"UseInstancePacketCache","tags":[],"Class":"NetworkSettings"},{"ValueType":"bool","type":"Property","Name":"UsePhysicsPacketCache","tags":[],"Class":"NetworkSettings"},{"ValueType":"int","type":"Property","Name":"WaitingForCharacterLogRate","tags":["deprecated","hidden"],"Class":"NetworkSettings"},{"Superclass":"Instance","type":"Class","Name":"NotificationService","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"CancelAllNotification","tags":["RobloxPlaceSecurity"],"Class":"NotificationService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"alertId","Default":null}],"Name":"CancelNotification","tags":["RobloxPlaceSecurity"],"Class":"NotificationService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"alertId","Default":null},{"Type":"string","Name":"alertMsg","Default":null},{"Type":"int","Name":"minutesToFire","Default":null}],"Name":"ScheduleNotification","tags":["RobloxPlaceSecurity"],"Class":"NotificationService","type":"Function"},{"ReturnType":"Array","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetScheduledNotifications","tags":["RobloxPlaceSecurity"],"Class":"NotificationService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"NumberValue","tags":[]},{"ValueType":"double","type":"Property","Name":"Value","tags":[],"Class":"NumberValue"},{"Arguments":[{"Name":"value","Type":"double"}],"Name":"Changed","tags":[],"Class":"NumberValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"double"}],"Name":"changed","tags":["deprecated"],"Class":"NumberValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ObjectValue","tags":[]},{"ValueType":"Object","type":"Property","Name":"Value","tags":[],"Class":"ObjectValue"},{"Arguments":[{"Name":"value","Type":"Instance"}],"Name":"Changed","tags":[],"Class":"ObjectValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"Instance"}],"Name":"changed","tags":["deprecated"],"Class":"ObjectValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"OneQuarterClusterPacketCacheBase","tags":[]},{"Superclass":"Instance","type":"Class","Name":"PVInstance","tags":["notbrowsable"]},{"ValueType":"CoordinateFrame","type":"Property","Name":"CoordinateFrame","tags":["deprecated","writeonly"],"Class":"PVInstance"},{"Superclass":"PVInstance","type":"Class","Name":"BasePart","tags":["notbrowsable"]},{"ValueType":"bool","type":"Property","Name":"Anchored","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"BackParamA","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"BackParamB","tags":[],"Class":"BasePart"},{"ValueType":"SurfaceType","type":"Property","Name":"BackSurface","tags":[],"Class":"BasePart"},{"ValueType":"InputType","type":"Property","Name":"BackSurfaceInput","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"BottomParamA","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"BottomParamB","tags":[],"Class":"BasePart"},{"ValueType":"SurfaceType","type":"Property","Name":"BottomSurface","tags":[],"Class":"BasePart"},{"ValueType":"InputType","type":"Property","Name":"BottomSurfaceInput","tags":[],"Class":"BasePart"},{"ValueType":"BrickColor","type":"Property","Name":"BrickColor","tags":[],"Class":"BasePart"},{"ValueType":"CoordinateFrame","type":"Property","Name":"CFrame","tags":[],"Class":"BasePart"},{"ValueType":"bool","type":"Property","Name":"CanCollide","tags":[],"Class":"BasePart"},{"ValueType":"Color3","type":"Property","Name":"Color","tags":["deprecated"],"Class":"BasePart"},{"ValueType":"PhysicalProperties","type":"Property","Name":"CustomPhysicalProperties","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"Elasticity","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"Friction","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"FrontParamA","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"FrontParamB","tags":[],"Class":"BasePart"},{"ValueType":"SurfaceType","type":"Property","Name":"FrontSurface","tags":[],"Class":"BasePart"},{"ValueType":"InputType","type":"Property","Name":"FrontSurfaceInput","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"LeftParamA","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"LeftParamB","tags":[],"Class":"BasePart"},{"ValueType":"SurfaceType","type":"Property","Name":"LeftSurface","tags":[],"Class":"BasePart"},{"ValueType":"InputType","type":"Property","Name":"LeftSurfaceInput","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"LocalTransparencyModifier","tags":["hidden"],"Class":"BasePart"},{"ValueType":"bool","type":"Property","Name":"Locked","tags":[],"Class":"BasePart"},{"ValueType":"Material","type":"Property","Name":"Material","tags":[],"Class":"BasePart"},{"ValueType":"Vector3","type":"Property","Name":"Position","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"ReceiveAge","tags":["hidden","readonly"],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"Reflectance","tags":[],"Class":"BasePart"},{"ValueType":"int","type":"Property","Name":"ResizeIncrement","tags":["readonly"],"Class":"BasePart"},{"ValueType":"Faces","type":"Property","Name":"ResizeableFaces","tags":["readonly"],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"RightParamA","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"RightParamB","tags":[],"Class":"BasePart"},{"ValueType":"SurfaceType","type":"Property","Name":"RightSurface","tags":[],"Class":"BasePart"},{"ValueType":"InputType","type":"Property","Name":"RightSurfaceInput","tags":[],"Class":"BasePart"},{"ValueType":"Vector3","type":"Property","Name":"RotVelocity","tags":[],"Class":"BasePart"},{"ValueType":"Vector3","type":"Property","Name":"Rotation","tags":[],"Class":"BasePart"},{"ValueType":"Vector3","type":"Property","Name":"Size","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"SpecificGravity","tags":["readonly"],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"TopParamA","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"TopParamB","tags":[],"Class":"BasePart"},{"ValueType":"SurfaceType","type":"Property","Name":"TopSurface","tags":[],"Class":"BasePart"},{"ValueType":"InputType","type":"Property","Name":"TopSurfaceInput","tags":[],"Class":"BasePart"},{"ValueType":"float","type":"Property","Name":"Transparency","tags":[],"Class":"BasePart"},{"ValueType":"Vector3","type":"Property","Name":"Velocity","tags":[],"Class":"BasePart"},{"ValueType":"BrickColor","type":"Property","Name":"brickColor","tags":["deprecated"],"Class":"BasePart"},{"ReturnType":"void","Arguments":[],"Name":"BreakJoints","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"Tuple","Arguments":[],"Name":"CanSetNetworkOwnership","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"bool","Name":"recursive","Default":"false"}],"Name":"GetConnectedParts","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"float","Arguments":[],"Name":"GetMass","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetNetworkOwner","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"GetNetworkOwnershipAuto","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"CoordinateFrame","Arguments":[],"Name":"GetRenderCFrame","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetRootPart","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetTouchingParts","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsGrounded","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"MakeJoints","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"NormalId","Name":"normalId","Default":null},{"Type":"int","Name":"deltaAmount","Default":null}],"Name":"Resize","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"playerInstance","Default":"nil"}],"Name":"SetNetworkOwner","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SetNetworkOwnershipAuto","tags":[],"Class":"BasePart","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"breakJoints","tags":["deprecated"],"Class":"BasePart","type":"Function"},{"ReturnType":"float","Arguments":[],"Name":"getMass","tags":["deprecated"],"Class":"BasePart","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"makeJoints","tags":["deprecated"],"Class":"BasePart","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"NormalId","Name":"normalId","Default":null},{"Type":"int","Name":"deltaAmount","Default":null}],"Name":"resize","tags":["deprecated"],"Class":"BasePart","type":"Function"},{"Arguments":[{"Name":"part","Type":"Instance"}],"Name":"LocalSimulationTouched","tags":["deprecated"],"Class":"BasePart","type":"Event"},{"Arguments":[],"Name":"OutfitChanged","tags":["deprecated"],"Class":"BasePart","type":"Event"},{"Arguments":[{"Name":"otherPart","Type":"Instance"}],"Name":"StoppedTouching","tags":["deprecated"],"Class":"BasePart","type":"Event"},{"Arguments":[{"Name":"otherPart","Type":"Instance"}],"Name":"TouchEnded","tags":[],"Class":"BasePart","type":"Event"},{"Arguments":[{"Name":"otherPart","Type":"Instance"}],"Name":"Touched","tags":[],"Class":"BasePart","type":"Event"},{"Arguments":[{"Name":"otherPart","Type":"Instance"}],"Name":"touched","tags":["deprecated"],"Class":"BasePart","type":"Event"},{"Superclass":"BasePart","type":"Class","Name":"CornerWedgePart","tags":[]},{"Superclass":"BasePart","type":"Class","Name":"FormFactorPart","tags":[]},{"ValueType":"FormFactor","type":"Property","Name":"FormFactor","tags":["deprecated"],"Class":"FormFactorPart"},{"ValueType":"FormFactor","type":"Property","Name":"formFactor","tags":["deprecated","hidden"],"Class":"FormFactorPart"},{"Superclass":"FormFactorPart","type":"Class","Name":"Part","tags":[]},{"ValueType":"PartType","type":"Property","Name":"Shape","tags":[],"Class":"Part"},{"Superclass":"Part","type":"Class","Name":"FlagStand","tags":["deprecated"]},{"ValueType":"BrickColor","type":"Property","Name":"TeamColor","tags":[],"Class":"FlagStand"},{"Arguments":[{"Name":"player","Type":"Instance"}],"Name":"FlagCaptured","tags":[],"Class":"FlagStand","type":"Event"},{"Superclass":"Part","type":"Class","Name":"Platform","tags":[]},{"Superclass":"Part","type":"Class","Name":"Seat","tags":[]},{"ValueType":"bool","type":"Property","Name":"Disabled","tags":[],"Class":"Seat"},{"ValueType":"Object","type":"Property","Name":"Occupant","tags":["readonly"],"Class":"Seat"},{"Superclass":"Part","type":"Class","Name":"SkateboardPlatform","tags":["deprecated"]},{"ValueType":"Object","type":"Property","Name":"Controller","tags":["readonly"],"Class":"SkateboardPlatform"},{"ValueType":"Object","type":"Property","Name":"ControllingHumanoid","tags":["readonly"],"Class":"SkateboardPlatform"},{"ValueType":"int","type":"Property","Name":"Steer","tags":[],"Class":"SkateboardPlatform"},{"ValueType":"bool","type":"Property","Name":"StickyWheels","tags":[],"Class":"SkateboardPlatform"},{"ValueType":"int","type":"Property","Name":"Throttle","tags":[],"Class":"SkateboardPlatform"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"impulseWorld","Default":null}],"Name":"ApplySpecificImpulse","tags":[],"Class":"SkateboardPlatform","type":"Function"},{"Arguments":[{"Name":"humanoid","Type":"Instance"},{"Name":"skateboardController","Type":"Instance"}],"Name":"Equipped","tags":[],"Class":"SkateboardPlatform","type":"Event"},{"Arguments":[{"Name":"newState","Type":"MoveState"},{"Name":"oldState","Type":"MoveState"}],"Name":"MoveStateChanged","tags":[],"Class":"SkateboardPlatform","type":"Event"},{"Arguments":[{"Name":"humanoid","Type":"Instance"}],"Name":"Unequipped","tags":[],"Class":"SkateboardPlatform","type":"Event"},{"Arguments":[{"Name":"humanoid","Type":"Instance"},{"Name":"skateboardController","Type":"Instance"}],"Name":"equipped","tags":["deprecated"],"Class":"SkateboardPlatform","type":"Event"},{"Arguments":[{"Name":"humanoid","Type":"Instance"}],"Name":"unequipped","tags":["deprecated"],"Class":"SkateboardPlatform","type":"Event"},{"Superclass":"Part","type":"Class","Name":"SpawnLocation","tags":[]},{"ValueType":"bool","type":"Property","Name":"AllowTeamChangeOnTouch","tags":[],"Class":"SpawnLocation"},{"ValueType":"int","type":"Property","Name":"Duration","tags":[],"Class":"SpawnLocation"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"SpawnLocation"},{"ValueType":"bool","type":"Property","Name":"Neutral","tags":[],"Class":"SpawnLocation"},{"ValueType":"BrickColor","type":"Property","Name":"TeamColor","tags":[],"Class":"SpawnLocation"},{"Superclass":"FormFactorPart","type":"Class","Name":"WedgePart","tags":[]},{"Superclass":"BasePart","type":"Class","Name":"MeshPart","tags":[]},{"ValueType":"Material","type":"Property","Name":"Material","tags":["deprecated","readonly"],"Class":"MeshPart"},{"ValueType":"Content","type":"Property","Name":"TextureID","tags":[],"Class":"MeshPart"},{"Superclass":"BasePart","type":"Class","Name":"ParallelRampPart","tags":["deprecated","notbrowsable"]},{"Superclass":"BasePart","type":"Class","Name":"PartOperation","tags":[]},{"ValueType":"bool","type":"Property","Name":"UsePartColor","tags":[],"Class":"PartOperation"},{"Superclass":"PartOperation","type":"Class","Name":"NegateOperation","tags":[]},{"Superclass":"PartOperation","type":"Class","Name":"UnionOperation","tags":[]},{"Superclass":"BasePart","type":"Class","Name":"PrismPart","tags":["deprecated","notbrowsable"]},{"ValueType":"PrismSides","type":"Property","Name":"Sides","tags":[],"Class":"PrismPart"},{"Superclass":"BasePart","type":"Class","Name":"PyramidPart","tags":["deprecated","notbrowsable"]},{"ValueType":"PyramidSides","type":"Property","Name":"Sides","tags":[],"Class":"PyramidPart"},{"Superclass":"BasePart","type":"Class","Name":"RightAngleRampPart","tags":["deprecated","notbrowsable"]},{"Superclass":"BasePart","type":"Class","Name":"Terrain","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"IsSmooth","tags":["readonly"],"Class":"Terrain"},{"ValueType":"Region3int16","type":"Property","Name":"MaxExtents","tags":["readonly"],"Class":"Terrain"},{"ValueType":"Color3","type":"Property","Name":"WaterColor","tags":[],"Class":"Terrain"},{"ValueType":"float","type":"Property","Name":"WaterTransparency","tags":[],"Class":"Terrain"},{"ValueType":"float","type":"Property","Name":"WaterWaveSize","tags":[],"Class":"Terrain"},{"ValueType":"float","type":"Property","Name":"WaterWaveSpeed","tags":[],"Class":"Terrain"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null}],"Name":"AutowedgeCell","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Region3int16","Name":"region","Default":null}],"Name":"AutowedgeCells","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Vector3","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null}],"Name":"CellCenterToWorld","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Vector3","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null}],"Name":"CellCornerToWorld","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Clear","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ConvertToSmooth","tags":["PluginSecurity"],"Class":"Terrain","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Region3int16","Name":"region","Default":null}],"Name":"CopyRegion","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"int","Arguments":[],"Name":"CountCells","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"center","Default":null},{"Type":"float","Name":"radius","Default":null},{"Type":"Material","Name":"material","Default":null}],"Name":"FillBall","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"CoordinateFrame","Name":"cframe","Default":null},{"Type":"Vector3","Name":"size","Default":null},{"Type":"Material","Name":"material","Default":null}],"Name":"FillBlock","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"float","Name":"resolution","Default":null},{"Type":"Material","Name":"material","Default":null}],"Name":"FillRegion","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null}],"Name":"GetCell","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null}],"Name":"GetWaterCell","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"region","Default":null},{"Type":"Vector3int16","Name":"corner","Default":null},{"Type":"bool","Name":"pasteEmptyCells","Default":null}],"Name":"PasteRegion","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"float","Name":"resolution","Default":null}],"Name":"ReadVoxels","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null},{"Type":"CellMaterial","Name":"material","Default":null},{"Type":"CellBlock","Name":"block","Default":null},{"Type":"CellOrientation","Name":"orientation","Default":null}],"Name":"SetCell","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Region3int16","Name":"region","Default":null},{"Type":"CellMaterial","Name":"material","Default":null},{"Type":"CellBlock","Name":"block","Default":null},{"Type":"CellOrientation","Name":"orientation","Default":null}],"Name":"SetCells","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"x","Default":null},{"Type":"int","Name":"y","Default":null},{"Type":"int","Name":"z","Default":null},{"Type":"WaterForce","Name":"force","Default":null},{"Type":"WaterDirection","Name":"direction","Default":null}],"Name":"SetWaterCell","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Vector3","Arguments":[{"Type":"Vector3","Name":"position","Default":null}],"Name":"WorldToCell","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Vector3","Arguments":[{"Type":"Vector3","Name":"position","Default":null}],"Name":"WorldToCellPreferEmpty","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"Vector3","Arguments":[{"Type":"Vector3","Name":"position","Default":null}],"Name":"WorldToCellPreferSolid","tags":[],"Class":"Terrain","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"float","Name":"resolution","Default":null},{"Type":"Array","Name":"materials","Default":null},{"Type":"Array","Name":"occupancy","Default":null}],"Name":"WriteVoxels","tags":[],"Class":"Terrain","type":"Function"},{"Superclass":"BasePart","type":"Class","Name":"TrussPart","tags":[]},{"ValueType":"Style","type":"Property","Name":"Style","tags":[],"Class":"TrussPart"},{"Superclass":"BasePart","type":"Class","Name":"VehicleSeat","tags":[]},{"ValueType":"int","type":"Property","Name":"AreHingesDetected","tags":["readonly"],"Class":"VehicleSeat"},{"ValueType":"bool","type":"Property","Name":"Disabled","tags":[],"Class":"VehicleSeat"},{"ValueType":"bool","type":"Property","Name":"HeadsUpDisplay","tags":[],"Class":"VehicleSeat"},{"ValueType":"float","type":"Property","Name":"MaxSpeed","tags":[],"Class":"VehicleSeat"},{"ValueType":"Object","type":"Property","Name":"Occupant","tags":["readonly"],"Class":"VehicleSeat"},{"ValueType":"int","type":"Property","Name":"Steer","tags":[],"Class":"VehicleSeat"},{"ValueType":"int","type":"Property","Name":"Throttle","tags":[],"Class":"VehicleSeat"},{"ValueType":"float","type":"Property","Name":"Torque","tags":[],"Class":"VehicleSeat"},{"ValueType":"float","type":"Property","Name":"TurnSpeed","tags":[],"Class":"VehicleSeat"},{"Superclass":"PVInstance","type":"Class","Name":"Model","tags":[]},{"ValueType":"Object","type":"Property","Name":"PrimaryPart","tags":[],"Class":"Model"},{"ReturnType":"void","Arguments":[],"Name":"BreakJoints","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetExtentsSize","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"CoordinateFrame","Arguments":[],"Name":"GetModelCFrame","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"Vector3","Arguments":[],"Name":"GetModelSize","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"CoordinateFrame","Arguments":[],"Name":"GetPrimaryPartCFrame","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"MakeJoints","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"position","Default":null}],"Name":"MoveTo","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ResetOrientationToIdentity","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SetIdentityOrientation","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"CoordinateFrame","Name":"cframe","Default":null}],"Name":"SetPrimaryPartCFrame","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"delta","Default":null}],"Name":"TranslateBy","tags":[],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"breakJoints","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"makeJoints","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"location","Default":null}],"Name":"move","tags":["deprecated"],"Class":"Model","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"location","Default":null}],"Name":"moveTo","tags":["deprecated"],"Class":"Model","type":"Function"},{"Superclass":"Model","type":"Class","Name":"RootInstance","tags":["notbrowsable"]},{"Superclass":"RootInstance","type":"Class","Name":"Workspace","tags":[]},{"ValueType":"bool","type":"Property","Name":"AllowThirdPartySales","tags":[],"Class":"Workspace"},{"ValueType":"Object","type":"Property","Name":"CurrentCamera","tags":[],"Class":"Workspace"},{"ValueType":"double","type":"Property","Name":"DistributedGameTime","tags":[],"Class":"Workspace"},{"ValueType":"bool","type":"Property","Name":"FilteringEnabled","tags":[],"Class":"Workspace"},{"ValueType":"float","type":"Property","Name":"Gravity","tags":[],"Class":"Workspace"},{"ValueType":"bool","type":"Property","Name":"StreamingEnabled","tags":[],"Class":"Workspace"},{"ValueType":"Object","type":"Property","Name":"Terrain","tags":["readonly"],"Class":"Workspace"},{"ReturnType":"void","Arguments":[{"Type":"Objects","Name":"objects","Default":null}],"Name":"BreakJoints","tags":["PluginSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"ExperimentalSolverIsEnabled","tags":["LocalUserSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"Ray","Name":"ray","Default":null},{"Type":"Instance","Name":"ignoreDescendentsInstance","Default":"nil"},{"Type":"bool","Name":"terrainCellsAreCubes","Default":"false"},{"Type":"bool","Name":"ignoreWater","Default":"false"}],"Name":"FindPartOnRay","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"Ray","Name":"ray","Default":null},{"Type":"Objects","Name":"ignoreDescendentsTable","Default":null},{"Type":"bool","Name":"terrainCellsAreCubes","Default":"false"},{"Type":"bool","Name":"ignoreWater","Default":"false"}],"Name":"FindPartOnRayWithIgnoreList","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"Instance","Name":"ignoreDescendentsInstance","Default":"nil"},{"Type":"int","Name":"maxParts","Default":"20"}],"Name":"FindPartsInRegion3","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"Objects","Name":"ignoreDescendentsTable","Default":null},{"Type":"int","Name":"maxParts","Default":"20"}],"Name":"FindPartsInRegion3WithIgnoreList","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"int","Arguments":[],"Name":"GetNumAwakeParts","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"GetPhysicsAnalyzerBreakOnIssue","tags":["PluginSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"int","Name":"index","Default":null}],"Name":"GetPhysicsAnalyzerIssue","tags":["PluginSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"int","Arguments":[],"Name":"GetPhysicsThrottling","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetRealPhysicsFPS","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"Instance","Name":"ignoreDescendentsInstance","Default":"nil"}],"Name":"IsRegion3Empty","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"Objects","Name":"ignoreDescendentsTable","Default":null}],"Name":"IsRegion3EmptyWithIgnoreList","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Objects","Name":"objects","Default":null},{"Type":"JointCreationMode","Name":"jointType","Default":null}],"Name":"JoinToOutsiders","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Objects","Name":"objects","Default":null}],"Name":"MakeJoints","tags":["PluginSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"PGSIsEnabled","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enable","Default":null}],"Name":"SetPhysicsAnalyzerBreakOnIssue","tags":["PluginSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SetPhysicsThrottleEnabled","tags":["LocalUserSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Objects","Name":"objects","Default":null}],"Name":"UnjoinFromOutsiders","tags":[],"Class":"Workspace","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ZoomToExtents","tags":["PluginSecurity"],"Class":"Workspace","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"Ray","Name":"ray","Default":null},{"Type":"Instance","Name":"ignoreDescendentsInstance","Default":"nil"},{"Type":"bool","Name":"terrainCellsAreCubes","Default":"false"},{"Type":"bool","Name":"ignoreWater","Default":"false"}],"Name":"findPartOnRay","tags":["deprecated"],"Class":"Workspace","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"Region3","Name":"region","Default":null},{"Type":"Instance","Name":"ignoreDescendentsInstance","Default":"nil"},{"Type":"int","Name":"maxParts","Default":"20"}],"Name":"findPartsInRegion3","tags":["deprecated"],"Class":"Workspace","type":"Function"},{"Arguments":[{"Name":"count","Type":"int"}],"Name":"PhysicsAnalyzerIssuesFound","tags":["PluginSecurity"],"Class":"Workspace","type":"Event"},{"Superclass":"Model","type":"Class","Name":"Status","tags":["deprecated","notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"Pages","tags":[]},{"ValueType":"bool","type":"Property","Name":"IsFinished","tags":["readonly"],"Class":"Pages"},{"ReturnType":"Array","Arguments":[],"Name":"GetCurrentPage","tags":[],"Class":"Pages","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"AdvanceToNextPageAsync","tags":[],"Class":"Pages","type":"YieldFunction"},{"Superclass":"Pages","type":"Class","Name":"DataStorePages","tags":[]},{"Superclass":"Pages","type":"Class","Name":"FriendPages","tags":[]},{"Superclass":"Pages","type":"Class","Name":"StandardPages","tags":[]},{"Superclass":"Instance","type":"Class","Name":"PartOperationAsset","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ParticleEmitter","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"Acceleration","tags":[],"Class":"ParticleEmitter"},{"ValueType":"ColorSequence","type":"Property","Name":"Color","tags":[],"Class":"ParticleEmitter"},{"ValueType":"float","type":"Property","Name":"Drag","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NormalId","type":"Property","Name":"EmissionDirection","tags":[],"Class":"ParticleEmitter"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NumberRange","type":"Property","Name":"Lifetime","tags":[],"Class":"ParticleEmitter"},{"ValueType":"float","type":"Property","Name":"LightEmission","tags":[],"Class":"ParticleEmitter"},{"ValueType":"bool","type":"Property","Name":"LockedToPart","tags":[],"Class":"ParticleEmitter"},{"ValueType":"float","type":"Property","Name":"Rate","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NumberRange","type":"Property","Name":"RotSpeed","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NumberRange","type":"Property","Name":"Rotation","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NumberSequence","type":"Property","Name":"Size","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NumberRange","type":"Property","Name":"Speed","tags":[],"Class":"ParticleEmitter"},{"ValueType":"Content","type":"Property","Name":"Texture","tags":[],"Class":"ParticleEmitter"},{"ValueType":"NumberSequence","type":"Property","Name":"Transparency","tags":[],"Class":"ParticleEmitter"},{"ValueType":"float","type":"Property","Name":"VelocityInheritance","tags":[],"Class":"ParticleEmitter"},{"ValueType":"float","type":"Property","Name":"VelocitySpread","tags":[],"Class":"ParticleEmitter"},{"ValueType":"float","type":"Property","Name":"ZOffset","tags":[],"Class":"ParticleEmitter"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"particleCount","Default":"16"}],"Name":"Emit","tags":[],"Class":"ParticleEmitter","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Path","tags":[]},{"ValueType":"PathStatus","type":"Property","Name":"Status","tags":["readonly"],"Class":"Path"},{"ReturnType":"Array","Arguments":[],"Name":"GetPointCoordinates","tags":[],"Class":"Path","type":"Function"},{"ReturnType":"int","Arguments":[{"Type":"int","Name":"start","Default":null}],"Name":"CheckOcclusionAsync","tags":[],"Class":"Path","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"PathfindingService","tags":["notCreatable"]},{"ValueType":"float","type":"Property","Name":"EmptyCutoff","tags":[],"Class":"PathfindingService"},{"ReturnType":"Instance","Arguments":[{"Type":"Vector3","Name":"start","Default":null},{"Type":"Vector3","Name":"finish","Default":null},{"Type":"float","Name":"maxDistance","Default":null}],"Name":"ComputeRawPathAsync","tags":[],"Class":"PathfindingService","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"Vector3","Name":"start","Default":null},{"Type":"Vector3","Name":"finish","Default":null},{"Type":"float","Name":"maxDistance","Default":null}],"Name":"ComputeSmoothPathAsync","tags":[],"Class":"PathfindingService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"PersonalServerService","tags":[]},{"ValueType":"string","type":"Property","Name":"RoleSets","tags":["RobloxScriptSecurity"],"Class":"PersonalServerService"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null}],"Name":"Demote","tags":["RobloxScriptSecurity"],"Class":"PersonalServerService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null}],"Name":"Promote","tags":["RobloxScriptSecurity"],"Class":"PersonalServerService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"personalServerGetRankUrl","Default":null}],"Name":"SetPersonalServerGetRankUrl","tags":["LocalUserSecurity"],"Class":"PersonalServerService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"personalServerRoleSetsUrl","Default":null}],"Name":"SetPersonalServerRoleSetsUrl","tags":["LocalUserSecurity"],"Class":"PersonalServerService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"personalServerSetRankUrl","Default":null}],"Name":"SetPersonalServerSetRankUrl","tags":["LocalUserSecurity"],"Class":"PersonalServerService","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"placeId","Default":null}],"Name":"GetRoleSets","tags":["RobloxScriptSecurity"],"Class":"PersonalServerService","type":"YieldFunction"},{"Superclass":"Instance","type":"Class","Name":"PhysicsPacketCache","tags":[]},{"Superclass":"Instance","type":"Class","Name":"PhysicsService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"PhysicsSettings","tags":[]},{"ValueType":"bool","type":"Property","Name":"AllowSleep","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreAnchorsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreAssembliesShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreAttachmentsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreAwakePartsHighlighted","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreBodyTypesShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreConstraintsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreContactPointsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreJointCoordinatesShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreMechanismsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreModelCoordsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreOwnersShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"ArePartCoordsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreRegionsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreUnalignedPartsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"AreWorldCoordsShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"IsReceiveAgeShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"IsTreeShown","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"ParallelPhysics","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"PhysicsAnalyzerEnabled","tags":["PluginSecurity","readonly"],"Class":"PhysicsSettings"},{"ValueType":"EnviromentalPhysicsThrottle","type":"Property","Name":"PhysicsEnvironmentalThrottle","tags":[],"Class":"PhysicsSettings"},{"ValueType":"bool","type":"Property","Name":"ShowDecompositionGeometry","tags":[],"Class":"PhysicsSettings"},{"ValueType":"double","type":"Property","Name":"ThrottleAdjustTime","tags":[],"Class":"PhysicsSettings"},{"Superclass":"Instance","type":"Class","Name":"Player","tags":[]},{"ValueType":"int","type":"Property","Name":"AccountAge","tags":["readonly"],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"AppearanceDidLoad","tags":["RobloxScriptSecurity","deprecated","readonly"],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"AutoJumpEnabled","tags":[],"Class":"Player"},{"ValueType":"float","type":"Property","Name":"CameraMaxZoomDistance","tags":[],"Class":"Player"},{"ValueType":"float","type":"Property","Name":"CameraMinZoomDistance","tags":[],"Class":"Player"},{"ValueType":"CameraMode","type":"Property","Name":"CameraMode","tags":[],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"CanLoadCharacterAppearance","tags":[],"Class":"Player"},{"ValueType":"Object","type":"Property","Name":"Character","tags":[],"Class":"Player"},{"ValueType":"string","type":"Property","Name":"CharacterAppearance","tags":["notbrowsable"],"Class":"Player"},{"ValueType":"ChatMode","type":"Property","Name":"ChatMode","tags":["RobloxScriptSecurity","readonly"],"Class":"Player"},{"ValueType":"int","type":"Property","Name":"DataComplexity","tags":["readonly"],"Class":"Player"},{"ValueType":"int","type":"Property","Name":"DataComplexityLimit","tags":["LocalUserSecurity"],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"DataReady","tags":["readonly"],"Class":"Player"},{"ValueType":"DevCameraOcclusionMode","type":"Property","Name":"DevCameraOcclusionMode","tags":[],"Class":"Player"},{"ValueType":"DevComputerCameraMovementMode","type":"Property","Name":"DevComputerCameraMode","tags":[],"Class":"Player"},{"ValueType":"DevComputerMovementMode","type":"Property","Name":"DevComputerMovementMode","tags":[],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"DevEnableMouseLock","tags":[],"Class":"Player"},{"ValueType":"DevTouchCameraMovementMode","type":"Property","Name":"DevTouchCameraMode","tags":[],"Class":"Player"},{"ValueType":"DevTouchMovementMode","type":"Property","Name":"DevTouchMovementMode","tags":[],"Class":"Player"},{"ValueType":"int","type":"Property","Name":"FollowUserId","tags":["readonly"],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"Guest","tags":["RobloxScriptSecurity","readonly"],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"HasBuildTools","tags":["RobloxScriptSecurity"],"Class":"Player"},{"ValueType":"float","type":"Property","Name":"HealthDisplayDistance","tags":[],"Class":"Player"},{"ValueType":"float","type":"Property","Name":"MaximumSimulationRadius","tags":["LocalUserSecurity"],"Class":"Player"},{"ValueType":"MembershipType","type":"Property","Name":"MembershipType","tags":["readonly"],"Class":"Player"},{"ValueType":"float","type":"Property","Name":"NameDisplayDistance","tags":[],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"Neutral","tags":[],"Class":"Player"},{"ValueType":"int","type":"Property","Name":"PersonalServerRank","tags":["RobloxScriptSecurity"],"Class":"Player"},{"ValueType":"Object","type":"Property","Name":"RespawnLocation","tags":[],"Class":"Player"},{"ValueType":"float","type":"Property","Name":"SimulationRadius","tags":["LocalUserSecurity"],"Class":"Player"},{"ValueType":"BrickColor","type":"Property","Name":"TeamColor","tags":[],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"Teleported","tags":["RobloxScriptSecurity","hidden","readonly"],"Class":"Player"},{"ValueType":"bool","type":"Property","Name":"TeleportedIn","tags":["RobloxScriptSecurity"],"Class":"Player"},{"ValueType":"int","type":"Property","Name":"UserId","tags":[],"Class":"Player"},{"ValueType":"string","type":"Property","Name":"VRDevice","tags":["RobloxScriptSecurity"],"Class":"Player"},{"ValueType":"int","type":"Property","Name":"userId","tags":["deprecated"],"Class":"Player"},{"ReturnType":"void","Arguments":[],"Name":"ClearCharacterAppearance","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"float","Arguments":[{"Type":"Vector3","Name":"point","Default":null}],"Name":"DistanceFromCharacter","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"FriendStatus","Arguments":[{"Type":"Instance","Name":"player","Default":null}],"Name":"GetFriendStatus","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetGameSessionID","tags":["RobloxSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetMouse","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"GetUnder13","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"HasAppearanceLoaded","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"JumpCharacter","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":""}],"Name":"Kick","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"LoadBoolean","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"inGame","Default":"true"}],"Name":"LoadCharacter","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"assetInstance","Default":null}],"Name":"LoadCharacterAppearance","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"LoadData","tags":["LocalUserSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"LoadInstance","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"double","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"LoadNumber","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"LoadString","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector3","Name":"walkDirection","Default":null},{"Type":"bool","Name":"relativeToCamera","Default":"false"}],"Name":"Move","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"walkDirection","Default":null},{"Type":"float","Name":"maxWalkDelta","Default":null}],"Name":"MoveCharacter","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"RemoveCharacter","tags":["LocalUserSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null}],"Name":"RequestFriendship","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null}],"Name":"RevokeFriendship","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"bool","Name":"value","Default":null}],"Name":"SaveBoolean","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SaveData","tags":["LocalUserSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"Instance","Name":"value","Default":null}],"Name":"SaveInstance","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SaveLeaderboardData","tags":["LocalUserSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"double","Name":"value","Default":null}],"Name":"SaveNumber","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"string","Name":"value","Default":null}],"Name":"SaveString","tags":[],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"accountAge","Default":null}],"Name":"SetAccountAge","tags":["PluginSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"MembershipType","Name":"membershipType","Default":null}],"Name":"SetMembershipType","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SetSuperSafeChat","tags":["PluginSecurity"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"value","Default":null}],"Name":"SetUnder13","tags":["RobloxSecurity","deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"loadBoolean","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"loadInstance","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"double","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"loadNumber","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"loadString","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"bool","Name":"value","Default":null}],"Name":"saveBoolean","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"Instance","Name":"value","Default":null}],"Name":"saveInstance","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"double","Name":"value","Default":null}],"Name":"saveNumber","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"string","Name":"value","Default":null}],"Name":"saveString","tags":["deprecated"],"Class":"Player","type":"Function"},{"ReturnType":"Array","Arguments":[{"Type":"int","Name":"maxFriends","Default":"200"}],"Name":"GetFriendsOnline","tags":[],"Class":"Player","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"int","Name":"groupId","Default":null}],"Name":"GetRankInGroup","tags":[],"Class":"Player","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"groupId","Default":null}],"Name":"GetRoleInGroup","tags":[],"Class":"Player","type":"YieldFunction"},{"ReturnType":"string","Arguments":[],"Name":"GetWebPersonalServerRank","tags":["LocalUserSecurity","backend"],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"IsBestFriendsWith","tags":["deprecated"],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"IsFriendsWith","tags":[],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"groupId","Default":null}],"Name":"IsInGroup","tags":[],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"rank","Default":null}],"Name":"SetWebPersonalServerRank","tags":["WritePlayerSecurity"],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[],"Name":"WaitForDataReady","tags":[],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"isFriendsWith","tags":["deprecated"],"Class":"Player","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[],"Name":"waitForDataReady","tags":["deprecated"],"Class":"Player","type":"YieldFunction"},{"Arguments":[{"Name":"character","Type":"Instance"}],"Name":"CharacterAdded","tags":[],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"character","Type":"Instance"}],"Name":"CharacterAppearanceLoaded","tags":[],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"character","Type":"Instance"}],"Name":"CharacterRemoving","tags":[],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"message","Type":"string"},{"Name":"recipient","Type":"Instance"}],"Name":"Chatted","tags":[],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"friendStatus","Type":"FriendStatus"}],"Name":"FriendStatusChanged","tags":["RobloxScriptSecurity"],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"time","Type":"double"}],"Name":"Idled","tags":[],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"teleportState","Type":"TeleportState"},{"Name":"placeId","Type":"int"},{"Name":"spawnName","Type":"string"}],"Name":"OnTeleport","tags":[],"Class":"Player","type":"Event"},{"Arguments":[{"Name":"radius","Type":"float"}],"Name":"SimulationRadiusChanged","tags":["LocalUserSecurity"],"Class":"Player","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"PlayerScripts","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"Players","tags":[]},{"ValueType":"bool","type":"Property","Name":"BubbleChat","tags":["readonly"],"Class":"Players"},{"ValueType":"bool","type":"Property","Name":"CharacterAutoLoads","tags":[],"Class":"Players"},{"ValueType":"bool","type":"Property","Name":"ClassicChat","tags":["readonly"],"Class":"Players"},{"ValueType":"Object","type":"Property","Name":"LocalPlayer","tags":["readonly"],"Class":"Players"},{"ValueType":"int","type":"Property","Name":"MaxPlayers","tags":["readonly"],"Class":"Players"},{"ValueType":"int","type":"Property","Name":"MaxPlayersInternal","tags":["LocalUserSecurity"],"Class":"Players"},{"ValueType":"int","type":"Property","Name":"NumPlayers","tags":["readonly"],"Class":"Players"},{"ValueType":"int","type":"Property","Name":"PreferredPlayers","tags":["readonly"],"Class":"Players"},{"ValueType":"int","type":"Property","Name":"PreferredPlayersInternal","tags":["LocalUserSecurity"],"Class":"Players"},{"ValueType":"Object","type":"Property","Name":"localPlayer","tags":["deprecated","hidden","readonly"],"Class":"Players"},{"ValueType":"int","type":"Property","Name":"numPlayers","tags":["deprecated","hidden","readonly"],"Class":"Players"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"AddLeaderboardKey","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":null}],"Name":"Chat","tags":["PluginSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"bool","Name":"isTeleport","Default":"false"}],"Name":"CreateLocalPlayer","tags":["PluginSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userID","Default":null}],"Name":"GetPlayerByID","tags":["LocalUserSecurity","deprecated"],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetPlayerById","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetPlayerByUserId","tags":[],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"character","Default":null}],"Name":"GetPlayerFromCharacter","tags":[],"Class":"Players","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetPlayers","tags":[],"Class":"Players","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"GetUseCoreScriptHealthBar","tags":["RobloxScriptSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"string","Name":"reason","Default":null},{"Type":"string","Name":"optionalMessage","Default":null}],"Name":"ReportAbuse","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetAbuseReportUrl","tags":["RobloxSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetBuildUserPermissionsUrl","tags":["RobloxSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetChatFilterUrl","tags":["RobloxSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"ChatStyle","Name":"style","Default":"Classic"}],"Name":"SetChatStyle","tags":["PluginSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetLoadDataUrl","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetSaveDataUrl","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetSaveLeaderboardDataUrl","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetSysStatsUrl","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"urlId","Default":null}],"Name":"SetSysStatsUrlId","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":null}],"Name":"TeamChat","tags":["PluginSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":null},{"Type":"Instance","Name":"player","Default":null}],"Name":"WhisperChat","tags":["LocalUserSecurity"],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"character","Default":null}],"Name":"getPlayerFromCharacter","tags":["deprecated"],"Class":"Players","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"getPlayers","tags":["deprecated"],"Class":"Players","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Instance","Name":"character","Default":null}],"Name":"playerFromCharacter","tags":["deprecated"],"Class":"Players","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"players","tags":["deprecated"],"Class":"Players","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"blockerUserId","Default":null},{"Type":"int","Name":"blockeeUserId","Default":null}],"Name":"BlockUser","tags":["RobloxScriptSecurity"],"Class":"Players","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetCharacterAppearanceAsync","tags":[],"Class":"Players","type":"YieldFunction"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetFriendsAsync","tags":[],"Class":"Players","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetNameFromUserIdAsync","tags":[],"Class":"Players","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"string","Name":"userName","Default":null}],"Name":"GetUserIdFromNameAsync","tags":[],"Class":"Players","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"exblockerUserId","Default":null},{"Type":"int","Name":"exblockeeUserId","Default":null}],"Name":"UnblockUser","tags":["RobloxScriptSecurity"],"Class":"Players","type":"YieldFunction"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"player","Type":"Instance"},{"Name":"friendRequestEvent","Type":"FriendRequestEvent"}],"Name":"FriendRequestEvent","tags":["RobloxScriptSecurity"],"Class":"Players","type":"Event"},{"Arguments":[{"Name":"message","Type":"string"}],"Name":"GameAnnounce","tags":["RobloxScriptSecurity"],"Class":"Players","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"}],"Name":"PlayerAdded","tags":[],"Class":"Players","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"}],"Name":"PlayerAddedEarly","tags":["LocalUserSecurity"],"Class":"Players","type":"Event"},{"Arguments":[{"Name":"chatType","Type":"PlayerChatType"},{"Name":"player","Type":"Instance"},{"Name":"message","Type":"string"},{"Name":"targetPlayer","Type":"Instance"}],"Name":"PlayerChatted","tags":["LocalUserSecurity"],"Class":"Players","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"}],"Name":"PlayerRemoving","tags":[],"Class":"Players","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"}],"Name":"PlayerRemovingLate","tags":["LocalUserSecurity"],"Class":"Players","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Plugin","tags":[]},{"ValueType":"bool","type":"Property","Name":"CollisionEnabled","tags":["readonly"],"Class":"Plugin"},{"ValueType":"float","type":"Property","Name":"GridSize","tags":["readonly"],"Class":"Plugin"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"exclusiveMouse","Default":null}],"Name":"Activate","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"name","Default":null}],"Name":"CreateToolbar","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"JointCreationMode","Arguments":[],"Name":"GetJoinMode","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetMouse","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"Variant","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"GetSetting","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"int","Arguments":[],"Name":"GetStudioUserId","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"Objects","Name":"objects","Default":null}],"Name":"Negate","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"script","Default":null},{"Type":"int","Name":"lineNumber","Default":"0"}],"Name":"OpenScript","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"OpenWikiPage","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SaveSelectedToRoblox","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"Objects","Arguments":[{"Type":"Objects","Name":"objects","Default":null}],"Name":"Separate","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null},{"Type":"Variant","Name":"value","Default":null}],"Name":"SetSetting","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"Objects","Name":"objects","Default":null}],"Name":"Union","tags":["PluginSecurity"],"Class":"Plugin","type":"Function"},{"ReturnType":"int","Arguments":[{"Type":"string","Name":"assetType","Default":null}],"Name":"PromptForExistingAssetId","tags":["PluginSecurity"],"Class":"Plugin","type":"YieldFunction"},{"Arguments":[],"Name":"Deactivation","tags":["PluginSecurity"],"Class":"Plugin","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"PluginManager","tags":[]},{"ReturnType":"Instance","Arguments":[],"Name":"CreatePlugin","tags":["PluginSecurity"],"Class":"PluginManager","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"filePath","Default":""}],"Name":"ExportPlace","tags":["PluginSecurity"],"Class":"PluginManager","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"filePath","Default":""}],"Name":"ExportSelection","tags":["PluginSecurity"],"Class":"PluginManager","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"PointsService","tags":["notCreatable"]},{"ReturnType":"int","Arguments":[],"Name":"GetAwardablePoints","tags":["deprecated"],"Class":"PointsService","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"int","Name":"userId","Default":null},{"Type":"int","Name":"amount","Default":null}],"Name":"AwardPoints","tags":[],"Class":"PointsService","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetGamePointBalance","tags":[],"Class":"PointsService","type":"YieldFunction"},{"ReturnType":"int","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetPointBalance","tags":["deprecated"],"Class":"PointsService","type":"YieldFunction"},{"Arguments":[{"Name":"userId","Type":"int"},{"Name":"pointsAwarded","Type":"int"},{"Name":"userBalanceInGame","Type":"int"},{"Name":"userTotalBalance","Type":"int"}],"Name":"PointsAwarded","tags":[],"Class":"PointsService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Pose","tags":[]},{"ValueType":"CoordinateFrame","type":"Property","Name":"CFrame","tags":[],"Class":"Pose"},{"ValueType":"PoseEasingDirection","type":"Property","Name":"EasingDirection","tags":[],"Class":"Pose"},{"ValueType":"PoseEasingStyle","type":"Property","Name":"EasingStyle","tags":[],"Class":"Pose"},{"ValueType":"float","type":"Property","Name":"MaskWeight","tags":[],"Class":"Pose"},{"ValueType":"float","type":"Property","Name":"Weight","tags":[],"Class":"Pose"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"pose","Default":null}],"Name":"AddSubPose","tags":[],"Class":"Pose","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetSubPoses","tags":[],"Class":"Pose","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"pose","Default":null}],"Name":"RemoveSubPose","tags":[],"Class":"Pose","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"PostEffect","tags":[]},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"PostEffect"},{"Superclass":"PostEffect","type":"Class","Name":"BloomEffect","tags":[]},{"ValueType":"float","type":"Property","Name":"Intensity","tags":[],"Class":"BloomEffect"},{"ValueType":"float","type":"Property","Name":"Size","tags":[],"Class":"BloomEffect"},{"ValueType":"float","type":"Property","Name":"Threshold","tags":[],"Class":"BloomEffect"},{"Superclass":"PostEffect","type":"Class","Name":"BlurEffect","tags":[]},{"ValueType":"float","type":"Property","Name":"Size","tags":[],"Class":"BlurEffect"},{"Superclass":"PostEffect","type":"Class","Name":"ColorCorrectionEffect","tags":[]},{"ValueType":"float","type":"Property","Name":"Brightness","tags":[],"Class":"ColorCorrectionEffect"},{"ValueType":"float","type":"Property","Name":"Contrast","tags":[],"Class":"ColorCorrectionEffect"},{"ValueType":"float","type":"Property","Name":"Saturation","tags":[],"Class":"ColorCorrectionEffect"},{"ValueType":"Color3","type":"Property","Name":"TintColor","tags":[],"Class":"ColorCorrectionEffect"},{"Superclass":"PostEffect","type":"Class","Name":"SunRaysEffect","tags":[]},{"ValueType":"float","type":"Property","Name":"Intensity","tags":[],"Class":"SunRaysEffect"},{"ValueType":"float","type":"Property","Name":"Spread","tags":[],"Class":"SunRaysEffect"},{"Superclass":"Instance","type":"Class","Name":"RayValue","tags":[]},{"ValueType":"Ray","type":"Property","Name":"Value","tags":[],"Class":"RayValue"},{"Arguments":[{"Name":"value","Type":"Ray"}],"Name":"Changed","tags":[],"Class":"RayValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"Ray"}],"Name":"changed","tags":["deprecated"],"Class":"RayValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadata","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataCallbacks","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataClasses","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataEnums","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataEvents","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataFunctions","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataItem","tags":[]},{"ValueType":"bool","type":"Property","Name":"Browsable","tags":[],"Class":"ReflectionMetadataItem"},{"ValueType":"bool","type":"Property","Name":"Deprecated","tags":[],"Class":"ReflectionMetadataItem"},{"ValueType":"bool","type":"Property","Name":"IsBackend","tags":[],"Class":"ReflectionMetadataItem"},{"ValueType":"double","type":"Property","Name":"UIMaximum","tags":[],"Class":"ReflectionMetadataItem"},{"ValueType":"double","type":"Property","Name":"UIMinimum","tags":[],"Class":"ReflectionMetadataItem"},{"ValueType":"string","type":"Property","Name":"summary","tags":[],"Class":"ReflectionMetadataItem"},{"Superclass":"ReflectionMetadataItem","type":"Class","Name":"ReflectionMetadataClass","tags":[]},{"ValueType":"int","type":"Property","Name":"ExplorerImageIndex","tags":[],"Class":"ReflectionMetadataClass"},{"ValueType":"int","type":"Property","Name":"ExplorerOrder","tags":[],"Class":"ReflectionMetadataClass"},{"ValueType":"bool","type":"Property","Name":"Insertable","tags":[],"Class":"ReflectionMetadataClass"},{"ValueType":"string","type":"Property","Name":"PreferredParent","tags":[],"Class":"ReflectionMetadataClass"},{"Superclass":"ReflectionMetadataItem","type":"Class","Name":"ReflectionMetadataEnum","tags":[]},{"Superclass":"ReflectionMetadataItem","type":"Class","Name":"ReflectionMetadataEnumItem","tags":[]},{"Superclass":"ReflectionMetadataItem","type":"Class","Name":"ReflectionMetadataMember","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataProperties","tags":[]},{"Superclass":"Instance","type":"Class","Name":"ReflectionMetadataYieldFunctions","tags":[]},{"Superclass":"Instance","type":"Class","Name":"RemoteEvent","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"FireAllClients","tags":[],"Class":"RemoteEvent","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"FireClient","tags":[],"Class":"RemoteEvent","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"FireServer","tags":[],"Class":"RemoteEvent","type":"Function"},{"Arguments":[{"Name":"arguments","Type":"Tuple"}],"Name":"OnClientEvent","tags":[],"Class":"RemoteEvent","type":"Event"},{"Arguments":[{"Name":"player","Type":"Instance"},{"Name":"arguments","Type":"Tuple"}],"Name":"OnServerEvent","tags":[],"Class":"RemoteEvent","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"RemoteFunction","tags":[]},{"ReturnType":"Tuple","Arguments":[{"Type":"Instance","Name":"player","Default":null},{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"InvokeClient","tags":[],"Class":"RemoteFunction","type":"YieldFunction"},{"ReturnType":"Tuple","Arguments":[{"Type":"Tuple","Name":"arguments","Default":null}],"Name":"InvokeServer","tags":[],"Class":"RemoteFunction","type":"YieldFunction"},{"ReturnType":"Tuple","Arguments":[{"Name":"arguments","Type":"Tuple"}],"Name":"OnClientInvoke","tags":[],"Class":"RemoteFunction","type":"Callback"},{"ReturnType":"Tuple","Arguments":[{"Name":"player","Type":"Instance"},{"Name":"arguments","Type":"Tuple"}],"Name":"OnServerInvoke","tags":[],"Class":"RemoteFunction","type":"Callback"},{"Superclass":"Instance","type":"Class","Name":"RenderHooksService","tags":[]},{"ReturnType":"void","Arguments":[],"Name":"CaptureMetrics","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"qId","Default":null}],"Name":"DisableQueue","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enabled","Default":null}],"Name":"EnableAdorns","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"qId","Default":null}],"Name":"EnableQueue","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetDeltaAve","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetGPUDelay","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetPresentTime","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetRenderAve","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetRenderConfMax","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetRenderConfMin","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"double","Arguments":[],"Name":"GetRenderStd","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"PrintScene","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ReloadShaders","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"width","Default":null},{"Type":"int","Name":"height","Default":null}],"Name":"ResizeWindow","tags":["LocalUserSecurity"],"Class":"RenderHooksService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"RenderSettings","tags":["notbrowsable"]},{"ValueType":"AASamples","type":"Property","Name":"AASamples","tags":[],"Class":"RenderSettings"},{"ValueType":"Antialiasing","type":"Property","Name":"Antialiasing","tags":[],"Class":"RenderSettings"},{"ValueType":"int","type":"Property","Name":"AutoFRMLevel","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"DebugDisableInterpolation","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"EagerBulkExecution","tags":[],"Class":"RenderSettings"},{"ValueType":"QualityLevel","type":"Property","Name":"EditQualityLevel","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"EnableFRM","tags":["hidden"],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"ExportMergeByMaterial","tags":[],"Class":"RenderSettings"},{"ValueType":"FramerateManagerMode","type":"Property","Name":"FrameRateManager","tags":[],"Class":"RenderSettings"},{"ValueType":"GraphicsMode","type":"Property","Name":"GraphicsMode","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"IsAggregationShown","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"IsSynchronizedWithPhysics","tags":[],"Class":"RenderSettings"},{"ValueType":"int","type":"Property","Name":"MeshCacheSize","tags":[],"Class":"RenderSettings"},{"ValueType":"QualityLevel","type":"Property","Name":"QualityLevel","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"ReloadAssets","tags":[],"Class":"RenderSettings"},{"ValueType":"Resolution","type":"Property","Name":"Resolution","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"ShowBoundingBoxes","tags":[],"Class":"RenderSettings"},{"ValueType":"bool","type":"Property","Name":"ShowInterpolationpath","tags":[],"Class":"RenderSettings"},{"ValueType":"int","type":"Property","Name":"TextureCacheSize","tags":[],"Class":"RenderSettings"},{"ReturnType":"int","Arguments":[],"Name":"GetMaxQualityLevel","tags":[],"Class":"RenderSettings","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"ReplicatedFirst","tags":["notCreatable"]},{"ReturnType":"bool","Arguments":[],"Name":"IsDefaultLoadingGuiRemoved","tags":["RobloxScriptSecurity"],"Class":"ReplicatedFirst","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsFinishedReplicating","tags":["RobloxScriptSecurity"],"Class":"ReplicatedFirst","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"RemoveDefaultLoadingScreen","tags":[],"Class":"ReplicatedFirst","type":"Function"},{"Arguments":[],"Name":"FinishedReplicating","tags":["RobloxScriptSecurity"],"Class":"ReplicatedFirst","type":"Event"},{"Arguments":[],"Name":"RemoveDefaultLoadingGuiSignal","tags":["RobloxScriptSecurity"],"Class":"ReplicatedFirst","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ReplicatedStorage","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"RobloxReplicatedStorage","tags":["notCreatable","notbrowsable"]},{"Superclass":"Instance","type":"Class","Name":"RunService","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"int","Name":"priority","Default":null},{"Type":"Function","Name":"function","Default":null}],"Name":"BindToRenderStep","tags":[],"Class":"RunService","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsClient","tags":[],"Class":"RunService","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsRunMode","tags":[],"Class":"RunService","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsRunning","tags":["RobloxScriptSecurity"],"Class":"RunService","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsServer","tags":[],"Class":"RunService","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsStudio","tags":[],"Class":"RunService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Pause","tags":["PluginSecurity"],"Class":"RunService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Reset","tags":["PluginSecurity","deprecated"],"Class":"RunService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Run","tags":["PluginSecurity"],"Class":"RunService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Stop","tags":["PluginSecurity"],"Class":"RunService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null}],"Name":"UnbindFromRenderStep","tags":[],"Class":"RunService","type":"Function"},{"Arguments":[{"Name":"step","Type":"double"}],"Name":"Heartbeat","tags":[],"Class":"RunService","type":"Event"},{"Arguments":[{"Name":"step","Type":"double"}],"Name":"RenderStepped","tags":[],"Class":"RunService","type":"Event"},{"Arguments":[{"Name":"time","Type":"double"},{"Name":"step","Type":"double"}],"Name":"Stepped","tags":[],"Class":"RunService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"RuntimeScriptService","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"ScriptContext","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"ScriptsDisabled","tags":["LocalUserSecurity"],"Class":"ScriptContext"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"assetId","Default":null},{"Type":"Instance","Name":"parent","Default":null},{"Type":"string","Name":"name","Default":null}],"Name":"AddCoreScript","tags":["RobloxScriptSecurity"],"Class":"ScriptContext","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"Instance","Name":"parent","Default":null}],"Name":"AddCoreScriptLocal","tags":["RobloxScriptSecurity"],"Class":"ScriptContext","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"assetId","Default":null}],"Name":"AddStarterScript","tags":["LocalUserSecurity"],"Class":"ScriptContext","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"bool","Name":"clearHighwaterMark","Default":"true"}],"Name":"GetHeapStats","tags":["RobloxScriptSecurity"],"Class":"ScriptContext","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetScriptStats","tags":["RobloxScriptSecurity"],"Class":"ScriptContext","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"enable","Default":"false"}],"Name":"SetCollectScriptStats","tags":["RobloxScriptSecurity"],"Class":"ScriptContext","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"double","Name":"seconds","Default":null}],"Name":"SetTimeout","tags":["PluginSecurity"],"Class":"ScriptContext","type":"Function"},{"Arguments":[{"Name":"object","Type":"Instance"},{"Name":"member","Type":"string"},{"Name":"script","Type":"Instance"}],"Name":"CamelCaseViolation","tags":["RobloxScriptSecurity"],"Class":"ScriptContext","type":"Event"},{"Arguments":[{"Name":"message","Type":"string"},{"Name":"stackTrace","Type":"string"},{"Name":"script","Type":"Instance"}],"Name":"Error","tags":[],"Class":"ScriptContext","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ScriptDebugger","tags":["notCreatable"]},{"ValueType":"int","type":"Property","Name":"CurrentLine","tags":["readonly"],"Class":"ScriptDebugger"},{"ValueType":"bool","type":"Property","Name":"IsDebugging","tags":["readonly"],"Class":"ScriptDebugger"},{"ValueType":"bool","type":"Property","Name":"IsPaused","tags":["readonly"],"Class":"ScriptDebugger"},{"ValueType":"Object","type":"Property","Name":"Script","tags":["readonly"],"Class":"ScriptDebugger"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"expression","Default":null}],"Name":"AddWatch","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetBreakpoints","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Map","Arguments":[],"Name":"GetGlobals","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Map","Arguments":[{"Type":"int","Name":"stackFrame","Default":"0"}],"Name":"GetLocals","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetStack","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Map","Arguments":[{"Type":"int","Name":"stackFrame","Default":"0"}],"Name":"GetUpvalues","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Variant","Arguments":[{"Type":"Instance","Name":"watch","Default":null}],"Name":"GetWatchValue","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Objects","Arguments":[],"Name":"GetWatches","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Resume","tags":["deprecated"],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"int","Name":"line","Default":null}],"Name":"SetBreakpoint","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"Variant","Name":"value","Default":null}],"Name":"SetGlobal","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"Variant","Name":"value","Default":null},{"Type":"int","Name":"stackFrame","Default":"0"}],"Name":"SetLocal","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"name","Default":null},{"Type":"Variant","Name":"value","Default":null},{"Type":"int","Name":"stackFrame","Default":"0"}],"Name":"SetUpvalue","tags":[],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StepIn","tags":["deprecated"],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StepOut","tags":["deprecated"],"Class":"ScriptDebugger","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StepOver","tags":["deprecated"],"Class":"ScriptDebugger","type":"Function"},{"Arguments":[{"Name":"breakpoint","Type":"Instance"}],"Name":"BreakpointAdded","tags":[],"Class":"ScriptDebugger","type":"Event"},{"Arguments":[{"Name":"breakpoint","Type":"Instance"}],"Name":"BreakpointRemoved","tags":[],"Class":"ScriptDebugger","type":"Event"},{"Arguments":[{"Name":"line","Type":"int"}],"Name":"EncounteredBreak","tags":[],"Class":"ScriptDebugger","type":"Event"},{"Arguments":[],"Name":"Resuming","tags":[],"Class":"ScriptDebugger","type":"Event"},{"Arguments":[{"Name":"watch","Type":"Instance"}],"Name":"WatchAdded","tags":[],"Class":"ScriptDebugger","type":"Event"},{"Arguments":[{"Name":"watch","Type":"Instance"}],"Name":"WatchRemoved","tags":[],"Class":"ScriptDebugger","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ScriptInformationProvider","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"access","Default":null}],"Name":"SetAccessKey","tags":["RobloxSecurity"],"Class":"ScriptInformationProvider","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetAssetUrl","tags":["LocalUserSecurity"],"Class":"ScriptInformationProvider","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"ScriptService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Selection","tags":[]},{"ReturnType":"Objects","Arguments":[],"Name":"Get","tags":["PluginSecurity"],"Class":"Selection","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Objects","Name":"selection","Default":null}],"Name":"Set","tags":["PluginSecurity"],"Class":"Selection","type":"Function"},{"Arguments":[],"Name":"SelectionChanged","tags":[],"Class":"Selection","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"ServerScriptService","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"ServerStorage","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"ServiceProvider","tags":["notbrowsable"]},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"className","Default":null}],"Name":"FindService","tags":[],"Class":"ServiceProvider","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"className","Default":null}],"Name":"GetService","tags":[],"Class":"ServiceProvider","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"className","Default":null}],"Name":"getService","tags":["deprecated"],"Class":"ServiceProvider","type":"Function"},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"className","Default":null}],"Name":"service","tags":["deprecated"],"Class":"ServiceProvider","type":"Function"},{"Arguments":[],"Name":"Close","tags":[],"Class":"ServiceProvider","type":"Event"},{"Arguments":[],"Name":"CloseLate","tags":["LocalUserSecurity"],"Class":"ServiceProvider","type":"Event"},{"Arguments":[{"Name":"service","Type":"Instance"}],"Name":"ServiceAdded","tags":[],"Class":"ServiceProvider","type":"Event"},{"Arguments":[{"Name":"service","Type":"Instance"}],"Name":"ServiceRemoving","tags":[],"Class":"ServiceProvider","type":"Event"},{"Superclass":"ServiceProvider","type":"Class","Name":"DataModel","tags":[]},{"ValueType":"int","type":"Property","Name":"CreatorId","tags":["readonly"],"Class":"DataModel"},{"ValueType":"CreatorType","type":"Property","Name":"CreatorType","tags":["readonly"],"Class":"DataModel"},{"ValueType":"GearGenreSetting","type":"Property","Name":"GearGenreSetting","tags":["readonly"],"Class":"DataModel"},{"ValueType":"Genre","type":"Property","Name":"Genre","tags":["readonly"],"Class":"DataModel"},{"ValueType":"bool","type":"Property","Name":"IsPersonalServer","tags":["RobloxScriptSecurity"],"Class":"DataModel"},{"ValueType":"string","type":"Property","Name":"JobId","tags":["readonly"],"Class":"DataModel"},{"ValueType":"bool","type":"Property","Name":"LocalSaveEnabled","tags":["RobloxScriptSecurity","readonly"],"Class":"DataModel"},{"ValueType":"int","type":"Property","Name":"PlaceId","tags":["readonly"],"Class":"DataModel"},{"ValueType":"int","type":"Property","Name":"PlaceVersion","tags":["readonly"],"Class":"DataModel"},{"ValueType":"string","type":"Property","Name":"VIPServerId","tags":["readonly"],"Class":"DataModel"},{"ValueType":"int","type":"Property","Name":"VIPServerOwnerId","tags":["readonly"],"Class":"DataModel"},{"ValueType":"Object","type":"Property","Name":"Workspace","tags":["readonly"],"Class":"DataModel"},{"ValueType":"Object","type":"Property","Name":"lighting","tags":["deprecated","readonly"],"Class":"DataModel"},{"ValueType":"Object","type":"Property","Name":"workspace","tags":["deprecated","readonly"],"Class":"DataModel"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"displayName","Default":null},{"Type":"string","Name":"stat","Default":null}],"Name":"AddStat","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ClearMessage","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"localSave","Default":null}],"Name":"FinishShutdown","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"double","Arguments":[{"Type":"string","Name":"jobname","Default":null},{"Type":"double","Name":"greaterThan","Default":null}],"Name":"GetJobIntervalPeakFraction","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"double","Arguments":[{"Type":"string","Name":"jobname","Default":null},{"Type":"double","Name":"greaterThan","Default":null}],"Name":"GetJobTimePeakFraction","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetJobsExtendedStats","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetJobsInfo","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetMessage","tags":[],"Class":"DataModel","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"GetRemoteBuildMode","tags":[],"Class":"DataModel","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"url","Default":null},{"Type":"bool","Name":"synchronous","Default":"false"}],"Name":"HttpGet","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"url","Default":null},{"Type":"string","Name":"data","Default":null},{"Type":"bool","Name":"synchronous","Default":"false"},{"Type":"string","Name":"contentType","Default":"*/*"}],"Name":"HttpPost","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"GearType","Name":"gearType","Default":null}],"Name":"IsGearTypeAllowed","tags":[],"Class":"DataModel","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"IsLoaded","tags":[],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Content","Name":"url","Default":null}],"Name":"Load","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"assetID","Default":null}],"Name":"LoadGame","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"LoadPlugins","tags":["RobloxSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"assetID","Default":null}],"Name":"LoadWorld","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"stat","Default":null}],"Name":"RemoveStat","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"category","Default":null},{"Type":"string","Name":"action","Default":"custom"},{"Type":"string","Name":"label","Default":"none"},{"Type":"int","Name":"value","Default":"0"}],"Name":"ReportInGoogleAnalytics","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"id","Default":null},{"Type":"string","Name":"key1","Default":null},{"Type":"string","Name":"value1","Default":null},{"Type":"string","Name":"key2","Default":null},{"Type":"string","Name":"value2","Default":null}],"Name":"ReportMeasurement","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Content","Name":"url","Default":null}],"Name":"Save","tags":["RobloxSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SaveStats","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ServerSave","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"creatorID","Default":null},{"Type":"CreatorType","Name":"creatorType","Default":null}],"Name":"SetCreatorID","tags":["PluginSecurity","deprecated"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"creatorId","Default":null},{"Type":"CreatorType","Name":"creatorType","Default":null}],"Name":"SetCreatorId","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"GearGenreSetting","Name":"genreRestriction","Default":null},{"Type":"int","Name":"allowedGenres","Default":null}],"Name":"SetGearSettings","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Genre","Name":"genre","Default":null}],"Name":"SetGenre","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"double","Name":"seconds","Default":null}],"Name":"SetJobsExtendedStatsWindow","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"message","Default":null}],"Name":"SetMessage","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"SetMessageBrickCount","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeID","Default":null},{"Type":"bool","Name":"robloxPlace","Default":"false"}],"Name":"SetPlaceID","tags":["PluginSecurity","deprecated"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"bool","Name":"robloxPlace","Default":"false"}],"Name":"SetPlaceId","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null}],"Name":"SetPlaceVersion","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"buildModeEnabled","Default":null}],"Name":"SetRemoteBuildMode","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"info","Default":null}],"Name":"SetScreenshotInfo","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetServerSaveUrl","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"universeId","Default":null}],"Name":"SetUniverseId","tags":["PluginSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"newId","Default":null}],"Name":"SetVIPServerId","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"newId","Default":null}],"Name":"SetVIPServerOwnerId","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"info","Default":null}],"Name":"SetVideoInfo","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Shutdown","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ToggleTools","tags":["LocalUserSecurity"],"Class":"DataModel","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"HttpGetAsync","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"url","Default":null},{"Type":"string","Name":"data","Default":null},{"Type":"string","Name":"contentType","Default":"*/*"}],"Name":"HttpPostAsync","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[{"Type":"SaveFilter","Name":"saveFilter","Default":"SaveAll"}],"Name":"SavePlace","tags":[],"Class":"DataModel","type":"YieldFunction"},{"ReturnType":"bool","Arguments":[],"Name":"SaveToRoblox","tags":["RobloxScriptSecurity"],"Class":"DataModel","type":"YieldFunction"},{"Arguments":[],"Name":"AllowedGearTypeChanged","tags":[],"Class":"DataModel","type":"Event"},{"Arguments":[{"Name":"betterQuality","Type":"bool"}],"Name":"GraphicsQualityChangeRequest","tags":[],"Class":"DataModel","type":"Event"},{"Arguments":[{"Name":"object","Type":"Instance"},{"Name":"descriptor","Type":"Property"}],"Name":"ItemChanged","tags":[],"Class":"DataModel","type":"Event"},{"Arguments":[],"Name":"Loaded","tags":[],"Class":"DataModel","type":"Event"},{"ReturnType":"Tuple","Arguments":[],"Name":"OnClose","tags":[],"Class":"DataModel","type":"Callback"},{"ReturnType":"bool","Arguments":[],"Name":"RequestShutdown","tags":["RobloxScriptSecurity","noyield"],"Class":"DataModel","type":"Callback"},{"Superclass":"ServiceProvider","type":"Class","Name":"GenericSettings","tags":[]},{"Superclass":"GenericSettings","type":"Class","Name":"GlobalSettings","tags":["notbrowsable"]},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"name","Default":null}],"Name":"GetFFlag","tags":[],"Class":"GlobalSettings","type":"Function"},{"ReturnType":"string","Arguments":[{"Type":"string","Name":"name","Default":null}],"Name":"GetFVariable","tags":[],"Class":"GlobalSettings","type":"Function"},{"ReturnType":"Dictionary","Arguments":[],"Name":"GetFVariables","tags":["RobloxScriptSecurity"],"Class":"GlobalSettings","type":"Function"},{"Superclass":"GenericSettings","type":"Class","Name":"UserSettings","tags":[]},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"name","Default":null}],"Name":"IsUserFeatureEnabled","tags":[],"Class":"UserSettings","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Reset","tags":[],"Class":"UserSettings","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Sky","tags":[]},{"ValueType":"bool","type":"Property","Name":"CelestialBodiesShown","tags":[],"Class":"Sky"},{"ValueType":"Content","type":"Property","Name":"SkyboxBk","tags":[],"Class":"Sky"},{"ValueType":"Content","type":"Property","Name":"SkyboxDn","tags":[],"Class":"Sky"},{"ValueType":"Content","type":"Property","Name":"SkyboxFt","tags":[],"Class":"Sky"},{"ValueType":"Content","type":"Property","Name":"SkyboxLf","tags":[],"Class":"Sky"},{"ValueType":"Content","type":"Property","Name":"SkyboxRt","tags":[],"Class":"Sky"},{"ValueType":"Content","type":"Property","Name":"SkyboxUp","tags":[],"Class":"Sky"},{"ValueType":"int","type":"Property","Name":"StarCount","tags":[],"Class":"Sky"},{"Superclass":"Instance","type":"Class","Name":"Smoke","tags":[]},{"ValueType":"Color3","type":"Property","Name":"Color","tags":[],"Class":"Smoke"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"Smoke"},{"ValueType":"float","type":"Property","Name":"Opacity","tags":[],"Class":"Smoke"},{"ValueType":"float","type":"Property","Name":"RiseVelocity","tags":[],"Class":"Smoke"},{"ValueType":"float","type":"Property","Name":"Size","tags":[],"Class":"Smoke"},{"Superclass":"Instance","type":"Class","Name":"SocialService","tags":[]},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"bestFriendUrl","Default":null}],"Name":"SetBestFriendUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"friendUrl","Default":null}],"Name":"SetFriendUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"groupRankUrl","Default":null}],"Name":"SetGroupRankUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"groupRoleUrl","Default":null}],"Name":"SetGroupRoleUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"groupUrl","Default":null}],"Name":"SetGroupUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"stuffUrl","Default":null}],"Name":"SetPackageContentsUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"stuffUrl","Default":null}],"Name":"SetStuffUrl","tags":["LocalUserSecurity"],"Class":"SocialService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Sound","tags":[]},{"ValueType":"bool","type":"Property","Name":"IsPaused","tags":["readonly"],"Class":"Sound"},{"ValueType":"bool","type":"Property","Name":"IsPlaying","tags":["readonly"],"Class":"Sound"},{"ValueType":"bool","type":"Property","Name":"Looped","tags":[],"Class":"Sound"},{"ValueType":"float","type":"Property","Name":"MaxDistance","tags":[],"Class":"Sound"},{"ValueType":"float","type":"Property","Name":"MinDistance","tags":[],"Class":"Sound"},{"ValueType":"float","type":"Property","Name":"Pitch","tags":[],"Class":"Sound"},{"ValueType":"bool","type":"Property","Name":"PlayOnRemove","tags":[],"Class":"Sound"},{"ValueType":"Content","type":"Property","Name":"SoundId","tags":[],"Class":"Sound"},{"ValueType":"double","type":"Property","Name":"TimeLength","tags":["readonly"],"Class":"Sound"},{"ValueType":"double","type":"Property","Name":"TimePosition","tags":[],"Class":"Sound"},{"ValueType":"float","type":"Property","Name":"Volume","tags":[],"Class":"Sound"},{"ValueType":"bool","type":"Property","Name":"isPlaying","tags":["deprecated","readonly"],"Class":"Sound"},{"ReturnType":"void","Arguments":[],"Name":"Pause","tags":[],"Class":"Sound","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Play","tags":[],"Class":"Sound","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Resume","tags":[],"Class":"Sound","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Stop","tags":[],"Class":"Sound","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"pause","tags":["deprecated"],"Class":"Sound","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"play","tags":["deprecated"],"Class":"Sound","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"stop","tags":["deprecated"],"Class":"Sound","type":"Function"},{"Arguments":[{"Name":"soundId","Type":"string"},{"Name":"numOfTimesLooped","Type":"int"}],"Name":"DidLoop","tags":[],"Class":"Sound","type":"Event"},{"Arguments":[{"Name":"soundId","Type":"string"}],"Name":"Ended","tags":[],"Class":"Sound","type":"Event"},{"Arguments":[{"Name":"soundId","Type":"string"}],"Name":"Paused","tags":[],"Class":"Sound","type":"Event"},{"Arguments":[{"Name":"soundId","Type":"string"}],"Name":"Played","tags":[],"Class":"Sound","type":"Event"},{"Arguments":[{"Name":"soundId","Type":"string"}],"Name":"Stopped","tags":[],"Class":"Sound","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"SoundService","tags":["notCreatable"]},{"ValueType":"ReverbType","type":"Property","Name":"AmbientReverb","tags":[],"Class":"SoundService"},{"ValueType":"float","type":"Property","Name":"DistanceFactor","tags":[],"Class":"SoundService"},{"ValueType":"float","type":"Property","Name":"DopplerScale","tags":[],"Class":"SoundService"},{"ValueType":"float","type":"Property","Name":"RolloffScale","tags":[],"Class":"SoundService"},{"ReturnType":"Tuple","Arguments":[],"Name":"GetListener","tags":[],"Class":"SoundService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"SoundType","Name":"sound","Default":null}],"Name":"PlayStockSound","tags":["RobloxScriptSecurity"],"Class":"SoundService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"ListenerType","Name":"listenerType","Default":null},{"Type":"Tuple","Name":"listener","Default":null}],"Name":"SetListener","tags":[],"Class":"SoundService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Sparkles","tags":[]},{"ValueType":"Color3","type":"Property","Name":"Color","tags":["hidden"],"Class":"Sparkles"},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"Sparkles"},{"ValueType":"Color3","type":"Property","Name":"SparkleColor","tags":[],"Class":"Sparkles"},{"Superclass":"Instance","type":"Class","Name":"SpawnerService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"StarterGear","tags":[]},{"Superclass":"Instance","type":"Class","Name":"StarterPlayer","tags":[]},{"ValueType":"bool","type":"Property","Name":"AutoJumpEnabled","tags":[],"Class":"StarterPlayer"},{"ValueType":"float","type":"Property","Name":"CameraMaxZoomDistance","tags":[],"Class":"StarterPlayer"},{"ValueType":"float","type":"Property","Name":"CameraMinZoomDistance","tags":[],"Class":"StarterPlayer"},{"ValueType":"CameraMode","type":"Property","Name":"CameraMode","tags":[],"Class":"StarterPlayer"},{"ValueType":"DevCameraOcclusionMode","type":"Property","Name":"DevCameraOcclusionMode","tags":[],"Class":"StarterPlayer"},{"ValueType":"DevComputerCameraMovementMode","type":"Property","Name":"DevComputerCameraMovementMode","tags":[],"Class":"StarterPlayer"},{"ValueType":"DevComputerMovementMode","type":"Property","Name":"DevComputerMovementMode","tags":[],"Class":"StarterPlayer"},{"ValueType":"DevTouchCameraMovementMode","type":"Property","Name":"DevTouchCameraMovementMode","tags":[],"Class":"StarterPlayer"},{"ValueType":"DevTouchMovementMode","type":"Property","Name":"DevTouchMovementMode","tags":[],"Class":"StarterPlayer"},{"ValueType":"bool","type":"Property","Name":"EnableMouseLockOption","tags":[],"Class":"StarterPlayer"},{"ValueType":"float","type":"Property","Name":"HealthDisplayDistance","tags":[],"Class":"StarterPlayer"},{"ValueType":"bool","type":"Property","Name":"LoadCharacterAppearance","tags":[],"Class":"StarterPlayer"},{"ValueType":"float","type":"Property","Name":"NameDisplayDistance","tags":[],"Class":"StarterPlayer"},{"Superclass":"Instance","type":"Class","Name":"StarterPlayerScripts","tags":[]},{"Superclass":"StarterPlayerScripts","type":"Class","Name":"StarterCharacterScripts","tags":[]},{"Superclass":"Instance","type":"Class","Name":"Stats","tags":["notCreatable"]},{"ValueType":"double","type":"Property","Name":"MinReportInterval","tags":["RobloxScriptSecurity"],"Class":"Stats"},{"ValueType":"string","type":"Property","Name":"ReporterType","tags":["RobloxScriptSecurity"],"Class":"Stats"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"category","Default":null},{"Type":"Dictionary","Name":"data","Default":null}],"Name":"Report","tags":["RobloxScriptSecurity"],"Class":"Stats","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"ReportJobsStepWindow","tags":["RobloxScriptSecurity"],"Class":"Stats","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"includeJobs","Default":"false"}],"Name":"ReportTaskScheduler","tags":["RobloxScriptSecurity"],"Class":"Stats","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetReportUrl","tags":["RobloxScriptSecurity"],"Class":"Stats","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"StatsItem","tags":[]},{"ReturnType":"double","Arguments":[],"Name":"GetValue","tags":["PluginSecurity"],"Class":"StatsItem","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"GetValueString","tags":["PluginSecurity"],"Class":"StatsItem","type":"Function"},{"Superclass":"StatsItem","type":"Class","Name":"ProfilingItem","tags":[]},{"ReturnType":"Tuple","Arguments":[{"Type":"double","Name":"window","Default":"0"}],"Name":"GetTimes","tags":["PluginSecurity"],"Class":"ProfilingItem","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"int","Name":"frames","Default":"1"}],"Name":"GetTimesForFrames","tags":["PluginSecurity"],"Class":"ProfilingItem","type":"Function"},{"Superclass":"StatsItem","type":"Class","Name":"RunningAverageItemDouble","tags":[]},{"Superclass":"StatsItem","type":"Class","Name":"RunningAverageItemInt","tags":[]},{"Superclass":"StatsItem","type":"Class","Name":"RunningAverageTimeIntervalItem","tags":[]},{"Superclass":"StatsItem","type":"Class","Name":"TotalCountTimeIntervalItem","tags":[]},{"Superclass":"Instance","type":"Class","Name":"StringValue","tags":[]},{"ValueType":"string","type":"Property","Name":"Value","tags":[],"Class":"StringValue"},{"Arguments":[{"Name":"value","Type":"string"}],"Name":"Changed","tags":[],"Class":"StringValue","type":"Event"},{"Arguments":[{"Name":"value","Type":"string"}],"Name":"changed","tags":["deprecated"],"Class":"StringValue","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"StudioTool","tags":[]},{"ValueType":"bool","type":"Property","Name":"Enabled","tags":[],"Class":"StudioTool"},{"Arguments":[],"Name":"Activated","tags":[],"Class":"StudioTool","type":"Event"},{"Arguments":[],"Name":"Deactivated","tags":[],"Class":"StudioTool","type":"Event"},{"Arguments":[{"Name":"mouse","Type":"Instance"}],"Name":"Equipped","tags":[],"Class":"StudioTool","type":"Event"},{"Arguments":[],"Name":"Unequipped","tags":[],"Class":"StudioTool","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"TaskScheduler","tags":[]},{"ValueType":"bool","type":"Property","Name":"AreArbitersThrottled","tags":[],"Class":"TaskScheduler"},{"ValueType":"ConcurrencyModel","type":"Property","Name":"Concurrency","tags":[],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"NumRunningJobs","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"NumSleepingJobs","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"NumWaitingJobs","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"PriorityMethod","type":"Property","Name":"PriorityMethod","tags":[],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"SchedulerDutyCycle","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"SchedulerRate","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"SleepAdjustMethod","type":"Property","Name":"SleepAdjustMethod","tags":[],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"ThreadAffinity","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"ThreadPoolConfig","type":"Property","Name":"ThreadPoolConfig","tags":[],"Class":"TaskScheduler"},{"ValueType":"int","type":"Property","Name":"ThreadPoolSize","tags":["readonly"],"Class":"TaskScheduler"},{"ValueType":"double","type":"Property","Name":"ThrottledJobSleepTime","tags":[],"Class":"TaskScheduler"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"exclusive","Default":"true"},{"Type":"double","Name":"fps","Default":"30"}],"Name":"AddDummyJob","tags":["LocalUserSecurity"],"Class":"TaskScheduler","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"double","Name":"timeSlice","Default":null},{"Type":"int","Name":"numShare","Default":null}],"Name":"SetThreadShare","tags":["LocalUserSecurity","deprecated"],"Class":"TaskScheduler","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Team","tags":[]},{"ValueType":"bool","type":"Property","Name":"AutoAssignable","tags":[],"Class":"Team"},{"ValueType":"bool","type":"Property","Name":"AutoColorCharacters","tags":["deprecated"],"Class":"Team"},{"ValueType":"int","type":"Property","Name":"Score","tags":["deprecated"],"Class":"Team"},{"ValueType":"BrickColor","type":"Property","Name":"TeamColor","tags":[],"Class":"Team"},{"Superclass":"Instance","type":"Class","Name":"Teams","tags":["notCreatable"]},{"ReturnType":"Objects","Arguments":[],"Name":"GetTeams","tags":[],"Class":"Teams","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"RebalanceTeams","tags":["deprecated"],"Class":"Teams","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"TeleportService","tags":[]},{"ValueType":"bool","type":"Property","Name":"CustomizedTeleportUI","tags":["deprecated"],"Class":"TeleportService"},{"ReturnType":"Variant","Arguments":[],"Name":"GetLocalPlayerTeleportData","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"Variant","Arguments":[{"Type":"string","Name":"setting","Default":null}],"Name":"GetTeleportSetting","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"setting","Default":null},{"Type":"Variant","Name":"value","Default":null}],"Name":"SetTeleportSetting","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"Instance","Name":"player","Default":"nil"},{"Type":"Variant","Name":"teleportData","Default":null},{"Type":"Instance","Name":"customLoadingScreen","Default":"nil"}],"Name":"Teleport","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"TeleportCancel","tags":["RobloxScriptSecurity"],"Class":"TeleportService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"string","Name":"instanceId","Default":null},{"Type":"Instance","Name":"player","Default":"nil"},{"Type":"string","Name":"spawnName","Default":""},{"Type":"Variant","Name":"teleportData","Default":null},{"Type":"Instance","Name":"customLoadingScreen","Default":"nil"}],"Name":"TeleportToPlaceInstance","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"string","Name":"reservedServerAccessCode","Default":null},{"Type":"Objects","Name":"players","Default":null},{"Type":"string","Name":"spawnName","Default":""},{"Type":"Variant","Name":"teleportData","Default":null},{"Type":"Instance","Name":"customLoadingScreen","Default":"nil"}],"Name":"TeleportToPrivateServer","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"int","Name":"placeId","Default":null},{"Type":"string","Name":"spawnName","Default":null},{"Type":"Instance","Name":"player","Default":"nil"},{"Type":"Variant","Name":"teleportData","Default":null},{"Type":"Instance","Name":"customLoadingScreen","Default":"nil"}],"Name":"TeleportToSpawnByName","tags":[],"Class":"TeleportService","type":"Function"},{"ReturnType":"Tuple","Arguments":[{"Type":"int","Name":"userId","Default":null}],"Name":"GetPlayerPlaceInstanceAsync","tags":[],"Class":"TeleportService","type":"YieldFunction"},{"ReturnType":"string","Arguments":[{"Type":"int","Name":"placeId","Default":null}],"Name":"ReserveServer","tags":[],"Class":"TeleportService","type":"YieldFunction"},{"Arguments":[{"Name":"loadingGui","Type":"Instance"},{"Name":"dataTable","Type":"Variant"}],"Name":"LocalPlayerArrivedFromTeleport","tags":[],"Class":"TeleportService","type":"Event"},{"ReturnType":"bool","Arguments":[{"Name":"message","Type":"string"},{"Name":"placeId","Type":"int"},{"Name":"spawnName","Type":"string"}],"Name":"ConfirmationCallback","tags":["RobloxScriptSecurity","noyield"],"Class":"TeleportService","type":"Callback"},{"ReturnType":"void","Arguments":[{"Name":"message","Type":"string"}],"Name":"ErrorCallback","tags":["RobloxScriptSecurity","noyield"],"Class":"TeleportService","type":"Callback"},{"Superclass":"Instance","type":"Class","Name":"TerrainRegion","tags":[]},{"ValueType":"bool","type":"Property","Name":"IsSmooth","tags":["readonly"],"Class":"TerrainRegion"},{"ValueType":"Vector3","type":"Property","Name":"SizeInCells","tags":["readonly"],"Class":"TerrainRegion"},{"ReturnType":"void","Arguments":[],"Name":"ConvertToSmooth","tags":["PluginSecurity"],"Class":"TerrainRegion","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"TestService","tags":[]},{"ValueType":"bool","type":"Property","Name":"AutoRuns","tags":[],"Class":"TestService"},{"ValueType":"string","type":"Property","Name":"Description","tags":[],"Class":"TestService"},{"ValueType":"int","type":"Property","Name":"ErrorCount","tags":["readonly"],"Class":"TestService"},{"ValueType":"bool","type":"Property","Name":"Is30FpsThrottleEnabled","tags":[],"Class":"TestService"},{"ValueType":"bool","type":"Property","Name":"IsPhysicsEnvironmentalThrottled","tags":[],"Class":"TestService"},{"ValueType":"bool","type":"Property","Name":"IsSleepAllowed","tags":[],"Class":"TestService"},{"ValueType":"int","type":"Property","Name":"NumberOfPlayers","tags":[],"Class":"TestService"},{"ValueType":"double","type":"Property","Name":"SimulateSecondsLag","tags":[],"Class":"TestService"},{"ValueType":"int","type":"Property","Name":"TestCount","tags":["readonly"],"Class":"TestService"},{"ValueType":"double","type":"Property","Name":"Timeout","tags":[],"Class":"TestService"},{"ValueType":"int","type":"Property","Name":"WarnCount","tags":["readonly"],"Class":"TestService"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"condition","Default":null},{"Type":"string","Name":"description","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Check","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"text","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Checkpoint","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Done","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"description","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Error","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"description","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Fail","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"text","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Message","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"condition","Default":null},{"Type":"string","Name":"description","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Require","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"bool","Name":"condition","Default":null},{"Type":"string","Name":"description","Default":null},{"Type":"Instance","Name":"source","Default":"nil"},{"Type":"int","Name":"line","Default":"0"}],"Name":"Warn","tags":[],"Class":"TestService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"Run","tags":["PluginSecurity"],"Class":"TestService","type":"YieldFunction"},{"Arguments":[{"Name":"condition","Type":"bool"},{"Name":"text","Type":"string"},{"Name":"script","Type":"Instance"},{"Name":"line","Type":"int"}],"Name":"ServerCollectConditionalResult","tags":[],"Class":"TestService","type":"Event"},{"Arguments":[{"Name":"text","Type":"string"},{"Name":"script","Type":"Instance"},{"Name":"line","Type":"int"}],"Name":"ServerCollectResult","tags":[],"Class":"TestService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"TextService","tags":["notCreatable"]},{"ReturnType":"Vector2","Arguments":[{"Type":"string","Name":"string","Default":null},{"Type":"int","Name":"fontSize","Default":null},{"Type":"Font","Name":"font","Default":null},{"Type":"Vector2","Name":"frameSize","Default":null}],"Name":"GetTextSize","tags":["RobloxScriptSecurity"],"Class":"TextService","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"TimerService","tags":["notCreatable"]},{"Superclass":"Instance","type":"Class","Name":"Toolbar","tags":[]},{"ReturnType":"Instance","Arguments":[{"Type":"string","Name":"text","Default":null},{"Type":"string","Name":"tooltip","Default":null},{"Type":"string","Name":"iconname","Default":null}],"Name":"CreateButton","tags":["PluginSecurity"],"Class":"Toolbar","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"TouchInputService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"TouchTransmitter","tags":["notCreatable","notbrowsable"]},{"Superclass":"Instance","type":"Class","Name":"TweenService","tags":[]},{"Superclass":"Instance","type":"Class","Name":"UserGameSettings","tags":[]},{"ValueType":"bool","type":"Property","Name":"AllTutorialsDisabled","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ValueType":"CustomCameraMode","type":"Property","Name":"CameraMode","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ValueType":"ComputerCameraMovementMode","type":"Property","Name":"ComputerCameraMovementMode","tags":[],"Class":"UserGameSettings"},{"ValueType":"ComputerMovementMode","type":"Property","Name":"ComputerMovementMode","tags":[],"Class":"UserGameSettings"},{"ValueType":"ControlMode","type":"Property","Name":"ControlMode","tags":[],"Class":"UserGameSettings"},{"ValueType":"bool","type":"Property","Name":"Fullscreen","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ValueType":"UploadSetting","type":"Property","Name":"ImageUploadPromptBehavior","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ValueType":"float","type":"Property","Name":"MasterVolume","tags":[],"Class":"UserGameSettings"},{"ValueType":"float","type":"Property","Name":"MouseSensitivity","tags":[],"Class":"UserGameSettings"},{"ValueType":"RotationType","type":"Property","Name":"RotationType","tags":[],"Class":"UserGameSettings"},{"ValueType":"SavedQualitySetting","type":"Property","Name":"SavedQualityLevel","tags":[],"Class":"UserGameSettings"},{"ValueType":"TouchCameraMovementMode","type":"Property","Name":"TouchCameraMovementMode","tags":[],"Class":"UserGameSettings"},{"ValueType":"TouchMovementMode","type":"Property","Name":"TouchMovementMode","tags":[],"Class":"UserGameSettings"},{"ValueType":"bool","type":"Property","Name":"UsedHideHudShortcut","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ValueType":"int","type":"Property","Name":"VRRotationIntensity","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ValueType":"UploadSetting","type":"Property","Name":"VideoUploadPromptBehavior","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings"},{"ReturnType":"bool","Arguments":[{"Type":"string","Name":"tutorialId","Default":null}],"Name":"GetTutorialState","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"InFullScreen","tags":[],"Class":"UserGameSettings","type":"Function"},{"ReturnType":"bool","Arguments":[],"Name":"InStudioMode","tags":[],"Class":"UserGameSettings","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"tutorialId","Default":null},{"Type":"bool","Name":"value","Default":null}],"Name":"SetTutorialState","tags":["RobloxScriptSecurity"],"Class":"UserGameSettings","type":"Function"},{"Arguments":[{"Name":"isFullscreen","Type":"bool"}],"Name":"FullscreenChanged","tags":[],"Class":"UserGameSettings","type":"Event"},{"Arguments":[{"Name":"isStudioMode","Type":"bool"}],"Name":"StudioModeChanged","tags":[],"Class":"UserGameSettings","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"UserInputService","tags":["notCreatable"]},{"ValueType":"bool","type":"Property","Name":"AccelerometerEnabled","tags":["readonly"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"GamepadEnabled","tags":["readonly"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"GyroscopeEnabled","tags":["readonly"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"KeyboardEnabled","tags":["readonly"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"ModalEnabled","tags":[],"Class":"UserInputService"},{"ValueType":"MouseBehavior","type":"Property","Name":"MouseBehavior","tags":[],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"MouseEnabled","tags":["readonly"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"MouseIconEnabled","tags":[],"Class":"UserInputService"},{"ValueType":"OverrideMouseIconBehavior","type":"Property","Name":"OverrideMouseIconBehavior","tags":["RobloxScriptSecurity"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"TouchEnabled","tags":["readonly"],"Class":"UserInputService"},{"ValueType":"CoordinateFrame","type":"Property","Name":"UserHeadCFrame","tags":["deprecated","readonly"],"Class":"UserInputService"},{"ValueType":"bool","type":"Property","Name":"VREnabled","tags":["readonly"],"Class":"UserInputService"},{"ReturnType":"bool","Arguments":[{"Type":"UserInputType","Name":"gamepadNum","Default":null},{"Type":"KeyCode","Name":"gamepadKeyCode","Default":null}],"Name":"GamepadSupports","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetConnectedGamepads","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetDeviceAcceleration","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetDeviceGravity","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Tuple","Arguments":[],"Name":"GetDeviceRotation","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Instance","Arguments":[],"Name":"GetFocusedTextBox","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"UserInputType","Name":"gamepadNum","Default":null}],"Name":"GetGamepadConnected","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Array","Arguments":[{"Type":"UserInputType","Name":"gamepadNum","Default":null}],"Name":"GetGamepadState","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetKeysPressed","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"UserInputType","Arguments":[],"Name":"GetLastInputType","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Array","Arguments":[],"Name":"GetNavigationGamepads","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"Platform","Arguments":[],"Name":"GetPlatform","tags":["RobloxScriptSecurity"],"Class":"UserInputService","type":"Function"},{"ReturnType":"Array","Arguments":[{"Type":"UserInputType","Name":"gamepadNum","Default":null}],"Name":"GetSupportedGamepadKeyCodes","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"CoordinateFrame","Arguments":[{"Type":"UserCFrame","Name":"type","Default":null}],"Name":"GetUserCFrame","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"KeyCode","Name":"keyCode","Default":null}],"Name":"IsKeyDown","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"bool","Arguments":[{"Type":"UserInputType","Name":"gamepadEnum","Default":null}],"Name":"IsNavigationGamepad","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"RecenterUserHeadCFrame","tags":[],"Class":"UserInputService","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"UserInputType","Name":"gamepadEnum","Default":null},{"Type":"bool","Name":"enabled","Default":null}],"Name":"SetNavigationGamepad","tags":[],"Class":"UserInputService","type":"Function"},{"Arguments":[{"Name":"acceleration","Type":"Instance"}],"Name":"DeviceAccelerationChanged","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"gravity","Type":"Instance"}],"Name":"DeviceGravityChanged","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"rotation","Type":"Instance"},{"Name":"cframe","Type":"CoordinateFrame"}],"Name":"DeviceRotationChanged","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"gamepadNum","Type":"UserInputType"}],"Name":"GamepadConnected","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"gamepadNum","Type":"UserInputType"}],"Name":"GamepadDisconnected","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"input","Type":"Instance"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"InputBegan","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"input","Type":"Instance"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"InputChanged","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"input","Type":"Instance"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"InputEnded","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[],"Name":"JumpRequest","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"lastInputType","Type":"UserInputType"}],"Name":"LastInputTypeChanged","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"textboxReleased","Type":"Instance"}],"Name":"TextBoxFocusReleased","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"textboxFocused","Type":"Instance"}],"Name":"TextBoxFocused","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touch","Type":"Instance"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchEnded","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"state","Type":"UserInputState"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchLongPress","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touch","Type":"Instance"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchMoved","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"totalTranslation","Type":"Vector2"},{"Name":"velocity","Type":"Vector2"},{"Name":"state","Type":"UserInputState"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchPan","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"scale","Type":"float"},{"Name":"velocity","Type":"float"},{"Name":"state","Type":"UserInputState"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchPinch","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"rotation","Type":"float"},{"Name":"velocity","Type":"float"},{"Name":"state","Type":"UserInputState"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchRotate","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touch","Type":"Instance"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchStarted","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"swipeDirection","Type":"SwipeDirection"},{"Name":"numberOfTouches","Type":"int"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchSwipe","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"touchPositions","Type":"Array"},{"Name":"gameProcessedEvent","Type":"bool"}],"Name":"TouchTap","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[{"Name":"type","Type":"UserCFrame"},{"Name":"value","Type":"CoordinateFrame"}],"Name":"UserCFrameChanged","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[],"Name":"WindowFocusReleased","tags":[],"Class":"UserInputService","type":"Event"},{"Arguments":[],"Name":"WindowFocused","tags":[],"Class":"UserInputService","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"Vector3Value","tags":[]},{"ValueType":"Vector3","type":"Property","Name":"Value","tags":[],"Class":"Vector3Value"},{"Arguments":[{"Name":"value","Type":"Vector3"}],"Name":"Changed","tags":[],"Class":"Vector3Value","type":"Event"},{"Arguments":[{"Name":"value","Type":"Vector3"}],"Name":"changed","tags":["deprecated"],"Class":"Vector3Value","type":"Event"},{"Superclass":"Instance","type":"Class","Name":"VirtualUser","tags":["notCreatable"]},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"Button1Down","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"Button1Up","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"Button2Down","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"Button2Up","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"CaptureController","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"ClickButton1","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"ClickButton2","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"Vector2","Name":"position","Default":null},{"Type":"CoordinateFrame","Name":"camera","Default":"Identity"}],"Name":"MoveMouse","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"SetKeyDown","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"SetKeyUp","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[],"Name":"StartRecording","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"string","Arguments":[],"Name":"StopRecording","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"key","Default":null}],"Name":"TypeKey","tags":["LocalUserSecurity"],"Class":"VirtualUser","type":"Function"},{"Superclass":"Instance","type":"Class","Name":"Visit","tags":["notCreatable"]},{"ReturnType":"string","Arguments":[],"Name":"GetUploadUrl","tags":["RobloxSecurity"],"Class":"Visit","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"pingUrl","Default":null},{"Type":"int","Name":"interval","Default":null}],"Name":"SetPing","tags":["RobloxSecurity"],"Class":"Visit","type":"Function"},{"ReturnType":"void","Arguments":[{"Type":"string","Name":"url","Default":null}],"Name":"SetUploadUrl","tags":["RobloxSecurity"],"Class":"Visit","type":"Function"},{"type":"Enum","Name":"AASamples","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":1,"Enum":"AASamples"},{"type":"EnumItem","Name":"4","tags":[],"Value":4,"Enum":"AASamples"},{"type":"EnumItem","Name":"8","tags":[],"Value":8,"Enum":"AASamples"},{"type":"Enum","Name":"AccessType","tags":[]},{"type":"EnumItem","Name":"Me","tags":[],"Value":0,"Enum":"AccessType"},{"type":"EnumItem","Name":"Friends","tags":[],"Value":1,"Enum":"AccessType"},{"type":"EnumItem","Name":"Everyone","tags":[],"Value":2,"Enum":"AccessType"},{"type":"EnumItem","Name":"InviteOnly","tags":[],"Value":3,"Enum":"AccessType"},{"type":"Enum","Name":"ActionType","tags":[]},{"type":"EnumItem","Name":"Nothing","tags":[],"Value":0,"Enum":"ActionType"},{"type":"EnumItem","Name":"Pause","tags":[],"Value":1,"Enum":"ActionType"},{"type":"EnumItem","Name":"Lose","tags":[],"Value":2,"Enum":"ActionType"},{"type":"EnumItem","Name":"Draw","tags":[],"Value":3,"Enum":"ActionType"},{"type":"EnumItem","Name":"Win","tags":[],"Value":4,"Enum":"ActionType"},{"type":"Enum","Name":"ActuatorType","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":0,"Enum":"ActuatorType"},{"type":"EnumItem","Name":"Motor","tags":[],"Value":1,"Enum":"ActuatorType"},{"type":"EnumItem","Name":"Servo","tags":[],"Value":2,"Enum":"ActuatorType"},{"type":"Enum","Name":"AnimationPriority","tags":[]},{"type":"EnumItem","Name":"Idle","tags":[],"Value":0,"Enum":"AnimationPriority"},{"type":"EnumItem","Name":"Movement","tags":[],"Value":1,"Enum":"AnimationPriority"},{"type":"EnumItem","Name":"Action","tags":[],"Value":2,"Enum":"AnimationPriority"},{"type":"EnumItem","Name":"Core","tags":[],"Value":1000,"Enum":"AnimationPriority"},{"type":"Enum","Name":"Antialiasing","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":0,"Enum":"Antialiasing"},{"type":"EnumItem","Name":"Off","tags":[],"Value":2,"Enum":"Antialiasing"},{"type":"EnumItem","Name":"On","tags":[],"Value":1,"Enum":"Antialiasing"},{"type":"Enum","Name":"Axis","tags":[]},{"type":"EnumItem","Name":"X","tags":[],"Value":0,"Enum":"Axis"},{"type":"EnumItem","Name":"Y","tags":[],"Value":1,"Enum":"Axis"},{"type":"EnumItem","Name":"Z","tags":[],"Value":2,"Enum":"Axis"},{"type":"Enum","Name":"BinType","tags":[]},{"type":"EnumItem","Name":"Script","tags":[],"Value":0,"Enum":"BinType"},{"type":"EnumItem","Name":"GameTool","tags":[],"Value":1,"Enum":"BinType"},{"type":"EnumItem","Name":"Grab","tags":[],"Value":2,"Enum":"BinType"},{"type":"EnumItem","Name":"Clone","tags":[],"Value":3,"Enum":"BinType"},{"type":"EnumItem","Name":"Hammer","tags":[],"Value":4,"Enum":"BinType"},{"type":"Enum","Name":"BodyPart","tags":[]},{"type":"EnumItem","Name":"Head","tags":[],"Value":0,"Enum":"BodyPart"},{"type":"EnumItem","Name":"Torso","tags":[],"Value":1,"Enum":"BodyPart"},{"type":"EnumItem","Name":"LeftArm","tags":[],"Value":2,"Enum":"BodyPart"},{"type":"EnumItem","Name":"RightArm","tags":[],"Value":3,"Enum":"BodyPart"},{"type":"EnumItem","Name":"LeftLeg","tags":[],"Value":4,"Enum":"BodyPart"},{"type":"EnumItem","Name":"RightLeg","tags":[],"Value":5,"Enum":"BodyPart"},{"type":"Enum","Name":"Button","tags":[]},{"type":"EnumItem","Name":"Jump","tags":[],"Value":32,"Enum":"Button"},{"type":"EnumItem","Name":"Dismount","tags":[],"Value":8,"Enum":"Button"},{"type":"Enum","Name":"ButtonStyle","tags":[]},{"type":"EnumItem","Name":"Custom","tags":[],"Value":0,"Enum":"ButtonStyle"},{"type":"EnumItem","Name":"RobloxButtonDefault","tags":[],"Value":1,"Enum":"ButtonStyle"},{"type":"EnumItem","Name":"RobloxButton","tags":[],"Value":2,"Enum":"ButtonStyle"},{"type":"EnumItem","Name":"RobloxRoundButton","tags":[],"Value":3,"Enum":"ButtonStyle"},{"type":"EnumItem","Name":"RobloxRoundDefaultButton","tags":[],"Value":4,"Enum":"ButtonStyle"},{"type":"EnumItem","Name":"RobloxRoundDropdownButton","tags":[],"Value":5,"Enum":"ButtonStyle"},{"type":"Enum","Name":"CameraMode","tags":[]},{"type":"EnumItem","Name":"Classic","tags":[],"Value":0,"Enum":"CameraMode"},{"type":"EnumItem","Name":"LockFirstPerson","tags":[],"Value":1,"Enum":"CameraMode"},{"type":"Enum","Name":"CameraPanMode","tags":[]},{"type":"EnumItem","Name":"Classic","tags":[],"Value":0,"Enum":"CameraPanMode"},{"type":"EnumItem","Name":"EdgeBump","tags":[],"Value":1,"Enum":"CameraPanMode"},{"type":"Enum","Name":"CameraType","tags":[]},{"type":"EnumItem","Name":"Fixed","tags":[],"Value":0,"Enum":"CameraType"},{"type":"EnumItem","Name":"Watch","tags":[],"Value":2,"Enum":"CameraType"},{"type":"EnumItem","Name":"Attach","tags":[],"Value":1,"Enum":"CameraType"},{"type":"EnumItem","Name":"Track","tags":[],"Value":3,"Enum":"CameraType"},{"type":"EnumItem","Name":"Follow","tags":[],"Value":4,"Enum":"CameraType"},{"type":"EnumItem","Name":"Custom","tags":[],"Value":5,"Enum":"CameraType"},{"type":"EnumItem","Name":"Scriptable","tags":[],"Value":6,"Enum":"CameraType"},{"type":"Enum","Name":"CellBlock","tags":[]},{"type":"EnumItem","Name":"Solid","tags":[],"Value":0,"Enum":"CellBlock"},{"type":"EnumItem","Name":"VerticalWedge","tags":[],"Value":1,"Enum":"CellBlock"},{"type":"EnumItem","Name":"CornerWedge","tags":[],"Value":2,"Enum":"CellBlock"},{"type":"EnumItem","Name":"InverseCornerWedge","tags":[],"Value":3,"Enum":"CellBlock"},{"type":"EnumItem","Name":"HorizontalWedge","tags":[],"Value":4,"Enum":"CellBlock"},{"type":"Enum","Name":"CellMaterial","tags":[]},{"type":"EnumItem","Name":"Empty","tags":[],"Value":0,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Grass","tags":[],"Value":1,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Sand","tags":[],"Value":2,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Brick","tags":[],"Value":3,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Granite","tags":[],"Value":4,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Asphalt","tags":[],"Value":5,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Iron","tags":[],"Value":6,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Aluminum","tags":[],"Value":7,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Gold","tags":[],"Value":8,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"WoodPlank","tags":[],"Value":9,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"WoodLog","tags":[],"Value":10,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Gravel","tags":[],"Value":11,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"CinderBlock","tags":[],"Value":12,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"MossyStone","tags":[],"Value":13,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Cement","tags":[],"Value":14,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"RedPlastic","tags":[],"Value":15,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"BluePlastic","tags":[],"Value":16,"Enum":"CellMaterial"},{"type":"EnumItem","Name":"Water","tags":[],"Value":17,"Enum":"CellMaterial"},{"type":"Enum","Name":"CellOrientation","tags":[]},{"type":"EnumItem","Name":"NegZ","tags":[],"Value":0,"Enum":"CellOrientation"},{"type":"EnumItem","Name":"X","tags":[],"Value":1,"Enum":"CellOrientation"},{"type":"EnumItem","Name":"Z","tags":[],"Value":2,"Enum":"CellOrientation"},{"type":"EnumItem","Name":"NegX","tags":[],"Value":3,"Enum":"CellOrientation"},{"type":"Enum","Name":"CenterDialogType","tags":[]},{"type":"EnumItem","Name":"UnsolicitedDialog","tags":[],"Value":1,"Enum":"CenterDialogType"},{"type":"EnumItem","Name":"PlayerInitiatedDialog","tags":[],"Value":2,"Enum":"CenterDialogType"},{"type":"EnumItem","Name":"ModalDialog","tags":[],"Value":3,"Enum":"CenterDialogType"},{"type":"EnumItem","Name":"QuitDialog","tags":[],"Value":4,"Enum":"CenterDialogType"},{"type":"Enum","Name":"ChatColor","tags":[]},{"type":"EnumItem","Name":"Blue","tags":[],"Value":0,"Enum":"ChatColor"},{"type":"EnumItem","Name":"Green","tags":[],"Value":1,"Enum":"ChatColor"},{"type":"EnumItem","Name":"Red","tags":[],"Value":2,"Enum":"ChatColor"},{"type":"Enum","Name":"ChatMode","tags":[]},{"type":"EnumItem","Name":"Menu","tags":[],"Value":0,"Enum":"ChatMode"},{"type":"EnumItem","Name":"TextAndMenu","tags":[],"Value":1,"Enum":"ChatMode"},{"type":"Enum","Name":"ChatStyle","tags":[]},{"type":"EnumItem","Name":"Classic","tags":[],"Value":0,"Enum":"ChatStyle"},{"type":"EnumItem","Name":"Bubble","tags":[],"Value":1,"Enum":"ChatStyle"},{"type":"EnumItem","Name":"ClassicAndBubble","tags":[],"Value":2,"Enum":"ChatStyle"},{"type":"Enum","Name":"CollisionFidelity","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"CollisionFidelity"},{"type":"EnumItem","Name":"Hull","tags":[],"Value":1,"Enum":"CollisionFidelity"},{"type":"EnumItem","Name":"Box","tags":[],"Value":2,"Enum":"CollisionFidelity"},{"type":"Enum","Name":"ComputerCameraMovementMode","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"ComputerCameraMovementMode"},{"type":"EnumItem","Name":"Follow","tags":[],"Value":2,"Enum":"ComputerCameraMovementMode"},{"type":"EnumItem","Name":"Classic","tags":[],"Value":1,"Enum":"ComputerCameraMovementMode"},{"type":"Enum","Name":"ComputerMovementMode","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"ComputerMovementMode"},{"type":"EnumItem","Name":"KeyboardMouse","tags":[],"Value":1,"Enum":"ComputerMovementMode"},{"type":"EnumItem","Name":"ClickToMove","tags":[],"Value":2,"Enum":"ComputerMovementMode"},{"type":"Enum","Name":"ConcurrencyModel","tags":[]},{"type":"EnumItem","Name":"Serial","tags":[],"Value":0,"Enum":"ConcurrencyModel"},{"type":"EnumItem","Name":"Safe","tags":[],"Value":1,"Enum":"ConcurrencyModel"},{"type":"EnumItem","Name":"Logical","tags":[],"Value":2,"Enum":"ConcurrencyModel"},{"type":"EnumItem","Name":"Empirical","tags":[],"Value":3,"Enum":"ConcurrencyModel"},{"type":"Enum","Name":"ControlMode","tags":[]},{"type":"EnumItem","Name":"MouseLockSwitch","tags":[],"Value":1,"Enum":"ControlMode"},{"type":"EnumItem","Name":"Classic","tags":[],"Value":0,"Enum":"ControlMode"},{"type":"Enum","Name":"CoreGuiType","tags":[]},{"type":"EnumItem","Name":"PlayerList","tags":[],"Value":0,"Enum":"CoreGuiType"},{"type":"EnumItem","Name":"Health","tags":[],"Value":1,"Enum":"CoreGuiType"},{"type":"EnumItem","Name":"Backpack","tags":[],"Value":2,"Enum":"CoreGuiType"},{"type":"EnumItem","Name":"Chat","tags":[],"Value":3,"Enum":"CoreGuiType"},{"type":"EnumItem","Name":"All","tags":[],"Value":4,"Enum":"CoreGuiType"},{"type":"Enum","Name":"CreatorType","tags":[]},{"type":"EnumItem","Name":"User","tags":[],"Value":0,"Enum":"CreatorType"},{"type":"EnumItem","Name":"Group","tags":[],"Value":1,"Enum":"CreatorType"},{"type":"Enum","Name":"CurrencyType","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"CurrencyType"},{"type":"EnumItem","Name":"Robux","tags":[],"Value":1,"Enum":"CurrencyType"},{"type":"EnumItem","Name":"Tix","tags":[],"Value":2,"Enum":"CurrencyType"},{"type":"Enum","Name":"CustomCameraMode","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"CustomCameraMode"},{"type":"EnumItem","Name":"Follow","tags":[],"Value":2,"Enum":"CustomCameraMode"},{"type":"EnumItem","Name":"Classic","tags":[],"Value":1,"Enum":"CustomCameraMode"},{"type":"Enum","Name":"DevCameraOcclusionMode","tags":[]},{"type":"EnumItem","Name":"Zoom","tags":[],"Value":0,"Enum":"DevCameraOcclusionMode"},{"type":"EnumItem","Name":"Invisicam","tags":[],"Value":1,"Enum":"DevCameraOcclusionMode"},{"type":"Enum","Name":"DevComputerCameraMovementMode","tags":[]},{"type":"EnumItem","Name":"UserChoice","tags":[],"Value":0,"Enum":"DevComputerCameraMovementMode"},{"type":"EnumItem","Name":"Classic","tags":[],"Value":1,"Enum":"DevComputerCameraMovementMode"},{"type":"EnumItem","Name":"Follow","tags":[],"Value":2,"Enum":"DevComputerCameraMovementMode"},{"type":"Enum","Name":"DevComputerMovementMode","tags":[]},{"type":"EnumItem","Name":"UserChoice","tags":[],"Value":0,"Enum":"DevComputerMovementMode"},{"type":"EnumItem","Name":"KeyboardMouse","tags":[],"Value":1,"Enum":"DevComputerMovementMode"},{"type":"EnumItem","Name":"ClickToMove","tags":[],"Value":2,"Enum":"DevComputerMovementMode"},{"type":"EnumItem","Name":"Scriptable","tags":[],"Value":3,"Enum":"DevComputerMovementMode"},{"type":"Enum","Name":"DevTouchCameraMovementMode","tags":[]},{"type":"EnumItem","Name":"UserChoice","tags":[],"Value":0,"Enum":"DevTouchCameraMovementMode"},{"type":"EnumItem","Name":"Classic","tags":[],"Value":1,"Enum":"DevTouchCameraMovementMode"},{"type":"EnumItem","Name":"Follow","tags":[],"Value":2,"Enum":"DevTouchCameraMovementMode"},{"type":"Enum","Name":"DevTouchMovementMode","tags":[]},{"type":"EnumItem","Name":"UserChoice","tags":[],"Value":0,"Enum":"DevTouchMovementMode"},{"type":"EnumItem","Name":"Thumbstick","tags":[],"Value":1,"Enum":"DevTouchMovementMode"},{"type":"EnumItem","Name":"DPad","tags":[],"Value":2,"Enum":"DevTouchMovementMode"},{"type":"EnumItem","Name":"Thumbpad","tags":[],"Value":3,"Enum":"DevTouchMovementMode"},{"type":"EnumItem","Name":"ClickToMove","tags":[],"Value":4,"Enum":"DevTouchMovementMode"},{"type":"EnumItem","Name":"Scriptable","tags":[],"Value":5,"Enum":"DevTouchMovementMode"},{"type":"Enum","Name":"DialogPurpose","tags":[]},{"type":"EnumItem","Name":"Quest","tags":[],"Value":0,"Enum":"DialogPurpose"},{"type":"EnumItem","Name":"Help","tags":[],"Value":1,"Enum":"DialogPurpose"},{"type":"EnumItem","Name":"Shop","tags":[],"Value":2,"Enum":"DialogPurpose"},{"type":"Enum","Name":"DialogTone","tags":[]},{"type":"EnumItem","Name":"Neutral","tags":[],"Value":0,"Enum":"DialogTone"},{"type":"EnumItem","Name":"Friendly","tags":[],"Value":1,"Enum":"DialogTone"},{"type":"EnumItem","Name":"Enemy","tags":[],"Value":2,"Enum":"DialogTone"},{"type":"Enum","Name":"EasingDirection","tags":[]},{"type":"EnumItem","Name":"In","tags":[],"Value":0,"Enum":"EasingDirection"},{"type":"EnumItem","Name":"Out","tags":[],"Value":1,"Enum":"EasingDirection"},{"type":"EnumItem","Name":"InOut","tags":[],"Value":2,"Enum":"EasingDirection"},{"type":"Enum","Name":"EasingStyle","tags":[]},{"type":"EnumItem","Name":"Linear","tags":[],"Value":0,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Sine","tags":[],"Value":1,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Back","tags":[],"Value":2,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Quad","tags":[],"Value":3,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Quart","tags":[],"Value":4,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Quint","tags":[],"Value":5,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Bounce","tags":[],"Value":6,"Enum":"EasingStyle"},{"type":"EnumItem","Name":"Elastic","tags":[],"Value":7,"Enum":"EasingStyle"},{"type":"Enum","Name":"EnviromentalPhysicsThrottle","tags":[]},{"type":"EnumItem","Name":"DefaultAuto","tags":[],"Value":0,"Enum":"EnviromentalPhysicsThrottle"},{"type":"EnumItem","Name":"Disabled","tags":[],"Value":1,"Enum":"EnviromentalPhysicsThrottle"},{"type":"EnumItem","Name":"Always","tags":[],"Value":2,"Enum":"EnviromentalPhysicsThrottle"},{"type":"EnumItem","Name":"Skip2","tags":[],"Value":3,"Enum":"EnviromentalPhysicsThrottle"},{"type":"EnumItem","Name":"Skip4","tags":[],"Value":4,"Enum":"EnviromentalPhysicsThrottle"},{"type":"EnumItem","Name":"Skip8","tags":[],"Value":5,"Enum":"EnviromentalPhysicsThrottle"},{"type":"EnumItem","Name":"Skip16","tags":[],"Value":6,"Enum":"EnviromentalPhysicsThrottle"},{"type":"Enum","Name":"ErrorReporting","tags":[]},{"type":"EnumItem","Name":"DontReport","tags":[],"Value":0,"Enum":"ErrorReporting"},{"type":"EnumItem","Name":"Prompt","tags":[],"Value":1,"Enum":"ErrorReporting"},{"type":"EnumItem","Name":"Report","tags":[],"Value":2,"Enum":"ErrorReporting"},{"type":"Enum","Name":"ExplosionType","tags":[]},{"type":"EnumItem","Name":"NoCraters","tags":[],"Value":0,"Enum":"ExplosionType"},{"type":"EnumItem","Name":"Craters","tags":[],"Value":1,"Enum":"ExplosionType"},{"type":"EnumItem","Name":"CratersAndDebris","tags":[],"Value":2,"Enum":"ExplosionType"},{"type":"Enum","Name":"FilterResult","tags":[]},{"type":"EnumItem","Name":"Rejected","tags":[],"Value":1,"Enum":"FilterResult"},{"type":"EnumItem","Name":"Accepted","tags":[],"Value":0,"Enum":"FilterResult"},{"type":"Enum","Name":"Font","tags":[]},{"type":"EnumItem","Name":"Legacy","tags":[],"Value":0,"Enum":"Font"},{"type":"EnumItem","Name":"Arial","tags":[],"Value":1,"Enum":"Font"},{"type":"EnumItem","Name":"ArialBold","tags":[],"Value":2,"Enum":"Font"},{"type":"EnumItem","Name":"Gotham","tags":[],"Value":3,"Enum":"Font"},{"type":"EnumItem","Name":"GothamBold","tags":[],"Value":4,"Enum":"Font"},{"type":"EnumItem","Name":"GothamLight","tags":[],"Value":5,"Enum":"Font"},{"type":"EnumItem","Name":"GothamItalic","tags":[],"Value":6,"Enum":"Font"},{"type":"Enum","Name":"FontSize","tags":[]},{"type":"EnumItem","Name":"Size8","tags":[],"Value":0,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size9","tags":[],"Value":1,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size10","tags":[],"Value":2,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size11","tags":[],"Value":3,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size12","tags":[],"Value":4,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size14","tags":[],"Value":5,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size18","tags":[],"Value":6,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size24","tags":[],"Value":7,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size36","tags":[],"Value":8,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size48","tags":[],"Value":9,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size28","tags":[],"Value":10,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size32","tags":[],"Value":11,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size42","tags":[],"Value":12,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size60","tags":[],"Value":13,"Enum":"FontSize"},{"type":"EnumItem","Name":"Size96","tags":[],"Value":14,"Enum":"FontSize"},{"type":"Enum","Name":"FormFactor","tags":[]},{"type":"EnumItem","Name":"Symmetric","tags":[],"Value":0,"Enum":"FormFactor"},{"type":"EnumItem","Name":"Brick","tags":[],"Value":1,"Enum":"FormFactor"},{"type":"EnumItem","Name":"Plate","tags":[],"Value":2,"Enum":"FormFactor"},{"type":"EnumItem","Name":"Custom","tags":[],"Value":3,"Enum":"FormFactor"},{"type":"Enum","Name":"FrameStyle","tags":[]},{"type":"EnumItem","Name":"Custom","tags":[],"Value":0,"Enum":"FrameStyle"},{"type":"EnumItem","Name":"ChatBlue","tags":[],"Value":1,"Enum":"FrameStyle"},{"type":"EnumItem","Name":"RobloxSquare","tags":[],"Value":2,"Enum":"FrameStyle"},{"type":"EnumItem","Name":"RobloxRound","tags":[],"Value":3,"Enum":"FrameStyle"},{"type":"EnumItem","Name":"ChatGreen","tags":[],"Value":4,"Enum":"FrameStyle"},{"type":"EnumItem","Name":"ChatRed","tags":[],"Value":5,"Enum":"FrameStyle"},{"type":"EnumItem","Name":"DropShadow","tags":[],"Value":6,"Enum":"FrameStyle"},{"type":"Enum","Name":"FramerateManagerMode","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":0,"Enum":"FramerateManagerMode"},{"type":"EnumItem","Name":"On","tags":[],"Value":1,"Enum":"FramerateManagerMode"},{"type":"EnumItem","Name":"Off","tags":[],"Value":2,"Enum":"FramerateManagerMode"},{"type":"Enum","Name":"FriendRequestEvent","tags":[]},{"type":"EnumItem","Name":"Issue","tags":[],"Value":0,"Enum":"FriendRequestEvent"},{"type":"EnumItem","Name":"Revoke","tags":[],"Value":1,"Enum":"FriendRequestEvent"},{"type":"EnumItem","Name":"Accept","tags":[],"Value":2,"Enum":"FriendRequestEvent"},{"type":"EnumItem","Name":"Deny","tags":[],"Value":3,"Enum":"FriendRequestEvent"},{"type":"Enum","Name":"FriendStatus","tags":[]},{"type":"EnumItem","Name":"Unknown","tags":[],"Value":0,"Enum":"FriendStatus"},{"type":"EnumItem","Name":"NotFriend","tags":[],"Value":1,"Enum":"FriendStatus"},{"type":"EnumItem","Name":"Friend","tags":[],"Value":2,"Enum":"FriendStatus"},{"type":"EnumItem","Name":"FriendRequestSent","tags":[],"Value":3,"Enum":"FriendStatus"},{"type":"EnumItem","Name":"FriendRequestReceived","tags":[],"Value":4,"Enum":"FriendStatus"},{"type":"Enum","Name":"FunctionalTestResult","tags":[]},{"type":"EnumItem","Name":"Passed","tags":[],"Value":0,"Enum":"FunctionalTestResult"},{"type":"EnumItem","Name":"Warning","tags":[],"Value":1,"Enum":"FunctionalTestResult"},{"type":"EnumItem","Name":"Error","tags":[],"Value":2,"Enum":"FunctionalTestResult"},{"type":"Enum","Name":"GearGenreSetting","tags":[]},{"type":"EnumItem","Name":"AllGenres","tags":[],"Value":0,"Enum":"GearGenreSetting"},{"type":"EnumItem","Name":"MatchingGenreOnly","tags":[],"Value":1,"Enum":"GearGenreSetting"},{"type":"Enum","Name":"GearType","tags":[]},{"type":"EnumItem","Name":"MeleeWeapons","tags":[],"Value":0,"Enum":"GearType"},{"type":"EnumItem","Name":"RangedWeapons","tags":[],"Value":1,"Enum":"GearType"},{"type":"EnumItem","Name":"Explosives","tags":[],"Value":2,"Enum":"GearType"},{"type":"EnumItem","Name":"PowerUps","tags":[],"Value":3,"Enum":"GearType"},{"type":"EnumItem","Name":"NavigationEnhancers","tags":[],"Value":4,"Enum":"GearType"},{"type":"EnumItem","Name":"MusicalInstruments","tags":[],"Value":5,"Enum":"GearType"},{"type":"EnumItem","Name":"SocialItems","tags":[],"Value":6,"Enum":"GearType"},{"type":"EnumItem","Name":"BuildingTools","tags":[],"Value":7,"Enum":"GearType"},{"type":"EnumItem","Name":"Transport","tags":[],"Value":8,"Enum":"GearType"},{"type":"Enum","Name":"Genre","tags":[]},{"type":"EnumItem","Name":"All","tags":[],"Value":0,"Enum":"Genre"},{"type":"EnumItem","Name":"TownAndCity","tags":[],"Value":1,"Enum":"Genre"},{"type":"EnumItem","Name":"Fantasy","tags":[],"Value":2,"Enum":"Genre"},{"type":"EnumItem","Name":"SciFi","tags":[],"Value":3,"Enum":"Genre"},{"type":"EnumItem","Name":"Ninja","tags":[],"Value":4,"Enum":"Genre"},{"type":"EnumItem","Name":"Scary","tags":[],"Value":5,"Enum":"Genre"},{"type":"EnumItem","Name":"Pirate","tags":[],"Value":6,"Enum":"Genre"},{"type":"EnumItem","Name":"Adventure","tags":[],"Value":7,"Enum":"Genre"},{"type":"EnumItem","Name":"Sports","tags":[],"Value":8,"Enum":"Genre"},{"type":"EnumItem","Name":"Funny","tags":[],"Value":9,"Enum":"Genre"},{"type":"EnumItem","Name":"WildWest","tags":[],"Value":10,"Enum":"Genre"},{"type":"EnumItem","Name":"War","tags":[],"Value":11,"Enum":"Genre"},{"type":"EnumItem","Name":"SkatePark","tags":[],"Value":12,"Enum":"Genre"},{"type":"EnumItem","Name":"Tutorial","tags":[],"Value":13,"Enum":"Genre"},{"type":"Enum","Name":"GraphicsMode","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":1,"Enum":"GraphicsMode"},{"type":"EnumItem","Name":"Direct3D9","tags":[],"Value":3,"Enum":"GraphicsMode"},{"type":"EnumItem","Name":"Direct3D11","tags":[],"Value":2,"Enum":"GraphicsMode"},{"type":"EnumItem","Name":"OpenGL","tags":[],"Value":4,"Enum":"GraphicsMode"},{"type":"EnumItem","Name":"NoGraphics","tags":[],"Value":5,"Enum":"GraphicsMode"},{"type":"Enum","Name":"HandlesStyle","tags":[]},{"type":"EnumItem","Name":"Resize","tags":[],"Value":0,"Enum":"HandlesStyle"},{"type":"EnumItem","Name":"Movement","tags":[],"Value":1,"Enum":"HandlesStyle"},{"type":"Enum","Name":"HttpContentType","tags":[]},{"type":"EnumItem","Name":"ApplicationJson","tags":[],"Value":0,"Enum":"HttpContentType"},{"type":"EnumItem","Name":"ApplicationXml","tags":[],"Value":1,"Enum":"HttpContentType"},{"type":"EnumItem","Name":"ApplicationUrlEncoded","tags":[],"Value":2,"Enum":"HttpContentType"},{"type":"EnumItem","Name":"TextPlain","tags":[],"Value":3,"Enum":"HttpContentType"},{"type":"EnumItem","Name":"TextXml","tags":[],"Value":4,"Enum":"HttpContentType"},{"type":"Enum","Name":"HumanoidDisplayDistanceType","tags":[]},{"type":"EnumItem","Name":"Viewer","tags":[],"Value":0,"Enum":"HumanoidDisplayDistanceType"},{"type":"EnumItem","Name":"Subject","tags":[],"Value":1,"Enum":"HumanoidDisplayDistanceType"},{"type":"EnumItem","Name":"None","tags":[],"Value":2,"Enum":"HumanoidDisplayDistanceType"},{"type":"Enum","Name":"HumanoidRigType","tags":[]},{"type":"EnumItem","Name":"R6","tags":[],"Value":0,"Enum":"HumanoidRigType"},{"type":"EnumItem","Name":"R15","tags":[],"Value":1,"Enum":"HumanoidRigType"},{"type":"Enum","Name":"HumanoidStateType","tags":[]},{"type":"EnumItem","Name":"FallingDown","tags":[],"Value":0,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Running","tags":[],"Value":8,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"RunningNoPhysics","tags":[],"Value":10,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Climbing","tags":[],"Value":12,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"StrafingNoPhysics","tags":[],"Value":11,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Ragdoll","tags":[],"Value":1,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"GettingUp","tags":[],"Value":2,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Jumping","tags":[],"Value":3,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Landed","tags":[],"Value":7,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Flying","tags":[],"Value":6,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Freefall","tags":[],"Value":5,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Seated","tags":[],"Value":13,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"PlatformStanding","tags":[],"Value":14,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Dead","tags":[],"Value":15,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Swimming","tags":[],"Value":4,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"Physics","tags":[],"Value":16,"Enum":"HumanoidStateType"},{"type":"EnumItem","Name":"None","tags":[],"Value":18,"Enum":"HumanoidStateType"},{"type":"Enum","Name":"InOut","tags":[]},{"type":"EnumItem","Name":"Edge","tags":[],"Value":0,"Enum":"InOut"},{"type":"EnumItem","Name":"Inset","tags":[],"Value":1,"Enum":"InOut"},{"type":"EnumItem","Name":"Center","tags":[],"Value":2,"Enum":"InOut"},{"type":"Enum","Name":"InfoType","tags":[]},{"type":"EnumItem","Name":"Asset","tags":[],"Value":0,"Enum":"InfoType"},{"type":"EnumItem","Name":"Product","tags":[],"Value":1,"Enum":"InfoType"},{"type":"Enum","Name":"InputType","tags":[]},{"type":"EnumItem","Name":"NoInput","tags":[],"Value":0,"Enum":"InputType"},{"type":"EnumItem","Name":"LeftTread","tags":[],"Value":1,"Enum":"InputType"},{"type":"EnumItem","Name":"RightTread","tags":[],"Value":2,"Enum":"InputType"},{"type":"EnumItem","Name":"Steer","tags":[],"Value":3,"Enum":"InputType"},{"type":"EnumItem","Name":"Throtle","tags":[],"Value":4,"Enum":"InputType"},{"type":"EnumItem","Name":"UpDown","tags":[],"Value":6,"Enum":"InputType"},{"type":"EnumItem","Name":"Action1","tags":[],"Value":7,"Enum":"InputType"},{"type":"EnumItem","Name":"Action2","tags":[],"Value":8,"Enum":"InputType"},{"type":"EnumItem","Name":"Action3","tags":[],"Value":9,"Enum":"InputType"},{"type":"EnumItem","Name":"Action4","tags":[],"Value":10,"Enum":"InputType"},{"type":"EnumItem","Name":"Action5","tags":[],"Value":11,"Enum":"InputType"},{"type":"EnumItem","Name":"Constant","tags":[],"Value":12,"Enum":"InputType"},{"type":"EnumItem","Name":"Sin","tags":[],"Value":13,"Enum":"InputType"},{"type":"Enum","Name":"JointCreationMode","tags":[]},{"type":"EnumItem","Name":"All","tags":[],"Value":0,"Enum":"JointCreationMode"},{"type":"EnumItem","Name":"Surface","tags":[],"Value":1,"Enum":"JointCreationMode"},{"type":"EnumItem","Name":"None","tags":[],"Value":2,"Enum":"JointCreationMode"},{"type":"Enum","Name":"JointType","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":22,"Enum":"JointType"},{"type":"EnumItem","Name":"Rotate","tags":[],"Value":6,"Enum":"JointType"},{"type":"EnumItem","Name":"RotateP","tags":[],"Value":7,"Enum":"JointType"},{"type":"EnumItem","Name":"RotateV","tags":[],"Value":8,"Enum":"JointType"},{"type":"EnumItem","Name":"Glue","tags":[],"Value":9,"Enum":"JointType"},{"type":"EnumItem","Name":"Weld","tags":[],"Value":1,"Enum":"JointType"},{"type":"EnumItem","Name":"Snap","tags":[],"Value":3,"Enum":"JointType"},{"type":"Enum","Name":"KeyCode","tags":[]},{"type":"EnumItem","Name":"Unknown","tags":[],"Value":0,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Backspace","tags":[],"Value":8,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Tab","tags":[],"Value":9,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Clear","tags":[],"Value":12,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Return","tags":[],"Value":13,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Pause","tags":[],"Value":19,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Escape","tags":[],"Value":27,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Space","tags":[],"Value":32,"Enum":"KeyCode"},{"type":"EnumItem","Name":"QuotedDouble","tags":[],"Value":34,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Hash","tags":[],"Value":35,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Dollar","tags":[],"Value":36,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Percent","tags":[],"Value":37,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Ampersand","tags":[],"Value":38,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Quote","tags":[],"Value":39,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftParenthesis","tags":[],"Value":40,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightParenthesis","tags":[],"Value":41,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Asterisk","tags":[],"Value":42,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Plus","tags":[],"Value":43,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Comma","tags":[],"Value":44,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Minus","tags":[],"Value":45,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Period","tags":[],"Value":46,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Slash","tags":[],"Value":47,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Zero","tags":[],"Value":48,"Enum":"KeyCode"},{"type":"EnumItem","Name":"One","tags":[],"Value":49,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Two","tags":[],"Value":50,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Three","tags":[],"Value":51,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Four","tags":[],"Value":52,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Five","tags":[],"Value":53,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Six","tags":[],"Value":54,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Seven","tags":[],"Value":55,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Eight","tags":[],"Value":56,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Nine","tags":[],"Value":57,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Colon","tags":[],"Value":58,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Semicolon","tags":[],"Value":59,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LessThan","tags":[],"Value":60,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Equals","tags":[],"Value":61,"Enum":"KeyCode"},{"type":"EnumItem","Name":"GreaterThan","tags":[],"Value":62,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Question","tags":[],"Value":63,"Enum":"KeyCode"},{"type":"EnumItem","Name":"At","tags":[],"Value":64,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftBracket","tags":[],"Value":91,"Enum":"KeyCode"},{"type":"EnumItem","Name":"BackSlash","tags":[],"Value":92,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightBracket","tags":[],"Value":93,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Caret","tags":[],"Value":94,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Underscore","tags":[],"Value":95,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Backquote","tags":[],"Value":96,"Enum":"KeyCode"},{"type":"EnumItem","Name":"A","tags":[],"Value":97,"Enum":"KeyCode"},{"type":"EnumItem","Name":"B","tags":[],"Value":98,"Enum":"KeyCode"},{"type":"EnumItem","Name":"C","tags":[],"Value":99,"Enum":"KeyCode"},{"type":"EnumItem","Name":"D","tags":[],"Value":100,"Enum":"KeyCode"},{"type":"EnumItem","Name":"E","tags":[],"Value":101,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F","tags":[],"Value":102,"Enum":"KeyCode"},{"type":"EnumItem","Name":"G","tags":[],"Value":103,"Enum":"KeyCode"},{"type":"EnumItem","Name":"H","tags":[],"Value":104,"Enum":"KeyCode"},{"type":"EnumItem","Name":"I","tags":[],"Value":105,"Enum":"KeyCode"},{"type":"EnumItem","Name":"J","tags":[],"Value":106,"Enum":"KeyCode"},{"type":"EnumItem","Name":"K","tags":[],"Value":107,"Enum":"KeyCode"},{"type":"EnumItem","Name":"L","tags":[],"Value":108,"Enum":"KeyCode"},{"type":"EnumItem","Name":"M","tags":[],"Value":109,"Enum":"KeyCode"},{"type":"EnumItem","Name":"N","tags":[],"Value":110,"Enum":"KeyCode"},{"type":"EnumItem","Name":"O","tags":[],"Value":111,"Enum":"KeyCode"},{"type":"EnumItem","Name":"P","tags":[],"Value":112,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Q","tags":[],"Value":113,"Enum":"KeyCode"},{"type":"EnumItem","Name":"R","tags":[],"Value":114,"Enum":"KeyCode"},{"type":"EnumItem","Name":"S","tags":[],"Value":115,"Enum":"KeyCode"},{"type":"EnumItem","Name":"T","tags":[],"Value":116,"Enum":"KeyCode"},{"type":"EnumItem","Name":"U","tags":[],"Value":117,"Enum":"KeyCode"},{"type":"EnumItem","Name":"V","tags":[],"Value":118,"Enum":"KeyCode"},{"type":"EnumItem","Name":"W","tags":[],"Value":119,"Enum":"KeyCode"},{"type":"EnumItem","Name":"X","tags":[],"Value":120,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Y","tags":[],"Value":121,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Z","tags":[],"Value":122,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftCurly","tags":[],"Value":123,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Pipe","tags":[],"Value":124,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightCurly","tags":[],"Value":125,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Tilde","tags":[],"Value":126,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Delete","tags":[],"Value":127,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadZero","tags":[],"Value":256,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadOne","tags":[],"Value":257,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadTwo","tags":[],"Value":258,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadThree","tags":[],"Value":259,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadFour","tags":[],"Value":260,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadFive","tags":[],"Value":261,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadSix","tags":[],"Value":262,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadSeven","tags":[],"Value":263,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadEight","tags":[],"Value":264,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadNine","tags":[],"Value":265,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadPeriod","tags":[],"Value":266,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadDivide","tags":[],"Value":267,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadMultiply","tags":[],"Value":268,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadMinus","tags":[],"Value":269,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadPlus","tags":[],"Value":270,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadEnter","tags":[],"Value":271,"Enum":"KeyCode"},{"type":"EnumItem","Name":"KeypadEquals","tags":[],"Value":272,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Up","tags":[],"Value":273,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Down","tags":[],"Value":274,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Right","tags":[],"Value":275,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Left","tags":[],"Value":276,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Insert","tags":[],"Value":277,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Home","tags":[],"Value":278,"Enum":"KeyCode"},{"type":"EnumItem","Name":"End","tags":[],"Value":279,"Enum":"KeyCode"},{"type":"EnumItem","Name":"PageUp","tags":[],"Value":280,"Enum":"KeyCode"},{"type":"EnumItem","Name":"PageDown","tags":[],"Value":281,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftShift","tags":[],"Value":304,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightShift","tags":[],"Value":303,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftMeta","tags":[],"Value":310,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightMeta","tags":[],"Value":309,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftAlt","tags":[],"Value":308,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightAlt","tags":[],"Value":307,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftControl","tags":[],"Value":306,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightControl","tags":[],"Value":305,"Enum":"KeyCode"},{"type":"EnumItem","Name":"CapsLock","tags":[],"Value":301,"Enum":"KeyCode"},{"type":"EnumItem","Name":"NumLock","tags":[],"Value":300,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ScrollLock","tags":[],"Value":302,"Enum":"KeyCode"},{"type":"EnumItem","Name":"LeftSuper","tags":[],"Value":311,"Enum":"KeyCode"},{"type":"EnumItem","Name":"RightSuper","tags":[],"Value":312,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Mode","tags":[],"Value":313,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Compose","tags":[],"Value":314,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Help","tags":[],"Value":315,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Print","tags":[],"Value":316,"Enum":"KeyCode"},{"type":"EnumItem","Name":"SysReq","tags":[],"Value":317,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Break","tags":[],"Value":318,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Menu","tags":[],"Value":319,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Power","tags":[],"Value":320,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Euro","tags":[],"Value":321,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Undo","tags":[],"Value":322,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F1","tags":[],"Value":282,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F2","tags":[],"Value":283,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F3","tags":[],"Value":284,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F4","tags":[],"Value":285,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F5","tags":[],"Value":286,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F6","tags":[],"Value":287,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F7","tags":[],"Value":288,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F8","tags":[],"Value":289,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F9","tags":[],"Value":290,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F10","tags":[],"Value":291,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F11","tags":[],"Value":292,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F12","tags":[],"Value":293,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F13","tags":[],"Value":294,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F14","tags":[],"Value":295,"Enum":"KeyCode"},{"type":"EnumItem","Name":"F15","tags":[],"Value":296,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World0","tags":[],"Value":160,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World1","tags":[],"Value":161,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World2","tags":[],"Value":162,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World3","tags":[],"Value":163,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World4","tags":[],"Value":164,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World5","tags":[],"Value":165,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World6","tags":[],"Value":166,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World7","tags":[],"Value":167,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World8","tags":[],"Value":168,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World9","tags":[],"Value":169,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World10","tags":[],"Value":170,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World11","tags":[],"Value":171,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World12","tags":[],"Value":172,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World13","tags":[],"Value":173,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World14","tags":[],"Value":174,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World15","tags":[],"Value":175,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World16","tags":[],"Value":176,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World17","tags":[],"Value":177,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World18","tags":[],"Value":178,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World19","tags":[],"Value":179,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World20","tags":[],"Value":180,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World21","tags":[],"Value":181,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World22","tags":[],"Value":182,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World23","tags":[],"Value":183,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World24","tags":[],"Value":184,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World25","tags":[],"Value":185,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World26","tags":[],"Value":186,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World27","tags":[],"Value":187,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World28","tags":[],"Value":188,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World29","tags":[],"Value":189,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World30","tags":[],"Value":190,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World31","tags":[],"Value":191,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World32","tags":[],"Value":192,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World33","tags":[],"Value":193,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World34","tags":[],"Value":194,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World35","tags":[],"Value":195,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World36","tags":[],"Value":196,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World37","tags":[],"Value":197,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World38","tags":[],"Value":198,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World39","tags":[],"Value":199,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World40","tags":[],"Value":200,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World41","tags":[],"Value":201,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World42","tags":[],"Value":202,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World43","tags":[],"Value":203,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World44","tags":[],"Value":204,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World45","tags":[],"Value":205,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World46","tags":[],"Value":206,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World47","tags":[],"Value":207,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World48","tags":[],"Value":208,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World49","tags":[],"Value":209,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World50","tags":[],"Value":210,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World51","tags":[],"Value":211,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World52","tags":[],"Value":212,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World53","tags":[],"Value":213,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World54","tags":[],"Value":214,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World55","tags":[],"Value":215,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World56","tags":[],"Value":216,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World57","tags":[],"Value":217,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World58","tags":[],"Value":218,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World59","tags":[],"Value":219,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World60","tags":[],"Value":220,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World61","tags":[],"Value":221,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World62","tags":[],"Value":222,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World63","tags":[],"Value":223,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World64","tags":[],"Value":224,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World65","tags":[],"Value":225,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World66","tags":[],"Value":226,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World67","tags":[],"Value":227,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World68","tags":[],"Value":228,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World69","tags":[],"Value":229,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World70","tags":[],"Value":230,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World71","tags":[],"Value":231,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World72","tags":[],"Value":232,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World73","tags":[],"Value":233,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World74","tags":[],"Value":234,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World75","tags":[],"Value":235,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World76","tags":[],"Value":236,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World77","tags":[],"Value":237,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World78","tags":[],"Value":238,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World79","tags":[],"Value":239,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World80","tags":[],"Value":240,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World81","tags":[],"Value":241,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World82","tags":[],"Value":242,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World83","tags":[],"Value":243,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World84","tags":[],"Value":244,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World85","tags":[],"Value":245,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World86","tags":[],"Value":246,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World87","tags":[],"Value":247,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World88","tags":[],"Value":248,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World89","tags":[],"Value":249,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World90","tags":[],"Value":250,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World91","tags":[],"Value":251,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World92","tags":[],"Value":252,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World93","tags":[],"Value":253,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World94","tags":[],"Value":254,"Enum":"KeyCode"},{"type":"EnumItem","Name":"World95","tags":[],"Value":255,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonX","tags":[],"Value":1000,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonY","tags":[],"Value":1001,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonA","tags":[],"Value":1002,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonB","tags":[],"Value":1003,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonR1","tags":[],"Value":1004,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonL1","tags":[],"Value":1005,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonR2","tags":[],"Value":1006,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonL2","tags":[],"Value":1007,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonR3","tags":[],"Value":1008,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonL3","tags":[],"Value":1009,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonStart","tags":[],"Value":1010,"Enum":"KeyCode"},{"type":"EnumItem","Name":"ButtonSelect","tags":[],"Value":1011,"Enum":"KeyCode"},{"type":"EnumItem","Name":"DPadLeft","tags":[],"Value":1012,"Enum":"KeyCode"},{"type":"EnumItem","Name":"DPadRight","tags":[],"Value":1013,"Enum":"KeyCode"},{"type":"EnumItem","Name":"DPadUp","tags":[],"Value":1014,"Enum":"KeyCode"},{"type":"EnumItem","Name":"DPadDown","tags":[],"Value":1015,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Thumbstick1","tags":[],"Value":1016,"Enum":"KeyCode"},{"type":"EnumItem","Name":"Thumbstick2","tags":[],"Value":1017,"Enum":"KeyCode"},{"type":"Enum","Name":"KeywordFilterType","tags":[]},{"type":"EnumItem","Name":"Include","tags":[],"Value":0,"Enum":"KeywordFilterType"},{"type":"EnumItem","Name":"Exclude","tags":[],"Value":1,"Enum":"KeywordFilterType"},{"type":"Enum","Name":"LeftRight","tags":[]},{"type":"EnumItem","Name":"Left","tags":[],"Value":0,"Enum":"LeftRight"},{"type":"EnumItem","Name":"Center","tags":[],"Value":1,"Enum":"LeftRight"},{"type":"EnumItem","Name":"Right","tags":[],"Value":2,"Enum":"LeftRight"},{"type":"Enum","Name":"LevelOfDetailSetting","tags":[]},{"type":"EnumItem","Name":"High","tags":[],"Value":2,"Enum":"LevelOfDetailSetting"},{"type":"EnumItem","Name":"Medium","tags":[],"Value":1,"Enum":"LevelOfDetailSetting"},{"type":"EnumItem","Name":"Low","tags":[],"Value":0,"Enum":"LevelOfDetailSetting"},{"type":"Enum","Name":"ListenerType","tags":[]},{"type":"EnumItem","Name":"Camera","tags":[],"Value":0,"Enum":"ListenerType"},{"type":"EnumItem","Name":"CFrame","tags":[],"Value":1,"Enum":"ListenerType"},{"type":"EnumItem","Name":"ObjectPosition","tags":[],"Value":2,"Enum":"ListenerType"},{"type":"EnumItem","Name":"ObjectCFrame","tags":[],"Value":3,"Enum":"ListenerType"},{"type":"Enum","Name":"Material","tags":[]},{"type":"EnumItem","Name":"Plastic","tags":[],"Value":256,"Enum":"Material"},{"type":"EnumItem","Name":"Wood","tags":[],"Value":512,"Enum":"Material"},{"type":"EnumItem","Name":"Slate","tags":[],"Value":800,"Enum":"Material"},{"type":"EnumItem","Name":"Concrete","tags":[],"Value":816,"Enum":"Material"},{"type":"EnumItem","Name":"CorrodedMetal","tags":[],"Value":1040,"Enum":"Material"},{"type":"EnumItem","Name":"DiamondPlate","tags":[],"Value":1056,"Enum":"Material"},{"type":"EnumItem","Name":"Foil","tags":[],"Value":1072,"Enum":"Material"},{"type":"EnumItem","Name":"Grass","tags":[],"Value":1280,"Enum":"Material"},{"type":"EnumItem","Name":"Ice","tags":[],"Value":1536,"Enum":"Material"},{"type":"EnumItem","Name":"Marble","tags":[],"Value":784,"Enum":"Material"},{"type":"EnumItem","Name":"Granite","tags":[],"Value":832,"Enum":"Material"},{"type":"EnumItem","Name":"Brick","tags":[],"Value":848,"Enum":"Material"},{"type":"EnumItem","Name":"Pebble","tags":[],"Value":864,"Enum":"Material"},{"type":"EnumItem","Name":"Sand","tags":[],"Value":1296,"Enum":"Material"},{"type":"EnumItem","Name":"Fabric","tags":[],"Value":1312,"Enum":"Material"},{"type":"EnumItem","Name":"SmoothPlastic","tags":[],"Value":272,"Enum":"Material"},{"type":"EnumItem","Name":"Metal","tags":[],"Value":1088,"Enum":"Material"},{"type":"EnumItem","Name":"WoodPlanks","tags":[],"Value":528,"Enum":"Material"},{"type":"EnumItem","Name":"Cobblestone","tags":[],"Value":880,"Enum":"Material"},{"type":"EnumItem","Name":"Air","tags":["notbrowsable"],"Value":1792,"Enum":"Material"},{"type":"EnumItem","Name":"Water","tags":["notbrowsable"],"Value":2048,"Enum":"Material"},{"type":"EnumItem","Name":"Rock","tags":["notbrowsable"],"Value":896,"Enum":"Material"},{"type":"EnumItem","Name":"Glacier","tags":["notbrowsable"],"Value":1552,"Enum":"Material"},{"type":"EnumItem","Name":"Snow","tags":["notbrowsable"],"Value":1328,"Enum":"Material"},{"type":"EnumItem","Name":"Sandstone","tags":["notbrowsable"],"Value":912,"Enum":"Material"},{"type":"EnumItem","Name":"Mud","tags":["notbrowsable"],"Value":1344,"Enum":"Material"},{"type":"EnumItem","Name":"Basalt","tags":["notbrowsable"],"Value":788,"Enum":"Material"},{"type":"EnumItem","Name":"Ground","tags":["notbrowsable"],"Value":1360,"Enum":"Material"},{"type":"EnumItem","Name":"CrackedLava","tags":["notbrowsable"],"Value":804,"Enum":"Material"},{"type":"EnumItem","Name":"Neon","tags":[],"Value":288,"Enum":"Material"},{"type":"EnumItem","Name":"Asphalt","tags":["notbrowsable"],"Value":1376,"Enum":"Material"},{"type":"EnumItem","Name":"LeafyGrass","tags":["notbrowsable"],"Value":1284,"Enum":"Material"},{"type":"EnumItem","Name":"Salt","tags":["notbrowsable"],"Value":1392,"Enum":"Material"},{"type":"EnumItem","Name":"Limestone","tags":["notbrowsable"],"Value":820,"Enum":"Material"},{"type":"EnumItem","Name":"Pavement","tags":["notbrowsable"],"Value":836,"Enum":"Material"},{"type":"Enum","Name":"MembershipType","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":0,"Enum":"MembershipType"},{"type":"EnumItem","Name":"BuildersClub","tags":[],"Value":1,"Enum":"MembershipType"},{"type":"EnumItem","Name":"TurboBuildersClub","tags":[],"Value":2,"Enum":"MembershipType"},{"type":"EnumItem","Name":"OutrageousBuildersClub","tags":[],"Value":3,"Enum":"MembershipType"},{"type":"Enum","Name":"MeshType","tags":[]},{"type":"EnumItem","Name":"Head","tags":[],"Value":0,"Enum":"MeshType"},{"type":"EnumItem","Name":"Torso","tags":[],"Value":1,"Enum":"MeshType"},{"type":"EnumItem","Name":"Wedge","tags":[],"Value":2,"Enum":"MeshType"},{"type":"EnumItem","Name":"Prism","tags":["deprecated"],"Value":7,"Enum":"MeshType"},{"type":"EnumItem","Name":"Pyramid","tags":["deprecated"],"Value":8,"Enum":"MeshType"},{"type":"EnumItem","Name":"ParallelRamp","tags":["deprecated"],"Value":9,"Enum":"MeshType"},{"type":"EnumItem","Name":"RightAngleRamp","tags":["deprecated"],"Value":10,"Enum":"MeshType"},{"type":"EnumItem","Name":"CornerWedge","tags":["deprecated"],"Value":11,"Enum":"MeshType"},{"type":"EnumItem","Name":"Brick","tags":[],"Value":6,"Enum":"MeshType"},{"type":"EnumItem","Name":"Sphere","tags":[],"Value":3,"Enum":"MeshType"},{"type":"EnumItem","Name":"Cylinder","tags":[],"Value":4,"Enum":"MeshType"},{"type":"EnumItem","Name":"FileMesh","tags":[],"Value":5,"Enum":"MeshType"},{"type":"Enum","Name":"MessageType","tags":[]},{"type":"EnumItem","Name":"MessageOutput","tags":[],"Value":0,"Enum":"MessageType"},{"type":"EnumItem","Name":"MessageInfo","tags":[],"Value":1,"Enum":"MessageType"},{"type":"EnumItem","Name":"MessageWarning","tags":[],"Value":2,"Enum":"MessageType"},{"type":"EnumItem","Name":"MessageError","tags":[],"Value":3,"Enum":"MessageType"},{"type":"Enum","Name":"MouseBehavior","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"MouseBehavior"},{"type":"EnumItem","Name":"LockCenter","tags":[],"Value":1,"Enum":"MouseBehavior"},{"type":"EnumItem","Name":"LockCurrentPosition","tags":[],"Value":2,"Enum":"MouseBehavior"},{"type":"Enum","Name":"MoveState","tags":[]},{"type":"EnumItem","Name":"Stopped","tags":[],"Value":0,"Enum":"MoveState"},{"type":"EnumItem","Name":"Coasting","tags":[],"Value":1,"Enum":"MoveState"},{"type":"EnumItem","Name":"Pushing","tags":[],"Value":2,"Enum":"MoveState"},{"type":"EnumItem","Name":"Stopping","tags":[],"Value":3,"Enum":"MoveState"},{"type":"EnumItem","Name":"AirFree","tags":[],"Value":4,"Enum":"MoveState"},{"type":"Enum","Name":"NameOcclusion","tags":[]},{"type":"EnumItem","Name":"OccludeAll","tags":[],"Value":2,"Enum":"NameOcclusion"},{"type":"EnumItem","Name":"EnemyOcclusion","tags":[],"Value":1,"Enum":"NameOcclusion"},{"type":"EnumItem","Name":"NoOcclusion","tags":[],"Value":0,"Enum":"NameOcclusion"},{"type":"Enum","Name":"NetworkOwnership","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":0,"Enum":"NetworkOwnership"},{"type":"EnumItem","Name":"Manual","tags":[],"Value":1,"Enum":"NetworkOwnership"},{"type":"Enum","Name":"NormalId","tags":[]},{"type":"EnumItem","Name":"Top","tags":[],"Value":1,"Enum":"NormalId"},{"type":"EnumItem","Name":"Bottom","tags":[],"Value":4,"Enum":"NormalId"},{"type":"EnumItem","Name":"Back","tags":[],"Value":2,"Enum":"NormalId"},{"type":"EnumItem","Name":"Front","tags":[],"Value":5,"Enum":"NormalId"},{"type":"EnumItem","Name":"Right","tags":[],"Value":0,"Enum":"NormalId"},{"type":"EnumItem","Name":"Left","tags":[],"Value":3,"Enum":"NormalId"},{"type":"Enum","Name":"OverrideMouseIconBehavior","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":0,"Enum":"OverrideMouseIconBehavior"},{"type":"EnumItem","Name":"ForceShow","tags":[],"Value":1,"Enum":"OverrideMouseIconBehavior"},{"type":"EnumItem","Name":"ForceHide","tags":[],"Value":2,"Enum":"OverrideMouseIconBehavior"},{"type":"Enum","Name":"PacketPriority","tags":[]},{"type":"EnumItem","Name":"IMMEDIATE_PRIORITY","tags":[],"Value":0,"Enum":"PacketPriority"},{"type":"EnumItem","Name":"HIGH_PRIORITY","tags":[],"Value":1,"Enum":"PacketPriority"},{"type":"EnumItem","Name":"MEDIUM_PRIORITY","tags":[],"Value":2,"Enum":"PacketPriority"},{"type":"EnumItem","Name":"LOW_PRIORITY","tags":[],"Value":3,"Enum":"PacketPriority"},{"type":"Enum","Name":"PacketReliability","tags":[]},{"type":"EnumItem","Name":"UNRELIABLE","tags":[],"Value":0,"Enum":"PacketReliability"},{"type":"EnumItem","Name":"UNRELIABLE_SEQUENCED","tags":[],"Value":1,"Enum":"PacketReliability"},{"type":"EnumItem","Name":"RELIABLE","tags":[],"Value":2,"Enum":"PacketReliability"},{"type":"EnumItem","Name":"RELIABLE_ORDERED","tags":[],"Value":3,"Enum":"PacketReliability"},{"type":"EnumItem","Name":"RELIABLE_SEQUENCED","tags":[],"Value":4,"Enum":"PacketReliability"},{"type":"Enum","Name":"PartType","tags":[]},{"type":"EnumItem","Name":"Ball","tags":[],"Value":0,"Enum":"PartType"},{"type":"EnumItem","Name":"Block","tags":[],"Value":1,"Enum":"PartType"},{"type":"EnumItem","Name":"Cylinder","tags":[],"Value":2,"Enum":"PartType"},{"type":"Enum","Name":"PathStatus","tags":[]},{"type":"EnumItem","Name":"Success","tags":[],"Value":0,"Enum":"PathStatus"},{"type":"EnumItem","Name":"ClosestNoPath","tags":[],"Value":1,"Enum":"PathStatus"},{"type":"EnumItem","Name":"ClosestOutOfRange","tags":[],"Value":2,"Enum":"PathStatus"},{"type":"EnumItem","Name":"FailStartNotEmpty","tags":[],"Value":3,"Enum":"PathStatus"},{"type":"EnumItem","Name":"FailFinishNotEmpty","tags":[],"Value":4,"Enum":"PathStatus"},{"type":"Enum","Name":"PhysicalPropertiesMode","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":1,"Enum":"PhysicalPropertiesMode"},{"type":"EnumItem","Name":"Legacy","tags":[],"Value":0,"Enum":"PhysicalPropertiesMode"},{"type":"EnumItem","Name":"New","tags":[],"Value":2,"Enum":"PhysicalPropertiesMode"},{"type":"Enum","Name":"PhysicsReceiveMethod","tags":[]},{"type":"EnumItem","Name":"Direct","tags":[],"Value":0,"Enum":"PhysicsReceiveMethod"},{"type":"EnumItem","Name":"Interpolation","tags":[],"Value":1,"Enum":"PhysicsReceiveMethod"},{"type":"Enum","Name":"PhysicsSendMethod","tags":[]},{"type":"EnumItem","Name":"ErrorComputation","tags":[],"Value":0,"Enum":"PhysicsSendMethod"},{"type":"EnumItem","Name":"ErrorComputation2","tags":[],"Value":1,"Enum":"PhysicsSendMethod"},{"type":"EnumItem","Name":"RoundRobin","tags":[],"Value":2,"Enum":"PhysicsSendMethod"},{"type":"EnumItem","Name":"TopNErrors","tags":[],"Value":3,"Enum":"PhysicsSendMethod"},{"type":"Enum","Name":"Platform","tags":[]},{"type":"EnumItem","Name":"Windows","tags":[],"Value":0,"Enum":"Platform"},{"type":"EnumItem","Name":"OSX","tags":[],"Value":1,"Enum":"Platform"},{"type":"EnumItem","Name":"IOS","tags":[],"Value":2,"Enum":"Platform"},{"type":"EnumItem","Name":"Android","tags":[],"Value":3,"Enum":"Platform"},{"type":"EnumItem","Name":"XBoxOne","tags":[],"Value":4,"Enum":"Platform"},{"type":"EnumItem","Name":"PS4","tags":[],"Value":5,"Enum":"Platform"},{"type":"EnumItem","Name":"PS3","tags":[],"Value":6,"Enum":"Platform"},{"type":"EnumItem","Name":"XBox360","tags":[],"Value":7,"Enum":"Platform"},{"type":"EnumItem","Name":"WiiU","tags":[],"Value":8,"Enum":"Platform"},{"type":"EnumItem","Name":"NX","tags":[],"Value":9,"Enum":"Platform"},{"type":"EnumItem","Name":"Ouya","tags":[],"Value":10,"Enum":"Platform"},{"type":"EnumItem","Name":"AndroidTV","tags":[],"Value":11,"Enum":"Platform"},{"type":"EnumItem","Name":"Chromecast","tags":[],"Value":12,"Enum":"Platform"},{"type":"EnumItem","Name":"Linux","tags":[],"Value":13,"Enum":"Platform"},{"type":"EnumItem","Name":"SteamOS","tags":[],"Value":14,"Enum":"Platform"},{"type":"EnumItem","Name":"WebOS","tags":[],"Value":15,"Enum":"Platform"},{"type":"EnumItem","Name":"DOS","tags":[],"Value":16,"Enum":"Platform"},{"type":"EnumItem","Name":"BeOS","tags":[],"Value":17,"Enum":"Platform"},{"type":"EnumItem","Name":"UWP","tags":[],"Value":18,"Enum":"Platform"},{"type":"EnumItem","Name":"None","tags":[],"Value":19,"Enum":"Platform"},{"type":"Enum","Name":"PlayerActions","tags":[]},{"type":"EnumItem","Name":"CharacterForward","tags":[],"Value":0,"Enum":"PlayerActions"},{"type":"EnumItem","Name":"CharacterBackward","tags":[],"Value":1,"Enum":"PlayerActions"},{"type":"EnumItem","Name":"CharacterLeft","tags":[],"Value":2,"Enum":"PlayerActions"},{"type":"EnumItem","Name":"CharacterRight","tags":[],"Value":3,"Enum":"PlayerActions"},{"type":"EnumItem","Name":"CharacterJump","tags":[],"Value":4,"Enum":"PlayerActions"},{"type":"Enum","Name":"PlayerChatType","tags":[]},{"type":"EnumItem","Name":"All","tags":[],"Value":0,"Enum":"PlayerChatType"},{"type":"EnumItem","Name":"Team","tags":[],"Value":1,"Enum":"PlayerChatType"},{"type":"EnumItem","Name":"Whisper","tags":[],"Value":2,"Enum":"PlayerChatType"},{"type":"Enum","Name":"PoseEasingDirection","tags":[]},{"type":"EnumItem","Name":"Out","tags":[],"Value":1,"Enum":"PoseEasingDirection"},{"type":"EnumItem","Name":"InOut","tags":[],"Value":2,"Enum":"PoseEasingDirection"},{"type":"EnumItem","Name":"In","tags":[],"Value":0,"Enum":"PoseEasingDirection"},{"type":"Enum","Name":"PoseEasingStyle","tags":[]},{"type":"EnumItem","Name":"Linear","tags":[],"Value":0,"Enum":"PoseEasingStyle"},{"type":"EnumItem","Name":"Constant","tags":[],"Value":1,"Enum":"PoseEasingStyle"},{"type":"EnumItem","Name":"Elastic","tags":[],"Value":2,"Enum":"PoseEasingStyle"},{"type":"EnumItem","Name":"Cubic","tags":[],"Value":3,"Enum":"PoseEasingStyle"},{"type":"EnumItem","Name":"Bounce","tags":[],"Value":4,"Enum":"PoseEasingStyle"},{"type":"Enum","Name":"PriorityMethod","tags":[]},{"type":"EnumItem","Name":"LastError","tags":[],"Value":0,"Enum":"PriorityMethod"},{"type":"EnumItem","Name":"AccumulatedError","tags":[],"Value":1,"Enum":"PriorityMethod"},{"type":"EnumItem","Name":"FIFO","tags":[],"Value":2,"Enum":"PriorityMethod"},{"type":"Enum","Name":"PrismSides","tags":[]},{"type":"EnumItem","Name":"3","tags":[],"Value":3,"Enum":"PrismSides"},{"type":"EnumItem","Name":"5","tags":[],"Value":5,"Enum":"PrismSides"},{"type":"EnumItem","Name":"6","tags":[],"Value":6,"Enum":"PrismSides"},{"type":"EnumItem","Name":"8","tags":[],"Value":8,"Enum":"PrismSides"},{"type":"EnumItem","Name":"10","tags":[],"Value":10,"Enum":"PrismSides"},{"type":"EnumItem","Name":"20","tags":[],"Value":20,"Enum":"PrismSides"},{"type":"Enum","Name":"PrivilegeType","tags":[]},{"type":"EnumItem","Name":"Owner","tags":[],"Value":255,"Enum":"PrivilegeType"},{"type":"EnumItem","Name":"Admin","tags":[],"Value":240,"Enum":"PrivilegeType"},{"type":"EnumItem","Name":"Member","tags":[],"Value":128,"Enum":"PrivilegeType"},{"type":"EnumItem","Name":"Visitor","tags":[],"Value":10,"Enum":"PrivilegeType"},{"type":"EnumItem","Name":"Banned","tags":[],"Value":0,"Enum":"PrivilegeType"},{"type":"Enum","Name":"ProductPurchaseDecision","tags":[]},{"type":"EnumItem","Name":"NotProcessedYet","tags":[],"Value":0,"Enum":"ProductPurchaseDecision"},{"type":"EnumItem","Name":"PurchaseGranted","tags":[],"Value":1,"Enum":"ProductPurchaseDecision"},{"type":"Enum","Name":"PyramidSides","tags":[]},{"type":"EnumItem","Name":"3","tags":[],"Value":3,"Enum":"PyramidSides"},{"type":"EnumItem","Name":"4","tags":[],"Value":4,"Enum":"PyramidSides"},{"type":"EnumItem","Name":"5","tags":[],"Value":5,"Enum":"PyramidSides"},{"type":"EnumItem","Name":"6","tags":[],"Value":6,"Enum":"PyramidSides"},{"type":"EnumItem","Name":"8","tags":[],"Value":8,"Enum":"PyramidSides"},{"type":"EnumItem","Name":"10","tags":[],"Value":10,"Enum":"PyramidSides"},{"type":"EnumItem","Name":"20","tags":[],"Value":20,"Enum":"PyramidSides"},{"type":"Enum","Name":"QualityLevel","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":0,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level01","tags":[],"Value":1,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level02","tags":[],"Value":2,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level03","tags":[],"Value":3,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level04","tags":[],"Value":4,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level05","tags":[],"Value":5,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level06","tags":[],"Value":6,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level07","tags":[],"Value":7,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level08","tags":[],"Value":8,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level09","tags":[],"Value":9,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level10","tags":[],"Value":10,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level11","tags":[],"Value":11,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level12","tags":[],"Value":12,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level13","tags":[],"Value":13,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level14","tags":[],"Value":14,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level15","tags":[],"Value":15,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level16","tags":[],"Value":16,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level17","tags":[],"Value":17,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level18","tags":[],"Value":18,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level19","tags":[],"Value":19,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level20","tags":[],"Value":20,"Enum":"QualityLevel"},{"type":"EnumItem","Name":"Level21","tags":[],"Value":21,"Enum":"QualityLevel"},{"type":"Enum","Name":"RenderPriority","tags":[]},{"type":"EnumItem","Name":"First","tags":[],"Value":0,"Enum":"RenderPriority"},{"type":"EnumItem","Name":"Input","tags":[],"Value":100,"Enum":"RenderPriority"},{"type":"EnumItem","Name":"Camera","tags":[],"Value":200,"Enum":"RenderPriority"},{"type":"EnumItem","Name":"Character","tags":[],"Value":300,"Enum":"RenderPriority"},{"type":"EnumItem","Name":"Last","tags":[],"Value":2000,"Enum":"RenderPriority"},{"type":"Enum","Name":"Resolution","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":0,"Enum":"Resolution"},{"type":"EnumItem","Name":"720x526","tags":[],"Value":1,"Enum":"Resolution"},{"type":"EnumItem","Name":"800x600","tags":[],"Value":2,"Enum":"Resolution"},{"type":"EnumItem","Name":"1024x600","tags":[],"Value":3,"Enum":"Resolution"},{"type":"EnumItem","Name":"1024x768","tags":[],"Value":4,"Enum":"Resolution"},{"type":"EnumItem","Name":"1280x720","tags":[],"Value":5,"Enum":"Resolution"},{"type":"EnumItem","Name":"1280x768","tags":[],"Value":6,"Enum":"Resolution"},{"type":"EnumItem","Name":"1152x864","tags":[],"Value":7,"Enum":"Resolution"},{"type":"EnumItem","Name":"1280x800","tags":[],"Value":8,"Enum":"Resolution"},{"type":"EnumItem","Name":"1360x768","tags":[],"Value":9,"Enum":"Resolution"},{"type":"EnumItem","Name":"1280x960","tags":[],"Value":10,"Enum":"Resolution"},{"type":"EnumItem","Name":"1280x1024","tags":[],"Value":11,"Enum":"Resolution"},{"type":"EnumItem","Name":"1440x900","tags":[],"Value":12,"Enum":"Resolution"},{"type":"EnumItem","Name":"1600x900","tags":[],"Value":13,"Enum":"Resolution"},{"type":"EnumItem","Name":"1600x1024","tags":[],"Value":14,"Enum":"Resolution"},{"type":"EnumItem","Name":"1600x1200","tags":[],"Value":15,"Enum":"Resolution"},{"type":"EnumItem","Name":"1680x1050","tags":[],"Value":16,"Enum":"Resolution"},{"type":"EnumItem","Name":"1920x1080","tags":[],"Value":17,"Enum":"Resolution"},{"type":"EnumItem","Name":"1920x1200","tags":[],"Value":18,"Enum":"Resolution"},{"type":"Enum","Name":"ReverbType","tags":[]},{"type":"EnumItem","Name":"NoReverb","tags":[],"Value":0,"Enum":"ReverbType"},{"type":"EnumItem","Name":"GenericReverb","tags":[],"Value":1,"Enum":"ReverbType"},{"type":"EnumItem","Name":"PaddedCell","tags":[],"Value":2,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Room","tags":[],"Value":3,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Bathroom","tags":[],"Value":4,"Enum":"ReverbType"},{"type":"EnumItem","Name":"LivingRoom","tags":[],"Value":5,"Enum":"ReverbType"},{"type":"EnumItem","Name":"StoneRoom","tags":[],"Value":6,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Auditorium","tags":[],"Value":7,"Enum":"ReverbType"},{"type":"EnumItem","Name":"ConcertHall","tags":[],"Value":8,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Cave","tags":[],"Value":9,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Arena","tags":[],"Value":10,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Hangar","tags":[],"Value":11,"Enum":"ReverbType"},{"type":"EnumItem","Name":"CarpettedHallway","tags":[],"Value":12,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Hallway","tags":[],"Value":13,"Enum":"ReverbType"},{"type":"EnumItem","Name":"StoneCorridor","tags":[],"Value":14,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Alley","tags":[],"Value":15,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Forest","tags":[],"Value":16,"Enum":"ReverbType"},{"type":"EnumItem","Name":"City","tags":[],"Value":17,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Mountains","tags":[],"Value":18,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Quarry","tags":[],"Value":19,"Enum":"ReverbType"},{"type":"EnumItem","Name":"Plain","tags":[],"Value":20,"Enum":"ReverbType"},{"type":"EnumItem","Name":"ParkingLot","tags":[],"Value":21,"Enum":"ReverbType"},{"type":"EnumItem","Name":"SewerPipe","tags":[],"Value":22,"Enum":"ReverbType"},{"type":"EnumItem","Name":"UnderWater","tags":[],"Value":23,"Enum":"ReverbType"},{"type":"Enum","Name":"RollOffMode","tags":[]},{"type":"EnumItem","Name":"Inverse","tags":[],"Value":0,"Enum":"RollOffMode"},{"type":"EnumItem","Name":"Linear","tags":[],"Value":1,"Enum":"RollOffMode"},{"type":"Enum","Name":"RotationType","tags":[]},{"type":"EnumItem","Name":"MovementRelative","tags":[],"Value":0,"Enum":"RotationType"},{"type":"EnumItem","Name":"CameraRelative","tags":[],"Value":1,"Enum":"RotationType"},{"type":"Enum","Name":"RuntimeUndoBehavior","tags":[]},{"type":"EnumItem","Name":"Aggregate","tags":[],"Value":0,"Enum":"RuntimeUndoBehavior"},{"type":"EnumItem","Name":"Snapshot","tags":[],"Value":1,"Enum":"RuntimeUndoBehavior"},{"type":"EnumItem","Name":"Hybrid","tags":[],"Value":2,"Enum":"RuntimeUndoBehavior"},{"type":"Enum","Name":"SaveFilter","tags":[]},{"type":"EnumItem","Name":"SaveAll","tags":[],"Value":2,"Enum":"SaveFilter"},{"type":"EnumItem","Name":"SaveWorld","tags":[],"Value":0,"Enum":"SaveFilter"},{"type":"EnumItem","Name":"SaveGame","tags":[],"Value":1,"Enum":"SaveFilter"},{"type":"Enum","Name":"SavedQualitySetting","tags":[]},{"type":"EnumItem","Name":"Automatic","tags":[],"Value":0,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel1","tags":[],"Value":1,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel2","tags":[],"Value":2,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel3","tags":[],"Value":3,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel4","tags":[],"Value":4,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel5","tags":[],"Value":5,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel6","tags":[],"Value":6,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel7","tags":[],"Value":7,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel8","tags":[],"Value":8,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel9","tags":[],"Value":9,"Enum":"SavedQualitySetting"},{"type":"EnumItem","Name":"QualityLevel10","tags":[],"Value":10,"Enum":"SavedQualitySetting"},{"type":"Enum","Name":"ScaleType","tags":[]},{"type":"EnumItem","Name":"Stretch","tags":[],"Value":0,"Enum":"ScaleType"},{"type":"EnumItem","Name":"Slice","tags":[],"Value":1,"Enum":"ScaleType"},{"type":"Enum","Name":"SizeConstraint","tags":[]},{"type":"EnumItem","Name":"RelativeXY","tags":[],"Value":0,"Enum":"SizeConstraint"},{"type":"EnumItem","Name":"RelativeXX","tags":[],"Value":1,"Enum":"SizeConstraint"},{"type":"EnumItem","Name":"RelativeYY","tags":[],"Value":2,"Enum":"SizeConstraint"},{"type":"Enum","Name":"SleepAdjustMethod","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":0,"Enum":"SleepAdjustMethod"},{"type":"EnumItem","Name":"LastSample","tags":[],"Value":1,"Enum":"SleepAdjustMethod"},{"type":"EnumItem","Name":"AverageInterval","tags":[],"Value":2,"Enum":"SleepAdjustMethod"},{"type":"Enum","Name":"SoundType","tags":[]},{"type":"EnumItem","Name":"NoSound","tags":[],"Value":0,"Enum":"SoundType"},{"type":"EnumItem","Name":"Boing","tags":[],"Value":1,"Enum":"SoundType"},{"type":"EnumItem","Name":"Bomb","tags":[],"Value":2,"Enum":"SoundType"},{"type":"EnumItem","Name":"Break","tags":[],"Value":3,"Enum":"SoundType"},{"type":"EnumItem","Name":"Click","tags":[],"Value":4,"Enum":"SoundType"},{"type":"EnumItem","Name":"Clock","tags":[],"Value":5,"Enum":"SoundType"},{"type":"EnumItem","Name":"Slingshot","tags":[],"Value":6,"Enum":"SoundType"},{"type":"EnumItem","Name":"Page","tags":[],"Value":7,"Enum":"SoundType"},{"type":"EnumItem","Name":"Ping","tags":[],"Value":8,"Enum":"SoundType"},{"type":"EnumItem","Name":"Snap","tags":[],"Value":9,"Enum":"SoundType"},{"type":"EnumItem","Name":"Splat","tags":[],"Value":10,"Enum":"SoundType"},{"type":"EnumItem","Name":"Step","tags":[],"Value":11,"Enum":"SoundType"},{"type":"EnumItem","Name":"StepOn","tags":[],"Value":12,"Enum":"SoundType"},{"type":"EnumItem","Name":"Swoosh","tags":[],"Value":13,"Enum":"SoundType"},{"type":"EnumItem","Name":"Victory","tags":[],"Value":14,"Enum":"SoundType"},{"type":"Enum","Name":"SpecialKey","tags":[]},{"type":"EnumItem","Name":"Insert","tags":[],"Value":0,"Enum":"SpecialKey"},{"type":"EnumItem","Name":"Home","tags":[],"Value":1,"Enum":"SpecialKey"},{"type":"EnumItem","Name":"End","tags":[],"Value":2,"Enum":"SpecialKey"},{"type":"EnumItem","Name":"PageUp","tags":[],"Value":3,"Enum":"SpecialKey"},{"type":"EnumItem","Name":"PageDown","tags":[],"Value":4,"Enum":"SpecialKey"},{"type":"EnumItem","Name":"ChatHotkey","tags":[],"Value":5,"Enum":"SpecialKey"},{"type":"Enum","Name":"Status","tags":[]},{"type":"EnumItem","Name":"Poison","tags":["deprecated"],"Value":0,"Enum":"Status"},{"type":"EnumItem","Name":"Confusion","tags":["deprecated"],"Value":1,"Enum":"Status"},{"type":"Enum","Name":"Stuff","tags":[]},{"type":"EnumItem","Name":"Heads","tags":[],"Value":0,"Enum":"Stuff"},{"type":"EnumItem","Name":"Faces","tags":[],"Value":1,"Enum":"Stuff"},{"type":"EnumItem","Name":"Hats","tags":[],"Value":2,"Enum":"Stuff"},{"type":"EnumItem","Name":"TShirts","tags":[],"Value":3,"Enum":"Stuff"},{"type":"EnumItem","Name":"Shirts","tags":[],"Value":4,"Enum":"Stuff"},{"type":"EnumItem","Name":"Pants","tags":[],"Value":5,"Enum":"Stuff"},{"type":"EnumItem","Name":"Gears","tags":[],"Value":6,"Enum":"Stuff"},{"type":"EnumItem","Name":"Torsos","tags":[],"Value":7,"Enum":"Stuff"},{"type":"EnumItem","Name":"LeftArms","tags":[],"Value":8,"Enum":"Stuff"},{"type":"EnumItem","Name":"RightArms","tags":[],"Value":9,"Enum":"Stuff"},{"type":"EnumItem","Name":"LeftLegs","tags":[],"Value":10,"Enum":"Stuff"},{"type":"EnumItem","Name":"RightLegs","tags":[],"Value":11,"Enum":"Stuff"},{"type":"EnumItem","Name":"Bodies","tags":[],"Value":12,"Enum":"Stuff"},{"type":"EnumItem","Name":"Costumes","tags":[],"Value":13,"Enum":"Stuff"},{"type":"Enum","Name":"Style","tags":[]},{"type":"EnumItem","Name":"AlternatingSupports","tags":[],"Value":0,"Enum":"Style"},{"type":"EnumItem","Name":"BridgeStyleSupports","tags":[],"Value":1,"Enum":"Style"},{"type":"EnumItem","Name":"NoSupports","tags":[],"Value":2,"Enum":"Style"},{"type":"Enum","Name":"SurfaceConstraint","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":0,"Enum":"SurfaceConstraint"},{"type":"EnumItem","Name":"Hinge","tags":[],"Value":1,"Enum":"SurfaceConstraint"},{"type":"EnumItem","Name":"SteppingMotor","tags":[],"Value":2,"Enum":"SurfaceConstraint"},{"type":"EnumItem","Name":"Motor","tags":[],"Value":3,"Enum":"SurfaceConstraint"},{"type":"Enum","Name":"SurfaceType","tags":[]},{"type":"EnumItem","Name":"Smooth","tags":[],"Value":0,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Glue","tags":[],"Value":1,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Weld","tags":[],"Value":2,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Studs","tags":[],"Value":3,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Inlet","tags":[],"Value":4,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Universal","tags":[],"Value":5,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Hinge","tags":[],"Value":6,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Motor","tags":[],"Value":7,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"SteppingMotor","tags":[],"Value":8,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"Unjoinable","tags":[],"Value":9,"Enum":"SurfaceType"},{"type":"EnumItem","Name":"SmoothNoOutlines","tags":[],"Value":10,"Enum":"SurfaceType"},{"type":"Enum","Name":"SwipeDirection","tags":[]},{"type":"EnumItem","Name":"Right","tags":[],"Value":0,"Enum":"SwipeDirection"},{"type":"EnumItem","Name":"Left","tags":[],"Value":1,"Enum":"SwipeDirection"},{"type":"EnumItem","Name":"Up","tags":[],"Value":2,"Enum":"SwipeDirection"},{"type":"EnumItem","Name":"Down","tags":[],"Value":3,"Enum":"SwipeDirection"},{"type":"EnumItem","Name":"None","tags":[],"Value":4,"Enum":"SwipeDirection"},{"type":"Enum","Name":"TeleportState","tags":[]},{"type":"EnumItem","Name":"RequestedFromServer","tags":[],"Value":0,"Enum":"TeleportState"},{"type":"EnumItem","Name":"Started","tags":[],"Value":1,"Enum":"TeleportState"},{"type":"EnumItem","Name":"WaitingForServer","tags":[],"Value":2,"Enum":"TeleportState"},{"type":"EnumItem","Name":"Failed","tags":[],"Value":3,"Enum":"TeleportState"},{"type":"EnumItem","Name":"InProgress","tags":[],"Value":4,"Enum":"TeleportState"},{"type":"Enum","Name":"TeleportType","tags":[]},{"type":"EnumItem","Name":"ToPlace","tags":[],"Value":0,"Enum":"TeleportType"},{"type":"EnumItem","Name":"ToInstance","tags":[],"Value":1,"Enum":"TeleportType"},{"type":"EnumItem","Name":"ToReservedServer","tags":[],"Value":2,"Enum":"TeleportType"},{"type":"Enum","Name":"TextXAlignment","tags":[]},{"type":"EnumItem","Name":"Left","tags":[],"Value":0,"Enum":"TextXAlignment"},{"type":"EnumItem","Name":"Center","tags":[],"Value":2,"Enum":"TextXAlignment"},{"type":"EnumItem","Name":"Right","tags":[],"Value":1,"Enum":"TextXAlignment"},{"type":"Enum","Name":"TextYAlignment","tags":[]},{"type":"EnumItem","Name":"Top","tags":[],"Value":0,"Enum":"TextYAlignment"},{"type":"EnumItem","Name":"Center","tags":[],"Value":1,"Enum":"TextYAlignment"},{"type":"EnumItem","Name":"Bottom","tags":[],"Value":2,"Enum":"TextYAlignment"},{"type":"Enum","Name":"ThreadPoolConfig","tags":[]},{"type":"EnumItem","Name":"Auto","tags":[],"Value":0,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"PerCore1","tags":[],"Value":101,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"PerCore2","tags":[],"Value":102,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"PerCore3","tags":[],"Value":103,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"PerCore4","tags":[],"Value":104,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"Threads1","tags":[],"Value":1,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"Threads2","tags":[],"Value":2,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"Threads3","tags":[],"Value":3,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"Threads4","tags":[],"Value":4,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"Threads8","tags":[],"Value":8,"Enum":"ThreadPoolConfig"},{"type":"EnumItem","Name":"Threads16","tags":[],"Value":16,"Enum":"ThreadPoolConfig"},{"type":"Enum","Name":"ThrottlingPriority","tags":[]},{"type":"EnumItem","Name":"Extreme","tags":[],"Value":2,"Enum":"ThrottlingPriority"},{"type":"EnumItem","Name":"ElevatedOnServer","tags":[],"Value":1,"Enum":"ThrottlingPriority"},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"ThrottlingPriority"},{"type":"Enum","Name":"TickCountSampleMethod","tags":[]},{"type":"EnumItem","Name":"Fast","tags":[],"Value":0,"Enum":"TickCountSampleMethod"},{"type":"EnumItem","Name":"Benchmark","tags":[],"Value":1,"Enum":"TickCountSampleMethod"},{"type":"EnumItem","Name":"Precise","tags":[],"Value":2,"Enum":"TickCountSampleMethod"},{"type":"Enum","Name":"TopBottom","tags":[]},{"type":"EnumItem","Name":"Top","tags":[],"Value":0,"Enum":"TopBottom"},{"type":"EnumItem","Name":"Center","tags":[],"Value":1,"Enum":"TopBottom"},{"type":"EnumItem","Name":"Bottom","tags":[],"Value":2,"Enum":"TopBottom"},{"type":"Enum","Name":"TouchCameraMovementMode","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"TouchCameraMovementMode"},{"type":"EnumItem","Name":"Follow","tags":[],"Value":2,"Enum":"TouchCameraMovementMode"},{"type":"EnumItem","Name":"Classic","tags":[],"Value":1,"Enum":"TouchCameraMovementMode"},{"type":"Enum","Name":"TouchMovementMode","tags":[]},{"type":"EnumItem","Name":"Default","tags":[],"Value":0,"Enum":"TouchMovementMode"},{"type":"EnumItem","Name":"Thumbstick","tags":[],"Value":1,"Enum":"TouchMovementMode"},{"type":"EnumItem","Name":"DPad","tags":[],"Value":2,"Enum":"TouchMovementMode"},{"type":"EnumItem","Name":"Thumbpad","tags":[],"Value":3,"Enum":"TouchMovementMode"},{"type":"EnumItem","Name":"ClickToMove","tags":[],"Value":4,"Enum":"TouchMovementMode"},{"type":"Enum","Name":"TweenStatus","tags":[]},{"type":"EnumItem","Name":"Canceled","tags":[],"Value":0,"Enum":"TweenStatus"},{"type":"EnumItem","Name":"Completed","tags":[],"Value":1,"Enum":"TweenStatus"},{"type":"Enum","Name":"UiMessageType","tags":[]},{"type":"EnumItem","Name":"UiMessageError","tags":[],"Value":0,"Enum":"UiMessageType"},{"type":"EnumItem","Name":"UiMessageInfo","tags":[],"Value":1,"Enum":"UiMessageType"},{"type":"Enum","Name":"UploadSetting","tags":[]},{"type":"EnumItem","Name":"Never","tags":[],"Value":0,"Enum":"UploadSetting"},{"type":"EnumItem","Name":"Ask","tags":[],"Value":1,"Enum":"UploadSetting"},{"type":"EnumItem","Name":"Always","tags":[],"Value":2,"Enum":"UploadSetting"},{"type":"Enum","Name":"UserCFrame","tags":[]},{"type":"EnumItem","Name":"Head","tags":[],"Value":0,"Enum":"UserCFrame"},{"type":"EnumItem","Name":"LeftHand","tags":[],"Value":1,"Enum":"UserCFrame"},{"type":"EnumItem","Name":"RightHand","tags":[],"Value":2,"Enum":"UserCFrame"},{"type":"Enum","Name":"UserInputState","tags":[]},{"type":"EnumItem","Name":"Begin","tags":[],"Value":0,"Enum":"UserInputState"},{"type":"EnumItem","Name":"Change","tags":[],"Value":1,"Enum":"UserInputState"},{"type":"EnumItem","Name":"End","tags":[],"Value":2,"Enum":"UserInputState"},{"type":"EnumItem","Name":"Cancel","tags":[],"Value":3,"Enum":"UserInputState"},{"type":"EnumItem","Name":"None","tags":[],"Value":4,"Enum":"UserInputState"},{"type":"Enum","Name":"UserInputType","tags":[]},{"type":"EnumItem","Name":"MouseButton1","tags":[],"Value":0,"Enum":"UserInputType"},{"type":"EnumItem","Name":"MouseButton2","tags":[],"Value":1,"Enum":"UserInputType"},{"type":"EnumItem","Name":"MouseButton3","tags":[],"Value":2,"Enum":"UserInputType"},{"type":"EnumItem","Name":"MouseWheel","tags":[],"Value":3,"Enum":"UserInputType"},{"type":"EnumItem","Name":"MouseMovement","tags":[],"Value":4,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Touch","tags":[],"Value":7,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Keyboard","tags":[],"Value":8,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Focus","tags":[],"Value":9,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Accelerometer","tags":[],"Value":10,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gyro","tags":[],"Value":11,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad1","tags":[],"Value":12,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad2","tags":[],"Value":13,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad3","tags":[],"Value":14,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad4","tags":[],"Value":15,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad5","tags":[],"Value":16,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad6","tags":[],"Value":17,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad7","tags":[],"Value":18,"Enum":"UserInputType"},{"type":"EnumItem","Name":"Gamepad8","tags":[],"Value":19,"Enum":"UserInputType"},{"type":"EnumItem","Name":"TextInput","tags":[],"Value":20,"Enum":"UserInputType"},{"type":"EnumItem","Name":"None","tags":[],"Value":21,"Enum":"UserInputType"},{"type":"Enum","Name":"VibrationMotor","tags":[]},{"type":"EnumItem","Name":"Large","tags":[],"Value":0,"Enum":"VibrationMotor"},{"type":"EnumItem","Name":"Small","tags":[],"Value":1,"Enum":"VibrationMotor"},{"type":"EnumItem","Name":"LeftTrigger","tags":[],"Value":2,"Enum":"VibrationMotor"},{"type":"EnumItem","Name":"RightTrigger","tags":[],"Value":3,"Enum":"VibrationMotor"},{"type":"EnumItem","Name":"LeftHand","tags":[],"Value":4,"Enum":"VibrationMotor"},{"type":"EnumItem","Name":"RightHand","tags":[],"Value":5,"Enum":"VibrationMotor"},{"type":"Enum","Name":"VideoQualitySettings","tags":[]},{"type":"EnumItem","Name":"LowResolution","tags":[],"Value":0,"Enum":"VideoQualitySettings"},{"type":"EnumItem","Name":"MediumResolution","tags":[],"Value":1,"Enum":"VideoQualitySettings"},{"type":"EnumItem","Name":"HighResolution","tags":[],"Value":2,"Enum":"VideoQualitySettings"},{"type":"Enum","Name":"WaterDirection","tags":[]},{"type":"EnumItem","Name":"NegX","tags":[],"Value":0,"Enum":"WaterDirection"},{"type":"EnumItem","Name":"X","tags":[],"Value":1,"Enum":"WaterDirection"},{"type":"EnumItem","Name":"NegY","tags":[],"Value":2,"Enum":"WaterDirection"},{"type":"EnumItem","Name":"Y","tags":[],"Value":3,"Enum":"WaterDirection"},{"type":"EnumItem","Name":"NegZ","tags":[],"Value":4,"Enum":"WaterDirection"},{"type":"EnumItem","Name":"Z","tags":[],"Value":5,"Enum":"WaterDirection"},{"type":"Enum","Name":"WaterForce","tags":[]},{"type":"EnumItem","Name":"None","tags":[],"Value":0,"Enum":"WaterForce"},{"type":"EnumItem","Name":"Small","tags":[],"Value":1,"Enum":"WaterForce"},{"type":"EnumItem","Name":"Medium","tags":[],"Value":2,"Enum":"WaterForce"},{"type":"EnumItem","Name":"Strong","tags":[],"Value":3,"Enum":"WaterForce"},{"type":"EnumItem","Name":"Max","tags":[],"Value":4,"Enum":"WaterForce"}]
]===]
return rawApiJson
end
function getCurrentApiJson()
local jsonStr = nil
if readfile and getelysianpath then
if readfile(getelysianpath().."Xpl0rerApi.txt") then
print("Api found in folder!")
jsonStr = readfile(getelysianpath().."Xpl0rerApi.txt")
return jsonStr
end
end
local success, err = pcall(function()
jsonStr = httpGet(apiUrl)
print("Fetched json successfully")
end)
if success then
print("Returning json")
--print(jsonStr:sub(1,500))
return jsonStr
else
print("Error fetching json: " .. tostring(err))
print("Falling back to local copy")
return getLocalApiJson()
end
end
function splitStringIntoChunks(jsonStr)
-- Splits up a string into a table with a given size
local t = {}
for i = 1, math.ceil(string.len(jsonStr)/maxChunkSize) do
local str = jsonStr:sub((i-1)*maxChunkSize+1, i*maxChunkSize)
table.insert(t, str)
end
return t
end
local jsonToParse = getCurrentApiJson()
local apiChunks = splitStringIntoChunks(jsonToParse)
function getRbxApi()
--[[
Api.Classes
Api.Enums
Api.GetProperties(className)
Api.IsEnum(valueType)
--]]
-- Services
local HttpService = game:GetService("HttpService")
local ServerStorage = game:GetService("ServerStorage")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
-- Remotes
--local Remotes = ReplicatedStorage:WaitForChild("OnlineStudio"):WaitForChild("Remotes")
--local GetApiJsonFunction = Remotes:WaitForChild("GetApiJson")
-- Functions
local JsonDecode = function(s) return HttpService:JSONDecode(s) end
local function GetApiRemoteFunction(index)
if (apiChunks[index]) then
return apiChunks[index], #apiChunks
else
print("Bad index for GetApiJson")
return nil
end
end
local function getApiJson()
local apiTable = {}
local firstPage, pageCount = GetApiRemoteFunction(1)
table.insert(apiTable, firstPage)
for i = 2, pageCount do
--print("Fetching API page # " .. tostring(i))
local result = GetApiRemoteFunction(i)
table.insert(apiTable, result)
end
return table.concat(apiTable)
end
local json = getApiJson()
local apiDump = JsonDecode(json)
local Classes = {}
local Enums = {}
local function sortAlphabetic(t, property)
table.sort(t,
function(x,y) return x[property] < y[property]
end)
end
local function isEnum(name)
return Enums[name] ~= nil
end
local function getProperties(className)
local class = Classes[className]
local properties = {}
if not class then return properties end
while class do
for _,property in pairs(class.Properties) do
table.insert(properties, property)
end
class = Classes[class.Superclass]
end
sortAlphabetic(properties, "Name")
return properties
end
for _,item in pairs(apiDump) do
local itemType = item.type
-- Classes --
if (itemType == 'Class') then
Classes[item.Name] = item
item.Properties = {}
item.Functions = {}
item.YieldFunctions = {}
item.Events = {}
item.Callbacks = {}
-- Members --
elseif (itemType == 'Property') then
table.insert(Classes[item.Class].Properties, item)
elseif (itemType == 'Function') then
table.insert(Classes[item.Class].Functions, item)
elseif (itemType == 'YieldFunction') then
table.insert(Classes[item.Class].YieldFunctions, item)
elseif (itemType == 'Event') then
table.insert(Classes[item.Class].Events, item)
elseif (itemType == 'Callback') then
table.insert(Classes[item.Class].Callbacks, item)
-- Enums --
elseif (itemType == 'Enum') then
Enums[item.Name] = item
item.EnumItems = {}
elseif (itemType == 'EnumItem') then
Enums[item.Enum].EnumItems[item.Name] = item
end
end
return {
Classes = Classes;
Enums = Enums;
GetProperties = getProperties;
IsEnum = isEnum;
}
end
-- Modules
local Permissions = {CanEdit = true}
local RbxApi = getRbxApi()
--[[
RbxApi.Classes
RbxApi.Enums
RbxApi.GetProperties(className)
RbxApi.IsEnum(valueType)
--]]
-- Styles
local function CreateColor3(r, g, b) return Color3.new(r/255,g/255,b/255) end
local Styles = {
Font = Enum.Font.Arial;
Margin = 5;
Black = CreateColor3(0,0,0);
White = CreateColor3(255,255,255);
}
local Row = {
Font = Styles.Font;
FontSize = Enum.FontSize.Size14;
TextXAlignment = Enum.TextXAlignment.Left;
TextColor = Styles.Black;
TextColorOver = Styles.White;
TextLockedColor = CreateColor3(120,120,120);
Height = 24;
BorderColor = CreateColor3(216,216,216);
BackgroundColor = Styles.White;
BackgroundColorAlternate = CreateColor3(246,246,246);
BackgroundColorMouseover = CreateColor3(211,224,244);
TitleMarginLeft = 15;
}
local DropDown = {
Font = Styles.Font;
FontSize = Enum.FontSize.Size14;
TextColor = CreateColor3(0,0,0);
TextColorOver = Styles.White;
TextXAlignment = Enum.TextXAlignment.Left;
Height = 16;
BackColor = Styles.White;
BackColorOver = CreateColor3(86,125,188);
BorderColor = CreateColor3(216,216,216);
BorderSizePixel = 2;
ArrowColor = CreateColor3(160,160,160);
ArrowColorOver = Styles.Black;
}
local BrickColors = {
BoxSize = 13;
BorderSizePixel = 1;
BorderColor = CreateColor3(160,160,160);
FrameColor = CreateColor3(160,160,160);
Size = 20;
Padding = 4;
ColorsPerRow = 8;
OuterBorder = 1;
OuterBorderColor = Styles.Black;
}
wait(1)
local Gui = D_E_X
local PropertiesFrame = Gui:WaitForChild("PropertiesFrame")
local ExplorerFrame = Gui:WaitForChild("ExplorerPanel")
local bindGetSelection = ExplorerFrame.TotallyNotGetSelection
local bindSelectionChanged = ExplorerFrame.TotallyNotSelectionChanged
local bindGetApi = PropertiesFrame.GetApi
local bindGetAwait = PropertiesFrame.GetAwaiting
local bindSetAwait = PropertiesFrame.SetAwaiting
local ContentUrl = ContentProvider.BaseUrl .. "asset/?id="
local SettingsRemote = Gui:WaitForChild("SettingsPanel"):WaitForChild("GetSetting")
local propertiesSearch = PropertiesFrame.Header.TextBox
local AwaitingObjectValue = false
local AwaitingObjectObj
local AwaitingObjectProp
function searchingProperties()
if propertiesSearch.Text ~= "" and propertiesSearch.Text ~= "Search Properties" then
return true
end
return false
end
local function GetSelection()
local selection = bindGetSelection:Invoke()
if #selection == 0 then
return nil
else
return selection
end
end
-- Number
local function Round(number, decimalPlaces)
return tonumber(string.format("%." .. (decimalPlaces or 0) .. "f", number))
end
-- Strings
local function Split(str, delimiter)
local start = 1
local t = {}
while true do
local pos = string.find (str, delimiter, start, true)
if not pos then
break
end
table.insert (t, string.sub (str, start, pos - 1))
start = pos + string.len (delimiter)
end
table.insert (t, string.sub (str, start))
return t
end
-- Data Type Handling
local function ToString(value, type)
if type == "float" then
return tostring(Round(value,2))
elseif type == "Content" then
if string.find(value,"/asset") then
local match = string.find(value, "=") + 1
local id = string.sub(value, match)
return id
else
return tostring(value)
end
elseif type == "Vector2" then
local x = value.x
local y = value.y
return string.format("%g, %g", x,y)
elseif type == "Vector3" then
local x = value.x
local y = value.y
local z = value.z
return string.format("%g, %g, %g", x,y,z)
elseif type == "Color3" then
local r = value.r
local g = value.g
local b = value.b
return string.format("%d, %d, %d", r*255,g*255,b*255)
elseif type == "UDim2" then
local xScale = value.X.Scale
local xOffset = value.X.Offset
local yScale = value.Y.Scale
local yOffset = value.Y.Offset
return string.format("{%d, %d}, {%d, %d}", xScale, xOffset, yScale, yOffset)
else
return tostring(value)
end
end
local function ToValue(value,type)
if type == "Vector2" then
local list = Split(value,",")
if #list < 2 then return nil end
local x = tonumber(list[1]) or 0
local y = tonumber(list[2]) or 0
return Vector2.new(x,y)
elseif type == "Vector3" then
local list = Split(value,",")
if #list < 3 then return nil end
local x = tonumber(list[1]) or 0
local y = tonumber(list[2]) or 0
local z = tonumber(list[3]) or 0
return Vector3.new(x,y,z)
elseif type == "Color3" then
local list = Split(value,",")
if #list < 3 then return nil end
local r = tonumber(list[1]) or 0
local g = tonumber(list[2]) or 0
local b = tonumber(list[3]) or 0
return Color3.new(r/255,g/255, b/255)
elseif type == "UDim2" then
local list = Split(string.gsub(string.gsub(value, "{", ""),"}",""),",")
if #list < 4 then return nil end
local xScale = tonumber(list[1]) or 0
local xOffset = tonumber(list[2]) or 0
local yScale = tonumber(list[3]) or 0
local yOffset = tonumber(list[4]) or 0
return UDim2.new(xScale, xOffset, yScale, yOffset)
elseif type == "Content" then
if tonumber(value) ~= nil then
value = ContentUrl .. value
end
return value
elseif type == "float" or type == "int" or type == "double" then
return tonumber(value)
elseif type == "string" then
return value
elseif type == "NumberRange" then
local list = Split(value,",")
if #list == 1 then
if tonumber(list[1]) == nil then return nil end
local newVal = tonumber(list[1]) or 0
return NumberRange.new(newVal)
end
if #list < 2 then return nil end
local x = tonumber(list[1]) or 0
local y = tonumber(list[2]) or 0
return NumberRange.new(x,y)
else
return nil
end
end
-- Tables
local function CopyTable(T)
local t2 = {}
for k,v in pairs(T) do
t2[k] = v
end
return t2
end
local function SortTable(T)
table.sort(T,
function(x,y) return x.Name < y.Name
end)
end
-- Spritesheet
local Sprite = {
Width = 13;
Height = 13;
}
local Spritesheet = {
Image = "http://www.roblox.com/asset/?id=128896947";
Height = 256;
Width = 256;
}
local Images = {
"unchecked",
"checked",
"unchecked_over",
"checked_over",
"unchecked_disabled",
"checked_disabled"
}
local function SpritePosition(spriteName)
local x = 0
local y = 0
for i,v in pairs(Images) do
if (v == spriteName) then
return {x, y}
end
x = x + Sprite.Height
if (x + Sprite.Width) > Spritesheet.Width then
x = 0
y = y + Sprite.Height
end
end
end
local function GetCheckboxImageName(checked, readOnly, mouseover)
if checked then
if readOnly then
return "checked_disabled"
elseif mouseover then
return "checked_over"
else
return "checked"
end
else
if readOnly then
return "unchecked_disabled"
elseif mouseover then
return "unchecked_over"
else
return "unchecked"
end
end
end
local MAP_ID = 418720155
-- Gui Controls --
---- IconMap ----
-- Image size: 256px x 256px
-- Icon size: 16px x 16px
-- Padding between each icon: 2px
-- Padding around image edge: 1px
-- Total icons: 14 x 14 (196)
local Icon do
local iconMap = 'http://www.roblox.com/asset/?id=' .. MAP_ID
game:GetService('ContentProvider'):Preload(iconMap)
local iconDehash do
-- 14 x 14, 0-based input, 0-based output
local f=math.floor
function iconDehash(h)
return f(h/14%14),f(h%14)
end
end
function Icon(IconFrame,index)
local row,col = iconDehash(index)
local mapSize = Vector2.new(256,256)
local pad,border = 2,1
local iconSize = 16
local class = 'Frame'
if type(IconFrame) == 'string' then
class = IconFrame
IconFrame = nil
end
if not IconFrame then
IconFrame = Create(class,{
Name = "Icon";
BackgroundTransparency = 1;
ClipsDescendants = true;
Create('ImageLabel',{
Name = "IconMap";
Active = false;
BackgroundTransparency = 1;
Image = iconMap;
Size = UDim2.new(mapSize.x/iconSize,0,mapSize.y/iconSize,0);
});
})
end
IconFrame.IconMap.Position = UDim2.new(-col - (pad*(col+1) + border)/iconSize,0,-row - (pad*(row+1) + border)/iconSize,0)
return IconFrame
end
end
local function CreateCell()
local tableCell = Instance.new("Frame")
tableCell.Size = UDim2.new(0.5, -1, 1, 0)
tableCell.BackgroundColor3 = Row.BackgroundColor
tableCell.BorderColor3 = Row.BorderColor
return tableCell
end
local function CreateLabel(readOnly)
local label = Instance.new("TextLabel")
label.Font = Row.Font
label.FontSize = Row.FontSize
label.TextXAlignment = Row.TextXAlignment
label.BackgroundTransparency = 1
if readOnly then
label.TextColor3 = Row.TextLockedColor
else
label.TextColor3 = Row.TextColor
end
return label
end
local function CreateTextButton(readOnly, onClick)
local button = Instance.new("TextButton")
button.Font = Row.Font
button.FontSize = Row.FontSize
button.TextXAlignment = Row.TextXAlignment
button.BackgroundTransparency = 1
if readOnly then
button.TextColor3 = Row.TextLockedColor
else
button.TextColor3 = Row.TextColor
button.MouseButton1Click:connect(function()
onClick()
end)
end
return button
end
local function CreateObject(readOnly)
local button = Instance.new("TextButton")
button.Font = Row.Font
button.FontSize = Row.FontSize
button.TextXAlignment = Row.TextXAlignment
button.BackgroundTransparency = 1
if readOnly then
button.TextColor3 = Row.TextLockedColor
else
button.TextColor3 = Row.TextColor
end
local cancel = Create(Icon('ImageButton',177),{
Name = "Cancel";
Visible = false;
Position = UDim2.new(1,-20,0,0);
Size = UDim2.new(0,20,0,20);
Parent = button;
})
return button
end
local function CreateTextBox(readOnly)
if readOnly then
local box = CreateLabel(readOnly)
return box
else
local box = Instance.new("TextBox")
if not SettingsRemote:Invoke("ClearProps") then
box.ClearTextOnFocus = false
end
box.Font = Row.Font
box.FontSize = Row.FontSize
box.TextXAlignment = Row.TextXAlignment
box.BackgroundTransparency = 1
box.TextColor3 = Row.TextColor
return box
end
end
local function CreateDropDownItem(text, onClick)
local button = Instance.new("TextButton")
button.Font = DropDown.Font
button.FontSize = DropDown.FontSize
button.TextColor3 = DropDown.TextColor
button.TextXAlignment = DropDown.TextXAlignment
button.BackgroundColor3 = DropDown.BackColor
button.AutoButtonColor = false
button.BorderSizePixel = 0
button.Active = true
button.Text = text
button.MouseEnter:connect(function()
button.TextColor3 = DropDown.TextColorOver
button.BackgroundColor3 = DropDown.BackColorOver
end)
button.MouseLeave:connect(function()
button.TextColor3 = DropDown.TextColor
button.BackgroundColor3 = DropDown.BackColor
end)
button.MouseButton1Click:connect(function()
onClick(text)
end)
return button
end
local function CreateDropDown(choices, currentChoice, readOnly, onClick)
local frame = Instance.new("Frame")
frame.Name = "DropDown"
frame.Size = UDim2.new(1, 0, 1, 0)
frame.BackgroundTransparency = 1
frame.Active = true
local menu = nil
local arrow = nil
local expanded = false
local margin = DropDown.BorderSizePixel;
local button = Instance.new("TextButton")
button.Font = Row.Font
button.FontSize = Row.FontSize
button.TextXAlignment = Row.TextXAlignment
button.BackgroundTransparency = 1
button.TextColor3 = Row.TextColor
if readOnly then
button.TextColor3 = Row.TextLockedColor
end
button.Text = currentChoice
button.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
button.Position = UDim2.new(0, Styles.Margin, 0, 0)
button.Parent = frame
local function showArrow(color)
if arrow then arrow:Destroy() end
local graphicTemplate = Create('Frame',{
Name="Graphic";
BorderSizePixel = 0;
BackgroundColor3 = color;
})
local graphicSize = 16/2
arrow = ArrowGraphic(graphicSize,'Down',true,graphicTemplate)
arrow.Position = UDim2.new(1,-graphicSize * 2,0.5,-graphicSize/2)
arrow.Parent = frame
end
local function hideMenu()
expanded = false
showArrow(DropDown.ArrowColor)
if menu then menu:Destroy() end
end
local function showMenu()
expanded = true
menu = Instance.new("Frame")
menu.Size = UDim2.new(1, -2 * margin, 0, #choices * DropDown.Height)
menu.Position = UDim2.new(0, margin, 0, Row.Height + margin)
menu.BackgroundTransparency = 0
menu.BackgroundColor3 = DropDown.BackColor
menu.BorderColor3 = DropDown.BorderColor
menu.BorderSizePixel = DropDown.BorderSizePixel
menu.Active = true
menu.ZIndex = 5
menu.Parent = frame
local parentFrameHeight = menu.Parent.Parent.Parent.Parent.Size.Y.Offset
local rowHeight = menu.Parent.Parent.Parent.Position.Y.Offset
if (rowHeight + menu.Size.Y.Offset) > math.max(parentFrameHeight,PropertiesFrame.AbsoluteSize.y) then
menu.Position = UDim2.new(0, margin, 0, -1 * (#choices * DropDown.Height) - margin)
end
local function choice(name)
onClick(name)
hideMenu()
end
for i,name in pairs(choices) do
local option = CreateDropDownItem(name, function()
choice(name)
end)
option.Size = UDim2.new(1, 0, 0, 16)
option.Position = UDim2.new(0, 0, 0, (i - 1) * DropDown.Height)
option.ZIndex = menu.ZIndex
option.Parent = menu
end
end
showArrow(DropDown.ArrowColor)
if not readOnly then
button.MouseEnter:connect(function()
button.TextColor3 = Row.TextColor
showArrow(DropDown.ArrowColorOver)
end)
button.MouseLeave:connect(function()
button.TextColor3 = Row.TextColor
if not expanded then
showArrow(DropDown.ArrowColor)
end
end)
button.MouseButton1Click:connect(function()
if expanded then
hideMenu()
else
showMenu()
end
end)
end
return frame,button
end
local function CreateBrickColor(readOnly, onClick)
local frame = Instance.new("Frame")
frame.Size = UDim2.new(1,0,1,0)
frame.BackgroundTransparency = 1
local colorPalette = Instance.new("Frame")
colorPalette.BackgroundTransparency = 0
colorPalette.SizeConstraint = Enum.SizeConstraint.RelativeXX
colorPalette.Size = UDim2.new(1, -2 * BrickColors.OuterBorder, 1, -2 * BrickColors.OuterBorder)
colorPalette.BorderSizePixel = BrickColors.BorderSizePixel
colorPalette.BorderColor3 = BrickColors.BorderColor
colorPalette.Position = UDim2.new(0, BrickColors.OuterBorder, 0, BrickColors.OuterBorder + Row.Height)
colorPalette.ZIndex = 5
colorPalette.Visible = false
colorPalette.BorderSizePixel = BrickColors.OuterBorder
colorPalette.BorderColor3 = BrickColors.OuterBorderColor
colorPalette.Parent = frame
local function show()
colorPalette.Visible = true
end
local function hide()
colorPalette.Visible = false
end
local function toggle()
colorPalette.Visible = not colorPalette.Visible
end
local colorBox = Instance.new("TextButton", frame)
colorBox.Position = UDim2.new(0, Styles.Margin, 0, Styles.Margin)
colorBox.Size = UDim2.new(0, BrickColors.BoxSize, 0, BrickColors.BoxSize)
colorBox.Text = ""
colorBox.MouseButton1Click:connect(function()
if not readOnly then
toggle()
end
end)
if readOnly then
colorBox.AutoButtonColor = false
end
local spacingBefore = (Styles.Margin * 2) + BrickColors.BoxSize
local propertyLabel = CreateTextButton(readOnly, function()
if not readOnly then
toggle()
end
end)
propertyLabel.Size = UDim2.new(1, (-1 * spacingBefore) - Styles.Margin, 1, 0)
propertyLabel.Position = UDim2.new(0, spacingBefore, 0, 0)
propertyLabel.Parent = frame
local size = (1 / BrickColors.ColorsPerRow)
for index = 0, 127 do
local brickColor = BrickColor.palette(index)
local color3 = brickColor.Color
local x = size * (index % BrickColors.ColorsPerRow)
local y = size * math.floor(index / BrickColors.ColorsPerRow)
local brickColorBox = Instance.new("TextButton")
brickColorBox.Text = ""
brickColorBox.Size = UDim2.new(size,0,size,0)
brickColorBox.BackgroundColor3 = color3
brickColorBox.Position = UDim2.new(x, 0, y, 0)
brickColorBox.ZIndex = colorPalette.ZIndex
brickColorBox.Parent = colorPalette
brickColorBox.MouseButton1Click:connect(function()
hide()
onClick(brickColor)
end)
end
return frame,propertyLabel,colorBox
end
local function CreateColor3Control(readOnly, onClick)
local frame = Instance.new("Frame")
frame.Size = UDim2.new(1,0,1,0)
frame.BackgroundTransparency = 1
local colorBox = Instance.new("TextButton", frame)
colorBox.Position = UDim2.new(0, Styles.Margin, 0, Styles.Margin)
colorBox.Size = UDim2.new(0, BrickColors.BoxSize, 0, BrickColors.BoxSize)
colorBox.Text = ""
colorBox.AutoButtonColor = false
local spacingBefore = (Styles.Margin * 2) + BrickColors.BoxSize
local box = CreateTextBox(readOnly)
box.Size = UDim2.new(1, (-1 * spacingBefore) - Styles.Margin, 1, 0)
box.Position = UDim2.new(0, spacingBefore, 0, 0)
box.Parent = frame
return frame,box,colorBox
end
function CreateCheckbox(value, readOnly, onClick)
local checked = value
local mouseover = false
local checkboxFrame = Instance.new("ImageButton")
checkboxFrame.Size = UDim2.new(0, Sprite.Width, 0, Sprite.Height)
checkboxFrame.BackgroundTransparency = 1
checkboxFrame.ClipsDescendants = true
--checkboxFrame.Position = UDim2.new(0, Styles.Margin, 0, Styles.Margin)
local spritesheetImage = Instance.new("ImageLabel", checkboxFrame)
spritesheetImage.Name = "SpritesheetImageLabel"
spritesheetImage.Size = UDim2.new(0, Spritesheet.Width, 0, Spritesheet.Height)
spritesheetImage.Image = Spritesheet.Image
spritesheetImage.BackgroundTransparency = 1
local function updateSprite()
local spriteName = GetCheckboxImageName(checked, readOnly, mouseover)
local spritePosition = SpritePosition(spriteName)
spritesheetImage.Position = UDim2.new(0, -1 * spritePosition[1], 0, -1 * spritePosition[2])
end
local function setValue(val)
checked = val
updateSprite()
end
if not readOnly then
checkboxFrame.MouseEnter:connect(function() mouseover = true updateSprite() end)
checkboxFrame.MouseLeave:connect(function() mouseover = false updateSprite() end)
checkboxFrame.MouseButton1Click:connect(function()
onClick(checked)
end)
end
updateSprite()
return checkboxFrame, setValue
end
-- Code for handling controls of various data types --
local Controls = {}
Controls["default"] = function(object, propertyData, readOnly)
local propertyName = propertyData["Name"]
local propertyType = propertyData["ValueType"]
local box = CreateTextBox(readOnly)
box.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
box.Position = UDim2.new(0, Styles.Margin, 0, 0)
local function update()
local value = object[propertyName]
box.Text = ToString(value, propertyType)
end
if not readOnly then
box.FocusLost:connect(function(enterPressed)
Set(object, propertyData, ToValue(box.Text,propertyType))
update()
end)
end
update()
object.Changed:connect(function(property)
if (property == propertyName) then
update()
end
end)
return box
end
Controls["bool"] = function(object, propertyData, readOnly)
local propertyName = propertyData["Name"]
local checked = object[propertyName]
local checkbox, setValue = CreateCheckbox(checked, readOnly, function(value)
Set(object, propertyData, not checked)
end)
checkbox.Position = UDim2.new(0, Styles.Margin, 0, Styles.Margin)
setValue(checked)
local function update()
checked = object[propertyName]
setValue(checked)
end
object.Changed:connect(function(property)
if (property == propertyName) then
update()
end
end)
if object:IsA("BoolValue") then
object.Changed:connect(function(val)
update()
end)
end
update()
return checkbox
end
Controls["BrickColor"] = function(object, propertyData, readOnly)
local propertyName = propertyData["Name"]
local frame,label,brickColorBox = CreateBrickColor(readOnly, function(brickColor)
Set(object, propertyData, brickColor)
end)
local function update()
local value = object[propertyName]
brickColorBox.BackgroundColor3 = value.Color
label.Text = tostring(value)
end
update()
object.Changed:connect(function(property)
if (property == propertyName) then
update()
end
end)
return frame
end
Controls["Color3"] = function(object, propertyData, readOnly)
local propertyName = propertyData["Name"]
local frame,textBox,colorBox = CreateColor3Control(readOnly)
textBox.FocusLost:connect(function(enterPressed)
Set(object, propertyData, ToValue(textBox.Text,"Color3"))
local value = object[propertyName]
colorBox.BackgroundColor3 = value
textBox.Text = ToString(value, "Color3")
end)
local function update()
local value = object[propertyName]
colorBox.BackgroundColor3 = value
textBox.Text = ToString(value, "Color3")
end
update()
object.Changed:connect(function(property)
if (property == propertyName) then
update()
end
end)
return frame
end
Controls["Enum"] = function(object, propertyData, readOnly)
local propertyName = propertyData["Name"]
local propertyType = propertyData["ValueType"]
local enumName = object[propertyName].Name
local enumNames = {}
for _,enum in pairs(Enum[tostring(propertyType)]:GetEnumItems()) do
table.insert(enumNames, enum.Name)
end
local dropdown, propertyLabel = CreateDropDown(enumNames, enumName, readOnly, function(value)
Set(object, propertyData, value)
end)
--dropdown.Parent = frame
local function update()
local value = object[propertyName].Name
propertyLabel.Text = tostring(value)
end
update()
object.Changed:connect(function(property)
if (property == propertyName) then
update()
end
end)
return dropdown
end
Controls["Object"] = function(object, propertyData, readOnly)
local propertyName = propertyData["Name"]
local propertyType = propertyData["ValueType"]
local box = CreateObject(readOnly,function()end)
box.Size = UDim2.new(1, -2 * Styles.Margin, 1, 0)
box.Position = UDim2.new(0, Styles.Margin, 0, 0)
local function update()
if AwaitingObjectObj == object then
if AwaitingObjectValue == true then
box.Text = "Select an Object"
return
end
end
local value = object[propertyName]
box.Text = ToString(value, propertyType)
end
if not readOnly then
box.MouseButton1Click:connect(function()
if AwaitingObjectValue then
AwaitingObjectValue = false
update()
return
end
AwaitingObjectValue = true
AwaitingObjectObj = object
AwaitingObjectProp = propertyData
box.Text = "Select an Object"
end)
box.Cancel.Visible = true
box.Cancel.MouseButton1Click:connect(function()
object[propertyName] = nil
end)
end
update()
object.Changed:connect(function(property)
if (property == propertyName) then
update()
end
end)
if object:IsA("ObjectValue") then
object.Changed:connect(function(val)
update()
end)
end
return box
end
function GetControl(object, propertyData, readOnly)
local propertyType = propertyData["ValueType"]
local control = nil
if Controls[propertyType] then
control = Controls[propertyType](object, propertyData, readOnly)
elseif RbxApi.IsEnum(propertyType) then
control = Controls["Enum"](object, propertyData, readOnly)
else
control = Controls["default"](object, propertyData, readOnly)
end
return control
end
-- Permissions
function CanEditObject(object)
local player = Players.LocalPlayer
local character = player.Character
return Permissions.CanEdit
end
function CanEditProperty(object,propertyData)
local tags = propertyData["tags"]
for _,name in pairs(tags) do
if name == "readonly" then
return false
end
end
return CanEditObject(object)
end
--RbxApi
local function PropertyIsHidden(propertyData)
local tags = propertyData["tags"]
for _,name in pairs(tags) do
if name == "deprecated"
or name == "hidden"
or name == "writeonly" then
return true
end
end
return false
end
function Set(object, propertyData, value)
local propertyName = propertyData["Name"]
local propertyType = propertyData["ValueType"]
if value == nil then return end
for i,v in pairs(GetSelection()) do
if CanEditProperty(v,propertyData) then
pcall(function()
--print("Setting " .. propertyName .. " to " .. tostring(value))
v[propertyName] = value
end)
end
end
end
function CreateRow(object, propertyData, isAlternateRow)
local propertyName = propertyData["Name"]
local propertyType = propertyData["ValueType"]
local propertyValue = object[propertyName]
--rowValue, rowValueType, isAlternate
local backColor = Row.BackgroundColor;
if (isAlternateRow) then
backColor = Row.BackgroundColorAlternate
end
local readOnly = not CanEditProperty(object, propertyData)
if propertyType == "Instance" or propertyName == "Parent" then readOnly = true end
local rowFrame = Instance.new("Frame")
rowFrame.Size = UDim2.new(1,0,0,Row.Height)
rowFrame.BackgroundTransparency = 1
rowFrame.Name = 'Row'
local propertyLabelFrame = CreateCell()
propertyLabelFrame.Parent = rowFrame
propertyLabelFrame.ClipsDescendants = true
local propertyLabel = CreateLabel(readOnly)
propertyLabel.Text = propertyName
propertyLabel.Size = UDim2.new(1, -1 * Row.TitleMarginLeft, 1, 0)
propertyLabel.Position = UDim2.new(0, Row.TitleMarginLeft, 0, 0)
propertyLabel.Parent = propertyLabelFrame
local propertyValueFrame = CreateCell()
propertyValueFrame.Size = UDim2.new(0.5, -1, 1, 0)
propertyValueFrame.Position = UDim2.new(0.5, 0, 0, 0)
propertyValueFrame.Parent = rowFrame
local control = GetControl(object, propertyData, readOnly)
control.Parent = propertyValueFrame
rowFrame.MouseEnter:connect(function()
propertyLabelFrame.BackgroundColor3 = Row.BackgroundColorMouseover
propertyValueFrame.BackgroundColor3 = Row.BackgroundColorMouseover
end)
rowFrame.MouseLeave:connect(function()
propertyLabelFrame.BackgroundColor3 = backColor
propertyValueFrame.BackgroundColor3 = backColor
end)
propertyLabelFrame.BackgroundColor3 = backColor
propertyValueFrame.BackgroundColor3 = backColor
return rowFrame
end
function ClearPropertiesList()
for _,instance in pairs(ContentFrame:GetChildren()) do
instance:Destroy()
end
end
local selection = Gui:FindFirstChild("Selection", 1)
print(selection)
function displayProperties(props)
for i,v in pairs(props) do
pcall(function()
local a = CreateRow(v.object, v.propertyData, ((numRows % 2) == 0))
a.Position = UDim2.new(0,0,0,numRows*Row.Height)
a.Parent = ContentFrame
numRows = numRows + 1
end)
end
end
function checkForDupe(prop,props)
for i,v in pairs(props) do
if v.propertyData.Name == prop.Name and v.propertyData.ValueType == prop.ValueType then
return true
end
end
return false
end
function sortProps(t)
table.sort(t,
function(x,y) return x.propertyData.Name < y.propertyData.Name
end)
end
function showProperties(obj)
ClearPropertiesList()
if obj == nil then return end
local propHolder = {}
local foundProps = {}
numRows = 0
for _,nextObj in pairs(obj) do
if not foundProps[nextObj.className] then
foundProps[nextObj.className] = true
for i,v in pairs(RbxApi.GetProperties(nextObj.className)) do
local suc, err = pcall(function()
if not (PropertyIsHidden(v)) and not checkForDupe(v,propHolder) then
if string.find(string.lower(v.Name),string.lower(propertiesSearch.Text)) or not searchingProperties() then
table.insert(propHolder,{propertyData = v, object = nextObj})
end
end
end)
--[[if not suc then
warn("Problem getting the value of property " .. v.Name .. " | " .. err)
end --]]
end
end
end
sortProps(propHolder)
displayProperties(propHolder)
ContentFrame.Size = UDim2.new(1, 0, 0, numRows * Row.Height)
scrollBar.ScrollIndex = 0
scrollBar.TotalSpace = numRows * Row.Height
scrollBar.Update()
end
----------------------------------------------------------------
-----------------------SCROLLBAR STUFF--------------------------
----------------------------------------------------------------
----------------------------------------------------------------
local ScrollBarWidth = 16
local ScrollStyles = {
Background = Color3.new(233/255, 233/255, 233/255);
Border = Color3.new(149/255, 149/255, 149/255);
Selected = Color3.new( 63/255, 119/255, 189/255);
BorderSelected = Color3.new( 55/255, 106/255, 167/255);
Text = Color3.new( 0/255, 0/255, 0/255);
TextDisabled = Color3.new(128/255, 128/255, 128/255);
TextSelected = Color3.new(255/255, 255/255, 255/255);
Button = Color3.new(221/255, 221/255, 221/255);
ButtonBorder = Color3.new(149/255, 149/255, 149/255);
ButtonSelected = Color3.new(255/255, 0/255, 0/255);
Field = Color3.new(255/255, 255/255, 255/255);
FieldBorder = Color3.new(191/255, 191/255, 191/255);
TitleBackground = Color3.new(178/255, 178/255, 178/255);
}
do
local ZIndexLock = {}
function SetZIndex(object,z)
if not ZIndexLock[object] then
ZIndexLock[object] = true
if object:IsA'GuiObject' then
object.ZIndex = z
end
local children = object:GetChildren()
for i = 1,#children do
SetZIndex(children[i],z)
end
ZIndexLock[object] = nil
end
end
end
function SetZIndexOnChanged(object)
return object.Changed:connect(function(p)
if p == "ZIndex" then
SetZIndex(object,object.ZIndex)
end
end)
end
function Create(ty,data)
local obj
if type(ty) == 'string' then
obj = Instance.new(ty)
else
obj = ty
end
for k, v in pairs(data) do
if type(k) == 'number' then
v.Parent = obj
else
obj[k] = v
end
end
return obj
end
-- returns the ascendant ScreenGui of an object
function GetScreen(screen)
if screen == nil then return nil end
while not screen:IsA("ScreenGui") do
screen = screen.Parent
if screen == nil then return nil end
end
return screen
end
-- AutoButtonColor doesn't always reset properly
function ResetButtonColor(button)
local active = button.Active
button.Active = not active
button.Active = active
end
function ArrowGraphic(size,dir,scaled,template)
local Frame = Create('Frame',{
Name = "Arrow Graphic";
BorderSizePixel = 0;
Size = UDim2.new(0,size,0,size);
Transparency = 1;
})
if not template then
template = Instance.new("Frame")
template.BorderSizePixel = 0
end
local transform
if dir == nil or dir == 'Up' then
function transform(p,s) return p,s end
elseif dir == 'Down' then
function transform(p,s) return UDim2.new(0,p.X.Offset,0,size-p.Y.Offset-1),s end
elseif dir == 'Left' then
function transform(p,s) return UDim2.new(0,p.Y.Offset,0,p.X.Offset),UDim2.new(0,s.Y.Offset,0,s.X.Offset) end
elseif dir == 'Right' then
function transform(p,s) return UDim2.new(0,size-p.Y.Offset-1,0,p.X.Offset),UDim2.new(0,s.Y.Offset,0,s.X.Offset) end
end
local scale
if scaled then
function scale(p,s) return UDim2.new(p.X.Offset/size,0,p.Y.Offset/size,0),UDim2.new(s.X.Offset/size,0,s.Y.Offset/size,0) end
else
function scale(p,s) return p,s end
end
local o = math.floor(size/4)
if size%2 == 0 then
local n = size/2-1
for i = 0,n do
local t = template:Clone()
local p,s = scale(transform(
UDim2.new(0,n-i,0,o+i),
UDim2.new(0,(i+1)*2,0,1)
))
t.Position = p
t.Size = s
t.Parent = Frame
end
else
local n = (size-1)/2
for i = 0,n do
local t = template:Clone()
local p,s = scale(transform(
UDim2.new(0,n-i,0,o+i),
UDim2.new(0,i*2+1,0,1)
))
t.Position = p
t.Size = s
t.Parent = Frame
end
end
if size%4 > 1 then
local t = template:Clone()
local p,s = scale(transform(
UDim2.new(0,0,0,size-o-1),
UDim2.new(0,size,0,1)
))
t.Position = p
t.Size = s
t.Parent = Frame
end
return Frame
end
function GripGraphic(size,dir,spacing,scaled,template)
local Frame = Create('Frame',{
Name = "Grip Graphic";
BorderSizePixel = 0;
Size = UDim2.new(0,size.x,0,size.y);
Transparency = 1;
})
if not template then
template = Instance.new("Frame")
template.BorderSizePixel = 0
end
spacing = spacing or 2
local scale
if scaled then
function scale(p) return UDim2.new(p.X.Offset/size.x,0,p.Y.Offset/size.y,0) end
else
function scale(p) return p end
end
if dir == 'Vertical' then
for i=0,size.x-1,spacing do
local t = template:Clone()
t.Size = scale(UDim2.new(0,1,0,size.y))
t.Position = scale(UDim2.new(0,i,0,0))
t.Parent = Frame
end
elseif dir == nil or dir == 'Horizontal' then
for i=0,size.y-1,spacing do
local t = template:Clone()
t.Size = scale(UDim2.new(0,size.x,0,1))
t.Position = scale(UDim2.new(0,0,0,i))
t.Parent = Frame
end
end
return Frame
end
do
local mt = {
__index = {
GetScrollPercent = function(self)
return self.ScrollIndex/(self.TotalSpace-self.VisibleSpace)
end;
CanScrollDown = function(self)
return self.ScrollIndex + self.VisibleSpace < self.TotalSpace
end;
CanScrollUp = function(self)
return self.ScrollIndex > 0
end;
ScrollDown = function(self)
self.ScrollIndex = self.ScrollIndex + self.PageIncrement
self:Update()
end;
ScrollUp = function(self)
self.ScrollIndex = self.ScrollIndex - self.PageIncrement
self:Update()
end;
ScrollTo = function(self,index)
self.ScrollIndex = index
self:Update()
end;
SetScrollPercent = function(self,percent)
self.ScrollIndex = math.floor((self.TotalSpace - self.VisibleSpace)*percent + 0.5)
self:Update()
end;
};
}
mt.__index.CanScrollRight = mt.__index.CanScrollDown
mt.__index.CanScrollLeft = mt.__index.CanScrollUp
mt.__index.ScrollLeft = mt.__index.ScrollUp
mt.__index.ScrollRight = mt.__index.ScrollDown
function ScrollBar(horizontal)
-- create row scroll bar
local ScrollFrame = Create('Frame',{
Name = "ScrollFrame";
Position = horizontal and UDim2.new(0,0,1,-ScrollBarWidth) or UDim2.new(1,-ScrollBarWidth,0,0);
Size = horizontal and UDim2.new(1,0,0,ScrollBarWidth) or UDim2.new(0,ScrollBarWidth,1,0);
BackgroundTransparency = 1;
Create('ImageButton',{
Name = "ScrollDown";
Position = horizontal and UDim2.new(1,-ScrollBarWidth,0,0) or UDim2.new(0,0,1,-ScrollBarWidth);
Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
BackgroundColor3 = ScrollStyles.Button;
BorderColor3 = ScrollStyles.Border;
--BorderSizePixel = 0;
});
Create('ImageButton',{
Name = "ScrollUp";
Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
BackgroundColor3 = ScrollStyles.Button;
BorderColor3 = ScrollStyles.Border;
--BorderSizePixel = 0;
});
Create('ImageButton',{
Name = "ScrollBar";
Size = horizontal and UDim2.new(1,-ScrollBarWidth*2,1,0) or UDim2.new(1,0,1,-ScrollBarWidth*2);
Position = horizontal and UDim2.new(0,ScrollBarWidth,0,0) or UDim2.new(0,0,0,ScrollBarWidth);
AutoButtonColor = false;
BackgroundColor3 = Color3.new(0.94902, 0.94902, 0.94902);
BorderColor3 = ScrollStyles.Border;
--BorderSizePixel = 0;
Create('ImageButton',{
Name = "ScrollThumb";
AutoButtonColor = false;
Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
BackgroundColor3 = ScrollStyles.Button;
BorderColor3 = ScrollStyles.Border;
--BorderSizePixel = 0;
});
});
})
local graphicTemplate = Create('Frame',{
Name="Graphic";
BorderSizePixel = 0;
BackgroundColor3 = ScrollStyles.Border;
})
local graphicSize = ScrollBarWidth/2
local ScrollDownFrame = ScrollFrame.ScrollDown
local ScrollDownGraphic = ArrowGraphic(graphicSize,horizontal and 'Right' or 'Down',true,graphicTemplate)
ScrollDownGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
ScrollDownGraphic.Parent = ScrollDownFrame
local ScrollUpFrame = ScrollFrame.ScrollUp
local ScrollUpGraphic = ArrowGraphic(graphicSize,horizontal and 'Left' or 'Up',true,graphicTemplate)
ScrollUpGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
ScrollUpGraphic.Parent = ScrollUpFrame
local ScrollBarFrame = ScrollFrame.ScrollBar
local ScrollThumbFrame = ScrollBarFrame.ScrollThumb
do
local size = ScrollBarWidth*3/8
local Decal = GripGraphic(Vector2.new(size,size),horizontal and 'Vertical' or 'Horizontal',2,graphicTemplate)
Decal.Position = UDim2.new(0.5,-size/2,0.5,-size/2)
Decal.Parent = ScrollThumbFrame
end
local MouseDrag = Create('ImageButton',{
Name = "MouseDrag";
Position = UDim2.new(-0.25,0,-0.25,0);
Size = UDim2.new(1.5,0,1.5,0);
Transparency = 1;
AutoButtonColor = false;
Active = true;
ZIndex = 10;
})
local Class = setmetatable({
GUI = ScrollFrame;
ScrollIndex = 0;
VisibleSpace = 0;
TotalSpace = 0;
PageIncrement = 1;
},mt)
local UpdateScrollThumb
if horizontal then
function UpdateScrollThumb()
ScrollThumbFrame.Size = UDim2.new(Class.VisibleSpace/Class.TotalSpace,0,0,ScrollBarWidth)
if ScrollThumbFrame.AbsoluteSize.x < ScrollBarWidth then
ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,0,ScrollBarWidth)
end
local barSize = ScrollBarFrame.AbsoluteSize.x
ScrollThumbFrame.Position = UDim2.new(Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.x)/barSize,0,0,0)
end
else
function UpdateScrollThumb()
ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,Class.VisibleSpace/Class.TotalSpace,0)
if ScrollThumbFrame.AbsoluteSize.y < ScrollBarWidth then
ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,0,ScrollBarWidth)
end
local barSize = ScrollBarFrame.AbsoluteSize.y
ScrollThumbFrame.Position = UDim2.new(0,0,Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.y)/barSize,0)
end
end
local lastDown
local lastUp
local scrollStyle = {BackgroundColor3=ScrollStyles.Border,BackgroundTransparency=0}
local scrollStyle_ds = {BackgroundColor3=ScrollStyles.Border,BackgroundTransparency=0.7}
local function Update()
local t = Class.TotalSpace
local v = Class.VisibleSpace
local s = Class.ScrollIndex
if v <= t then
if s > 0 then
if s + v > t then
Class.ScrollIndex = t - v
end
else
Class.ScrollIndex = 0
end
else
Class.ScrollIndex = 0
end
if Class.UpdateCallback then
if Class.UpdateCallback(Class) == false then
return
end
end
local down = Class:CanScrollDown()
local up = Class:CanScrollUp()
if down ~= lastDown then
lastDown = down
ScrollDownFrame.Active = down
ScrollDownFrame.AutoButtonColor = down
local children = ScrollDownGraphic:GetChildren()
local style = down and scrollStyle or scrollStyle_ds
for i = 1,#children do
Create(children[i],style)
end
end
if up ~= lastUp then
lastUp = up
ScrollUpFrame.Active = up
ScrollUpFrame.AutoButtonColor = up
local children = ScrollUpGraphic:GetChildren()
local style = up and scrollStyle or scrollStyle_ds
for i = 1,#children do
Create(children[i],style)
end
end
ScrollThumbFrame.Visible = down or up
UpdateScrollThumb()
end
Class.Update = Update
SetZIndexOnChanged(ScrollFrame)
local scrollEventID = 0
ScrollDownFrame.MouseButton1Down:connect(function()
scrollEventID = tick()
local current = scrollEventID
local up_con
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollDownFrame)
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
Class:ScrollDown()
wait(0.2) -- delay before auto scroll
while scrollEventID == current do
Class:ScrollDown()
if not Class:CanScrollDown() then break end
wait()
end
end)
ScrollDownFrame.MouseButton1Up:connect(function()
scrollEventID = tick()
end)
ScrollUpFrame.MouseButton1Down:connect(function()
scrollEventID = tick()
local current = scrollEventID
local up_con
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollUpFrame)
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
Class:ScrollUp()
wait(0.2)
while scrollEventID == current do
Class:ScrollUp()
if not Class:CanScrollUp() then break end
wait()
end
end)
ScrollUpFrame.MouseButton1Up:connect(function()
scrollEventID = tick()
end)
if horizontal then
ScrollBarFrame.MouseButton1Down:connect(function(x,y)
scrollEventID = tick()
local current = scrollEventID
local up_con
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollUpFrame)
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
if x > ScrollThumbFrame.AbsolutePosition.x then
Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
wait(0.2)
while scrollEventID == current do
if x < ScrollThumbFrame.AbsolutePosition.x + ScrollThumbFrame.AbsoluteSize.x then break end
Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
wait()
end
else
Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
wait(0.2)
while scrollEventID == current do
if x > ScrollThumbFrame.AbsolutePosition.x then break end
Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
wait()
end
end
end)
else
ScrollBarFrame.MouseButton1Down:connect(function(x,y)
scrollEventID = tick()
local current = scrollEventID
local up_con
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollUpFrame)
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
if y > ScrollThumbFrame.AbsolutePosition.y then
Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
wait(0.2)
while scrollEventID == current do
if y < ScrollThumbFrame.AbsolutePosition.y + ScrollThumbFrame.AbsoluteSize.y then break end
Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
wait()
end
else
Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
wait(0.2)
while scrollEventID == current do
if y > ScrollThumbFrame.AbsolutePosition.y then break end
Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
wait()
end
end
end)
end
if horizontal then
ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
scrollEventID = tick()
local mouse_offset = x - ScrollThumbFrame.AbsolutePosition.x
local drag_con
local up_con
drag_con = MouseDrag.MouseMoved:connect(function(x,y)
local bar_abs_pos = ScrollBarFrame.AbsolutePosition.x
local bar_drag = ScrollBarFrame.AbsoluteSize.x - ScrollThumbFrame.AbsoluteSize.x
local bar_abs_one = bar_abs_pos + bar_drag
x = x - mouse_offset
x = x < bar_abs_pos and bar_abs_pos or x > bar_abs_one and bar_abs_one or x
x = x - bar_abs_pos
Class:SetScrollPercent(x/(bar_drag))
end)
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollThumbFrame)
drag_con:disconnect(); drag_con = nil
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
end)
else
ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
scrollEventID = tick()
local mouse_offset = y - ScrollThumbFrame.AbsolutePosition.y
local drag_con
local up_con
drag_con = MouseDrag.MouseMoved:connect(function(x,y)
local bar_abs_pos = ScrollBarFrame.AbsolutePosition.y
local bar_drag = ScrollBarFrame.AbsoluteSize.y - ScrollThumbFrame.AbsoluteSize.y
local bar_abs_one = bar_abs_pos + bar_drag
y = y - mouse_offset
y = y < bar_abs_pos and bar_abs_pos or y > bar_abs_one and bar_abs_one or y
y = y - bar_abs_pos
Class:SetScrollPercent(y/(bar_drag))
end)
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollThumbFrame)
drag_con:disconnect(); drag_con = nil
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
end)
end
function Class:Destroy()
ScrollFrame:Destroy()
MouseDrag:Destroy()
for k in pairs(Class) do
Class[k] = nil
end
setmetatable(Class,nil)
end
Update()
return Class
end
end
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
local MainFrame = Instance.new("Frame")
MainFrame.Name = "MainFrame"
MainFrame.Size = UDim2.new(1, -1 * ScrollBarWidth, 1, 0)
MainFrame.Position = UDim2.new(0, 0, 0, 0)
MainFrame.BackgroundTransparency = 1
MainFrame.ClipsDescendants = true
MainFrame.Parent = PropertiesFrame
ContentFrame = Instance.new("Frame")
ContentFrame.Name = "ContentFrame"
ContentFrame.Size = UDim2.new(1, 0, 0, 0)
ContentFrame.BackgroundTransparency = 1
ContentFrame.Parent = MainFrame
scrollBar = ScrollBar(false)
scrollBar.PageIncrement = 1
Create(scrollBar.GUI,{
Position = UDim2.new(1,-ScrollBarWidth,0,0);
Size = UDim2.new(0,ScrollBarWidth,1,0);
Parent = PropertiesFrame;
})
scrollBarH = ScrollBar(true)
scrollBarH.PageIncrement = ScrollBarWidth
Create(scrollBarH.GUI,{
Position = UDim2.new(0,0,1,-ScrollBarWidth);
Size = UDim2.new(1,-ScrollBarWidth,0,ScrollBarWidth);
Visible = false;
Parent = PropertiesFrame;
})
do
local listEntries = {}
local nameConnLookup = {}
function scrollBar.UpdateCallback(self)
scrollBar.TotalSpace = ContentFrame.AbsoluteSize.Y
scrollBar.VisibleSpace = MainFrame.AbsoluteSize.Y
ContentFrame.Position = UDim2.new(ContentFrame.Position.X.Scale,ContentFrame.Position.X.Offset,0,-1*scrollBar.ScrollIndex)
end
function scrollBarH.UpdateCallback(self)
end
MainFrame.Changed:connect(function(p)
if p == 'AbsoluteSize' then
scrollBarH.VisibleSpace = math.ceil(MainFrame.AbsoluteSize.x)
scrollBarH:Update()
scrollBar.VisibleSpace = math.ceil(MainFrame.AbsoluteSize.y)
scrollBar:Update()
end
end)
local wheelAmount = Row.Height
PropertiesFrame.MouseWheelForward:connect(function()
if scrollBar.VisibleSpace - 1 > wheelAmount then
scrollBar:ScrollTo(scrollBar.ScrollIndex - wheelAmount)
else
scrollBar:ScrollTo(scrollBar.ScrollIndex - scrollBar.VisibleSpace)
end
end)
PropertiesFrame.MouseWheelBackward:connect(function()
if scrollBar.VisibleSpace - 1 > wheelAmount then
scrollBar:ScrollTo(scrollBar.ScrollIndex + wheelAmount)
else
scrollBar:ScrollTo(scrollBar.ScrollIndex + scrollBar.VisibleSpace)
end
end)
end
scrollBar.VisibleSpace = math.ceil(MainFrame.AbsoluteSize.y)
scrollBar:Update()
showProperties(GetSelection())
bindSelectionChanged.Event:connect(function()
showProperties(GetSelection())
end)
bindSetAwait.Event:connect(function(obj)
if AwaitingObjectValue then
AwaitingObjectValue = false
local mySel = obj
if mySel then
pcall(function()
Set(AwaitingObjectObj, AwaitingObjectProp, mySel)
end)
end
end
end)
propertiesSearch.Changed:connect(function(prop)
if prop == "Text" then
showProperties(GetSelection())
end
end)
bindGetApi.OnInvoke = function()
return RbxApi
end
bindGetAwait.OnInvoke = function()
return AwaitingObjectValue
end
end)
spawn(function()
local top = D_E_X.ScriptEditor
local editorGrid = top:WaitForChild("EditorGrid")
local currentSource = ""
local currentEditor = {
x = 0,
y = 0
}
local userInput = game:GetService("UserInputService")
local mouse = game:GetService("Players").LocalPlayer:GetMouse()
local topBar = top:WaitForChild("TopBar")
local scriptBar = topBar:WaitForChild("ScriptBar")
local scriptBarLeft = topBar:WaitForChild("ScriptBarLeft")
local scriptBarRight = topBar:WaitForChild("ScriptBarRight")
local clipboardButton = topBar:WaitForChild("Clipboard")
local entryTemplate = topBar:WaitForChild("Entry")
local openEvent = top:WaitForChild("OpenScript")
local closeButton = top:WaitForChild("Close")
local memoryScripts = {}
local editingIndex = 0
-- Scrollbar
local ScrollBarWidth = 16
local ScrollStyles = {
Background = Color3.new(233/255, 233/255, 233/255);
Border = Color3.new(149/255, 149/255, 149/255);
Selected = Color3.new( 63/255, 119/255, 189/255);
BorderSelected = Color3.new( 55/255, 106/255, 167/255);
Text = Color3.new( 0/255, 0/255, 0/255);
TextDisabled = Color3.new(128/255, 128/255, 128/255);
TextSelected = Color3.new(255/255, 255/255, 255/255);
Button = Color3.new(221/255, 221/255, 221/255);
ButtonBorder = Color3.new(149/255, 149/255, 149/255);
ButtonSelected = Color3.new(255/255, 0/255, 0/255);
Field = Color3.new(255/255, 255/255, 255/255);
FieldBorder = Color3.new(191/255, 191/255, 191/255);
TitleBackground = Color3.new(178/255, 178/255, 178/255);
}
do
local ZIndexLock = {}
function SetZIndex(object,z)
if not ZIndexLock[object] then
ZIndexLock[object] = true
if object:IsA'GuiObject' then
object.ZIndex = z
end
local children = object:GetChildren()
for i = 1,#children do
SetZIndex(children[i],z)
end
ZIndexLock[object] = nil
end
end
end
function SetZIndexOnChanged(object)
return object.Changed:connect(function(p)
if p == "ZIndex" then
SetZIndex(object,object.ZIndex)
end
end)
end
function Create(ty,data)
local obj
if type(ty) == 'string' then
obj = Instance.new(ty)
else
obj = ty
end
for k, v in pairs(data) do
if type(k) == 'number' then
v.Parent = obj
else
obj[k] = v
end
end
return obj
end
-- returns the ascendant ScreenGui of an object
function GetScreen(screen)
if screen == nil then return nil end
while not screen:IsA("ScreenGui") do
screen = screen.Parent
if screen == nil then return nil end
end
return screen
end
-- AutoButtonColor doesn't always reset properly
function ResetButtonColor(button)
local active = button.Active
button.Active = not active
button.Active = active
end
function ArrowGraphic(size,dir,scaled,template)
local Frame = Create('Frame',{
Name = "Arrow Graphic";
BorderSizePixel = 0;
Size = UDim2.new(0,size,0,size);
Transparency = 1;
})
if not template then
template = Instance.new("Frame")
template.BorderSizePixel = 0
end
local transform
if dir == nil or dir == 'Up' then
function transform(p,s) return p,s end
elseif dir == 'Down' then
function transform(p,s) return UDim2.new(0,p.X.Offset,0,size-p.Y.Offset-1),s end
elseif dir == 'Left' then
function transform(p,s) return UDim2.new(0,p.Y.Offset,0,p.X.Offset),UDim2.new(0,s.Y.Offset,0,s.X.Offset) end
elseif dir == 'Right' then
function transform(p,s) return UDim2.new(0,size-p.Y.Offset-1,0,p.X.Offset),UDim2.new(0,s.Y.Offset,0,s.X.Offset) end
end
local scale
if scaled then
function scale(p,s) return UDim2.new(p.X.Offset/size,0,p.Y.Offset/size,0),UDim2.new(s.X.Offset/size,0,s.Y.Offset/size,0) end
else
function scale(p,s) return p,s end
end
local o = math.floor(size/4)
if size%2 == 0 then
local n = size/2-1
for i = 0,n do
local t = template:Clone()
local p,s = scale(transform(
UDim2.new(0,n-i,0,o+i),
UDim2.new(0,(i+1)*2,0,1)
))
t.Position = p
t.Size = s
t.Parent = Frame
end
else
local n = (size-1)/2
for i = 0,n do
local t = template:Clone()
local p,s = scale(transform(
UDim2.new(0,n-i,0,o+i),
UDim2.new(0,i*2+1,0,1)
))
t.Position = p
t.Size = s
t.Parent = Frame
end
end
if size%4 > 1 then
local t = template:Clone()
local p,s = scale(transform(
UDim2.new(0,0,0,size-o-1),
UDim2.new(0,size,0,1)
))
t.Position = p
t.Size = s
t.Parent = Frame
end
return Frame
end
function GripGraphic(size,dir,spacing,scaled,template)
local Frame = Create('Frame',{
Name = "Grip Graphic";
BorderSizePixel = 0;
Size = UDim2.new(0,size.x,0,size.y);
Transparency = 1;
})
if not template then
template = Instance.new("Frame")
template.BorderSizePixel = 0
end
spacing = spacing or 2
local scale
if scaled then
function scale(p) return UDim2.new(p.X.Offset/size.x,0,p.Y.Offset/size.y,0) end
else
function scale(p) return p end
end
if dir == 'Vertical' then
for i=0,size.x-1,spacing do
local t = template:Clone()
t.Size = scale(UDim2.new(0,1,0,size.y))
t.Position = scale(UDim2.new(0,i,0,0))
t.Parent = Frame
end
elseif dir == nil or dir == 'Horizontal' then
for i=0,size.y-1,spacing do
local t = template:Clone()
t.Size = scale(UDim2.new(0,size.x,0,1))
t.Position = scale(UDim2.new(0,0,0,i))
t.Parent = Frame
end
end
return Frame
end
do
local mt = {
__index = {
GetScrollPercent = function(self)
return self.ScrollIndex/(self.TotalSpace-self.VisibleSpace)
end;
CanScrollDown = function(self)
return self.ScrollIndex + self.VisibleSpace < self.TotalSpace
end;
CanScrollUp = function(self)
return self.ScrollIndex > 0
end;
ScrollDown = function(self)
self.ScrollIndex = self.ScrollIndex + self.PageIncrement
self:Update()
end;
ScrollUp = function(self)
self.ScrollIndex = self.ScrollIndex - self.PageIncrement
self:Update()
end;
ScrollTo = function(self,index)
self.ScrollIndex = index
self:Update()
end;
SetScrollPercent = function(self,percent)
self.ScrollIndex = math.floor((self.TotalSpace - self.VisibleSpace)*percent + 0.5)
self:Update()
end;
};
}
mt.__index.CanScrollRight = mt.__index.CanScrollDown
mt.__index.CanScrollLeft = mt.__index.CanScrollUp
mt.__index.ScrollLeft = mt.__index.ScrollUp
mt.__index.ScrollRight = mt.__index.ScrollDown
function ScrollBar(horizontal)
-- create row scroll bar
local ScrollFrame = Create('Frame',{
Name = "ScrollFrame";
Position = horizontal and UDim2.new(0,0,1,-ScrollBarWidth) or UDim2.new(1,-ScrollBarWidth,0,0);
Size = horizontal and UDim2.new(1,0,0,ScrollBarWidth) or UDim2.new(0,ScrollBarWidth,1,0);
BackgroundTransparency = 1;
Create('ImageButton',{
Name = "ScrollDown";
Position = horizontal and UDim2.new(1,-ScrollBarWidth,0,0) or UDim2.new(0,0,1,-ScrollBarWidth);
Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
BackgroundColor3 = ScrollStyles.Button;
BorderColor3 = ScrollStyles.Border;
--BorderSizePixel = 0;
});
Create('ImageButton',{
Name = "ScrollUp";
Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
BackgroundColor3 = ScrollStyles.Button;
BorderColor3 = ScrollStyles.Border;
--BorderSizePixel = 0;
});
Create('ImageButton',{
Name = "ScrollBar";
Size = horizontal and UDim2.new(1,-ScrollBarWidth*2,1,0) or UDim2.new(1,0,1,-ScrollBarWidth*2);
Position = horizontal and UDim2.new(0,ScrollBarWidth,0,0) or UDim2.new(0,0,0,ScrollBarWidth);
AutoButtonColor = false;
BackgroundColor3 = Color3.new(0.94902, 0.94902, 0.94902);
BorderColor3 = ScrollStyles.Border;
--BorderSizePixel = 0;
Create('ImageButton',{
Name = "ScrollThumb";
AutoButtonColor = false;
Size = UDim2.new(0, ScrollBarWidth, 0, ScrollBarWidth);
BackgroundColor3 = ScrollStyles.Button;
BorderColor3 = ScrollStyles.Border;
--BorderSizePixel = 0;
});
});
})
local graphicTemplate = Create('Frame',{
Name="Graphic";
BorderSizePixel = 0;
BackgroundColor3 = ScrollStyles.Border;
})
local graphicSize = ScrollBarWidth/2
local ScrollDownFrame = ScrollFrame.ScrollDown
local ScrollDownGraphic = ArrowGraphic(graphicSize,horizontal and 'Right' or 'Down',true,graphicTemplate)
ScrollDownGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
ScrollDownGraphic.Parent = ScrollDownFrame
local ScrollUpFrame = ScrollFrame.ScrollUp
local ScrollUpGraphic = ArrowGraphic(graphicSize,horizontal and 'Left' or 'Up',true,graphicTemplate)
ScrollUpGraphic.Position = UDim2.new(0.5,-graphicSize/2,0.5,-graphicSize/2)
ScrollUpGraphic.Parent = ScrollUpFrame
local ScrollBarFrame = ScrollFrame.ScrollBar
local ScrollThumbFrame = ScrollBarFrame.ScrollThumb
do
local size = ScrollBarWidth*3/8
local Decal = GripGraphic(Vector2.new(size,size),horizontal and 'Vertical' or 'Horizontal',2,graphicTemplate)
Decal.Position = UDim2.new(0.5,-size/2,0.5,-size/2)
Decal.Parent = ScrollThumbFrame
end
local MouseDrag = Create('ImageButton',{
Name = "MouseDrag";
Position = UDim2.new(-0.25,0,-0.25,0);
Size = UDim2.new(1.5,0,1.5,0);
Transparency = 1;
AutoButtonColor = false;
Active = true;
ZIndex = 10;
})
local Class = setmetatable({
GUI = ScrollFrame;
ScrollIndex = 0;
VisibleSpace = 0;
TotalSpace = 0;
PageIncrement = 1;
},mt)
local UpdateScrollThumb
if horizontal then
function UpdateScrollThumb()
ScrollThumbFrame.Size = UDim2.new(Class.VisibleSpace/Class.TotalSpace,0,0,ScrollBarWidth)
if ScrollThumbFrame.AbsoluteSize.x < ScrollBarWidth then
ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,0,ScrollBarWidth)
end
local barSize = ScrollBarFrame.AbsoluteSize.x
ScrollThumbFrame.Position = UDim2.new(Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.x)/barSize,0,0,0)
end
else
function UpdateScrollThumb()
ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,Class.VisibleSpace/Class.TotalSpace,0)
if ScrollThumbFrame.AbsoluteSize.y < ScrollBarWidth then
ScrollThumbFrame.Size = UDim2.new(0,ScrollBarWidth,0,ScrollBarWidth)
end
local barSize = ScrollBarFrame.AbsoluteSize.y
ScrollThumbFrame.Position = UDim2.new(0,0,Class:GetScrollPercent()*(barSize - ScrollThumbFrame.AbsoluteSize.y)/barSize,0)
end
end
local lastDown
local lastUp
local scrollStyle = {BackgroundColor3=ScrollStyles.Border,BackgroundTransparency=0}
local scrollStyle_ds = {BackgroundColor3=ScrollStyles.Border,BackgroundTransparency=0.7}
local function Update()
local t = Class.TotalSpace
local v = Class.VisibleSpace
local s = Class.ScrollIndex
if v <= t then
if s > 0 then
if s + v > t then
Class.ScrollIndex = t - v
end
else
Class.ScrollIndex = 0
end
else
Class.ScrollIndex = 0
end
if Class.UpdateCallback then
if Class.UpdateCallback(Class) == false then
return
end
end
local down = Class:CanScrollDown()
local up = Class:CanScrollUp()
if down ~= lastDown then
lastDown = down
ScrollDownFrame.Active = down
ScrollDownFrame.AutoButtonColor = down
local children = ScrollDownGraphic:GetChildren()
local style = down and scrollStyle or scrollStyle_ds
for i = 1,#children do
Create(children[i],style)
end
end
if up ~= lastUp then
lastUp = up
ScrollUpFrame.Active = up
ScrollUpFrame.AutoButtonColor = up
local children = ScrollUpGraphic:GetChildren()
local style = up and scrollStyle or scrollStyle_ds
for i = 1,#children do
Create(children[i],style)
end
end
ScrollThumbFrame.Visible = down or up
UpdateScrollThumb()
end
Class.Update = Update
SetZIndexOnChanged(ScrollFrame)
local scrollEventID = 0
ScrollDownFrame.MouseButton1Down:connect(function()
scrollEventID = tick()
local current = scrollEventID
local up_con
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollDownFrame)
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
Class:ScrollDown()
wait(0.2) -- delay before auto scroll
while scrollEventID == current do
Class:ScrollDown()
if not Class:CanScrollDown() then break end
wait()
end
end)
ScrollDownFrame.MouseButton1Up:connect(function()
scrollEventID = tick()
end)
ScrollUpFrame.MouseButton1Down:connect(function()
scrollEventID = tick()
local current = scrollEventID
local up_con
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollUpFrame)
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
Class:ScrollUp()
wait(0.2)
while scrollEventID == current do
Class:ScrollUp()
if not Class:CanScrollUp() then break end
wait()
end
end)
ScrollUpFrame.MouseButton1Up:connect(function()
scrollEventID = tick()
end)
if horizontal then
ScrollBarFrame.MouseButton1Down:connect(function(x,y)
scrollEventID = tick()
local current = scrollEventID
local up_con
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollUpFrame)
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
if x > ScrollThumbFrame.AbsolutePosition.x then
Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
wait(0.2)
while scrollEventID == current do
if x < ScrollThumbFrame.AbsolutePosition.x + ScrollThumbFrame.AbsoluteSize.x then break end
Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
wait()
end
else
Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
wait(0.2)
while scrollEventID == current do
if x > ScrollThumbFrame.AbsolutePosition.x then break end
Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
wait()
end
end
end)
else
ScrollBarFrame.MouseButton1Down:connect(function(x,y)
scrollEventID = tick()
local current = scrollEventID
local up_con
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollUpFrame)
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
if y > ScrollThumbFrame.AbsolutePosition.y then
Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
wait(0.2)
while scrollEventID == current do
if y < ScrollThumbFrame.AbsolutePosition.y + ScrollThumbFrame.AbsoluteSize.y then break end
Class:ScrollTo(Class.ScrollIndex + Class.VisibleSpace)
wait()
end
else
Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
wait(0.2)
while scrollEventID == current do
if y > ScrollThumbFrame.AbsolutePosition.y then break end
Class:ScrollTo(Class.ScrollIndex - Class.VisibleSpace)
wait()
end
end
end)
end
if horizontal then
ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
scrollEventID = tick()
local mouse_offset = x - ScrollThumbFrame.AbsolutePosition.x
local drag_con
local up_con
drag_con = MouseDrag.MouseMoved:connect(function(x,y)
local bar_abs_pos = ScrollBarFrame.AbsolutePosition.x
local bar_drag = ScrollBarFrame.AbsoluteSize.x - ScrollThumbFrame.AbsoluteSize.x
local bar_abs_one = bar_abs_pos + bar_drag
x = x - mouse_offset
x = x < bar_abs_pos and bar_abs_pos or x > bar_abs_one and bar_abs_one or x
x = x - bar_abs_pos
Class:SetScrollPercent(x/(bar_drag))
end)
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollThumbFrame)
drag_con:disconnect(); drag_con = nil
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
end)
else
ScrollThumbFrame.MouseButton1Down:connect(function(x,y)
scrollEventID = tick()
local mouse_offset = y - ScrollThumbFrame.AbsolutePosition.y
local drag_con
local up_con
drag_con = MouseDrag.MouseMoved:connect(function(x,y)
local bar_abs_pos = ScrollBarFrame.AbsolutePosition.y
local bar_drag = ScrollBarFrame.AbsoluteSize.y - ScrollThumbFrame.AbsoluteSize.y
local bar_abs_one = bar_abs_pos + bar_drag
y = y - mouse_offset
y = y < bar_abs_pos and bar_abs_pos or y > bar_abs_one and bar_abs_one or y
y = y - bar_abs_pos
Class:SetScrollPercent(y/(bar_drag))
end)
up_con = MouseDrag.MouseButton1Up:connect(function()
scrollEventID = tick()
MouseDrag.Parent = nil
ResetButtonColor(ScrollThumbFrame)
drag_con:disconnect(); drag_con = nil
up_con:disconnect(); drag = nil
end)
MouseDrag.Parent = GetScreen(ScrollFrame)
end)
end
function Class:Destroy()
ScrollFrame:Destroy()
MouseDrag:Destroy()
for k in pairs(Class) do
Class[k] = nil
end
setmetatable(Class,nil)
end
Update()
return Class
end
end
-- End Scrollbar
local scrollBar = ScrollBar(false)
scrollBar.PageIncrement = 16
Create(scrollBar.GUI,{
Position = UDim2.new(1,0,0,0);
Size = UDim2.new(0,ScrollBarWidth,1,0);
Parent = editorGrid;
})
local scrollBarH = ScrollBar(true)
scrollBarH.PageIncrement = 8
Create(scrollBarH.GUI,{
Position = UDim2.new(0,0,1,0);
Size = UDim2.new(1,0,0,ScrollBarWidth);
Parent = editorGrid;
})
local entries = {}
local grid = {}
local count = 1
local xCount = 1
local lineSpan = 0
for i = 0,490,8 do
local newRow = {}
for j = 0,390,16 do
local cellText = Instance.new("TextLabel",editorGrid)
cellText.BackgroundTransparency = 1
cellText.BorderSizePixel = 0
cellText.Text = ""
cellText.Position = UDim2.new(0,i,0,j)
cellText.Size = UDim2.new(0,8,0,16)
cellText.Font = Enum.Font.Gotham
cellText.FontSize = Enum.FontSize.Size18
table.insert(newRow,cellText)
xCount = xCount + 1
end
table.insert(grid,newRow)
count = count + 1
xCount = 1
end
local syntaxHighlightList = {
{["Keyword"] = "for", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "local", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "if", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "then", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "do", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "while", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "end", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "function", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "string", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "table", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "game", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "workspace", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "return", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "break", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "elseif", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "in", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "pairs", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true},
{["Keyword"] = "ipairs", ["Color"] = Color3.new(0, 0, 127/255), ["Independent"] = true}
}
function checkMouseInGui(gui)
if gui == nil then return false end
local plrMouse = game:GetService("Players").LocalPlayer:GetMouse()
local guiPosition = gui.AbsolutePosition
local guiSize = gui.AbsoluteSize
if plrMouse.X >= guiPosition.x and plrMouse.X <= guiPosition.x + guiSize.x and plrMouse.Y >= guiPosition.y and plrMouse.Y <= guiPosition.y + guiSize.y then
return true
else
return false
end
end
function AddZeros(num,reach)
local toConvert = tostring(num)
while #toConvert < reach do
toConvert = " "..toConvert
end
return toConvert
end
function buildScript(source,xOff,yOff,override)
local buildingRows = true
local buildScr = source
local totalLines = 0
--print(xOff,yOff)
if currentSource ~= source then
currentSource = source
end
if override then
currentSource = source
entries = {}
while buildingRows do
local x,y = string.find(buildScr,"\n")
if x and y then
table.insert(entries,string.sub(buildScr,1,y))
buildScr = string.sub(buildScr,y+1,string.len(buildScr))
else
buildingRows = false
table.insert(entries,buildScr)
end
end
end
totalLines = #entries
lineSpan = #tostring(totalLines)
if lineSpan == 1 then lineSpan = 2 end
local currentRow = 1
local currentColumn = 2 + lineSpan
local colorTime = 0
local colorReplace = nil
local inString = false
local workingEntries = entries
--[[
for i,v in pairs(entries) do
table.insert(workingEntries,v)
end
for i = 1,yOff do
table.remove(workingEntries,1)
end
--]]
local delayance = xOff
for i = 1,#grid do
for j = 1,#grid[i] do
if i <= lineSpan then
local newNum = AddZeros(yOff + j,lineSpan)
local newDigit = string.sub(newNum,i,i)
if newDigit == " " then
grid[i][j].Text = ""
else
grid[i][j].Text = newDigit
end
grid[i][j].BackgroundTransparency = 0
grid[i][j].BackgroundColor3 = Color3.new(163/255, 162/255, 165/255)
--grid[i][j].Font = Enum.Font.GothamBold
elseif i == lineSpan + 1 then
grid[i][j].Text = ""
grid[i][j].BackgroundTransparency = 0
grid[i][j].BackgroundColor3 = Color3.new(200/255, 200/255, 200/255)
--grid[i][j].Font = Enum.Font.Gotham
else
grid[i][j].Text = ""
grid[i][j].BackgroundTransparency = 1
--grid[i][j].Font = Enum.Font.Gotham
end
end
end
while true do
if currentRow > #workingEntries or currentRow > #grid[1] then break end
local entry = workingEntries[currentRow+yOff]
while string.len(entry) > 0 do
if string.sub(entry,1,1) == "\t" then entry = " "..string.sub(entry,2) end
if currentColumn > #grid then break end
if delayance == 0 then
grid[currentColumn][currentRow].Text = string.sub(entry,1,1)
end
-- Coloring
if not inString then
for i,v in pairs(syntaxHighlightList) do
if string.sub(entry,1,string.len(v["Keyword"])) == v["Keyword"] then
if v["Independent"] then
local outCheck = string.len(v["Keyword"])+1
local outEntry = string.sub(entry,outCheck,outCheck)
if not string.find(outEntry,"%w") then
colorTime = string.len(v["Keyword"])
colorReplace = v["Color"]
end
else
colorTime = string.len(v["Keyword"])
colorReplace = v["Color"]
end
end
end
end
if string.sub(entry,1,1) == "\"" and string.match(entry,"\".+\"") then
inString = true
colorTime = string.len(string.match(entry,"\".+\""))
colorReplace = Color3.new(170/255, 0, 1)
end
if colorTime > 0 then
colorTime = colorTime - 1
grid[currentColumn][currentRow].TextColor3 = colorReplace
if colorTime == 0 then inString = false end
else
grid[currentColumn][currentRow].TextColor3 = Color3.new(0,0,0)
inString = false
end
if delayance == 0 then
currentColumn = currentColumn + 1
else
delayance = delayance - 1
end
entry = string.sub(entry,2,string.len(entry))
end
currentRow = currentRow + 1
currentColumn = 2 + lineSpan
colorTime = 0
delayance = xOff
inString = false
end
end
function scrollBar.UpdateCallback(self)
scrollBar.TotalSpace = #entries * 16
scrollBar.VisibleSpace = editorGrid.AbsoluteSize.Y
buildScript(currentSource,math.floor(scrollBarH.ScrollIndex/8),math.floor(scrollBar.ScrollIndex/16))
end
function scrollBarH.UpdateCallback(self)
scrollBarH.TotalSpace = (getLongestEntry(entries) + 1 + lineSpan) * 8
scrollBarH.VisibleSpace = editorGrid.AbsoluteSize.X
buildScript(currentSource,math.floor(scrollBarH.ScrollIndex/8),math.floor(scrollBar.ScrollIndex/16))
end
function getLongestEntry(tab)
local longest = 0
for i,v in pairs(tab) do
if string.len(v) > longest then
longest = string.len(v)
end
end
return longest
end
function openScript(scrObj)
if scrObj:IsA("LocalScript") then
scrObj.Archivable = true
scrObj = scrObj:Clone()
scrObj.Disabled = true
end
local scrName = scrObj.Name
local scrSource = decompile(scrObj)
table.insert(memoryScripts,{Name = scrName,Source = scrSource})
local newTab = entryTemplate:Clone()
newTab.Button.Text = scrName
newTab.Position = UDim2.new(0,#scriptBar:GetChildren() * 100,0,0)
newTab.Visible = true
newTab.Button.MouseButton1Down:connect(function()
for i,v in pairs(scriptBar:GetChildren()) do
if v == newTab then
editingIndex = i
buildScript(memoryScripts[i].Source,0,0,true)
scrollBar:ScrollTo(1)
scrollBar:Update()
scrollBarH:ScrollTo(1)
scrollBarH:Update()
end
end
end)
newTab.Close.MouseButton1Click:connect(function()
for i,v in pairs(scriptBar:GetChildren()) do
if v == newTab then
table.remove(memoryScripts,i)
if editingIndex == i then
editingIndex = #memoryScripts
if editingIndex > 0 then
buildScript(memoryScripts[#memoryScripts].Source,0,0,true)
else
buildScript("",0,0,true)
end
end
scrollBar:ScrollTo(1)
scrollBar:Update()
scrollBarH:ScrollTo(1)
scrollBarH:Update()
for i2 = i,#scriptBar:GetChildren() do
scriptBar:GetChildren()[i2].Position = scriptBar:GetChildren()[i2].Position + UDim2.new(0,-100,0,0)
end
if editingIndex > i then
editingIndex = editingIndex - 1
end
newTab:Destroy()
end
end
end)
editingIndex = #memoryScripts
buildScript(scrSource,0,0,true)
newTab.Parent = scriptBar
end
function updateScriptBar()
local entryCount = 0
scriptBarLeft.Active = false
scriptBarLeft.AutoButtonColor = false
for i,v in pairs(scriptBarLeft["Arrow Graphic"]:GetChildren()) do
v.BackgroundTransparency = 0.7
end
scriptBarRight.Active = false
scriptBarRight.AutoButtonColor = false
for i,v in pairs(scriptBarRight["Arrow Graphic"]:GetChildren()) do
v.BackgroundTransparency = 0.7
end
for i,v in pairs(scriptBar:GetChildren()) do
if v.Position.X.Offset < 0 then
scriptBarLeft.Active = true
scriptBarLeft.AutoButtonColor = true
for i,v in pairs(scriptBarLeft["Arrow Graphic"]:GetChildren()) do
v.BackgroundTransparency = 0
end
elseif v.Position.X.Offset >= 0 then
entryCount = entryCount + 1
if entryCount == 5 then
scriptBarRight.Active = true
scriptBarRight.AutoButtonColor = true
for i,v in pairs(scriptBarRight["Arrow Graphic"]:GetChildren()) do
v.BackgroundTransparency = 0
end
end
end
end
end
scriptBar.ChildAdded:connect(updateScriptBar)
scriptBar.ChildRemoved:connect(updateScriptBar)
scriptBarLeft.MouseButton1Click:connect(function()
if scriptBarLeft.Active == false then return end
for i,v in pairs(scriptBar:GetChildren()) do
v.Position = v.Position + UDim2.new(0,100,0,0)
end
updateScriptBar()
end)
scriptBarRight.MouseButton1Click:connect(function()
if scriptBarRight.Active == false then return end
for i,v in pairs(scriptBar:GetChildren()) do
v.Position = v.Position + UDim2.new(0,-100,0,0)
end
updateScriptBar()
end)
mouse.Button1Down:connect(function()
if checkMouseInGui(editorGrid) then
--print("LETS EDIT!")
end
end)
openEvent.Event:connect(function(...)
top.Visible = true
local args = {...}
if #args > 0 then
openScript(args[1])
end
end)
clipboardButton.MouseButton1Click:connect(function()
if Clipboard and Clipboard.set then
Clipboard.set(currentSource)
elseif CopyString then
CopyString(currentSource)
end
end)
closeButton.MouseButton1Click:connect(function()
top.Visible = false
end)
--[[
local scr = script.Parent:WaitForChild("Scr")
local scr2 = script.Parent:WaitForChild("Scr2")
local scr3 = script.Parent:WaitForChild("Scr3")
local scr4 = script.Parent:WaitForChild("TOS")
local scr5 = script.Parent:WaitForChild("HW")
--]]
buildScript("",0,0,true)
--[[
openScript(scr)
openScript(scr2)
openScript(scr3)
openScript(scr4)
openScript(scr5)
--]]
scrollBar:Update()
scrollBarH:Update()
end)
--moony
NewGuiPart1.Parent = game:GetService("CoreGui")
end,
})
Button:Set("Dex Explorer")
local Button = Tab:CreateButton({
Name = "ESP",
Callback = function()
--//Toggle\\--
getgenv().Toggle = true -- This toggles the esp, turning it to false will turn it off
getgenv().TC = false -- This toggles team check, turning it on will turn on team check
local PlayerName = "Name" -- You can decide if you want the Player's name to be a display name which is "DisplayName", or username which is "Name"
--//Variables\\--
local P = game:GetService("Players")
local LP = P.LocalPlayer
--//Debounce\\--
local DB = false
--//Loop\\--
while task.wait() do
if not getgenv().Toggle then
break
end
if DB then
return
end
DB = true
pcall(function()
for i,v in pairs(P:GetChildren()) do
if v:IsA("Player") then
if v ~= LP then
if v.Character then
local pos = math.floor(((LP.Character:FindFirstChild("HumanoidRootPart")).Position - (v.Character:FindFirstChild("HumanoidRootPart")).Position).magnitude)
-- Credits to Infinite Yield for this part (pos) ^^^^^^
if v.Character:FindFirstChild("Totally NOT Esp") == nil and v.Character:FindFirstChild("Icon") == nil and getgenv().TC == false then
--//ESP-Highlight\\--
local ESP = Instance.new("Highlight", v.Character)
ESP.Name = "Totally NOT Esp"
ESP.Adornee = v.Character
ESP.Archivable = true
ESP.Enabled = true
ESP.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop
ESP.FillColor = v.TeamColor.Color
ESP.FillTransparency = 0.5
ESP.OutlineColor = Color3.fromRGB(255, 255, 255)
ESP.OutlineTransparency = 0
--//ESP-Text\\--
local Icon = Instance.new("BillboardGui", v.Character)
local ESPText = Instance.new("TextLabel")
Icon.Name = "Icon"
Icon.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
Icon.Active = true
Icon.AlwaysOnTop = true
Icon.ExtentsOffset = Vector3.new(0, 1, 0)
Icon.LightInfluence = 1.000
Icon.Size = UDim2.new(0, 800, 0, 50)
ESPText.Name = "ESP Text"
ESPText.Parent = Icon
ESPText.BackgroundColor3 = v.TeamColor.Color
ESPText.BackgroundTransparency = 1.000
ESPText.Size = UDim2.new(0, 800, 0, 50)
ESPText.Font = Enum.Font.SciFi
ESPText.Text = v[PlayerName].." | Distance: "..pos
ESPText.TextColor3 = v.TeamColor.Color
ESPText.TextSize = 18.000
ESPText.TextWrapped = true
else
if v.TeamColor ~= LP.TeamColor and v.Character:FindFirstChild("Totally NOT Esp") == nil and v.Character:FindFirstChild("Icon") == nil and getgenv().TC == true then
--//ESP-Highlight\\--
local ESP = Instance.new("Highlight", v.Character)
ESP.Name = "Totally NOT Esp"
ESP.Adornee = v.Character
ESP.Archivable = true
ESP.Enabled = true
ESP.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop
ESP.FillColor = v.TeamColor.Color
ESP.FillTransparency = 0.5
ESP.OutlineColor = Color3.fromRGB(255, 255, 255)
ESP.OutlineTransparency = 0
--//ESP-Text\\--
local Icon = Instance.new("BillboardGui", v.Character)
local ESPText = Instance.new("TextLabel")
Icon.Name = "Icon"
Icon.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
Icon.Active = true
Icon.AlwaysOnTop = true
Icon.ExtentsOffset = Vector3.new(0, 1, 0)
Icon.LightInfluence = 1.000
Icon.Size = UDim2.new(0, 800, 0, 50)
ESPText.Name = "ESP Text"
ESPText.Parent = Icon
ESPText.BackgroundColor3 = v.TeamColor.Color
ESPText.BackgroundTransparency = 1.000
ESPText.Size = UDim2.new(0, 800, 0, 50)
ESPText.Font = Enum.Font.SciFi
ESPText.Text = v[PlayerName].." | Distance: "..pos
ESPText.TextColor3 = v.TeamColor.Color
ESPText.TextSize = 18.000
ESPText.TextWrapped = true
else
if not v.Character:FindFirstChild("Totally NOT Esp").FillColor == v.TeamColor.Color and not v.Character:FindFirstChild("Icon").TextColor3 == v.TeamColor.Color then
v.Character:FindFirstChild("Totally NOT Esp").FillColor = v.TeamColor.Color
v.Character:FindFirstChild("Icon").TextColor3 = v.TeamColor.Color
else
if v.Character:FindFirstChild("Totally NOT Esp").Enabled == false and v.Character:FindFirstChild("Icon").Enabled == false then
v.Character:FindFirstChild("Totally NOT Esp").Enabled = true
v.Character:FindFirstChild("Icon").Enabled = true
else
if v.Character:FindFirstChild("Icon") then
v.Character:FindFirstChild("Icon")["ESP Text"].Text = v[PlayerName].." | Distance: "..pos
end
end
end
end
end
end
end
end
end
end)
wait()
DB = false
end
end,
})
Button:Set("ESP")
local Button = Tab:CreateButton({
Name = "Server Chooser",
Callback = function()
loadstring(game:HttpGet("https://raw.githubusercontent.com/dertonware/scriptasda/refs/heads/main/scriptlua", true))()
end,
})
Button:Set("Server Chooser")
local Button = Tab:CreateButton({
Name = "No Clip",
Callback = function()
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local player = Players.LocalPlayer
local noclip = false
-- Toggle key
local TOGGLE_KEY = Enum.KeyCode.N
UserInputService.InputBegan:Connect(function(input, gp)
if gp then return end
if input.KeyCode == TOGGLE_KEY then
noclip = not noclip
end
end)
RunService.Stepped:Connect(function()
if not noclip then return end
local char = player.Character
if not char then return end
for _, part in pairs(char:GetDescendants()) do
if part:IsA("BasePart") then
part.CanCollide = false
end
end
end)
end,
})
Button:Set("No Clip")
local Button = Tab:CreateButton({
Name = "Fly",
Callback = function()
-- Fly script with F toggle and UI indicator
local player = game.Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
local rootPart = character:WaitForChild("HumanoidRootPart")
local flySpeed = 50
local isFlying = false
local bodyVelocity
local bodyGyro
-- Create UI indicator
local screenGui = Instance.new("ScreenGui")
screenGui.Parent = player:WaitForChild("PlayerGui")
local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 100, 0, 30)
frame.Position = UDim2.new(0.5, -50, 0, 10)
frame.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
frame.BackgroundTransparency = 0.5
frame.BorderSizePixel = 0
frame.Parent = screenGui
local textLabel = Instance.new("TextLabel")
textLabel.Size = UDim2.new(1, 0, 1, 0)
textLabel.Text = "Fly: OFF (Press F)"
textLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
textLabel.BackgroundTransparency = 1
textLabel.Font = Enum.Font.Gotham
textLabel.TextSize = 14
textLabel.Parent = frame
-- Update UI
local function updateUI()
if isFlying then
textLabel.Text = "Fly: ON (Press F)"
textLabel.TextColor3 = Color3.fromRGB(0, 255, 0)
frame.BackgroundColor3 = Color3.fromRGB(0, 50, 0)
else
textLabel.Text = "Fly: OFF (Press F)"
textLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
frame.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
end
end
-- Function to enable flying
local function startFlying()
if isFlying then return end
isFlying = true
humanoid.PlatformStand = true
-- Create physics objects
bodyVelocity = Instance.new("BodyVelocity")
bodyVelocity.Velocity = Vector3.new(0, 0, 0)
bodyVelocity.MaxForce = Vector3.new(40000, 40000, 40000)
bodyVelocity.Parent = rootPart
bodyGyro = Instance.new("BodyGyro")
bodyGyro.MaxTorque = Vector3.new(40000, 40000, 40000)
bodyGyro.P = 1000
bodyGyro.D = 50
bodyGyro.Parent = rootPart
bodyGyro.CFrame = rootPart.CFrame
updateUI()
end
-- Function to disable flying
local function stopFlying()
if not isFlying then return end
isFlying = false
humanoid.PlatformStand = false
if bodyVelocity then
bodyVelocity:Destroy()
bodyVelocity = nil
end
if bodyGyro then
bodyGyro:Destroy()
bodyGyro = nil
end
updateUI()
end
-- Toggle flying
local function onKeyPress(input)
if input.KeyCode == Enum.KeyCode.F then
if isFlying then
stopFlying()
else
startFlying()
end
end
end
-- Initialize
game:GetService("UserInputService").InputBegan:Connect(onKeyPress)
humanoid.Died:Connect(stopFlying)
updateUI()
-- Movement handling
game:GetService("RunService").Heartbeat:Connect(function()
if isFlying and bodyVelocity then
local input = game:GetService("UserInputService")
local camera = workspace.CurrentCamera
local direction = Vector3.new(0, 0, 0)
-- Movement controls
if input:IsKeyDown(Enum.KeyCode.W) then
direction = direction + (camera.CFrame.LookVector * flySpeed)
end
if input:IsKeyDown(Enum.KeyCode.S) then
direction = direction - (camera.CFrame.LookVector * flySpeed)
end
if input:IsKeyDown(Enum.KeyCode.A) then
direction = direction - (camera.CFrame.RightVector * flySpeed)
end
if input:IsKeyDown(Enum.KeyCode.D) then
direction = direction + (camera.CFrame.RightVector * flySpeed)
end
if input:IsKeyDown(Enum.KeyCode.Space) then
direction = direction + Vector3.new(0, flySpeed, 0)
end
if input:IsKeyDown(Enum.KeyCode.LeftShift) or input:IsKeyDown(Enum.KeyCode.RightShift) then
direction = direction - Vector3.new(0, flySpeed, 0)
end
bodyVelocity.Velocity = direction
-- Update orientation
if bodyGyro then
bodyGyro.CFrame = CFrame.new(rootPart.Position, rootPart.Position + camera.CFrame.LookVector)
end
end
end)
end,
})
Button:Set("Fly")
local Button = Tab:CreateButton({
Name = "Freecam",
Callback = function()
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local TweenService = game:GetService("TweenService")
local CoreGui = game:GetService("CoreGui")
local player = Players.LocalPlayer
local camera = workspace.CurrentCamera
local DISPLAY_ORDER = 10000
local CONTAINER_W, CONTAINER_H = 200, 136
local BTN_W, BTN_H = 88, 26
local BTN_COLOR = Color3.fromRGB(28, 28, 28)
local BTN_HOVER = Color3.fromRGB(82, 44, 154)
local TEXT_COLOR = Color3.fromRGB(210, 190, 255)
local LABEL_COLOR = Color3.fromRGB(180, 120, 255)
local BORDER_COL = Color3.fromRGB(120, 0, 180)
local baseColors = {
Color3.fromRGB(100,0,130),
Color3.fromRGB(120,0,160),
Color3.fromRGB(150,0,200),
Color3.fromRGB(120,0,160),
}
local gui = Instance.new("ScreenGui")
gui.Name = "UniversalFreeCam"
gui.IgnoreGuiInset = true
gui.ZIndexBehavior = Enum.ZIndexBehavior.Global
gui.DisplayOrder = DISPLAY_ORDER
pcall(function() gui.Parent = CoreGui end)
if not gui.Parent then gui.Parent = player:WaitForChild("PlayerGui") end
local container = Instance.new("Frame")
container.Size = UDim2.fromOffset(CONTAINER_W, CONTAINER_H)
container.Position = UDim2.new(0, 18, 0, 18)
container.BackgroundColor3 = Color3.fromRGB(18,18,18)
container.BorderSizePixel = 2
container.BorderColor3 = BORDER_COL
container.Parent = gui
Instance.new("UICorner", container).CornerRadius = UDim.new(0, 6)
local grad = Instance.new("UIGradient")
grad.Rotation = 0
grad.Parent = container
local animT = 0
RunService.RenderStepped:Connect(function(dt)
animT = animT + dt
local idx = math.floor(animT * 1.6) % #baseColors + 1
local nextIdx = idx % #baseColors + 1
local alpha = (animT * 1.6) % 1
local c1 = baseColors[idx]:Lerp(baseColors[nextIdx], alpha)
local c2 = baseColors[nextIdx]:Lerp(baseColors[idx], alpha)
grad.Color = ColorSequence.new{
ColorSequenceKeypoint.new(0, c1),
ColorSequenceKeypoint.new(1, c2),
}
end)
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, -18, 0, 22)
title.Position = UDim2.fromOffset(9, 8)
title.BackgroundTransparency = 1
title.Font = Enum.Font.GothamBold
title.TextSize = 14
title.TextColor3 = LABEL_COLOR
title.TextXAlignment = Enum.TextXAlignment.Left
title.Text = "Universal Free Cam"
title.Parent = container
local toggleBtn = Instance.new("TextButton")
toggleBtn.Size = UDim2.fromOffset(BTN_W, BTN_H)
toggleBtn.Position = UDim2.fromOffset(9, 36)
toggleBtn.BackgroundColor3 = BTN_COLOR
toggleBtn.Font = Enum.Font.GothamSemibold
toggleBtn.TextSize = 12
toggleBtn.TextColor3 = TEXT_COLOR
toggleBtn.Text = "OFF"
toggleBtn.TextWrapped = false
toggleBtn.AutoButtonColor = false
toggleBtn.Parent = container
Instance.new("UICorner", toggleBtn).CornerRadius = UDim.new(0, 4)
local bindBtn = Instance.new("TextButton")
bindBtn.Size = UDim2.fromOffset(BTN_W, BTN_H)
bindBtn.Position = UDim2.fromOffset(9 + BTN_W + 8, 36)
bindBtn.BackgroundColor3 = BTN_COLOR
bindBtn.Font = Enum.Font.GothamSemibold
bindBtn.TextSize = 12
bindBtn.TextColor3 = TEXT_COLOR
bindBtn.Text = "Key: F"
bindBtn.TextWrapped = false
bindBtn.AutoButtonColor = false
bindBtn.Parent = container
Instance.new("UICorner", bindBtn).CornerRadius = UDim.new(0, 4)
local sliderLabel = Instance.new("TextLabel")
sliderLabel.Size = UDim2.fromOffset(60, 18)
sliderLabel.Position = UDim2.fromOffset(9, 72)
sliderLabel.BackgroundTransparency = 1
sliderLabel.Font = Enum.Font.Gotham
sliderLabel.TextSize = 12
sliderLabel.TextColor3 = LABEL_COLOR
sliderLabel.Text = "Speed"
sliderLabel.TextXAlignment = Enum.TextXAlignment.Left
sliderLabel.Parent = container
local valueLabel = Instance.new("TextLabel")
valueLabel.Size = UDim2.fromOffset(60, 18)
valueLabel.Position = UDim2.fromOffset(CONTAINER_W - 9 - 60, 72)
valueLabel.BackgroundTransparency = 1
valueLabel.Font = Enum.Font.Gotham
valueLabel.TextSize = 12
valueLabel.TextColor3 = LABEL_COLOR
valueLabel.Text = ""
valueLabel.TextXAlignment = Enum.TextXAlignment.Right
valueLabel.Parent = container
local SLIDER_MARGIN = 9
local sliderBar = Instance.new("Frame")
sliderBar.Size = UDim2.fromOffset(CONTAINER_W - SLIDER_MARGIN*2, 6)
sliderBar.Position = UDim2.fromOffset(SLIDER_MARGIN, 98)
sliderBar.BackgroundColor3 = Color3.fromRGB(36,36,36)
sliderBar.BorderSizePixel = 0
sliderBar.Parent = container
Instance.new("UICorner", sliderBar).CornerRadius = UDim.new(0, 3)
local sliderFill = Instance.new("Frame")
sliderFill.Size = UDim2.new(0, 0, 1, 0)
sliderFill.BackgroundColor3 = Color3.fromRGB(140,72,200)
sliderFill.BorderSizePixel = 0
sliderFill.Parent = sliderBar
Instance.new("UICorner", sliderFill).CornerRadius = UDim.new(0, 3)
local knobSize = 12
local sliderKnob = Instance.new("Frame")
sliderKnob.Size = UDim2.fromOffset(knobSize, knobSize)
sliderKnob.Position = UDim2.fromOffset(-knobSize/2, -3)
sliderKnob.BackgroundColor3 = Color3.fromRGB(200,150,255)
sliderKnob.BorderSizePixel = 0
sliderKnob.Parent = sliderBar
Instance.new("UICorner", sliderKnob).CornerRadius = UDim.new(0, 6)
local hoverTweenInfo = TweenInfo.new(0.12, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
local function AddHover(button, hoverColor)
button.MouseEnter:Connect(function()
TweenService:Create(button, hoverTweenInfo, {BackgroundColor3 = hoverColor}):Play()
end)
button.MouseLeave:Connect(function()
TweenService:Create(button, hoverTweenInfo, {BackgroundColor3 = BTN_COLOR}):Play()
end)
end
AddHover(toggleBtn, BTN_HOVER)
AddHover(bindBtn, Color3.fromRGB(100,50,180))
AddHover(sliderKnob, Color3.fromRGB(255,200,255))
local freecamEnabled = false
local baseSpeed = 32
local minSpeed, maxSpeed = 5, 250
local sensitivity = 0.18
local sprintMultiplier = 3
local pitch, yaw = 0,0
local camPos = nil
local renderConn = nil
local moveKeys = {W=false,A=false,S=false,D=false,Space=false,LeftControl=false,LeftShift=false}
local hotkey = Enum.KeyCode.F
local waitingForBind = false
local function freezeCharacter(char, freeze)
if not char then return end
local hrp = char:FindFirstChild("HumanoidRootPart")
if hrp then hrp.Anchored = freeze end
local hum = char:FindFirstChildOfClass("Humanoid")
if hum then
hum.WalkSpeed = freeze and 0 or 16
hum.JumpPower = freeze and 0 or 50
end
end
local function enableFreeCam()
if freecamEnabled then return end
freecamEnabled = true
toggleBtn.Text = "ON"
toggleBtn.BackgroundColor3 = Color3.fromRGB(60,120,60)
local char = player.Character or player.CharacterAdded:Wait()
freezeCharacter(char, true)
UserInputService.MouseIconEnabled = false
UserInputService.MouseBehavior = Enum.MouseBehavior.LockCenter
camPos = camera.CFrame.Position
local rx, ry, rz = camera.CFrame:ToEulerAnglesYXZ()
pitch, yaw = math.deg(rx), math.deg(ry)
camera.CameraType = Enum.CameraType.Scriptable
renderConn = RunService.RenderStepped:Connect(function(dt)
local dx, dy = UserInputService:GetMouseDelta().X, UserInputService:GetMouseDelta().Y
yaw = yaw - dx*sensitivity
pitch = math.clamp(pitch - dy*sensitivity,-89,89)
local rot = CFrame.fromEulerAnglesYXZ(math.rad(pitch),math.rad(yaw),0)
local fwd,right = rot.LookVector,rot.RightVector
local movement = Vector3.zero
if moveKeys.W then movement+=fwd end
if moveKeys.S then movement-=fwd end
if moveKeys.A then movement-=right end
if moveKeys.D then movement+=right end
if moveKeys.Space then movement+=Vector3.yAxis end
if moveKeys.LeftControl then movement-=Vector3.yAxis end
local speed = baseSpeed
if moveKeys.LeftShift then speed*=sprintMultiplier end
if movement.Magnitude>0 then camPos+=movement.Unit*speed*dt end
camera.CFrame = CFrame.new(camPos)*rot
end)
end
local function disableFreeCam()
if not freecamEnabled then return end
freecamEnabled=false
toggleBtn.Text="OFF"
toggleBtn.BackgroundColor3 = BTN_COLOR
if renderConn then renderConn:Disconnect() renderConn=nil end
UserInputService.MouseIconEnabled=true
UserInputService.MouseBehavior=Enum.MouseBehavior.Default
local char = player.Character or player.CharacterAdded:Wait()
freezeCharacter(char,false)
camera.CameraType = Enum.CameraType.Custom
local hum = char:FindFirstChildOfClass("Humanoid")
if hum then camera.CameraSubject = hum end
end
local function setSpeedFromPercent(p)
p = math.clamp(p or 0,0,1)
baseSpeed = math.floor(minSpeed+(maxSpeed-minSpeed)*p+0.5)
valueLabel.Text = tostring(baseSpeed)
sliderFill.Size = UDim2.new(p,0,1,0)
sliderKnob.Position = UDim2.new(p,-knobSize/2,0,-3)
end
setSpeedFromPercent((baseSpeed-minSpeed)/(maxSpeed-minSpeed))
local draggingSlider=false
local function updateSliderFromX(x)
local barX=sliderBar.AbsolutePosition.X
local barW=sliderBar.AbsoluteSize.X
if barW<=0 then return end
local p=(x-barX)/barW
setSpeedFromPercent(p)
end
sliderBar.InputBegan:Connect(function(input)
if input.UserInputType==Enum.UserInputType.MouseButton1 then
draggingSlider=true
updateSliderFromX(UserInputService:GetMouseLocation().X)
end
end)
sliderBar.InputEnded:Connect(function(input)
if input.UserInputType==Enum.UserInputType.MouseButton1 then draggingSlider=false end
end)
UserInputService.InputChanged:Connect(function(input)
if draggingSlider and input.UserInputType==Enum.UserInputType.MouseMovement then
updateSliderFromX(UserInputService:GetMouseLocation().X)
end
end)
local fadeTweenInfo = TweenInfo.new(0.25, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
UserInputService.InputBegan:Connect(function(input, gp)
if waitingForBind and input.UserInputType==Enum.UserInputType.Keyboard then
hotkey=input.KeyCode
bindBtn.Text="Key: "..hotkey.Name
waitingForBind=false
return
end
if gp or UserInputService:GetFocusedTextBox() then return end
if input.UserInputType==Enum.UserInputType.Keyboard then
local name=input.KeyCode.Name
if moveKeys[name]~=nil then moveKeys[name]=true end
if input.KeyCode==hotkey then
if freecamEnabled then disableFreeCam() else enableFreeCam() end
return
end
if input.KeyCode==Enum.KeyCode.RightShift then
if container.Visible then
local fadeOut = TweenService:Create(container, fadeTweenInfo, {BackgroundTransparency = 1})
fadeOut:Play()
for _, obj in pairs(container:GetDescendants()) do
if obj:IsA("TextLabel") or obj:IsA("TextButton") then
TweenService:Create(obj, fadeTweenInfo, {TextTransparency = 1}):Play()
elseif obj:IsA("Frame") then
TweenService:Create(obj, fadeTweenInfo, {BackgroundTransparency = 1}):Play()
end
end
delay(fadeTweenInfo.Time, function() container.Visible=false end)
else
container.Visible = true
for _, obj in pairs(container:GetDescendants()) do
if obj:IsA("TextLabel") or obj:IsA("TextButton") then
obj.TextTransparency = 1
elseif obj:IsA("Frame") then
obj.BackgroundTransparency = 1
end
end
local fadeIn = TweenService:Create(container, fadeTweenInfo, {BackgroundTransparency = 0})
fadeIn:Play()
for _, obj in pairs(container:GetDescendants()) do
if obj:IsA("TextLabel") or obj:IsA("TextButton") then
TweenService:Create(obj, fadeTweenInfo, {TextTransparency = 0}):Play()
elseif obj:IsA("Frame") then
TweenService:Create(obj, fadeTweenInfo, {BackgroundTransparency = 0}):Play()
end
end
end
end
end
end)
UserInputService.InputEnded:Connect(function(input)
if input.UserInputType==Enum.UserInputType.Keyboard then
local name=input.KeyCode.Name
if moveKeys[name]~=nil then moveKeys[name]=false end
end
end)
bindBtn.MouseButton1Click:Connect(function()
if waitingForBind then return end
waitingForBind=true
bindBtn.Text="Press any key..."
end)
toggleBtn.MouseButton1Click:Connect(function()
if freecamEnabled then disableFreeCam() else enableFreeCam() end
end)
local dragging=false
local dragInput, mousePos, framePos
title.InputBegan:Connect(function(input)
if input.UserInputType==Enum.UserInputType.MouseButton1 then
dragging=true
mousePos=UserInputService:GetMouseLocation()
framePos=container.Position
input.Changed:Connect(function()
if input.UserInputState==Enum.UserInputState.End then dragging=false end
end)
end
end)
title.InputChanged:Connect(function(input)
if input.UserInputType==Enum.UserInputType.MouseMovement then dragInput=input end
end)
UserInputService.InputChanged:Connect(function(input)
if dragging and input==dragInput then
local delta = UserInputService:GetMouseLocation() - mousePos
container.Position = UDim2.new(
0, framePos.X.Offset + delta.X,
0, framePos.Y.Offset + delta.Y
)
end
end)
player.CharacterAdded:Connect(function(char)
if freecamEnabled then
char:WaitForChild("HumanoidRootPart",2)
freezeCharacter(char,true)
end
end)
end,
})
Button:Set("Freecam")
local Button = Tab:CreateButton({
Name = "Player Speed",
Callback = function()
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local CUSTOM_SPEED = 40 -- change this
local function applySpeed(char)
local hum = char:WaitForChild("Humanoid")
hum.WalkSpeed = CUSTOM_SPEED
end
if player.Character then
applySpeed(player.Character)
end
player.CharacterAdded:Connect(applySpeed)
end,
})
Button:Set("Player Speed")
local Tab = Window:CreateTab("Teleport", 4483362458) -- Title, Image
local Section = Tab:CreateSection("Teleport")
Section:Set("Teleport")
local Button = Tab:CreateButton({
Name = "Check Coordinate",
Callback = function()
-- Roblox Local Player
local player = game.Players.LocalPlayer
if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
local position = player.Character.HumanoidRootPart.Position
print("X: " .. position.X .. ", Y: " .. position.Y .. ", Z: " .. position.Z)
end
-- Using Humanoid (if no HumanoidRootPart)
local humanoid = player.Character:FindFirstChild("Humanoid")
if humanoid then
local position = humanoid.RootPart.Position
print(position)
end
end,
})
Button:Set("Check Coordinate")
local Button = Tab:CreateButton({
Name = "Teleport To Coordinate",
Callback = function()
-- Create the main ScreenGui
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "TeleportGUI"
screenGui.Parent = game.Players.LocalPlayer:WaitForChild("PlayerGui")
-- Create the main frame
local mainFrame = Instance.new("Frame")
mainFrame.Name = "MainFrame"
mainFrame.Size = UDim2.new(0, 250, 0, 150)
mainFrame.Position = UDim2.new(0.5, -125, 0.5, -75)
mainFrame.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
mainFrame.BackgroundTransparency = 0.2
mainFrame.BorderSizePixel = 2
mainFrame.BorderColor3 = Color3.fromRGB(255, 170, 0)
mainFrame.Active = true
mainFrame.Draggable = true
mainFrame.Parent = screenGui
-- Add a title
local titleLabel = Instance.new("TextLabel")
titleLabel.Name = "Title"
titleLabel.Size = UDim2.new(1, 0, 0, 30)
titleLabel.Position = UDim2.new(0, 0, 0, 0)
titleLabel.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
titleLabel.BorderSizePixel = 0
titleLabel.Text = "TELEPORT CONTROLLER"
titleLabel.TextColor3 = Color3.fromRGB(255, 170, 0)
titleLabel.TextScaled = true
titleLabel.Font = Enum.Font.GothamBold
titleLabel.Parent = mainFrame
-- Create coordinate input labels
local function createCoordinateLabel(name, text, position)
local label = Instance.new("TextLabel")
label.Name = name .. "Label"
label.Size = UDim2.new(0, 30, 0, 30)
label.Position = position
label.BackgroundTransparency = 1
label.Text = text
label.TextColor3 = Color3.fromRGB(255, 255, 255)
label.TextScaled = true
label.Font = Enum.Font.GothamBold
label.Parent = mainFrame
return label
end
-- Create coordinate input boxes
local function createTextBox(name, position)
local box = Instance.new("TextBox")
box.Name = name .. "Box"
box.Size = UDim2.new(0, 60, 0, 30)
box.Position = position
box.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
box.TextColor3 = Color3.fromRGB(255, 255, 255)
box.PlaceholderColor3 = Color3.fromRGB(150, 150, 150)
box.TextScaled = true
box.Font = Enum.Font.Gotham
box.ClearTextOnFocus = false
box.Parent = mainFrame
return box
end
-- Create X coordinate input
local xLabel = createCoordinateLabel("X", "X:", UDim2.new(0, 20, 0, 45))
local xBox = createTextBox("X", UDim2.new(0, 50, 0, 45))
xBox.PlaceholderText = "X value"
-- Create Y coordinate input
local yLabel = createCoordinateLabel("Y", "Y:", UDim2.new(0, 120, 0, 45))
local yBox = createTextBox("Y", UDim2.new(0, 150, 0, 45))
yBox.PlaceholderText = "Y value"
-- Create Z coordinate input
local zLabel = createCoordinateLabel("Z", "Z:", UDim2.new(0, 20, 0, 80))
local zBox = createTextBox("Z", UDim2.new(0, 50, 0, 80))
zBox.PlaceholderText = "Z value"
-- Set default values
xBox.Text = "1"
yBox.Text = "3"
zBox.Text = "-1"
-- Create teleport button
local teleportButton = Instance.new("TextButton")
teleportButton.Name = "TeleportButton"
teleportButton.Size = UDim2.new(0, 120, 0, 35)
teleportButton.Position = UDim2.new(0, 120, 0, 80)
teleportButton.BackgroundColor3 = Color3.fromRGB(255, 170, 0)
teleportButton.Text = "TELEPORT"
teleportButton.TextColor3 = Color3.fromRGB(0, 0, 0)
teleportButton.TextScaled = true
teleportButton.Font = Enum.Font.GothamBold
teleportButton.Parent = mainFrame
-- Create close button
local closeButton = Instance.new("TextButton")
closeButton.Name = "CloseButton"
closeButton.Size = UDim2.new(0, 30, 0, 30)
closeButton.Position = UDim2.new(1, -35, 0, 5)
closeButton.BackgroundColor3 = Color3.fromRGB(255, 50, 50)
closeButton.Text = "X"
closeButton.TextColor3 = Color3.fromRGB(255, 255, 255)
closeButton.TextScaled = true
closeButton.Font = Enum.Font.GothamBold
closeButton.Parent = mainFrame
-- Teleport function
function teleport(x, y, z)
local player = game.Players.LocalPlayer
if player and player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
local rootPart = player.Character.HumanoidRootPart
rootPart.CFrame = CFrame.new(x, y, z)
print("Teleported to: " .. x .. ", " .. y .. ", " .. z)
else
print("Character not loaded or HumanoidRootPart missing")
end
end
-- Teleport button click handler
teleportButton.MouseButton1Click:Connect(function()
-- Get values from text boxes
local x = tonumber(xBox.Text) or 0
local y = tonumber(yBox.Text) or 0
local z = tonumber(zBox.Text) or 0
teleport(x, y, z)
end)
-- Close button click handler
closeButton.MouseButton1Click:Connect(function()
screenGui:Destroy()
end)
-- Optional: Make the button change color on hover
teleportButton.MouseEnter:Connect(function()
teleportButton.BackgroundColor3 = Color3.fromRGB(255, 200, 0)
end)
teleportButton.MouseLeave:Connect(function()
teleportButton.BackgroundColor3 = Color3.fromRGB(255, 170, 0)
end)
-- Optional: Add enter key functionality
local function onEnterPressed(box)
box.FocusLost:Connect(function(enterPressed)
if enterPressed then
teleportButton.MouseButton1Click:Fire()
end
end)
end
onEnterPressed(xBox)
onEnterPressed(yBox)
onEnterPressed(zBox)
print("Teleport GUI loaded! Drag the window to move it.")
end,
})
Button:Set("Teleport To Coordinate")
local Tab = Window:CreateTab("Esp", 4483362458) -- Title, Image
local Section = Tab:CreateSection("Esp")
Section:Set("Esp")
local Button = Tab:CreateButton({
Name = "Esp Folder",
Callback = function()
-- Simple ESP GUI with folder input (PC & Mobile)
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local LocalPlayer = Players.LocalPlayer
-- ===== CREATE GUI =====
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "FolderESP"
screenGui.ResetOnSpawn = false
screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
-- Try to parent GUI
pcall(function()
screenGui.Parent = game:GetService("CoreGui")
end)
if not screenGui.Parent then
pcall(function()
screenGui.Parent = LocalPlayer:WaitForChild("PlayerGui")
end)
end
-- ===== VARIABLES =====
local ESP = {}
local espEnabled = false
local Camera = workspace.CurrentCamera
local scanFolders = {} -- Will store folders entered by user
-- ===== CREATE MAIN GUI =====
local mainFrame = Instance.new("Frame")
mainFrame.Name = "MainFrame"
mainFrame.Size = UDim2.new(0, 400, 0, 350)
mainFrame.Position = UDim2.new(0.5, -200, 0.5, -175)
mainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
mainFrame.BorderSizePixel = 2
mainFrame.BorderColor3 = Color3.fromRGB(255, 170, 0)
mainFrame.Active = true
mainFrame.Draggable = true
mainFrame.Parent = screenGui
-- Make frame rounded
local frameCorner = Instance.new("UICorner")
frameCorner.CornerRadius = UDim.new(0, 10)
frameCorner.Parent = mainFrame
-- Title
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 40)
title.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
title.Text = "📁 FOLDER ESP"
title.TextColor3 = Color3.fromRGB(255, 170, 0)
title.TextSize = 20
title.Font = Enum.Font.GothamBold
title.Parent = mainFrame
-- Title corner
local titleCorner = Instance.new("UICorner")
titleCorner.CornerRadius = UDim.new(0, 10)
titleCorner.Parent = title
-- Close button
local closeBtn = Instance.new("TextButton")
closeBtn.Size = UDim2.new(0, 30, 0, 30)
closeBtn.Position = UDim2.new(1, -40, 0, 5)
closeBtn.BackgroundColor3 = Color3.fromRGB(255, 50, 50)
closeBtn.Text = "X"
closeBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
closeBtn.TextSize = 20
closeBtn.Font = Enum.Font.GothamBold
closeBtn.Parent = title
local closeCorner = Instance.new("UICorner")
closeCorner.CornerRadius = UDim.new(0, 8)
closeCorner.Parent = closeBtn
-- Folder input section
local folderLabel = Instance.new("TextLabel")
folderLabel.Size = UDim2.new(0.9, 0, 0, 25)
folderLabel.Position = UDim2.new(0.05, 0, 0, 50)
folderLabel.BackgroundTransparency = 1
folderLabel.Text = "Enter folder paths (one per line):"
folderLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
folderLabel.TextSize = 14
folderLabel.TextXAlignment = Enum.TextXAlignment.Left
folderLabel.Font = Enum.Font.Gotham
folderLabel.Parent = mainFrame
-- Folder input text box
local folderInput = Instance.new("TextBox")
folderInput.Size = UDim2.new(0.9, 0, 0, 100)
folderInput.Position = UDim2.new(0.05, 0, 0, 80)
folderInput.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
folderInput.TextColor3 = Color3.fromRGB(255, 255, 255)
folderInput.PlaceholderColor3 = Color3.fromRGB(150, 150, 150)
folderInput.PlaceholderText = "workspace.GameAI.AIModels\nworkspace.Enemies\nworkspace.Players.Models"
folderInput.Text = ""
folderInput.TextSize = 14
folderInput.TextXAlignment = Enum.TextXAlignment.Left
folderInput.TextYAlignment = Enum.TextYAlignment.Top
folderInput.MultiLine = true
folderInput.Font = Enum.Font.Code
folderInput.ClearTextOnFocus = false
folderInput.Parent = mainFrame
local inputCorner = Instance.new("UICorner")
inputCorner.CornerRadius = UDim.new(0, 5)
inputCorner.Parent = folderInput
-- ESP Settings
local settingsLabel = Instance.new("TextLabel")
settingsLabel.Size = UDim2.new(0.9, 0, 0, 25)
settingsLabel.Position = UDim2.new(0.05, 0, 0, 190)
settingsLabel.BackgroundTransparency = 1
settingsLabel.Text = "ESP Settings:"
settingsLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
settingsLabel.TextSize = 14
settingsLabel.TextXAlignment = Enum.TextXAlignment.Left
settingsLabel.Font = Enum.Font.Gotham
settingsLabel.Parent = mainFrame
-- Box color picker (simplified)
local boxColorLabel = Instance.new("TextLabel")
boxColorLabel.Size = UDim2.new(0, 60, 0, 25)
boxColorLabel.Position = UDim2.new(0.05, 0, 0, 220)
boxColorLabel.BackgroundTransparency = 1
boxColorLabel.Text = "Box Color:"
boxColorLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
boxColorLabel.TextSize = 12
boxColorLabel.TextXAlignment = Enum.TextXAlignment.Left
boxColorLabel.Font = Enum.Font.Gotham
boxColorLabel.Parent = mainFrame
local boxColorBtn = Instance.new("TextButton")
boxColorBtn.Size = UDim2.new(0, 30, 0, 25)
boxColorBtn.Position = UDim2.new(0.35, 0, 0, 220)
boxColorBtn.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
boxColorBtn.Text = ""
boxColorBtn.Parent = mainFrame
local colorCorner = Instance.new("UICorner")
colorCorner.CornerRadius = UDim.new(0, 5)
colorCorner.Parent = boxColorBtn
-- Text color picker
local textColorLabel = Instance.new("TextLabel")
textColorLabel.Size = UDim2.new(0, 60, 0, 25)
textColorLabel.Position = UDim2.new(0.55, 0, 0, 220)
textColorLabel.BackgroundTransparency = 1
textColorLabel.Text = "Text Color:"
textColorLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
textColorLabel.TextSize = 12
textColorLabel.TextXAlignment = Enum.TextXAlignment.Left
textColorLabel.Font = Enum.Font.Gotham
textColorLabel.Parent = mainFrame
local textColorBtn = Instance.new("TextButton")
textColorBtn.Size = UDim2.new(0, 30, 0, 25)
textColorBtn.Position = UDim2.new(0.85, 0, 0, 220)
textColorBtn.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
textColorBtn.Text = ""
textColorBtn.Parent = mainFrame
local textColorCorner = Instance.new("UICorner")
textColorCorner.CornerRadius = UDim.new(0, 5)
textColorCorner.Parent = textColorBtn
-- Status indicator
local statusFrame = Instance.new("Frame")
statusFrame.Size = UDim2.new(0.9, 0, 0, 40)
statusFrame.Position = UDim2.new(0.05, 0, 0, 260)
statusFrame.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
statusFrame.Parent = mainFrame
local statusCorner = Instance.new("UICorner")
statusCorner.CornerRadius = UDim.new(0, 5)
statusCorner.Parent = statusFrame
local statusText = Instance.new("TextLabel")
statusText.Size = UDim2.new(1, -50, 1, 0)
statusText.Position = UDim2.new(0, 10, 0, 0)
statusText.BackgroundTransparency = 1
statusText.Text = "Status: OFF | 0 targets"
statusText.TextColor3 = Color3.fromRGB(200, 200, 200)
statusText.TextSize = 14
statusText.TextXAlignment = Enum.TextXAlignment.Left
statusText.Font = Enum.Font.Gotham
statusText.Parent = statusFrame
local statusLight = Instance.new("Frame")
statusLight.Size = UDim2.new(0, 15, 0, 15)
statusLight.Position = UDim2.new(1, -25, 0.5, -7.5)
statusLight.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
statusLight.Parent = statusFrame
local lightCorner = Instance.new("UICorner")
lightCorner.CornerRadius = UDim.new(0, 7.5)
lightCorner.Parent = statusLight
-- Buttons
local loadBtn = Instance.new("TextButton")
loadBtn.Size = UDim2.new(0.44, 0, 0, 40)
loadBtn.Position = UDim2.new(0.05, 0, 0, 310)
loadBtn.BackgroundColor3 = Color3.fromRGB(0, 150, 255)
loadBtn.Text = "LOAD FOLDERS"
loadBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
loadBtn.TextSize = 14
loadBtn.Font = Enum.Font.GothamBold
loadBtn.Parent = mainFrame
local loadCorner = Instance.new("UICorner")
loadCorner.CornerRadius = UDim.new(0, 8)
loadCorner.Parent = loadBtn
local toggleBtn = Instance.new("TextButton")
toggleBtn.Size = UDim2.new(0.44, 0, 0, 40)
toggleBtn.Position = UDim2.new(0.51, 0, 0, 310)
toggleBtn.BackgroundColor3 = Color3.fromRGB(0, 200, 0)
toggleBtn.Text = "ENABLE ESP"
toggleBtn.TextColor3 = Color3.fromRGB(0, 0, 0)
toggleBtn.TextSize = 14
toggleBtn.Font = Enum.Font.GothamBold
toggleBtn.Parent = mainFrame
local toggleCorner = Instance.new("UICorner")
toggleCorner.CornerRadius = UDim.new(0, 8)
toggleCorner.Parent = toggleBtn
-- ===== VARIABLES FOR SETTINGS =====
local boxColor = Color3.fromRGB(255, 0, 0)
local textColor = Color3.fromRGB(255, 255, 255)
-- Simple color cycling
local colors = {
Color3.fromRGB(255, 0, 0),
Color3.fromRGB(0, 255, 0),
Color3.fromRGB(0, 0, 255),
Color3.fromRGB(255, 255, 0),
Color3.fromRGB(255, 0, 255),
Color3.fromRGB(0, 255, 255)
}
local boxColorIndex = 1
local textColorIndex = 5
boxColorBtn.MouseButton1Click:Connect(function()
boxColorIndex = boxColorIndex % #colors + 1
boxColor = colors[boxColorIndex]
boxColorBtn.BackgroundColor3 = boxColor
-- Update existing ESP boxes
for _, draw in pairs(ESP) do
pcall(function()
draw.Box.Color = boxColor
end)
end
end)
textColorBtn.MouseButton1Click:Connect(function()
textColorIndex = textColorIndex % #colors + 1
textColor = colors[textColorIndex]
textColorBtn.BackgroundColor3 = textColor
-- Update existing ESP text
for _, draw in pairs(ESP) do
pcall(function()
draw.Text.Color = textColor
end)
end
end)
-- ===== ROOT FINDER =====
local function getRoot(model)
return model:FindFirstChild("HumanoidRootPart")
or model:FindFirstChild("Torso")
or model:FindFirstChild("UpperTorso")
or model:FindFirstChild("Head")
or model:FindFirstChild("LowerTorso")
or model:FindFirstChildWhichIsA("BasePart")
end
-- ===== CLEAR OLD ESP =====
local function clearESP()
for model, draw in pairs(ESP) do
pcall(function()
if draw.Box then
draw.Box:Remove()
end
if draw.Text then
draw.Text:Remove()
end
end)
end
ESP = {}
end
-- ===== ADD ESP =====
local function addESP(model)
if ESP[model] then return end
-- Don't add if it's the local player
if model == LocalPlayer.Character then return end
-- Double-check if model still exists and has a root
local root = getRoot(model)
if not root or not root.Parent then return end
-- Create drawing objects with error handling
local success, box = pcall(function()
local newBox = Drawing.new("Square")
newBox.Color = boxColor
newBox.Thickness = 2
newBox.Filled = false
newBox.Visible = espEnabled
return newBox
end)
if not success then
warn("Failed to create box for:", model.Name)
return
end
local success2, text = pcall(function()
local newText = Drawing.new("Text")
newText.Size = 16
newText.Center = true
newText.Outline = true
newText.OutlineColor = Color3.fromRGB(0, 0, 0)
newText.Font = 2 -- System font
newText.Color = textColor
newText.Visible = espEnabled
return newText
end)
if not success2 then
box:Remove()
warn("Failed to create text for:", model.Name)
return
end
ESP[model] = {Box = box, Text = text}
-- Update status
local count = 0
for _ in pairs(ESP) do
count = count + 1
end
statusText.Text = "Status: " .. (espEnabled and "ON" or "OFF") .. " | " .. count .. " targets"
-- Auto cleanup when model is removed
local connection
connection = model.AncestryChanged:Connect(function()
if not model.Parent then
connection:Disconnect()
if ESP[model] then
pcall(function()
ESP[model].Box:Remove()
ESP[model].Text:Remove()
ESP[model] = nil
-- Update status
local count = 0
for _ in pairs(ESP) do
count = count + 1
end
statusText.Text = "Status: " .. (espEnabled and "ON" or "OFF") .. " | " .. count .. " targets"
end)
end
end
end)
end
-- ===== SCAN FOLDER FOR MODELS =====
local function scanFolder(folder)
if not folder then return end
-- Scan existing objects
local function scanDescendants()
for _, obj in ipairs(folder:GetDescendants()) do
if obj:IsA("Model") and obj ~= LocalPlayer.Character then
if getRoot(obj) then
task.wait() -- Prevent lag
addESP(obj)
end
end
end
end
-- Run scan
task.spawn(scanDescendants)
-- Listen for new objects
folder.DescendantAdded:Connect(function(obj)
task.wait(0.1) -- Wait for object to fully load
if obj:IsA("Model") and obj ~= LocalPlayer.Character then
if getRoot(obj) then
addESP(obj)
end
end
end)
end
-- ===== LOAD FOLDERS FROM INPUT =====
local function loadFolders()
clearESP()
scanFolders = {}
local input = folderInput.Text
if input == "" then
statusText.Text = "Status: No folders entered | 0 targets"
return
end
-- Split by lines
local lines = {}
for line in input:gmatch("[^\r\n]+") do
-- Remove leading/trailing spaces
line = line:match("^%s*(.-)%s*$")
if line and line ~= "" then
table.insert(lines, line)
end
end
local loadedCount = 0
for _, line in ipairs(lines) do
-- Try to load the folder
local success, folder = pcall(function()
-- Use loadstring for complex paths
local func = loadstring("return " .. line)
if func then
return func()
end
return nil
end)
if success and folder then
table.insert(scanFolders, folder)
loadedCount = loadedCount + 1
scanFolder(folder)
print("Loaded folder:", line)
else
warn("Failed to load folder:", line)
end
end
-- Update status with count
local targetCount = 0
for _ in pairs(ESP) do
targetCount = targetCount + 1
end
statusText.Text = "Status: " .. (espEnabled and "ON" or "OFF") .. " | " .. targetCount .. " targets"
end
-- ===== TOGGLE ESP =====
local function toggleESP()
espEnabled = not espEnabled
if espEnabled then
toggleBtn.Text = "DISABLE ESP"
toggleBtn.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
statusLight.BackgroundColor3 = Color3.fromRGB(0, 255, 0)
else
toggleBtn.Text = "ENABLE ESP"
toggleBtn.BackgroundColor3 = Color3.fromRGB(0, 200, 0)
statusLight.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
end
-- Update all ESP visibility
for _, draw in pairs(ESP) do
pcall(function()
if draw.Box then
draw.Box.Visible = espEnabled
end
if draw.Text then
draw.Text.Visible = espEnabled
end
end)
end
-- Update status text
local count = 0
for _ in pairs(ESP) do
count = count + 1
end
statusText.Text = "Status: " .. (espEnabled and "ON" or "OFF") .. " | " .. count .. " targets"
end
-- ===== RENDER LOOP =====
RunService.RenderStepped:Connect(function()
if not espEnabled then return end
-- Update camera
Camera = workspace.CurrentCamera or Camera
if not Camera then return end
local viewportSize = Camera.ViewportSize
for model, draw in pairs(ESP) do
-- Skip if model is gone
if not model or not model.Parent then
if ESP[model] then
pcall(function()
ESP[model].Box:Remove()
ESP[model].Text:Remove()
ESP[model] = nil
end)
end
continue
end
local root = getRoot(model)
if root and root.Parent then
-- Get screen position
local pos, onScreen = Camera:WorldToViewportPoint(root.Position)
-- Check if on screen and in front of camera
if onScreen and pos.Z > 0 then
-- Calculate distance
local dist = (Camera.CFrame.Position - root.Position).Magnitude
-- Calculate box size based on distance
local scale = math.clamp(1000 / math.max(dist, 1), 30, 200)
-- Get model size (approximate)
local sizeX = scale
local sizeY = scale * 1.8
-- Try to get actual model size if possible
local modelSize = model:GetExtentsSize()
if modelSize.Magnitude > 0 then
local avgSize = (modelSize.X + modelSize.Y + modelSize.Z) / 3
sizeX = math.clamp(avgSize * (500 / dist), 20, 300)
sizeY = sizeX * 1.5
end
-- Calculate box position (centered on root)
local boxPos = Vector2.new(
pos.X - sizeX / 2,
pos.Y - sizeY / 2
)
-- Update box
if draw.Box then
draw.Box.Size = Vector2.new(sizeX, sizeY)
draw.Box.Position = boxPos
draw.Box.Visible = true
end
-- Update text (above the box)
if draw.Text then
draw.Text.Position = Vector2.new(pos.X, boxPos.Y - 18)
draw.Text.Text = string.format("%s [%dm]", model.Name, math.floor(dist))
draw.Text.Visible = true
end
else
-- Hide if off screen
if draw.Box then
draw.Box.Visible = false
end
if draw.Text then
draw.Text.Visible = false
end
end
else
-- Hide if no root
if draw.Box then
draw.Box.Visible = false
end
if draw.Text then
draw.Text.Visible = false
end
end
end
end)
-- ===== BUTTON EVENTS =====
loadBtn.MouseButton1Click:Connect(loadFolders)
toggleBtn.MouseButton1Click:Connect(toggleESP)
-- Close button
closeBtn.MouseButton1Click:Connect(function()
clearESP()
screenGui:Destroy()
end)
-- Mobile touch support
if UserInputService.TouchEnabled then
loadBtn.TouchTap:Connect(loadFolders)
toggleBtn.TouchTap:Connect(toggleESP)
closeBtn.TouchTap:Connect(function()
clearESP()
screenGui:Destroy()
end)
-- Make buttons bigger for mobile
mainFrame.Size = UDim2.new(0, 450, 0, 400)
mainFrame.Position = UDim2.new(0.5, -225, 0.5, -200)
end
-- Example placeholder text
folderInput.Text = [[workspace.GameAI.AIModels
workspace.Enemies
workspace.Players]]
-- Test message
local testMsg = Instance.new("Message")
testMsg.Parent = game:GetService("CoreGui")
testMsg.Text = "✅ ESP GUI Loaded! Enter folders and click LOAD"
task.wait(3)
pcall(function() testMsg:Destroy() end)
print("✅ Folder ESP Loaded! Enter folder paths and click LOAD FOLDERS")
end,
})
Button:Set("Esp Folder")
local Button = Tab:CreateButton({
Name = "Esp Path",
Callback = function()
-- 2D Box ESP with GUI Input
-- Put this in a LocalScript inside StarterPlayerScripts or StarterGui
local players = game:GetService("Players")
local runService = game:GetService("RunService")
local userInputService = game:GetService("UserInputService")
local camera = workspace.CurrentCamera
local localPlayer = players.LocalPlayer
-- Store ESP objects
local espObjects = {}
local espEnabled = false
local currentModelPath = nil
local currentModelName = nil
-- ===== CREATE GUI =====
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "ESPConfigGUI"
screenGui.ResetOnSpawn = false
screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
-- Try to parent GUI
pcall(function() screenGui.Parent = game:GetService("CoreGui") end)
if not screenGui.Parent then
pcall(function() screenGui.Parent = localPlayer:WaitForChild("PlayerGui") end)
end
-- ===== MAIN FRAME =====
local mainFrame = Instance.new("Frame")
mainFrame.Name = "MainFrame"
mainFrame.Size = UDim2.new(0, 400, 0, 350)
mainFrame.Position = UDim2.new(0.5, -200, 0.5, -175)
mainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
mainFrame.BorderSizePixel = 2
mainFrame.BorderColor3 = Color3.fromRGB(255, 170, 0)
mainFrame.Active = true
mainFrame.Draggable = true
mainFrame.Parent = screenGui
-- Frame corner
local frameCorner = Instance.new("UICorner")
frameCorner.CornerRadius = UDim.new(0, 10)
frameCorner.Parent = mainFrame
-- Title
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 40)
title.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
title.Text = "🎯 2D BOX ESP CONFIGURATION"
title.TextColor3 = Color3.fromRGB(255, 170, 0)
title.TextSize = 18
title.Font = Enum.Font.GothamBold
title.Parent = mainFrame
local titleCorner = Instance.new("UICorner")
titleCorner.CornerRadius = UDim.new(0, 10)
titleCorner.Parent = title
-- Close button
local closeBtn = Instance.new("TextButton")
closeBtn.Size = UDim2.new(0, 30, 0, 30)
closeBtn.Position = UDim2.new(1, -40, 0, 5)
closeBtn.BackgroundColor3 = Color3.fromRGB(255, 50, 50)
closeBtn.Text = "X"
closeBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
closeBtn.TextSize = 20
closeBtn.Font = Enum.Font.GothamBold
closeBtn.Parent = title
local closeCorner = Instance.new("UICorner")
closeCorner.CornerRadius = UDim.new(0, 8)
closeCorner.Parent = closeBtn
-- ===== INPUT FIELDS =====
-- Model Path
local pathLabel = Instance.new("TextLabel")
pathLabel.Size = UDim2.new(0.9, 0, 0, 25)
pathLabel.Position = UDim2.new(0.05, 0, 0, 50)
pathLabel.BackgroundTransparency = 1
pathLabel.Text = "Model Path:"
pathLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
pathLabel.TextSize = 14
pathLabel.TextXAlignment = Enum.TextXAlignment.Left
pathLabel.Font = Enum.Font.Gotham
pathLabel.Parent = mainFrame
local pathInput = Instance.new("TextBox")
pathInput.Size = UDim2.new(0.9, 0, 0, 35)
pathInput.Position = UDim2.new(0.05, 0, 0, 80)
pathInput.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
pathInput.TextColor3 = Color3.fromRGB(255, 255, 255)
pathInput.PlaceholderColor3 = Color3.fromRGB(150, 150, 150)
pathInput.PlaceholderText = "workspace.GameAI.AIModels"
pathInput.Text = ""
pathInput.TextSize = 14
pathInput.Font = Enum.Font.Code
pathInput.ClearTextOnFocus = false
pathInput.Parent = mainFrame
local pathCorner = Instance.new("UICorner")
pathCorner.CornerRadius = UDim.new(0, 5)
pathCorner.Parent = pathInput
-- Model Name
local nameLabel = Instance.new("TextLabel")
nameLabel.Size = UDim2.new(0.9, 0, 0, 25)
nameLabel.Position = UDim2.new(0.05, 0, 0, 125)
nameLabel.BackgroundTransparency = 1
nameLabel.Text = "Model Name:"
nameLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
nameLabel.TextSize = 14
nameLabel.TextXAlignment = Enum.TextXAlignment.Left
nameLabel.Font = Enum.Font.Gotham
nameLabel.Parent = mainFrame
local nameInput = Instance.new("TextBox")
nameInput.Size = UDim2.new(0.9, 0, 0, 35)
nameInput.Position = UDim2.new(0.05, 0, 0, 155)
nameInput.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
nameInput.TextColor3 = Color3.fromRGB(255, 255, 255)
nameInput.PlaceholderColor3 = Color3.fromRGB(150, 150, 150)
nameInput.PlaceholderText = "sada21da"
nameInput.Text = ""
nameInput.TextSize = 14
nameInput.Font = Enum.Font.Code
nameInput.ClearTextOnFocus = false
nameInput.Parent = mainFrame
local nameCorner = Instance.new("UICorner")
nameCorner.CornerRadius = UDim.new(0, 5)
nameCorner.Parent = nameInput
-- ===== ESP SETTINGS =====
local settingsLabel = Instance.new("TextLabel")
settingsLabel.Size = UDim2.new(0.9, 0, 0, 25)
settingsLabel.Position = UDim2.new(0.05, 0, 0, 200)
settingsLabel.BackgroundTransparency = 1
settingsLabel.Text = "ESP Settings:"
settingsLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
settingsLabel.TextSize = 14
settingsLabel.TextXAlignment = Enum.TextXAlignment.Left
settingsLabel.Font = Enum.Font.Gotham
settingsLabel.Parent = mainFrame
-- Box Color
local boxColorLabel = Instance.new("TextLabel")
boxColorLabel.Size = UDim2.new(0, 70, 0, 25)
boxColorLabel.Position = UDim2.new(0.05, 0, 0, 230)
boxColorLabel.BackgroundTransparency = 1
boxColorLabel.Text = "Box Color:"
boxColorLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
boxColorLabel.TextSize = 12
boxColorLabel.TextXAlignment = Enum.TextXAlignment.Left
boxColorLabel.Font = Enum.Font.Gotham
boxColorLabel.Parent = mainFrame
local boxColorBtn = Instance.new("TextButton")
boxColorBtn.Size = UDim2.new(0, 40, 0, 25)
boxColorBtn.Position = UDim2.new(0.3, 0, 0, 230)
boxColorBtn.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
boxColorBtn.Text = ""
boxColorBtn.Parent = mainFrame
local boxColorCorner = Instance.new("UICorner")
boxColorCorner.CornerRadius = UDim.new(0, 5)
boxColorCorner.Parent = boxColorBtn
-- Text Color
local textColorLabel = Instance.new("TextLabel")
textColorLabel.Size = UDim2.new(0, 70, 0, 25)
textColorLabel.Position = UDim2.new(0.5, 0, 0, 230)
textColorLabel.BackgroundTransparency = 1
textColorLabel.Text = "Text Color:"
textColorLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
textColorLabel.TextSize = 12
textColorLabel.TextXAlignment = Enum.TextXAlignment.Left
textColorLabel.Font = Enum.Font.Gotham
textColorLabel.Parent = mainFrame
local textColorBtn = Instance.new("TextButton")
textColorBtn.Size = UDim2.new(0, 40, 0, 25)
textColorBtn.Position = UDim2.new(0.75, 0, 0, 230)
textColorBtn.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
textColorBtn.Text = ""
textColorBtn.Parent = mainFrame
local textColorCorner = Instance.new("UICorner")
textColorCorner.CornerRadius = UDim.new(0, 5)
textColorCorner.Parent = textColorBtn
-- Box Thickness
local thicknessLabel = Instance.new("TextLabel")
thicknessLabel.Size = UDim2.new(0, 100, 0, 25)
thicknessLabel.Position = UDim2.new(0.05, 0, 0, 265)
thicknessLabel.BackgroundTransparency = 1
thicknessLabel.Text = "Box Thickness: 2"
thicknessLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
thicknessLabel.TextSize = 12
thicknessLabel.TextXAlignment = Enum.TextXAlignment.Left
thicknessLabel.Font = Enum.Font.Gotham
thicknessLabel.Parent = mainFrame
local thicknessSlider = Instance.new("TextButton")
thicknessSlider.Size = UDim2.new(0.4, 0, 0, 25)
thicknessSlider.Position = UDim2.new(0.5, 0, 0, 265)
thicknessSlider.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
thicknessSlider.Text = "+ / -"
thicknessSlider.TextColor3 = Color3.fromRGB(255, 255, 255)
thicknessSlider.TextSize = 12
thicknessSlider.Font = Enum.Font.Gotham
thicknessSlider.Parent = mainFrame
local thicknessCorner = Instance.new("UICorner")
thicknessCorner.CornerRadius = UDim.new(0, 5)
thicknessCorner.Parent = thicknessSlider
-- ===== STATUS INDICATOR =====
local statusFrame = Instance.new("Frame")
statusFrame.Size = UDim2.new(0.9, 0, 0, 40)
statusFrame.Position = UDim2.new(0.05, 0, 0, 300)
statusFrame.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
statusFrame.Parent = mainFrame
local statusCorner = Instance.new("UICorner")
statusCorner.CornerRadius = UDim.new(0, 5)
statusCorner.Parent = statusFrame
local statusText = Instance.new("TextLabel")
statusText.Size = UDim2.new(1, -50, 1, 0)
statusText.Position = UDim2.new(0, 10, 0, 0)
statusText.BackgroundTransparency = 1
statusText.Text = "⚫ ESP: OFF | No target"
statusText.TextColor3 = Color3.fromRGB(200, 200, 200)
statusText.TextSize = 14
statusText.TextXAlignment = Enum.TextXAlignment.Left
statusText.Font = Enum.Font.Gotham
statusText.Parent = statusFrame
local statusLight = Instance.new("Frame")
statusLight.Size = UDim2.new(0, 15, 0, 15)
statusLight.Position = UDim2.new(1, -25, 0.5, -7.5)
statusLight.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
statusLight.Parent = statusFrame
local lightCorner = Instance.new("UICorner")
lightCorner.CornerRadius = UDim.new(0, 7.5)
lightCorner.Parent = statusLight
-- ===== BUTTONS =====
local loadBtn = Instance.new("TextButton")
loadBtn.Size = UDim2.new(0.44, 0, 0, 35)
loadBtn.Position = UDim2.new(0.05, 0, 1, -45)
loadBtn.BackgroundColor3 = Color3.fromRGB(0, 150, 255)
loadBtn.Text = "LOAD TARGET"
loadBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
loadBtn.TextSize = 14
loadBtn.Font = Enum.Font.GothamBold
loadBtn.Parent = mainFrame
local loadCorner = Instance.new("UICorner")
loadCorner.CornerRadius = UDim.new(0, 8)
loadCorner.Parent = loadBtn
local toggleBtn = Instance.new("TextButton")
toggleBtn.Size = UDim2.new(0.44, 0, 0, 35)
toggleBtn.Position = UDim2.new(0.51, 0, 1, -45)
toggleBtn.BackgroundColor3 = Color3.fromRGB(0, 200, 0)
toggleBtn.Text = "ENABLE ESP"
toggleBtn.TextColor3 = Color3.fromRGB(0, 0, 0)
toggleBtn.TextSize = 14
toggleBtn.Font = Enum.Font.GothamBold
toggleBtn.Parent = mainFrame
local toggleCorner = Instance.new("UICorner")
toggleCorner.CornerRadius = UDim.new(0, 8)
toggleCorner.Parent = toggleBtn
-- ===== VARIABLES FOR SETTINGS =====
local boxColor = Color3.fromRGB(255, 0, 0)
local textColor = Color3.fromRGB(255, 255, 255)
local boxThickness = 2
-- Color cycling
local colors = {
Color3.fromRGB(255, 0, 0),
Color3.fromRGB(0, 255, 0),
Color3.fromRGB(0, 0, 255),
Color3.fromRGB(255, 255, 0),
Color3.fromRGB(255, 0, 255),
Color3.fromRGB(0, 255, 255)
}
local boxColorIndex = 1
local textColorIndex = 5
boxColorBtn.MouseButton1Click:Connect(function()
boxColorIndex = boxColorIndex % #colors + 1
boxColor = colors[boxColorIndex]
boxColorBtn.BackgroundColor3 = boxColor
-- Update existing ESP
for _, esp in pairs(espObjects) do
if esp.Box then
esp.Box.Color = boxColor
end
if esp.NameLabel then
esp.NameLabel.TextColor3 = boxColor
end
end
end)
textColorBtn.MouseButton1Click:Connect(function()
textColorIndex = textColorIndex % #colors + 1
textColor = colors[textColorIndex]
textColorBtn.BackgroundColor3 = textColor
-- Update existing ESP
for _, esp in pairs(espObjects) do
if esp.DistanceLabel then
esp.DistanceLabel.TextColor3 = textColor
end
end
end)
-- Thickness controls
thicknessSlider.MouseButton1Click:Connect(function()
boxThickness = boxThickness + 1
if boxThickness > 5 then
boxThickness = 1
end
thicknessLabel.Text = "Box Thickness: " .. boxThickness
-- Update existing ESP
for _, esp in pairs(espObjects) do
if esp.Box then
esp.Box.Thickness = boxThickness
end
end
end)
-- ===== ESP FUNCTIONS =====
-- Get root part of model
local function getRootPart(model)
return model:FindFirstChild("HumanoidRootPart")
or model:FindFirstChild("Torso")
or model:FindFirstChild("UpperTorso")
or model:FindFirstChild("Head")
or model.PrimaryPart
or model:FindFirstChildWhichIsA("BasePart")
end
-- Create a new ESP for a model
local function createESP(model)
if not model or espObjects[model] then return end
local rootPart = getRootPart(model)
if not rootPart then return end
-- Create BillboardGui
local billboard = Instance.new("BillboardGui")
billboard.Name = "ESP_" .. model.Name
billboard.Adornee = rootPart
billboard.Size = UDim2.new(0, 200, 0, 50)
billboard.StudsOffset = Vector3.new(0, 3, 0)
billboard.AlwaysOnTop = true
billboard.ResetOnSpawn = false
-- Name label
local nameLabel = Instance.new("TextLabel")
nameLabel.Name = "NameLabel"
nameLabel.Size = UDim2.new(1, 0, 0.5, 0)
nameLabel.Position = UDim2.new(0, 0, 0.5, 0)
nameLabel.BackgroundTransparency = 1
nameLabel.Text = model.Name
nameLabel.TextColor3 = boxColor
nameLabel.TextScaled = true
nameLabel.Font = Enum.Font.SourceSansBold
nameLabel.TextStrokeTransparency = 0.3
nameLabel.TextStrokeColor3 = Color3.new(0, 0, 0)
nameLabel.Parent = billboard
-- Distance label
local distanceLabel = Instance.new("TextLabel")
distanceLabel.Name = "DistanceLabel"
distanceLabel.Size = UDim2.new(1, 0, 0.5, 0)
distanceLabel.Position = UDim2.new(0, 0, 0, 0)
distanceLabel.BackgroundTransparency = 1
distanceLabel.Text = "0m"
distanceLabel.TextColor3 = textColor
distanceLabel.TextScaled = true
distanceLabel.Font = Enum.Font.SourceSansBold
distanceLabel.TextStrokeTransparency = 0.3
distanceLabel.TextStrokeColor3 = Color3.new(0, 0, 0)
distanceLabel.Parent = billboard
billboard.Parent = model
-- Create 2D Box
local box = Drawing.new("Square")
box.Visible = false
box.Color = boxColor
box.Thickness = boxThickness
box.Transparency = 1
box.Filled = false
espObjects[model] = {
Billboard = billboard,
Box = box,
NameLabel = nameLabel,
DistanceLabel = distanceLabel,
Model = model,
RootPart = rootPart
}
updateStatus()
end
-- Remove ESP from a model
local function removeESP(model)
if espObjects[model] then
if espObjects[model].Billboard then
espObjects[model].Billboard:Destroy()
end
if espObjects[model].Box then
espObjects[model].Box:Remove()
end
espObjects[model] = nil
end
updateStatus()
end
-- Clear all ESP
local function clearAllESP()
for model, _ in pairs(espObjects) do
removeESP(model)
end
end
-- Update status display
local function updateStatus()
local count = 0
for _ in pairs(espObjects) do
count = count + 1
end
if espEnabled then
statusText.Text = "🟢 ESP: ON | " .. count .. " target" .. (count ~= 1 and "s" or "")
statusLight.BackgroundColor3 = Color3.fromRGB(0, 255, 0)
else
statusText.Text = "⚫ ESP: OFF | " .. count .. " target" .. (count ~= 1 and "s" or "")
statusLight.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
end
end
-- Toggle ESP
local function toggleESP()
espEnabled = not espEnabled
if espEnabled then
toggleBtn.Text = "DISABLE ESP"
toggleBtn.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
else
toggleBtn.Text = "ENABLE ESP"
toggleBtn.BackgroundColor3 = Color3.fromRGB(0, 200, 0)
end
-- Update visibility
for _, esp in pairs(espObjects) do
if esp.Billboard then
esp.Billboard.Enabled = espEnabled
end
if esp.Box then
esp.Box.Visible = espEnabled
end
end
updateStatus()
end
-- Load target from input
local function loadTarget()
clearAllESP()
local pathString = pathInput.Text
local modelName = nameInput.Text
if pathString == "" or modelName == "" then
statusText.Text = "⚠️ Please enter both path and model name"
return
end
-- Try to get the model path
local success, modelPath = pcall(function()
local func = loadstring("return " .. pathString)
if func then
return func()
end
return nil
end)
if not success or not modelPath then
statusText.Text = "❌ Invalid model path"
return
end
currentModelPath = modelPath
currentModelName = modelName
-- Find the target model
local targetModel = modelPath:FindFirstChild(modelName)
if targetModel then
createESP(targetModel)
statusText.Text = "✅ Target loaded: " .. modelName
else
statusText.Text = "⏳ Waiting for target: " .. modelName
end
-- Watch for model to appear
modelPath.ChildAdded:Connect(function(child)
if child.Name == modelName and not espObjects[child] then
task.wait(0.1)
createESP(child)
statusText.Text = "✅ Target found: " .. modelName
end
end)
-- Watch for model removal
modelPath.ChildRemoved:Connect(function(child)
if child.Name == modelName and espObjects[child] then
removeESP(child)
statusText.Text = "⏳ Waiting for target: " .. modelName
end
end)
end
-- ===== RENDER LOOP =====
runService.RenderStepped:Connect(function()
if not espEnabled then return end
camera = workspace.CurrentCamera or camera
for model, esp in pairs(espObjects) do
-- Update root part
esp.RootPart = getRootPart(model) or esp.RootPart
if esp.RootPart and esp.RootPart.Parent then
-- Update distance
if localPlayer.Character and localPlayer.Character.PrimaryPart then
local distance = (esp.RootPart.Position - localPlayer.Character.PrimaryPart.Position).Magnitude
esp.DistanceLabel.Text = math.floor(distance) + 1 .. "m"
end
-- Update Billboard adornee
if esp.Billboard then
esp.Billboard.Adornee = esp.RootPart
end
-- Update 2D box
if esp.Box then
local position, onScreen = camera:WorldToViewportPoint(esp.RootPart.Position)
if onScreen and position.Z > 0 then
-- Calculate box size
local distance = (camera.CFrame.Position - esp.RootPart.Position).Magnitude
local scale = math.clamp(600 / math.max(distance, 1), 30, 300)
-- Get model size
local modelSize = esp.RootPart.Size
if model:FindFirstChild("Humanoid") and model:FindFirstChild("HumanoidRootPart") then
modelSize = model.HumanoidRootPart.Size
end
-- Adjust size based on model dimensions
local boxWidth = scale * (modelSize.X + modelSize.Z) / 3
local boxHeight = scale * modelSize.Y * 1.8
-- Clamp minimum size
boxWidth = math.max(boxWidth, 40)
boxHeight = math.max(boxHeight, 60)
-- Draw box
esp.Box.Size = Vector2.new(boxWidth, boxHeight)
esp.Box.Position = Vector2.new(position.X - boxWidth/2, position.Y - boxHeight/2)
esp.Box.Visible = true
else
esp.Box.Visible = false
end
end
else
-- Hide if no root part
if esp.Box then
esp.Box.Visible = false
end
end
end
end)
-- ===== BUTTON EVENTS =====
loadBtn.MouseButton1Click:Connect(loadTarget)
toggleBtn.MouseButton1Click:Connect(toggleESP)
closeBtn.MouseButton1Click:Connect(function()
clearAllESP()
screenGui:Destroy()
end)
-- Mobile support
if userInputService.TouchEnabled then
loadBtn.TouchTap:Connect(loadTarget)
toggleBtn.TouchTap:Connect(toggleESP)
closeBtn.TouchTap:Connect(function()
clearAllESP()
screenGui:Destroy()
end)
end
-- Cleanup on character respawn
localPlayer.CharacterAdded:Connect(function()
task.wait(1)
-- Don't clear, just update when character loads
end)
-- Initial status
updateStatus()
print("✅ 2D Box ESP GUI Loaded! Configure and click LOAD TARGET")
end,
})
Button:Set("Esp Path")
local Tab = Window:CreateTab("Demonology", 4483362458) -- Title, Image
local Section = Tab:CreateSection("Demonology")
Section:Set("Demonology")
local Button = Tab:CreateButton({
Name = "Esp Everything",
Callback = function()
-- Compiled with roblox-ts v3.0.0
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Workspace = game:GetService("Workspace")
--[[
***********************************************************
* UTILITIES
* Description: Functions and classes for general use
* Last updated: Jan. 14, 2025
***********************************************************
]]
local _binding = os
local clock = _binding.clock
local _binding_1 = task
local cancel = _binding_1.cancel
local defer = _binding_1.defer
local delay = _binding_1.delay
local spawn = _binding_1.spawn
local _binding_2 = math
local abs = _binding_2.abs
local atan2 = _binding_2.atan2
local cos = _binding_2.cos
local clamp = _binding_2.clamp
local max = _binding_2.max
local pi = _binding_2.pi
local rad = _binding_2.rad
local sin = _binding_2.sin
local sqrt = _binding_2.sqrt
local EPSILON = 5e-3
local PI, TAU, SEMI, DEG60, DEG45 = pi, 2 * pi, pi / 2, pi / 3, pi / 4
local VECTOR3_2D, VECTOR3_ZERO = Vector3.new(1, 0, 1), Vector3.zero
local WORLD_UP, WORLD_RIGHT, WORLD_FORWARD = Vector3.new(0, 1, 0), Vector3.new(1, 0, 0), Vector3.new(0, 0, 1)
local wrapRad = function(angle)
return ((angle % TAU) + TAU) % TAU
end
--[[
*
* A simple representation of RBXScriptConnection for custom events.
]]
local Connection
do
Connection = setmetatable({}, {
__tostring = function()
return "Connection"
end,
})
Connection.__index = Connection
function Connection.new(...)
local self = setmetatable({}, Connection)
return self:constructor(...) or self
end
function Connection:constructor(disconnect, Connected)
if Connected == nil then
Connected = true
end
self.disconnect = disconnect
self.Connected = Connected
end
function Connection:Disconnect()
self.disconnect()
self.Connected = false
end
end
--[[
*
* Tracks connections, instances, functions, threads, and objects to be later destroyed.
]]
--[[
*
* Tracks connections, instances, functions, threads, and objects to be later destroyed.
]]
local Bin
do
Bin = setmetatable({}, {
__tostring = function()
return "Bin"
end,
})
Bin.__index = Bin
function Bin.new(...)
local self = setmetatable({}, Bin)
return self:constructor(...) or self
end
function Bin:constructor()
end
function Bin:add(item)
local node = {
item = item,
}
if self.head == nil then
self.head = node
end
if self.tail then
self.tail.next = node
end
self.tail = node
return item
end
function Bin:destroy()
while self.head do
local item = self.head.item
if type(item) == "function" then
item()
elseif typeof(item) == "RBXScriptConnection" then
item:Disconnect()
elseif type(item) == "thread" then
task.cancel(item)
elseif isrenderobj(item) then
item:Destroy()
elseif item.destroy ~= nil then
item:destroy()
elseif item.Destroy ~= nil then
item:Destroy()
elseif item.disconnect ~= nil then
item:disconnect()
elseif item.Disconnect ~= nil then
item:Disconnect()
elseif item.cancel ~= nil then
item:cancel()
end
self.head = self.head.next
end
-- list is now empty, so we can clear the tail
self.tail = nil
end
function Bin:isEmpty()
return self.head == nil
end
end
--[[
*
* Waits for a child instance to be added to the given parent object and returns it.
]]
local function expectChild(obj, criteria, timeout)
if timeout == nil then
timeout = 1e4
end
local _binding_3 = criteria
local kind = _binding_3[1]
local name = _binding_3[2]
local isValid = if name == nil then function(obj)
return obj:IsA(kind)
end else function(obj)
return obj.Name == name and obj:IsA(kind)
end
for _, v in obj:GetChildren() do
if isValid(v) then
return v
end
end
-- Wait for the child to be added
local v
local thread = coroutine.running()
local c, d = obj.ChildAdded:Connect(function(i)
if isValid(i) then
v = i
spawn(thread)
end
end), delay(timeout, function()
return spawn(thread)
end)
coroutine.yield()
if v then
cancel(d)
end
if c.Connected then
c:Disconnect()
end
return v
end
--[[
*
* Runs for the all child instance that matches the given name and kind.
]]
local function forChildThen(obj, criteria, callback, n)
if n == nil then
n = 9e9
end
local _binding_3 = criteria
local kind = _binding_3[1]
local name = _binding_3[2]
local isValid = if name == nil then function(obj)
return obj:IsA(kind)
end else function(obj)
return obj.Name == name and obj:IsA(kind)
end
for _, v in obj:GetChildren() do
if isValid(v) then
spawn(callback, v)
n -= 1
if n == 0 then
return Connection.new(function() end)
end
end
end
local connection
connection = obj.ChildAdded:Connect(function(v)
if isValid(v) then
spawn(callback, v)
n -= 1
if n == 0 then
connection:Disconnect()
end
end
end)
return Connection.new(function()
if connection.Connected then
connection:Disconnect()
end
end)
end
--[[
*
* Runs for the first child instance that matches the given name and kind.
]]
local function whenChildThen(obj, criteria, callback, timeout)
if timeout == nil then
timeout = 1e4
end
local connection
local thread = delay(timeout, function()
if connection.Connected then
connection:Disconnect()
end
end)
connection = forChildThen(obj, criteria, function(child)
cancel(thread)
callback(child)
end, 1)
return connection
end
--[[
***********************************************************
* VARIABLES
* Description: Functions and classes for general use
* Last updated: Jan. 14, 2025
***********************************************************
]]
local LocalPlayer = Players.LocalPlayer
--[[
***********************************************************
* CLASSES
* Description: Functions and classes for general use
* Last updated: Jan. 14, 2025
***********************************************************
]]
local CameraController
local LocationMarker
do
LocationMarker = setmetatable({}, {
__tostring = function()
return "LocationMarker"
end,
})
LocationMarker.__index = LocationMarker
function LocationMarker.new(...)
local self = setmetatable({}, LocationMarker)
return self:constructor(...) or self
end
function LocationMarker:constructor(origin)
self.bin = Bin.new()
self.OFFSET = Vector2.new(0, 5)
self.origin = origin
local label = Drawing.new("Text")
local marker = Drawing.new("Circle")
self.label = label
self.marker = marker
local bin = self.bin
bin:add(label)
bin:add(marker)
-- initialize
label.Center = true
label.Outline = true
marker.Filled = true
marker.NumSides = 6
end
function LocationMarker:setTitle(title)
self.label.Text = title
return self
end
function LocationMarker:setSize(radius, textSize)
self.marker.Radius = radius
self.label.Size = textSize
return self
end
function LocationMarker:setColor(color)
self.label.Color = color
self.marker.Color = color
return self
end
function LocationMarker:setPosition(position)
self.origin = position
return self
end
function LocationMarker:setEnabled(enabled)
local renderer = self.renderer
local _result = renderer
if _result ~= nil then
_result:Disconnect()
end
if enabled then
local _binding_3 = self
local origin = _binding_3.origin
local bin = _binding_3.bin
local label = _binding_3.label
local marker = _binding_3.marker
local OFFSET = _binding_3.OFFSET
renderer = bin:add(RunService.RenderStepped:Connect(function()
local VPC, onscreen = CameraController.worldToViewportPoint(origin)
if onscreen then
local PC = Vector2.new(VPC.X, VPC.Y)
label.Position = PC + OFFSET
marker.Position = PC
label.Visible = true
marker.Visible = true
else
label.Visible = false
marker.Visible = false
end
end))
else
self.renderer = nil
self.label.Visible = false
self.marker.Visible = false
end
return self
end
function LocationMarker:destroy()
self.bin:destroy()
end
end
--[[
***********************************************************
* COMPONENTS
* Description: Classes for specific entities/objects
* Last updated: Feb. 14, 2024
***********************************************************
]]
local BaseComponent
do
BaseComponent = setmetatable({}, {
__tostring = function()
return "BaseComponent"
end,
})
BaseComponent.__index = BaseComponent
function BaseComponent.new(...)
local self = setmetatable({}, BaseComponent)
return self:constructor(...) or self
end
function BaseComponent:constructor(instance)
self.instance = instance
self.bin = Bin.new()
self.bin:add(instance.Destroying:Connect(function()
return self:destroy()
end))
end
function BaseComponent:destroy()
self.bin:destroy()
end
end
local CharacterRig
do
local super = BaseComponent
CharacterRig = setmetatable({}, {
__tostring = function()
return "CharacterRig"
end,
__index = super,
})
CharacterRig.__index = CharacterRig
function CharacterRig.new(...)
local self = setmetatable({}, CharacterRig)
return self:constructor(...) or self
end
function CharacterRig:constructor(instance)
super.constructor(self, instance)
self.health = 100
self._subHealth = {}
local root = expectChild(instance, { "BasePart", "HumanoidRootPart" }, 30)
if not root then
error("[CharacterRig]: " .. tostring(instance) .. " is missing HumanoidRootPart!")
end
local humanoid = expectChild(instance, { "Humanoid", "Humanoid" }, 30)
if not humanoid then
error("[CharacterRig]: " .. tostring(instance) .. " is missing Humanoid!")
end
self.root = root
self.humanoid = humanoid
self.health = humanoid.Health
local _binding_3 = self
local bin = _binding_3.bin
bin:add(humanoid:GetPropertyChangedSignal("Health"):Connect(function()
return self:onHumanoidHealthChanged()
end))
-- initialize
spawn(function()
return self:onHumanoidHealthChanged()
end)
end
function CharacterRig:onHumanoidHealthChanged()
local health = self.humanoid.Health
if health == 0 then
return self:destroy()
end
self.health = health
local _exp = self._subHealth
-- ▼ ReadonlyMap.forEach ▼
local _callback = function(callback)
return spawn(callback, health)
end
for _k, _v in _exp do
_callback(_v, _k, _exp)
end
-- ▲ ReadonlyMap.forEach ▲
end
function CharacterRig:subscribeHealth(callback)
local id = {}
local _binding_3 = self
local _subHealth = _binding_3._subHealth
local bin = _binding_3.bin
local health = _binding_3.health
local _callback = callback
_subHealth[id] = _callback
spawn(callback, health)
return bin:add(Connection.new(function()
_subHealth[id] = nil
end))
end
function CharacterRig:getRoot()
return self.root
end
function CharacterRig:getHumanoid()
return self.humanoid
end
function CharacterRig:getHealth()
return self.health
end
function CharacterRig:getPivot()
return self.root.CFrame
end
function CharacterRig:getPosition()
return self.root.Position
end
end
local MonsterComponent
do
local super = BaseComponent
MonsterComponent = setmetatable({}, {
__tostring = function()
return "MonsterComponent"
end,
__index = super,
})
MonsterComponent.__index = MonsterComponent
function MonsterComponent.new(...)
local self = setmetatable({}, MonsterComponent)
return self:constructor(...) or self
end
function MonsterComponent:constructor(instance, name)
if name == nil then
name = instance.Name
end
super.constructor(self, instance)
self.instance = instance
self.name = name
local label = Drawing.new("Text")
self.label = label
local _binding_3 = self
local bin = _binding_3.bin
bin:add(label)
bin:add(instance.AncestryChanged:Connect(function()
return self:destroy()
end))
-- initialize
label.Text = name
label.Size = 14
label.Center = true
label.Outline = true
end
function MonsterComponent:setColor(color)
self.label.Color = color
end
function MonsterComponent:setEnabled(enabled)
local _binding_3 = self
local renderer = _binding_3.renderer
local _result = renderer
if _result ~= nil then
_result:Disconnect()
end
if enabled then
local _binding_4 = self
local bin = _binding_4.bin
local root = _binding_4.root
local label = _binding_4.label
self.renderer = bin:add(RunService.RenderStepped:Connect(function()
local pivot = root.CFrame
local position = root.Position
local VPC = CameraController.worldToViewportPoint(position)
if VPC.Z > 0 then
local PC = Vector2.new(VPC.X, VPC.Y)
-- Label
label.Position = PC
label.Visible = true
else
label.Visible = false
end
end))
else
self.renderer = nil
self.label.Visible = false
end
end
end
local FingerprintComponent
do
local super = BaseComponent
FingerprintComponent = setmetatable({}, {
__tostring = function()
return "FingerprintComponent"
end,
__index = super,
})
FingerprintComponent.__index = FingerprintComponent
function FingerprintComponent.new(...)
local self = setmetatable({}, FingerprintComponent)
return self:constructor(...) or self
end
function FingerprintComponent:constructor(instance)
super.constructor(self, instance)
self.fingerprint = instance
local marker = LocationMarker.new(instance.Position):setTitle(instance.Name):setSize(5, 10):setColor(Color3.new(1, 0.5, 0)):setEnabled(true)
self.marker = marker
local _binding_3 = self
local bin = _binding_3.bin
bin:add(marker)
bin:add(instance.AncestryChanged:Connect(function()
return self:destroy()
end))
end
end
local ItemComponent
do
local super = BaseComponent
ItemComponent = setmetatable({}, {
__tostring = function()
return "ItemComponent"
end,
__index = super,
})
ItemComponent.__index = ItemComponent
function ItemComponent.new(...)
local self = setmetatable({}, ItemComponent)
return self:constructor(...) or self
end
function ItemComponent:constructor(instance)
super.constructor(self, instance)
local handle = expectChild(instance, { "BasePart", "Handle" }, 30)
self.handle = handle
if not handle then
error("[ItemComponent]: " .. tostring(instance) .. " is missing Handle")
end
local marker = LocationMarker.new(instance:GetPivot().Position):setTitle(instance:GetAttribute("ItemName")):setSize(5, 10):setColor(Color3.new(0.5, 1, 0.5)):setEnabled(true)
self.marker = marker
local _binding_3 = self
local bin = _binding_3.bin
bin:add(marker)
bin:add(instance.AncestryChanged:Connect(function()
return self:destroy()
end))
end
end
local CursedPossesionHolderComponent
do
local super = BaseComponent
CursedPossesionHolderComponent = setmetatable({}, {
__tostring = function()
return "CursedPossesionHolderComponent"
end,
__index = super,
})
CursedPossesionHolderComponent.__index = CursedPossesionHolderComponent
function CursedPossesionHolderComponent.new(...)
local self = setmetatable({}, CursedPossesionHolderComponent)
return self:constructor(...) or self
end
function CursedPossesionHolderComponent:constructor(instance)
super.constructor(self, instance)
local primary = instance.PrimaryPart
self.primary = primary
if not primary then
error("[CursedPossesionHolderComponent]: " .. tostring(instance) .. " is missing a primary part!")
end
self.primary = primary
local _position = instance:GetPivot().Position
local _vector3 = Vector3.new(0, 3, 0)
local marker = LocationMarker.new(_position + _vector3):setTitle(instance:GetAttribute("ItemName")):setSize(5, 14):setColor(Color3.new(1, 0, 0)):setEnabled(true)
self.marker = marker
local _binding_3 = self
local bin = _binding_3.bin
bin:add(marker)
bin:add(instance.AncestryChanged:Connect(function()
return self:destroy()
end))
end
end
local MolesterComponent
do
local super = MonsterComponent
MolesterComponent = setmetatable({}, {
__tostring = function()
return "MolesterComponent"
end,
__index = super,
})
MolesterComponent.__index = MolesterComponent
function MolesterComponent.new(...)
local self = setmetatable({}, MolesterComponent)
return self:constructor(...) or self
end
function MolesterComponent:constructor(instance)
super.constructor(self, instance, "Ghost")
local root = expectChild(instance, { "BasePart", "HumanoidRootPart" }, 30)
if not root then
error("[MolesterComponent]: " .. tostring(instance) .. " is missing HumanoidRootPart!")
end
local humanoid = expectChild(instance, { "Humanoid", "Humanoid" }, 30)
if not humanoid then
error("[MolesterComponent]: " .. tostring(instance) .. " is missing Humanoid!")
end
self.root = root
self.humanoid = humanoid
self:setColor(Color3.new(1, 0, 0))
self:setEnabled(true)
end
function MolesterComponent:getPivot()
return self.root.CFrame
end
end
--[[
*
***********************************************************
* CONTROLLERS
* Description: Singletons that are used once
* Last updated: Jan. 14, 2025
***********************************************************
]]
local AgentController = {}
do
local _container = AgentController
local component
local onCharacterAdded = function(character)
local _result = component
if _result ~= nil then
_result:destroy()
end
component = CharacterRig.new(character)
end
local onCharacterRemoved = function()
local _result = component
if _result ~= nil then
_result:destroy()
end
component = nil
end
local function __init()
LocalPlayer.CharacterAdded:Connect(onCharacterAdded)
LocalPlayer.CharacterRemoving:Connect(onCharacterRemoved)
local character = LocalPlayer.Character
if character then
spawn(onCharacterAdded, character)
end
end
_container.__init = __init
local function getRoot()
local _result = component
if _result ~= nil then
_result = _result:getRoot()
end
return _result
end
_container.getRoot = getRoot
local function getHumanoid()
local _result = component
if _result ~= nil then
_result = _result:getHumanoid()
end
return _result
end
_container.getHumanoid = getHumanoid
local function getHealth()
local _result = component
if _result ~= nil then
_result = _result:getHealth()
end
return _result
end
_container.getHealth = getHealth
local function getPosition()
local _result = component
if _result ~= nil then
_result = _result:getPosition()
end
return _result
end
_container.getPosition = getPosition
local function getPivot()
local _result = component
if _result ~= nil then
_result = _result:getPivot()
end
return _result
end
_container.getPivot = getPivot
end
CameraController = {}
do
local _container = CameraController
local camera
local screen_size
local screen_center
--[[
*
*
* A simple wrapper around `Camera.WorldToViewportPoint`.
* @returns The viewport point
]]
local function worldToViewportPoint(position)
return camera:WorldToViewportPoint(position)
end
_container.worldToViewportPoint = worldToViewportPoint
--[[
*
*
* Projects a world point behind the camera onto the viewport.
* @returns point beyond the edge of the viewport
]]
local function safeWorldToViewportPoint(position)
local eye = camera.CFrame
local relative = eye:PointToObjectSpace(position)
local angle = atan2(relative.Y, relative.X) + pi
local _cFrame = CFrame.new(0, 0, 0)
local _arg0 = CFrame.Angles(0, 0, angle)
local _arg0_1 = CFrame.Angles(0, SEMI - EPSILON, 0)
local oriented = (_cFrame * _arg0 * _arg0_1).LookVector
local worldPosition = eye:PointToWorldSpace(oriented)
local viewportPoint = worldToViewportPoint(worldPosition)
local _vector2 = Vector2.new(viewportPoint.X, viewportPoint.Y)
local _screen_center = screen_center
local direction = (_vector2 - _screen_center).Unit
local _screen_center_1 = screen_center
local _arg0_2 = direction * 1e5
return _screen_center_1 + _arg0_2
end
_container.safeWorldToViewportPoint = safeWorldToViewportPoint
--[[
*
*
* Gets the camera's pivot.
]]
local function getPivot()
return camera.CFrame
end
_container.getPivot = getPivot
--[[
*
*
* Gets the screen size.
]]
local function getScreenSize()
return screen_size
end
_container.getScreenSize = getScreenSize
--[[
*
*
* Gets the current camera.
* @returns The current camera
]]
local function getCamera()
return camera
end
_container.getCamera = getCamera
local updateScreen = function()
screen_size = camera.ViewportSize
screen_center = screen_size / 2
end
local updateCamera = function()
local current = Workspace.CurrentCamera
camera = current
camera:GetPropertyChangedSignal("ViewportSize"):Connect(updateScreen)
updateScreen()
end
local function __init()
Workspace:GetPropertyChangedSignal("CurrentCamera"):Connect(updateCamera)
updateCamera()
end
_container.__init = __init
end
local WorkspaceController = {}
do
local _container = WorkspaceController
local function __init()
-- Fingerprints
forChildThen(Workspace, { "Folder", "Handprints" }, function(folder)
forChildThen(folder, { "Part" }, function(fingerprint)
return FingerprintComponent.new(fingerprint)
end)
end)
-- Items
forChildThen(Workspace, { "Folder", "Items" }, function(folder)
forChildThen(folder, { "Model" }, function(item)
return ItemComponent.new(item)
end)
end)
-- CPH
forChildThen(Workspace, { "Folder", "CursedPossessionHolder" }, function(folder)
forChildThen(folder, { "Model" }, function(cph)
return CursedPossesionHolderComponent.new(cph)
end)
end)
-- Ghost
forChildThen(Workspace, { "Model", "Ghost" }, function(monster)
return MolesterComponent.new(monster)
end)
end
_container.__init = __init
end
--[[
*
***********************************************************
* INITIALIZATION
* Description: Initializes and starts the runtime
* Last updated: Sept. 23, 2024
***********************************************************
]]
AgentController.__init()
CameraController.__init()
WorkspaceController.__init()
return "intialized succesfully"
end,
})
Button:Set("Esp Everything")
local Tab = Window:CreateTab("Murder Mystery", 4483362458) -- Title, Image
local Section = Tab:CreateSection("Murder Mystery")
Section:Set("Murder Mystery")
local Button = Tab:CreateButton({
Name = "Esp Sheriff & Murder",
Callback = function()
-- COMPLETE WEAPON ESP SCRIPT
-- LocalScript - Place in StarterPlayerScripts
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Workspace = game:GetService("Workspace")
local UserInputService = game:GetService("UserInputService")
-- ESP Colors
local knifeColor = Color3.fromRGB(0, 255, 0) -- Green for knife-only
local gunColor = Color3.fromRGB(0, 150, 255) -- Blue for gun
local bothColor = Color3.fromRGB(255, 165, 0) -- Orange for both knife and gun
-- Configuration
local knifeName = "Knife"
local gunNames = {"Gun"}
local espEnabled = true
local scanInterval = 20 -- Seconds between full scans
-- Store ESP objects and player states
local playerESP = {}
local playerStates = {}
-- Cache for performance
local lastScanTime = 0
local camera = Workspace.CurrentCamera
-- Function to check if item is a gun
function isGun(item)
local itemName = item.Name:lower()
for _, gunName in ipairs(gunNames) do
if itemName:find(gunName:lower()) then
return true
end
end
return false
end
-- Scan player inventory from Workspace (character)
function scanPlayerInventory(player)
local character = player.Character
if not character then return "none", 0 end
local hasKnife = false
local hasGun = false
local toolCount = 0
-- Check backpack first
local backpack = player:FindFirstChild("Backpack")
if backpack then
for _, item in ipairs(backpack:GetChildren()) do
if item:IsA("Tool") then
toolCount = toolCount + 1
if item.Name == knifeName then
hasKnife = true
elseif isGun(item) then
hasGun = true
end
end
end
end
-- Check character for equipped tools
for _, item in ipairs(character:GetChildren()) do
if item:IsA("Tool") then
toolCount = toolCount + 1
if item.Name == knifeName then
hasKnife = true
elseif isGun(item) then
hasGun = true
end
end
end
-- Determine player state
if hasKnife and hasGun then
return "both", toolCount
elseif hasKnife then
return "knife-only", toolCount
elseif hasGun then
return "gun", toolCount
end
return "none", toolCount
end
-- Create ESP elements for a player with specific state
function createESP(player, state)
if playerESP[player] then
removeESP(player)
end
local drawingESP = Drawing.new
local esp = {
Outline = drawingESP("Square"),
Fill = drawingESP("Square"),
Text = drawingESP("Text"),
Distance = drawingESP("Text"),
Player = player,
State = state,
Valid = false
}
-- Configure colors based on state
local color
local text
if state == "knife-only" then
color = knifeColor
text = "KNIFE"
elseif state == "gun" then
color = gunColor
text = "GUN"
elseif state == "both" then
color = bothColor
text = "KNIFE+GUN"
else
color = Color3.new(1, 1, 1)
text = "UNKNOWN"
end
-- Configure ESP appearance
esp.Outline.Thickness = 2
esp.Outline.Color = Color3.new(0, 0, 0)
esp.Outline.Transparency = 1
esp.Outline.Filled = false
esp.Outline.Visible = false
esp.Fill.Thickness = 1
esp.Fill.Color = color
esp.Fill.Transparency = 0.3
esp.Fill.Filled = true
esp.Fill.Visible = false
esp.Text.Size = 13
esp.Text.Center = true
esp.Text.Outline = true
esp.Text.Color = color
esp.Text.Text = player.Name
esp.Text.Visible = false
esp.Distance.Size = 11
esp.Distance.Center = true
esp.Distance.Outline = true
esp.Distance.Color = color
esp.Distance.Text = text
esp.Distance.Visible = false
playerESP[player] = esp
playerStates[player] = state
return esp
end
-- Remove ESP for a player
function removeESP(player)
local esp = playerESP[player]
if esp then
for _, element in pairs({esp.Outline, esp.Fill, esp.Text, esp.Distance}) do
if element then
element:Remove()
end
end
playerESP[player] = nil
playerStates[player] = nil
end
end
-- World to screen function
function worldToScreen(point)
if not camera then camera = Workspace.CurrentCamera end
if not camera then return nil end
local vector, inViewport = camera:WorldToViewportPoint(point)
return Vector2.new(vector.X, vector.Y), inViewport
end
-- Update ESP for a single player
function updatePlayerESP(player)
local esp = playerESP[player]
if not esp or not espEnabled then return end
-- Check if player is valid
if not player or player.Parent ~= Players then
esp.Outline.Visible = false
esp.Fill.Visible = false
esp.Text.Visible = false
esp.Distance.Visible = false
esp.Valid = false
return
end
-- Check character
local character = player.Character
if not character then
esp.Outline.Visible = false
esp.Fill.Visible = false
esp.Text.Visible = false
esp.Distance.Visible = false
esp.Valid = false
return
end
local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
if not humanoidRootPart then
esp.Outline.Visible = false
esp.Fill.Visible = false
esp.Text.Visible = false
esp.Distance.Visible = false
esp.Valid = false
return
end
-- Calculate screen position
local screenPos, inViewport = worldToScreen(humanoidRootPart.Position)
if not screenPos or not inViewport then
esp.Outline.Visible = false
esp.Fill.Visible = false
esp.Text.Visible = false
esp.Distance.Visible = false
esp.Valid = false
return
end
-- Calculate distance and box size
local distance = (humanoidRootPart.Position - camera.CFrame.Position).Magnitude
local boxSize = Vector2.new(2000 / distance, 3000 / distance)
-- Update distance text
local baseText = esp.Distance.Text:match("^([^%[]+)") or esp.Distance.Text
esp.Distance.Text = string.format("%s [%dm]", baseText, math.floor(distance))
-- Update ESP elements
esp.Outline.Size = boxSize
esp.Outline.Position = screenPos - boxSize / 2
esp.Outline.Visible = true
esp.Fill.Size = boxSize
esp.Fill.Position = screenPos - boxSize / 2
esp.Fill.Visible = true
esp.Text.Position = Vector2.new(screenPos.X, screenPos.Y - boxSize.Y / 2 - 20)
esp.Text.Visible = true
esp.Distance.Position = Vector2.new(screenPos.X, screenPos.Y + boxSize.Y / 2 + 5)
esp.Distance.Visible = true
esp.Valid = true
end
-- Scan all players in Workspace
function scanAllPlayersWorkspace()
local currentTime = tick()
if currentTime - lastScanTime < scanInterval then
return
end
lastScanTime = currentTime
for _, player in ipairs(Players:GetPlayers()) do
if player ~= Players.LocalPlayer then
local state, toolCount = scanPlayerInventory(player)
if state ~= "none" then
-- Check if state changed or ESP doesn't exist
if playerStates[player] ~= state or not playerESP[player] then
createESP(player, state)
end
else
-- Remove ESP if player no longer has knife or gun
if playerESP[player] then
removeESP(player)
end
end
end
end
end
-- Monitor inventory changes
function monitorPlayerInventory(player)
-- Monitor backpack changes
local function setupBackpackMonitoring(backpack)
if backpack then
backpack.ChildAdded:Connect(function(child)
if child:IsA("Tool") then
task.wait(0.5)
scanAllPlayersWorkspace()
end
end)
backpack.ChildRemoved:Connect(function(child)
if child:IsA("Tool") then
task.wait(0.5)
scanAllPlayersWorkspace()
end
end)
end
end
-- Monitor character changes
player.CharacterAdded:Connect(function(character)
task.wait(1) -- Wait for character to fully load
-- Monitor tools in character
character.ChildAdded:Connect(function(child)
if child:IsA("Tool") then
task.wait(0.5)
scanAllPlayersWorkspace()
end
end)
character.ChildRemoved:Connect(function(child)
if child:IsA("Tool") then
task.wait(0.5)
scanAllPlayersWorkspace()
end
end)
-- Check for backpack
local backpack = player:FindFirstChild("Backpack")
setupBackpackMonitoring(backpack)
end)
-- Check existing character
if player.Character then
task.spawn(function()
task.wait(1)
scanAllPlayersWorkspace()
end)
end
end
-- Initialize for existing players
for _, player in ipairs(Players:GetPlayers()) do
if player ~= Players.LocalPlayer then
monitorPlayerInventory(player)
end
end
-- Listen for new players
Players.PlayerAdded:Connect(function(player)
if player ~= Players.LocalPlayer then
task.wait(2) -- Wait for player to load
monitorPlayerInventory(player)
scanAllPlayersWorkspace()
end
end)
-- Listen for players leaving
Players.PlayerRemoving:Connect(function(player)
removeESP(player)
end)
-- Main update loop
local function updateESP()
if not espEnabled then return end
-- Update camera cache
camera = Workspace.CurrentCamera
if not camera then return end
-- Update all tracked players
for player, esp in pairs(playerESP) do
if esp then
updatePlayerESP(player)
end
end
end
-- Performance-optimized scanning loop
task.spawn(function()
while true do
if espEnabled then
scanAllPlayersWorkspace()
end
task.wait(scanInterval)
end
end)
-- Rendering loop
RunService.RenderStepped:Connect(updateESP)
-- Toggle ESP function
function toggleESP()
espEnabled = not espEnabled
for _, esp in pairs(playerESP) do
if esp then
local visible = espEnabled and esp.Valid
esp.Outline.Visible = visible
esp.Fill.Visible = visible
esp.Text.Visible = visible
esp.Distance.Visible = visible
end
end
print("Weapon ESP " .. (espEnabled and "ENABLED" or "DISABLED"))
end
-- Add keybind for toggling ESP
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if not gameProcessed then
if input.KeyCode == Enum.KeyCode.RightShift then
toggleESP()
elseif input.KeyCode == Enum.KeyCode.Delete then
-- Clear all ESP on Delete
for player in pairs(playerESP) do
removeESP(player)
end
print("Cleared all ESP")
end
end
end)
-- Initial scan
task.wait(3) -- Wait for game to load
scanAllPlayersWorkspace()
-- Display message
print("==========================================")
print(" WEAPON ESP LOADED")
print("==========================================")
print("Colors:")
print("• Green: Player has only a knife")
print("• Blue: Player has a gun")
print("• Orange: Player has both knife and gun")
print("")
print("Controls:")
print("• RightShift - Toggle ESP")
print("• Delete - Clear all ESP")
print("==========================================")
end,
})
Button:Set("Esp Sheriff & Murder")
local Button = Tab:CreateButton({
Name = "Esp Gun Drop",
Callback = function()
local Workspace = game:GetService("Workspace")
local RunService = game:GetService("RunService")
-- Configuration
local gunDropColor = Color3.fromRGB(255, 50, 50) -- Red for gun drops
local espEnabled = true
local scanInterval = 20 -- Seconds between scans
-- Common map names to search for
local commonMapNames = {
"MilBase", "Bank2", "House2", "Mansion2"
}
-- Store ESP objects
local gunDropESP = {}
local foundMaps = {}
local camera = Workspace.CurrentCamera
local lastScanTime = 0
-- Function to discover all maps in workspace
function discoverMaps()
local maps = {}
-- Check for obvious map containers
for _, child in ipairs(Workspace:GetChildren()) do
-- Look for map indicators
if child:IsA("Model") or child:IsA("Folder") then
local name = child.Name
local lowerName = name:lower()
-- Check if it's a map by name patterns
if #child:GetChildren() > 5 then -- Has multiple parts (likely a map)
for _, mapPattern in ipairs(commonMapNames) do
if lowerName:find(mapPattern:lower()) then
table.insert(maps, {Object = child, Name = name, Type = "Map"})
break
end
end
end
end
end
-- Also check for map containers
for _, child in ipairs(Workspace:GetDescendants()) do
if child:IsA("Folder") and child.Name:lower():find("map") then
table.insert(maps, {Object = child, Name = child.Name, Type = "Map Folder"})
end
end
return maps
end
-- Find GunDrops in a specific map
function findGunDropsInMap(map)
local gunDrops = {}
-- Search for GunDrop objects
for _, child in ipairs(map.Object:GetDescendants()) do
local lowerName = child.Name:lower()
-- Check for gun drop indicators
if lowerName:find("gundrop") or
lowerName:find("weapondrop") or
lowerName:find("gunspawn") or
lowerName:find("weaponspawn") or
lowerName:find("ammo") or
lowerName:find("armory") or
lowerName:find("arsenal") then
table.insert(gunDrops, {
Object = child,
Name = child.Name,
MapName = map.Name,
Location = getObjectPosition(child)
})
end
-- Check for spawn points that might be gun drops
if child:IsA("Part") then
if lowerName:find("spawn") and not lowerName:find("player") then
-- Check if it has gun-related attributes
if child:GetAttribute("Weapon") or child:GetAttribute("Gun") then
table.insert(gunDrops, {
Object = child,
Name = "Weapon Spawn",
MapName = map.Name,
Location = child.Position
})
end
end
end
end
return gunDrops
end
-- Get position from any object
function getObjectPosition(obj)
if obj:IsA("BasePart") then
return obj.Position
elseif obj:IsA("Model") then
local primaryPart = obj.PrimaryPart
if primaryPart then
return primaryPart.Position
elseif #obj:GetChildren() > 0 then
local firstPart = obj:FindFirstChildWhichIsA("BasePart")
if firstPart then
return firstPart.Position
end
end
elseif obj:IsA("Attachment") then
return obj.WorldPosition
end
-- Check for position attribute
if obj:GetAttribute("Position") then
return obj:GetAttribute("Position")
end
return Vector3.new(0, 0, 0)
end
-- Create ESP for a GunDrop
function createGunDropESP(gunDropData)
local drawingESP = Drawing.new
local esp = {
BoxOutline = drawingESP("Square"),
BoxFill = drawingESP("Square"),
NameText = drawingESP("Text"),
MapText = drawingESP("Text"),
DistanceText = drawingESP("Text"),
Object = gunDropData.Object,
Location = gunDropData.Location,
Name = gunDropData.Name,
MapName = gunDropData.MapName
}
-- Box outline
esp.BoxOutline.Thickness = 2
esp.BoxOutline.Color = Color3.new(0, 0, 0)
esp.BoxOutline.Transparency = 1
esp.BoxOutline.Filled = false
esp.BoxOutline.Visible = false
-- Box fill
esp.BoxFill.Thickness = 1
esp.BoxFill.Color = gunDropColor
esp.BoxFill.Transparency = 0.3
esp.BoxFill.Filled = true
esp.BoxFill.Visible = false
-- Gun drop name
esp.NameText.Size = 14
esp.NameText.Center = true
esp.NameText.Outline = true
esp.NameText.Color = gunDropColor
esp.NameText.Text = gunDropData.Name
esp.NameText.Visible = false
-- Map name
esp.MapText.Size = 12
esp.MapText.Center = true
esp.MapText.Outline = true
esp.MapText.Color = Color3.fromRGB(200, 200, 200)
esp.MapText.Text = gunDropData.MapName
esp.MapText.Visible = false
-- Distance
esp.DistanceText.Size = 11
esp.DistanceText.Center = true
esp.DistanceText.Outline = true
esp.DistanceText.Color = gunDropColor
esp.DistanceText.Text = "GUN DROP"
esp.DistanceText.Visible = false
return esp
end
-- World to screen function
function worldToScreen(point)
if not camera then camera = Workspace.CurrentCamera end
if not camera then return nil end
local vector, inViewport = camera:WorldToViewportPoint(point)
return Vector2.new(vector.X, vector.Y), inViewport
end
-- Update GunDrop ESP
function updateGunDropESP(esp)
if not espEnabled or not esp.Object or not esp.Object.Parent then
esp.BoxOutline.Visible = false
esp.BoxFill.Visible = false
esp.NameText.Visible = false
esp.MapText.Visible = false
esp.DistanceText.Visible = false
return false
end
-- Get position
local position = esp.Location
if esp.Object:IsA("BasePart") or (esp.Object:IsA("Model") and esp.Object.PrimaryPart) then
position = getObjectPosition(esp.Object)
esp.Location = position
end
-- Calculate screen position
local screenPos, inViewport = worldToScreen(position)
if not screenPos or not inViewport then
esp.BoxOutline.Visible = false
esp.BoxFill.Visible = false
esp.NameText.Visible = false
esp.MapText.Visible = false
esp.DistanceText.Visible = false
return false
end
-- Calculate distance and box size
local distance = (position - camera.CFrame.Position).Magnitude
local boxSize = Vector2.new(2500 / distance, 2500 / distance)
-- Update box
esp.BoxOutline.Size = boxSize
esp.BoxOutline.Position = screenPos - boxSize / 2
esp.BoxOutline.Visible = true
esp.BoxFill.Size = boxSize
esp.BoxFill.Position = screenPos - boxSize / 2
esp.BoxFill.Visible = true
-- Update texts
esp.NameText.Position = Vector2.new(screenPos.X, screenPos.Y - boxSize.Y / 2 - 20)
esp.NameText.Visible = true
esp.MapText.Position = Vector2.new(screenPos.X, screenPos.Y - boxSize.Y / 2 - 35)
esp.MapText.Visible = true
esp.DistanceText.Text = string.format("GUN DROP [%dm]", math.floor(distance))
esp.DistanceText.Position = Vector2.new(screenPos.X, screenPos.Y + boxSize.Y / 2 + 5)
esp.DistanceText.Visible = true
return true
end
-- Scan ALL maps for GunDrops
function scanAllMapsForGunDrops()
local currentTime = tick()
if currentTime - lastScanTime < scanInterval then
return
end
lastScanTime = currentTime
-- Remove old ESP
for _, esp in pairs(gunDropESP) do
for _, element in pairs(esp) do
if element and typeof(element) == "table" and element.Remove then
element:Remove()
end
end
end
gunDropESP = {}
foundMaps = {}
print("🔍 Scanning for maps and gun drops...")
-- Discover all maps
local maps = discoverMaps()
if #maps == 0 then
print("⚠️ No maps found! Searching entire workspace...")
-- Search entire workspace as fallback
for _, child in ipairs(Workspace:GetDescendants()) do
local lowerName = child.Name:lower()
if lowerName:find("gundrop") or lowerName:find("weapondrop") then
local esp = createGunDropESP({
Object = child,
Name = child.Name,
MapName = "Workspace",
Location = getObjectPosition(child)
})
table.insert(gunDropESP, esp)
end
end
else
-- Search each map for gun drops
for _, map in ipairs(maps) do
foundMaps[map.Name] = true
print("📁 Found map: " .. map.Name)
local gunDrops = findGunDropsInMap(map)
if #gunDrops > 0 then
print(string.format(" ✓ Found %d gun drop(s) in %s", #gunDrops, map.Name))
for _, gunDrop in ipairs(gunDrops) do
local esp = createGunDropESP(gunDrop)
table.insert(gunDropESP, esp)
end
else
print(" ✗ No gun drops found in " .. map.Name)
end
end
end
-- Print summary
print("\n📊 SCAN COMPLETE")
print("=" .. string.rep("=", 40))
print(string.format("Total Maps Found: %d", #maps))
print(string.format("Total Gun Drops Found: %d", #gunDropESP))
print("=" .. string.rep("=", 40))
if #gunDropESP > 0 then
print("\n📍 Gun Drop Locations:")
for i, esp in ipairs(gunDropESP) do
print(string.format("%d. %s - %s at (%.0f, %.0f, %.0f)",
i, esp.MapName, esp.Name,
esp.Location.X, esp.Location.Y, esp.Location.Z))
end
else
print("\n❌ No gun drops found. Try:")
print("1. Wait for map to load")
print("2. Check different game modes")
print("3. The map might use different naming")
end
print("=" .. string.rep("=", 40))
end
-- Main update loop
local function updateAllESP()
if not espEnabled then return end
camera = Workspace.CurrentCamera
if not camera then return end
for _, esp in ipairs(gunDropESP) do
if esp then
updateGunDropESP(esp)
end
end
end
-- Auto-scan thread
spawn(function()
while true do
if espEnabled then
scanAllMapsForGunDrops()
end
wait(scanInterval)
end
end)
-- Rendering loop
RunService.RenderStepped:Connect(updateAllESP)
-- Toggle function
function toggleGunDropESP()
espEnabled = not espEnabled
if espEnabled then
print("🔴 GunDrop ESP ENABLED")
scanAllMapsForGunDrops()
else
print("⚫ GunDrop ESP DISABLED")
for _, esp in ipairs(gunDropESP) do
esp.BoxOutline.Visible = false
esp.BoxFill.Visible = false
esp.NameText.Visible = false
esp.MapText.Visible = false
esp.DistanceText.Visible = false
end
end
end
-- Keybinds
local UserInputService = game:GetService("UserInputService")
if UserInputService then
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if not gameProcessed then
if input.KeyCode == Enum.KeyCode.RightControl then
toggleGunDropESP()
elseif input.KeyCode == Enum.KeyCode.R then
-- Manual rescan
if espEnabled then
print("🔄 Manual rescan triggered...")
scanAllMapsForGunDrops()
end
end
end
end)
end
-- Initial scan
wait(3) -- Wait longer for maps to load
scanAllMapsForGunDrops()
-- Display info
print("\n" .. string.rep("=", 50))
print(" GUN DROP LOCATOR ESP")
print(string.rep("=", 50))
print("Controls:")
print("• RightControl - Toggle ESP")
print("• R - Manual rescan")
print("• Auto-scan every " .. scanInterval .. " seconds")
print(string.rep("=", 50))
end,
})
Button:Set("Esp Gun Drop")No comments yet for this script.



