* I hate TGUI even if its better than what we had before
* this is why linters exist
* you need to be a Head or the Warden to get items
* does this please you linter?
* foundation
* basic interactions
* yea I can spell okay?
* linters please leave me alone
* begone debug code
* if you are dead, no interacting
* linters leave me alone
* linters are stealing my soul
* forgot to do this
* sound framework, probably wont work though
* max length, and interaction cooldowns
* message can now be a list and minor code improve
* I am a slave and linters are my master
* fix improper static reference
* add json loading/saving functionality
* default for message is now a list
* jsonize def interactions; implement requirements
* bad
* bug fix; CtrlShiftClick to interact
* minor qol fix
* fix CtrlShiftClick and remove debug code
* haha docker has security measures
* this was painful
* why are you in this branch
* begone
* bruh
* begone
Co-authored-by: Matthew <matthew@tfaluc.com>
Co-authored-by: Matthew J <GoldenKeyboard@users.noreply.github.com>
* Balloon alerts - Text for minor actions w/o other feedback (#59130)
Currently only applies to beakers changing amounts as a proof of concept of an action that we can't really provide any non-text feedback on, as opposed to something you could have different sounds for.
Inspired by SS14.
Why It's Good For The Game
In the right place, balloon alerts will let you keep your eyes on the game itself, rather than constantly looking at the chat. This is especially important when chat messages will collapse into each other. This is in most cases warranted, but can make other cases (such as changing beaker amounts) confusing.
Changelog
cl
qol: Changing a reagent container's transfer amount will now give you feedback in the form of text on the container itself.
/cl
* Balloon alerts - Text for minor actions w/o other feedback
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
* Tidy HTML folder (#58761)
This PR aims to make the HTML folder a little more organized, as well as remove a few unused files.
Why It's Good For The Game
Doesn't change anything for the player, however makes the files more organized.
* Tidy HTML folder
Co-authored-by: Celotajs <81999976+celotajstg@users.noreply.github.com>
* Layer overhaul (#57915)
## About The Pull Request
Changes up some layer and plane defines for no particular reason lol
## Why It's Good For The Game
Planes actually override layers, and layers control ordering within planes. A lot of the usage of plane and layer was wholly unnecessary. This refactor helps future maintainability while also being needed staging for _future features._
* Layer overhaul
* aaaaaaaaa
a
Co-authored-by: Rob Bailey <actioninja@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
* Add language icon to runechat (#54318)
Runechat will now show what language you're speaking in where appropriate.
* Add language icon to runechat
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
* Adds a runechat plane to fix the issues related to the chat messages (#54522)
Previously your chat messages would be obstructed by the blackness of blocked turfs, aswell as dark lighting and some other effects. This fixes that
It still has backdrop ambient occlusion like it used to.
* Adds a runechat plane to fix the issues related to the chat messages
Co-authored-by: Azarak <azarak10@gmail.com>
* Runechat fixes spans in messages (#53809)
Prevents spans from showing up in runechat, this can happen from items like the recorder and how it stores messages.
Fixes#53799
* Runechat fixes spans in messages
Co-authored-by: NightRed <nightred@gmail.com>
* Adds SIGNAL_HANDLER and SIGNAL_HANDLER_DOES_SLEEP to prevent signal callbacks from blocking (#52761)
Adds SIGNAL_HANDLER, a macro that sets SHOULD_NOT_SLEEP(TRUE). This should ideally be required on all new signal callbacks.
Adds BLOCKING_SIGNAL_HANDLER, a macro that does nothing except symbolize "this is an older signal that didn't necessitate a code rewrite". It should not be allowed for new work.
This comes from discussion around #52735, which yields by calling input, and (though it sets the return type beforehand) will not properly return the flag to prevent attack from slapping.
To fix 60% of the yielding cases, WrapAdminProcCall no longer waits for another admin's proc call to finish. I'm not an admin, so I don't know how many behinds this has saved, but if this is problematic for admins I can just make it so that it lets you do it anyway. I'm not sure what the point of this babysitting was anyway.
Requested by @optimumtact.
Changelog
cl
admin: Calling a proc while another admin is calling one will no longer wait for the first to finish. You will simply just have to call it again.
/cl
* Adds SIGNAL_HANDLER and SIGNAL_HANDLER_DOES_SLEEP to prevent signal callbacks from blocking
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
* Changes the object runechat applys to from the thing that said something to the thing sitting on the turf the thing that said something is in (#52738)
Changes the object runechat text is overlayed onto from the talker, to the closest thing to the turf the talker is in.
This means if someone is talking in a locker, you can see it. Ditto for radios in people's packs.
* Runechat now shows on the thing the talker is in, rather then on the talker themself
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* first-version
* let's do those recommendations first
* color moment
* reorganization, prefs
* certified layer moment
* virtual speakers BEGONNE
* remove naughty bits, better sizing
* gimme the message mode
* rename that pesky pref and hide chat bubbles
* exponential decay moment
* async moment
* fixes
* fixes
* the players have decided they don't want to hear themselves on radio
* Fix bug with holograms incorrectly rendering messages
* rohesie's suggestion
* Color tweaks
* hallucinating now shows message properly
* pref moment
* updates
* rohesie's suggestions
* fix moment number 5
* less smelly more epic
* unfix the fixes and refix them
* a conscious change
* return of the prefs