The client.show_popup_menus var is nice, but it's not sufficient. It'd be nice if we could decide on whether the popup menu shows based on what turf was clicked on (even better if we could actually filter the items to display).
That could be done two ways; either make a DM turf proc that can be overridden on them that could return 0/1 to disallow/allow that specific call for the menu (ideally passing the turf/loc and the menu contents to it). Alternatively it could just be a var *on* the turf that would dictate whether that turf should display the menu (and it would take precedence over client.show_popup_menus).
For our use case I used a workaround where I use the MouseEntered proc to toggle client.show_popup_menus but it's kind of ugly and I assume it's not very performance friendly (maybe someone can comment about that?)
Use case for reference: https://github.com/Aurorastation/Aurora.3/pull/10328
Oct 24 2020, 1:27 pm