* Patches out the latest BRPED remote bombing exploit. (#62447)
Reagent containers in BRPEDs can no longer have reagents inserted into them.
Does this by adding a signal for pre-reagent adding that accepts a cancel flag, which will stop the reagents being added.
Transferring reagents to things now actually checks the return value of add_reagent to stop people pouring chems that weren't added into the ether.
* Patches out the latest BRPED remote bombing exploit.
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
* removes double spaces before symbols (#62397)
This can apparently cause some bugs on occasions, so I thought I might as well try to kill them all.
* removes double spaces before symbols
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
* Integrated the component printer into the integrated circuit UI. You can now link integrated circuits to component printers (#62287)
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
* Integrated the component printer into the integrated circuit UI. You can now link integrated circuits to component printers
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
* Initial commit, first PR added, small sprite tweaks done myself
* hardsuit tail sprite and more modifications
* Language and stuff, most of second PR
* idk what I did here because I slept between commits but probably a lot
* Adds many many matrix coloured earsprites fuck me this was a lot of work
* Species page, body markings and final cosmetic changes
* Small tail tweak
* Small clothing sprite tweak
* Linter: trailing newline
* schechi icon made, code clothing moved to modular/master file
* Some suggestions implemented
* Comments etc
* snake_case
* Changes var names, rejects body size modification
* again but properly this time
* Moves clothing pixel stuff into defines
* Quirks can be restricted for some species now
* And now it actually works
* Move to modular file
* removes species quirk stuff
* Fixed Schechi
* Fixes 0 damage punch, made a husk sprite
* improves clothing sprites, fixes offsets of 'certain' bodyparts... :/
* Nevermind, it just doesn't work, no dicks for you
Co-authored-by: Ranged <nickvanderkroon@gmail.com>
* Binary and Decimal Conversion Components. (#61889)
Added a couple components that convert a number into an array of binary digits and viceversa.
May help players mak more complex and advanced components without filtering those lacking knowledge in the binary field.
* Binary and Decimal Conversion Components.
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
* Updates the Goon Source code objective item to be on par with all other high risk items. (#62142)
Currently, all it takes to ruin an antagonist's round (assuming they have this objective) is to walk into the server room, and break the master server, as this will delete the drive inside. It is extremely weak, a fire axe will break it in less than 15 seconds.
Not only that, but the drive itself is also not resistant, making it relatively easy to lose it and have it destroyed in various station emergencies.
Compared to every other high risk item, this doesn't make much sense, as they are all supposed to be virtually impossible to get rid off.
This does not effect the ninja's objective of destroying the drive.
This ups the integrity of the master server, making it take ~15s longer to break it with a wielded fire axe, than it does to just deconstruct it. It also adds resistances to the drive itself, which brings it up to the same level as every other high risk item.
Closes#62128
* Updates the Goon Source code objective item to be on par with all other high risk items.
Co-authored-by: Seth Scherer <supernovaa41@protonmail.com>
* fixes pink crossbreeding allowing faction removal (#62090)
by the faction using real_name instead of a ref like all other factions that point to specific mobs do, the pink crossbreeding potion could be used to strip factions from mobs by setting your real name to the name of the faction and stripping it
* fixes pink crossbreeding allowing faction removal
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* Drowsiness refactor (#62104)
Creates two procs in /mob/status_procs for handling drowsiness changes (with check for negative values), and refactors all code to use these procs instead of assigning values to the mob's drowsiness themselves.
* Drowsiness refactor
* Fixing more stuff in our code
Co-authored-by: thatoneplebeian <67017991+thatoneplebeian@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Printer Circuit Component (#62012)
I'm adding a circuit component that can print text string on a paper object in a variety of colors and font typefaces (currently only web-safe ones are available, maybe i'll add some fancy ones in the future but they'd need to be imported either through @ import of @ font-face in a separate CSS not imported by every tgui UI).
It's important to note that because the UI sanitizes new text inputed by users and not what's already written on the paper (so the pen_color and pen_font don't be purged in the process), we can't safely have these strings "printed" into the info variable directly, because of that these values will be stored in two new list variables, one for the text and one for font color, face and the signature. When the paper sheet UI is opened, these will be sanitized and then parsed into the text, so the next time the paper is edited we can clear these two lists.
Obviously better than a hacky byond proc - parsemarkdown() is outdated af -, albeit a bit messy... like the rest of paper code.
Requires #62033.
* Printer Circuit Component
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
* Fixes filter list component not being a filter list component (#62019)
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
* Fixes filter list component not being a filter list component
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
* re-adds the yellow slimecore as an EMP-proof cell (#62013)
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* re-adds the yellow slimecore as an EMP-proof cell
Co-authored-by: Invalid <51190031+InvalidArgument3@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* timepiece circuit module (#62039)
Adds a circuit component that outputs the station time in chosen format and unit of time when triggered. The options are currently 24-hour and 12-hour for the time format, hours, minutes and seconds for the unit of time.
The component is called timepiece because clock was already taken by another component that sends signal outputs at intervals.
* timepiece circuit module
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
* Rad collectors gone, tesla coils to generate power (#61917)
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Rad collectors gone, tesla coils to generate power
* replaces rad collectors
Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: Kat <evesovereign@hotmail.co.uk>
* Fixed dispenser and new circuit list components not being available (#61960)
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Fixed dispenser and new circuit list components not being available
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Status Displays can be taken down (#61847)
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Status Displays can be taken down
Co-authored-by: Mooshimi <85910816+Mooshimi@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Refactors the list datatype to support composite lists. Adapts a lot of circuits to be able to properly use composite lists. Adds the dispenser shell (#61856)
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
Co-authored-by: Colovorat <35225170+Colovorat@ users.noreply.github.com>
* Refactors the list datatype to support composite lists. Adapts a lot of circuits to be able to properly use composite lists. Adds the dispenser shell
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
Co-authored-by: Colovorat <35225170+Colovorat@ users.noreply.github.com>
* Removes dead code in techwebs, alongside some truly evil macros (#61936)
fuck you kevin
* Removes dead code in techwebs, alongside some truly evil macros
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Corrects mapload args that sprug up in the past few days (#61759)
See #61623 . These were either merged after the prior PR, coded before the prior PR, or were made in between and not updated.
* Corrects mapload args that sprug up in the past few days
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Replaces downloading research notes with a new antag objective and station sabotage point. (#61685)
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
* Replaces downloading research notes with a new antag objective and station sabotage point.
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
* tgui Preferences Menu + total rewrite of the preferences backend
* nah, we dont need to ping those people
* trying to remove the funny stuff
* unmodularizing this
* prefs reset
* this may need to be reverted, who knows
* okay, this part
* perhaps
* EEEEEEEEE
* unsanitary
* E
* Stage 1 + loadout system
* more fixes
* E
* I mean, it launches?
* More fixes and reorganisation
* E
* customisation code is spaget.
* disable ERP prefs
* Update erp_preferences.dm
* Update erp_preferences.dm
* E
* Slowly getting there
* It may be time for help :)
* tri...colors... help
* preferences now pass preferences
* Update dna.dm
* Fuck this man
* missing savefile return, set_species works, removed dumb stuff from updateappearance
* https://github.com/Skyrat-SS13/Skyrat-tg/pull/8199
* https://github.com/Skyrat-SS13/Skyrat-tg/pull/8224
* https://github.com/tgstation/tgstation/pull/61519
* https://github.com/Skyrat-SS13/Skyrat-tg/pull/8278
* e
* le butonAZARAK HELLO
* hhh
* Proper recognition where it's due, MrMelbert!
* EEEE
* examine block
* Better gen hit sounds from whitedream
* final loadout touches, more bug fixes im sure to come
* i said there would be bugfixes
* Update LoadoutManager.js
* Missing preferences in the html menu
* LIVE TESTING PHASE BABY
* Update LoadoutManager.js
* EEE
* LAUNCH TEST FIRE
* Update job.dm
* Update new_player.dm
* 50gb DAY ONE PATCH
* EEE
* Update preferences.dm
* buggle fixes
* Update examine.dm
* >LOOC starts on
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: jjpark-kb <55967837+jjpark-kb@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
* Removes the hardcoded material restriction for exporting protolathe designs to autolathes. A new variable is used in its place. (#61161)
Title. I have removed the hardcoded iron and glass only restrictions from designs imported to autolathes from R&D and added
a new variable autolathe_exportable in its place that restricts designs from getting the AUTOLATHE build type flag if FALSE. Energy bolas, gun part kits, tele shield, enegy bolas and jaws of life currently have said var set FALSE.
Currently a draft PR because of a problem I have noticed at the last minute: The MATERIAL_NO_EFFECTS flag has to be replaced with a MATERIAL_EFFECTS one to avoid more snowflake code. EDIT: DO NOT MERGE BEFORE #61166.
* Removes the hardcoded material restriction for exporting protolathe designs to autolathes. A new variable is used in its place.
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
* Adds plates to the autolathe (#61433)
You can now print plates to eat food with or throw in tense situations. This is good for the game because the mechanic of vendor restocks is barely ever seen or used, getting more plates can be annoying because most people will take the plate and not leave it back when you leave food out on them, additionally you can print basically every other piece of dinnerware in an autolathe even cleavers if they're hacked, so there is no reason why you shouldn't be able to print a plate as well.
* Adds plates to the autolathe
Co-authored-by: Burgermancoding <79515258+Burgermancoding@users.noreply.github.com>
* Slight refractor to borg reboot boards, allows them to be reusable (#61232)
Refractors the cyborg reboot module to be an independent item rather than a subtype of cyborg upgrades. The new item is no longer consumed during use.
Rebooting now makes a different sound when rebooting an AI shell or ghostless borg, rather than no sound at all.
A recent PR fixed a longstanding apparent bug that allowed reboot boards to be resused. A bug it may have been, but the reboot board being a single-use item is kinda terrible, and doesn't make a lot of sense that the board is somehow destroyed when used. Mothblocks, who merged the bugfix PR, has given me permission to PR this change.
Co-authored-by: Watermelon914 <37270891+Watermelon914@ users.noreply.github.com>
* Slight refractor to borg reboot boards, allows them to be reusable
Co-authored-by: zxaber <37497534+zxaber@users.noreply.github.com>
Co-authored-by: Watermelon914 <37270891+Watermelon914@ users.noreply.github.com>
* Baton refactor. item/melee/baton is now a subtype of item/melee/baton (formerly classic_baton)
* EEEE
* E
* follow the fucking guidelines
* E
* Update CentCom_skyrat.dmm
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
* removes gas_transfer_coefficent from clothing as it did nothing (#60922)
it literaly does nothing
* removes gas_transfer_coefficent from clothing as it did nothing
Co-authored-by: AMonkeyThatCodes <20987591+AMonkeyThatCodes@users.noreply.github.com>
* Renames the analyzer to gas analyzer and adds it to the protolathe printable list (#61326)
Just this, small QoL because having to build a full autolathe to get a gas analyzer is annoying.
You can now search for gas when looking for the analyzer on the autolathe or protolathe, way more intuitive.
I would rename it from /obj/item/analyzer to /obj/item/gas_analyzer but it would change so many files... another day perhaps...
* Renames the analyzer to gas analyzer and adds it to the protolathe printable list
Co-authored-by: GuillaumePrata <55374212+GuillaumePrata@users.noreply.github.com>
* Fixes RnD experiment discounts applying indefinitely (#61258)
Discount experiments have been decreasing required points for nodes indefinitely, resulting in research costs being like Industrial Engineering here:
Curiously, this didn't mean free research points for reasons unknown to me.
I believe this has been going on for the entire lifespan of Experisci and nobody reported it. Yet here I am, an RnD main fixing something that's my lifeblood.
Discounts aren't supposed to grow into 1450%+ discounts over time.
RnD discount experiments now reduce the proper amount of points needed instead of gradually growing into a 100% free tech node.
* Fixes RnD experiment discounts applying indefinitely
Co-authored-by: Sealed101 <75863639+Sealed101@users.noreply.github.com>
* Fixes a hotkey on slime console (#61263)
fixes#61176
For 3 years the slime console has apparently not had its override to use one of its hotkeys, despite ONE maintainers claim that my interact() refactor caused this issue, that is, sadly for them, not the case, as all other hotkeys worked, but this one, because it never had an override to call the signal
* Fixes a hotkey on slime console
Co-authored-by: 小月猫 <alina.r.starkova@gmail.com>