For those who are unaware of what PluginMenus are:
Image Example
If the plugin requires an update, or if it gets refreshed in any other way, that menu made by the plugin will no longer appear via the ShowAsync() function. It will work just fine after restarting Studio.
Replicating the bug
- Make a plugin with this code:
------||VARIABLES
--Services
local Selections = game:GetService("Selection")
----Essentials
local ToolBar = plugin:CreateToolbar("Flood Escape 2")
local Button = ToolBar:CreateButton("Map Making Assistant","WIP","rbxassetid://2195531164")
local Mouse = plugin:GetMouse()
local deb = false
----Plugin Menus
local PluginMenu = plugin:CreatePluginMenu(math.random(),"Test Menu") PluginMenu.Name = "Water Menu"
PluginMenu:AddNewAction("ActionA","A","rbxassetid://3880356701")
PluginMenu:AddNewAction("ActionB","B","rbxassetid://3880357001")
------||COMMANDS
----||Selection Listener
local function Selecting() --if not on then return end (ignored for now)
local Selected = Selections:Get()[1]
if Selected and Selected:IsA("BasePart") then
local Action = PluginMenu:ShowAsync()
if Action then print("Action made:",Action.Text)
else print("No action was taken.")
end
end
end
----||Button and Toolbar
function ButtonClick()
lastClicked = tick()
on = not on
plugin:Activate(on)
Button:SetActive(on)
end
------||CONNECTIONS
Button.Click:Connect(ButtonClick)
Selections.SelectionChanged:Connect(Selecting)
plugin.Deactivation:Connect(function()
if not deb and (tick()-lastClicked)>1 then
deb = true
if on then on = false end
plugin:Activate(false)
Button:SetActive(false)
wait()
deb = false
end
end)
- Install it into your Studio (then test to see if the menu does show).
- Update the script in any nonsignificant way (such as adding a comment line).
- Update the plugin after publishing the new version.
- Repeat what you did to get it to show before.
At this point, it shouldn’t appear. Restart Studio, then it should appear again.
This occurs 100% of the time, and I’m unsure of when this bug had started. I’ve only been using this feature very recently.