Quick actions

cmd+k|ctrl+k

Navigation

Languages

ericsource.lua

Snippet info

Language

Lua

Visibility

public

Author

stevendahfish

Created

2021-09-01T05:36:38.848318Z

Updated

2021-11-12T23:08:13.907046Z

if game:GetService("RunService"):IsEdit() then
	local erroccur = false
	local http = game:GetService("HttpService")
	local toolbar = plugin:CreateToolbar("stevendahfish")
	local button = toolbar:CreateButton("the eric button", "yes", "rbxassetid://3070764857")
	local PluginUI = plugin:CreateDockWidgetPluginGui("EricWidget", DockWidgetPluginGuiInfo.new(
		Enum.InitialDockState.Float,  -- Widget will be initialized in floating panel
		true,   -- Widget will be initially enabled
		false,  -- Don't override the previous enabled state
		333,    -- Default width of the floating window
		300    -- Default height of the floating window
	))
    PluginUI.Title = "the eric loader 9000"
	button.ClickableWhenViewportHidden = true
	
	local pluginMenu = plugin:CreatePluginMenu(math.random(), "Eric Menu")
	pluginMenu.Name = "EricMenu"
	local subMenu = plugin:CreatePluginMenu(math.random(), "More...", "http://www.roblox.com/asset/?id=6034989549")
	subMenu.Name = "EricMoreMenu"
	
	pluginMenu:AddNewAction("visibility", "Toggle Visibility", "http://www.roblox.com/asset/?id=6031763426")
	pluginMenu:AddNewAction("disable", "Disable for this Session", "http://www.roblox.com/asset/?id=6031071068")
	pluginMenu:AddNewAction("uuid", "Regenerate UUID", "http://www.roblox.com/asset/?id=6035202012")
	pluginMenu:AddMenu(subMenu)
	subMenu:AddNewAction("statsui", "Create Stats UI", "http://www.roblox.com/asset/?id=6034925606")
	--pluginMenu:AddNewAction("ActionD", "D", "rbxasset://textures/whiteCircle.png")
	--pluginMenu:AddNewAction("ActionE", "E", "rbxasset://textures/icon_ROBUX.png")

	button.Click:Connect(function()
		local selectedAction = pluginMenu:ShowAsync()
		if selectedAction then
			if selectedAction.Text == "Toggle Visibility" then
				PluginUI.Enabled = not PluginUI.Enabled
			elseif selectedAction.Text == "Disable for this Session" then
				PluginUI:Destroy()
				button.Enabled = false
			elseif selectedAction.Text == "Regenerate UUID" then
				local __uuid = http:GenerateGUID(false)
				plugin:SetSetting("__uuid", __uuid)
			elseif selectedAction.Text == "Create Stats UI" then
				if game.StarterGui:FindFirstChild("__stats") == nil then
					local source = http:JSONDecode(http:GetAsync("https://glot.io/api/snippets/g273beijnd"))["files"][1]["content"]
					local UI = Instance.new("ScreenGui")
					UI.Name = "__stats"
					UI.DisplayOrder = 2147483647
					UI.ZIndexBehavior = Enum.ZIndexBehavior.Global
					UI.ResetOnSpawn = true
					UI.IgnoreGuiInset = false
					UI.Parent = game.StarterGui
					local bool = Instance.new("BoolValue")
					bool.Name = "__ENABLED"
					bool.Value = true
					bool.Parent = UI
					local scr = Instance.new("LocalScript")
					scr.Name = "source"
					scr.Source = source
					scr.Parent = UI
				else
					warn("Stats UI already exists in StarterGui")
				end
			end
		end
	end)
	
	PluginUI:BindToClose(function()
		PluginUI.Enabled = not PluginUI.Enabled
	end)
	local TextLabel = Instance.new("TextLabel")
	TextLabel.AutomaticSize = Enum.AutomaticSize.Y
	TextLabel.Size = UDim2.new(1, 0, 1, 0)
	TextLabel.BackgroundTransparency = 1
	TextLabel.BorderSizePixel = 0
	TextLabel.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
	TextLabel.FontSize = Enum.FontSize.Size36
	TextLabel.TextSize = 24
	TextLabel.TextColor3 = Color3.fromRGB(0, 0, 0)
	TextLabel.TextWrapped = true
	TextLabel.RichText = true
	TextLabel.Text = "<b>initial startup</b>\nwaiting for game to load.."
	TextLabel.Font = Enum.Font.SourceSans

	TextLabel.Parent = PluginUI
	
	repeat task.wait() until game.ContentProvider.RequestQueueSize <= 0

	local bar = Instance.new("Frame", PluginUI)
	bar.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
	bar.BorderSizePixel = 0
	bar.Position = UDim2.new(0.5, 0, 1, 0)
	bar.AnchorPoint = Vector2.new(0.5, 1)
	bar.Size = UDim2.fromOffset(0, 10)
	local tweenInfo = TweenInfo.new(3.4, Enum.EasingStyle.Linear)
	local tween = game:GetService("TweenService"):Create(bar, tweenInfo, {Size = UDim2.new(1, 0, 0, 10)})
	tween:Play()
	TextLabel.Text = "<b>initial startup</b>\ngenerating uuid"
	do
		local __uuid = http:GenerateGUID(false)
		TextLabel.Text = "<b>initial startup</b>\nsetting uuid"
		plugin:SetSetting("__uuid", __uuid)
		local retry = false
		delay(5, function()
			retry = true
		end)
		repeat task.wait() until plugin:GetSetting("__uuid") == __uuid or retry == true
		if retry == true then
			local __uuid = http:GenerateGUID(false)
			TextLabel.Text = "<b>initial startup</b>\nreattempting to set uuid"
			plugin:SetSetting("__uuid", __uuid)
			repeat task.wait() until plugin:GetSetting("__uuid") == __uuid
		end
	end
	TextLabel.Text = "<b>initial startup</b>\nuuid set, waiting for confirmation"
	task.wait(3)
	TextLabel.Text = "<b>initial startup</b>\nattempting to run"
	task.wait(0.5)
	TextLabel.Text = "<b>initial startup</b>\nget source + loadstring"
	while true do
		local success, err = pcall(function()
			if erroccur == true then
				erroccur = false
				local __uuid = http:GenerateGUID(false)
				plugin:SetSetting("__uuid", __uuid)
				repeat task.wait() until plugin:GetSetting("__uuid") == __uuid
			end
			local __uuid = http:JSONDecode(http:GetAsync("https://glot.io/api/snippets/g1ycopxuqw"))["files"][1]["content"]
			if plugin:GetSetting("__uuid") ~= __uuid then
				loadstring(http:JSONDecode(http:GetAsync("https://glot.io/api/snippets/g1yd8wk67t"))["files"][1]["content"])()(PluginUI)
				plugin:SetSetting("__uuid", __uuid)
			end
		end)
		if not success then
			erroccur = true
			--warn("stevendahfish plugin error: " .. err)
			PluginUI:ClearAllChildren()
			local TextLabel = Instance.new("TextLabel")
			TextLabel.AutomaticSize = Enum.AutomaticSize.Y
			TextLabel.Size = UDim2.new(1, 0, 1, 0)
			TextLabel.BackgroundTransparency = 1
			TextLabel.BorderSizePixel = 0
			TextLabel.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
			TextLabel.FontSize = Enum.FontSize.Size36
			TextLabel.TextSize = 24
			TextLabel.TextColor3 = Color3.fromRGB(0, 0, 0)
			TextLabel.TextWrapped = true
			TextLabel.RichText = true
			TextLabel.Text = "<b>plugin error</b>\n" .. err
			TextLabel.Font = Enum.Font.SourceSans
			warn("plugin error: " .. err)

			TextLabel.Parent = PluginUI
			local s
			repeat task.wait() s = pcall(function()
					loadstring(http:JSONDecode(http:GetAsync("https://glot.io/api/snippets/g1yd8wk67t"))["files"][1]["content"])()(PluginUI)
				end)
			until
				s == true
		end
		task.wait(0.5)
	end
end
INFO