* Fixes a transofrm animation todo (#71496)
makes it pass appearance
Co-authored-by: TiviPlus <572233640+TiviPlus@ users.noreply.com>
* Fixes a transofrm animation todo
Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: TiviPlus <572233640+TiviPlus@ users.noreply.com>
* Fixup list helpers, remove listoflist footgun from generic list procs, remove duplicated procs. (#71280)
Add helper defines for handling list values in lists to remove the
footgun where `+=` and `-=` with lists as the Right hand side argument
causes the list contents to be added or removed, not the list itself.
Use said helpers to remove the footgun from list helpers that could
reasonably be expected to get called on list of lists.
Remove duplicated clear nulls from list proc. this pr will fail to
compile until i go move those over to the preexisting one, but the
compile errors will tell me where all the consumers are.
This likely fixes some bug(s) in the issue tracker, but we don't know
what they are.
* Fixup list helpers, remove listoflist footgun from generic list procs, remove duplicated procs.
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
* Improves Readability/Documentation of SSTicker.force_ending (#71329)
## About The Pull Request
Hey there,
force_ending was a boolean (with inconsistent usage, flip-flopping
between using TRUE/FALSE and 1/0 variables), so let's just change it all
over to the macros and call it a good day.
I also updated documentation of the variables in that "code block" in
SSTicker while in the area because changing just one line made it look
ugly. Some of the documentation was no longer current to it's... current
use in code, so I updated those as well.
## Why It's Good For The Game
Pure code improvement, DMdocs are swell, and readability is kino.
## Changelog
Nothing here should affect players.
* Improves Readability/Documentation of SSTicker.force_ending
Co-authored-by: san7890 <the@san7890.com>
* Particle editor (#71110)
## About The Pull Request
Demo: https://streamable.com/wnj3mf
Features:
- Full support for most gradients/vectors/numbers/generators/transforms
( I might have forgotten some of the more esoteric ones)
- A "tutorial" section that explains the different rand/generation types
and how physics works with pictures
- Button for viewing what each var does
- Selecting a particle type to set immediately
- The generator types use defines now
Not included:
Color matrix support for color generators (I'm sorry but hell no)
Special thanks to @ jlsnow301 for explaining js things to me
## Why It's Good For The Game
Making cool stuf
## Changelog
🆑
refactor: Added a particle editor to VV dropdown which can be used by
coders and admins to edit particle values on the fly easily.
/🆑
Co-authored-by: TiviPlus <572233640+TiviPlus@ users.noreply.com>
* Particle editor
Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: TiviPlus <572233640+TiviPlus@ users.noreply.com>
* Adding the ability to load the configuration of custom maps. (#71277)
## About The Pull Request
By default, all custom maps are assigned one standard configuration.
This option rather limits the possibilities for creating custom levels.
For example, you can not use multilevel maps, because with this
configuration will always be loaded only one level. With this PR I want
to provide the ability to load a configuration file for a custom map
similar to the standard map.json configs.

## Why It's Good For The Game
Allows administrators to flexibly configure custom maps. For example for
events, etc.
## Changelog
🆑
admin: Adding the ability to load the configuration of custom maps
/🆑
Co-authored-by: twilightwanderer <twilightwanderer@ users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
* Adding the ability to load the configuration of custom maps.
Co-authored-by: twilightwanderer <88540658+twilightwanderer@users.noreply.github.com>
Co-authored-by: twilightwanderer <twilightwanderer@ users.noreply.github.com>
Co-authored-by: san7890 <the@ san7890.com>
* Moves flick_overlay to atom instead of being global (#71045)
## About The Pull Request
Moves flick_overlay and flick_overlay_view to atom instead of being a
global proc
## Why It's Good For The Game
General performance and syntaxical improvements, makes it easier to
retrieve iconstates
## Changelog
🆑
fix: flick_overlay is an atom proc
/🆑
Co-authored-by: etherware-novice <candy@ notarealaddr.com>
Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Moves flick_overlay to atom instead of being global
* modular flick
Co-authored-by: texan-down-under <73374039+etherware-novice@users.noreply.github.com>
Co-authored-by: etherware-novice <candy@ notarealaddr.com>
Co-authored-by: Candycaneannihalator <candycane@ thisisnotarealaddr.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
* Strays away from GLOB.machines when possible (#71100)
## About The Pull Request
This replaces needless GLOB.machines with more precise lists whenever
one existed, plus adding a new one for CTF machines.
## Why It's Good For The Game
GLOB.machines holds every single /obj/machinery in the game, so checking
the whole list for stuff is pretty big. This aims to cut that down by
using smaller lists whenever possible. I also gave CTF a new list
because it checked machines very often.
## Changelog
Nothing player facing.
* Strays away from GLOB.machines when possible
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
* Prettifies adminmoreinfo into a neater Examine Block (#71170)
Updates the Adminmoreinfo button (also known as the '?' button)
to be cleaner and easier to understand/read, and also makes it
an examine block so it doesn't blend in with the rest of chat.
* Prettifies adminmoreinfo into a neater Examine Block
Co-authored-by: san7890 <the@san7890.com>
* Ensures bunkering someone doesn't runtime due to a divide by 0 error (#71081)
## About The Pull Request
HAHHHHHHHHHHHHHHHH
* Ensures bunkering someone doesn't runtime due to a divide by 0 error
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* adds applying client quirks to player panel (#70923)
## About The Pull Request

this is terribly annoying for any sort of testing. especially if you
were to have a blind or crippled character.
instead of that, we now just make it a button in player panel
## Why It's Good For The Game
fuck
## Changelog
🆑
admin: ctrl shift click spawning no longer applies quirks
admin: adds quirk applying button to player panel
/🆑
* adds applying client quirks to player panel
Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
* Fix admin 2fa not syncing authorized admins to the player table in the db. (#70910)
* Fix admin 2fa not syncing authorized admins.
* make it a bit more clear what this code does, since the if wording is misleading.
* Fix admin 2fa not syncing authorized admins to the player table in the db.
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
* Admin verb to send message on PDA (#70790)
* base
* oh, oh.
* uh, dots?
* no hdd, only computer
* kill let in UI(but not in func)
* Admin verb to send message on PDA
Co-authored-by: Yaroslav Nurkov <78199449+AnywayFarus@users.noreply.github.com>
* Admins can now safely cancel the "Admin PM" verb (#70705)
* Admins can now safely cancel the "Admin PM" verb
Co-authored-by: Funce <funce.973@gmail.com>
* Wizard DLC - Tower of Babel (#69629)
About The Pull Request
This adds a new status effect called - Tower of Babel
Any carbon mob afflicted by the status effect will lose knowledge of every known language and gain a randomized one as a replacement. The affected mob will also be hit with a depressing moodlet that lasts for 15 seconds. Silicons are immune to all effects.
This effect is implemented in several ways:
Tower of Babel wizard event (all crew on the station z level are affected. The wizard is not and gains mastery of every language to taunt their victims)
Admin smite option
Admin secret event (can be reversed)
Staff of Babel (formerly the Staff of Sapping) will spawn during spawn magic wizard event
Magicarp will randomly shoot bolts of babel
Staff of Chaos will randomly shoot bolts of babel
Overdosing on Mushroom Hallucinogen will temporarily and sporadically acquire the effect
The effect can be blocked or cured in several ways:
Curators are given immunity
Reading a book of babel (via lavaland loot) cures and gives immunity
Reading a language book cures and gives immunity ONLY for that particular language
Note - The Tower of Babel does not allow tongueless, mute, or tongue tied people the ability to speak
* Wizard DLC - Tower of Babel
Co-authored-by: Tim <timothymtorres@gmail.com>
* Player Panel's "Make AI" Now Respects Closing The Input Menu (#70449)
Player Panel's Make AI Now Respects Closing
Hey there,
Before, this wouldn't respect it if the user calling this via the Player Panel just hit the X button, instead of "cancel" on the TGUI input message. If you hit the X button, it would just create an AI at the normal AI landmark anyways (very stupid!). I fell for this like twice in the last week, so let's get this outta here.
* Player Panel's "Make AI" Now Respects Closing The Input Menu
Co-authored-by: san7890 <the@san7890.com>
* makes radios use paths instead of new (#70252)
* makes radios initialize in Initialize instead of init()
* makes radios use paths instead of new
Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
* List Them Out - A Modern Revision On Extracting Global Lists (#70080)
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>
* List Them Out - A Modern Revision On Extracting Global Lists
Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>
* Game panel is a bit more generous when spawning multiple paths for admins (#70078)
Changes the limit of paths to spawn via game panel from a hardcoded 5 to be based on the admin spawn limit.
Why It's Good For The Game
5 is a bit limiting, especially as it's easily possible to spawn more than five types of something in other ways. QOL.
Changelog
cl Melbert
admin: The game panel now lets you make more than five different types of something at once.
/cl
* Game panel is a bit more generous when spawning multiple paths for admins
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Unit tests powernets to make sure the whole station is connected. (#70090)
* Unit tests powernets to make sure the whole station is connected.
* fixes cable tests for blueshift and raptor
* single cable misplacement
* hard map reset
* hec
* tramstation armory stray cable
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Paxilmaniac <paxilmaniac@gmail.com>
Co-authored-by: Tastyfish <crazychris32@gmail.com>
* Fixes linda heat capacity errors (#70071)
We make the assumption that a turf's heat capacity will never be 0. This is safe because we've got an override of /datum/gas_mixture for turfs that overrides 0 heat cap with 7000 (SPACE)
This is done to make cold actually flow through empty tiles, because we are hacks.
I forgot to include type in my gas mixture creation logic, so this was being dropped. FIXXXX
* Fixes linda heat capacity errors
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Completely refactors hallucinations, and also adds a few
* delete 5 old hallucination types that should have been removed
* Fixed old leftover tips conflicts
* Fixes all the leftover conflicts and otherwise broken code
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Refactors team antagonists and roundend report handling (#69585)
* Refactors team antagonists and roundend report handling
Refactors teams and subtypes
* Makes use of ``as anything`` and ``\improper``
* Removes many single letter variables
* Moves team code to the team file
* Makes team objectives only allow objectives for SpacemanDMM
* Makes members and objectives clear when a team is deleted
* Generalizes team's add_objective
* Checks for show_roundend_report in roundend
* Replaces ``get_team == src`` with a simple mind check
* Makes Bloodbrothers fit using parent's endround report.
* Removes the unused procs ``is_solo`` and ``antag_listing_footer``
* Makes replaces ``get_team_antag`` ``specific`` with ``include_subtypes`` to be consistent with Antag helpers (and because I thought it looked better that way)
* Refactors team antagonists and roundend report handling
* improper borers
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
* Adds a quick way to view notes from ticket panel (#69988)
* Adds a quick way to view notes from ticket panel
One thing that I hear be thrown around administration channels a lot is "If I had checked the notes, I would have been more fair on their ban!". Well, have a fast way to keep checking those notes!
* Adds a quick way to view notes from ticket panel
Co-authored-by: san7890 <the@san7890.com>
* Fixes Bread Smite Causing Some Fucked Up Shit (#69853)
* Fixes Bread Smite Causing Some Fucked Up Shit
Hey there,
So basically, when you had the bread smite done on you, you were _just_ added to the contents of the bread. Nothing more. That means that you could pick it up. You couldn't add it to your bag (it would always return back into your hand(?)), but it would create some weird oddities that was just cursed in general. Let's make it so you can't hold the container that you are contained within by giving you HANDS_BLOCKED.
* actually we don't need the named arg
lets get rid of the cursed thing entirely
* removes sanity check
* we do a bit of component trolling
THIS TOOK ME TWO HOURS FUCK YOU
* removes cruft comment
* cleans up code a teeny bit, upgrades to incapacitated
* wait that named arg is still there wtf
* Review Time
Co-authored-by: Seth Scherer <supernovaa41@ gmx.com>
* wrong operator and wrong order of operations
* null out the container
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
* checks to see if container is qdeld
* weakref time
Co-authored-by: Seth Scherer <supernovaa41@ gmx.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
* Fixes Bread Smite Causing Some Fucked Up Shit
Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Seth Scherer <supernovaa41@ gmx.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>