Skip to content

TGUI Spawn Panel, TGUI Spawn, fixed TGUI Nuke Pane, abstract_type moved to /datum#895

Open
CRITAWAKETS wants to merge 12 commits intoMrMelbert:masterfrom
CRITAWAKETS:tgui-spawn
Open

TGUI Spawn Panel, TGUI Spawn, fixed TGUI Nuke Pane, abstract_type moved to /datum#895
CRITAWAKETS wants to merge 12 commits intoMrMelbert:masterfrom
CRITAWAKETS:tgui-spawn

Conversation

@CRITAWAKETS
Copy link
Copy Markdown
Contributor

image

And much more.

Good luck test-merging this as the abstract types PR will conflict with basically everything that isn't completely modular.

CRITAWAKETS and others added 12 commits March 11, 2026 17:05
…n_state` instances (#89417)

## About The Pull Request

So, some admin verbs/tools that used tguis, i.e edit/debug planes, were
available to admins with +DEBUG... but the ui_state used
`GLOB.admin_state`, which checks for +ADMIN - meaning that if they
_only_ had +DEBUG, they would have the verb... but it would do nothing
when they used it.

I've refactored `GLOB.admin_state`, `GLOB.debug_state`, and
`GLOB.fun_state` into a merged `/datum/ui_state/admin_state`, with a var
for which specific permissions are being checked for.

You now use the `ADMIN_STATE(perms)` macro to get the UI state for those
specific perms, i.e `admin_state(R_ADMIN)` or `admin_state(R_DEBUG)`,
and the resulting UI state will check for _those specific perms_.

These are initialized and cached in `GLOB.admin_states` (which should
never be directly accessed).

So, I've went thru every single usage of `GLOB.admin_state`,
`GLOB.fun_state`, and `GLOB.debug_state`, and made them all use
`ADMIN_STATE()` with the actual permission flags needed to use said UI
in the first place.

## Why It's Good For The Game

Kinda dumb for specific admin permissions to be granted verbs that don't
let them use it anyways.

## Changelog
:cl:
admin: Certain UI-based tools (plane debugger, filter editor, etc) that
were given to admins with only +VAREDIT or +DEBUG, but refused to open
without +ADMIN, now actually work for admins that have the needed
permission.
/:cl:
…UI (#85744)

## About The Pull Request

Closes #85740
BYOND doesn't support this sort of type picking, these are the 3 last
admin verbs to use it

## Changelog
:cl:
fix: Fixed nuke toggle, smite and machine upgrade admin verbs using
incorrect sorting
admin: Updated nuke toggle, smite and machine upgrade admin verbs to use
TGUI
/:cl:
## About The Pull Request

Putting ``*`` at the end of a spawn type string will tell the command to
not offer subtypes of that string. For example, running ``laser/cap``
offers you two types: ``GUN_LASER/captain`` and
``GUN_LASER/captain/scattershot``. Adding a start to the end like
``laser/cap*`` would only offer ``GUN_LASER/captain`` without the
scattershot subtype, and instantly spawn it without an input window
because its the only fitting type.

## Why It's Good For The Game
Easier to spawn certain types without having subtypes offered to you
## About The Pull Request

Closes #94833

## Changelog
:cl:
fix: Fixed fancytypes in admin menus being mangled
/:cl:
good luck test merging this one
@github-actions github-actions Bot added Sprites Fixing up coder sprites is nice Modularity Suggested Read the README in "maplestation_modules" and follow the instructions or risk doom UI labels Mar 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Modularity Suggested Read the README in "maplestation_modules" and follow the instructions or risk doom Sprites Fixing up coder sprites is nice UI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants