* 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>
* 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>
* 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>
* 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>
* 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>
* 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>
* adds a gun circuit shell (#61156)
adds the circuit gun shell, every projectile it hits with outputs the shot mob, everytime its shot charge from an attached circuit is transferred to it, it deals no damage
increases the range of the to string circuit to 7 tiles from 5, now should get everything in view range
* adds a gun circuit shell
* Update gun.dm
Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
* Input ports now connect to multiple output ports. Remove combiner. (#60494)
* tgui bsod
* debug disconnections
* prelim
* recomment
* set_value -> put ._.
* DAMN IT
* reinsert subsystem
* prepare
* unditch signals
* remove combiner
* remove combiner some more
* how did router.dm get here? deleting.
* These two COMSIGS should be one.
* critical typo
* inline cast
* have your signals
* Have your set_input & set_output.
* make compile
* upgrade save/load to n-to-n-wires
* have your documentation
* have your unsafe proc
* pay no attention to the compile errors
* unlist the ref
* paste my for block back in ._.
* fix manual input
* oops pushed too soon
* Have your !port.connected_to?.length
Co-authored-by: Watermelon914 <37270891+Watermelon914@ users.noreply.github.com>
Co-authored-by: Watermelon914 <37270891+Watermelon914@ users.noreply.github.com>
* Input ports now connect to multiple output ports. Remove combiner.
Co-authored-by: Gurkenglas <gurkenglas@hotmail.de>
Co-authored-by: Watermelon914 <37270891+Watermelon914@ users.noreply.github.com>
* Exosuit Proto-kinetic Accelerator (#60384)
Adds new equipment for mechas: the Exosuit Proto-kinetic Accelerator, unlocked with the mining tech research. Compared to the standard one, it is able to hit 5 tiles away with a low cooldown.
However, unlike the handheld version, it draws a considerable amount of power from the battery, pretty much requiring you to bring generator equipment or upgraded parts.
The projectile is identical to the standard handheld version otherwise and will do little damage in pressurized environments.
* Exosuit Proto-kinetic Accelerator
Co-authored-by: InvalidArgument3 <51190031+InvalidArgument3@users.noreply.github.com>
* Creates the basis of the medigun
* Adds ability to take out and put in cells
* Adds Base cells in
Sprites are made by @Arctasia
* Cell Sprites change size when on ground
Uses the item scaling module from this PR, god bless the author for making this;
https://github.com/tgstation/tgstation/pull/56102
* Adds the other two variants of Mediguns
Upgraded version will be accessible by using a printable medigun upgrade kit.
* CMO medigun can't be put in chargers
Mostly balancing stuff to make sure the gun isn't too busted. I'll probably end up doing further tweaking down the line.
* Adds in the basic Tier II Ammo Types
* Adds in the basic tier III cells
also tweaks the recharge value on the CMO medigun cell
* Update modular_skyrat/modules/modular_weapons/code/modules/projectiles/guns/energy/medgun/medcells.dm
Co-authored-by: Matthew J. <12817816+ZephyrTFA@users.noreply.github.com>
* Update modular_skyrat/modules/modular_weapons/code/modules/projectiles/guns/energy/medgun/medcells.dm
Co-authored-by: Matthew J. <12817816+ZephyrTFA@users.noreply.github.com>
* Update modular_skyrat/modules/modular_weapons/code/modules/projectiles/guns/energy/medgun/medcells.dm
Co-authored-by: Matthew J. <12817816+ZephyrTFA@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Matthew J. <12817816+ZephyrTFA@users.noreply.github.com>
* Update modular_skyrat/modules/modular_weapons/code/modules/projectiles/guns/energy/medgun/medguns.dm
Co-authored-by: Matthew J. <12817816+ZephyrTFA@users.noreply.github.com>
* Update modular_skyrat/modules/modular_weapons/code/modules/projectiles/guns/energy/medgun/medguns.dm
Co-authored-by: Matthew J. <12817816+ZephyrTFA@users.noreply.github.com>
* Makes the medigun heal Radiation
also fixes an issue of the cell type not swapping after the medigun is removed, leaving the medigun on a mode that doesn't exist.
* haha whoops
* Fixes Medigun code a bit
Fixes the right click option to work with the new right click modifiers from https://github.com/tgstation/tgstation/pull/59656.
Fixes an oversight where basically anything could be shoved inside of a medicell. That seemed a little bit unrealistic.
* Adds upgrade kit
The standard medigun can be upgraded to the faster charge model! I might end up tweaking the crafting requirements later!
* Adds Medigun kits
* Adds Basic Medigun Kit to Cargo
* Makes the higher Tier medicells obtainable through research
* CMO medigun kit is in CMO locker
* Higher Tier Projectiles pass through windows
* Updates inhand sprite
* Gives the different cell projectiles colors when shot.
* Changes the sound of the medigun
* Updates description
* Changes medigun to use alt+click
* adds the medigun and medicell sprites in.
lets gooooooo
* Adds in overlays
* Adds empty and updates the CMO texture
* The basic Medicells are orderable by themselves
QoL, and this might be useful for future variants.
* Basic Brute Charge
* Changes mediguns to use their own texture file.
I don't want the original projectile file to get overly cluttered.
* Update projectile.dmi
* Adds in icons for other types
* Rest of the tiers have sprites
Co-authored-by: Matthew J. <12817816+ZephyrTFA@users.noreply.github.com>
* Adds the ability to save/load circuits for admins. Adds the ability to duplicate modules in a round. (#60222)
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
* Adds the ability to save/load circuits for admins. Adds the ability to duplicate modules in a round.
* a
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
* Brain-computer interfaces, circuits in your brain (#60338)
BCIs are a new shell that can be implanted in your brain through surgery or through a BCI Manipulation Chamber, which provide the ability to easily implant and remove BCIs. They are the same size as compact remotes and generally share the same limitations.
Also adds CIRCUIT_FLAG_HIDDEN, to hide components from the UI. I didn't end up needing this, but Watermelon said he had ideas for it, so eh.
Why It's Good For The Game
BCIs provide an interesting, stealthy input method for circuits. They are seen as a healthier alternative to nanites, and improve on them in several ways:
Circuits have limited manipulation of the world, and intentionally do not perform the ability to provide passive healing, revives, etc.
Circuits have a significantly better UI and UX than nanites.
Circuits regularly get content expansions, which means that as a side-effect, there'll often be new things to play with for BCIs.
Other point to make:
BCI implanters have no cloud, and instead require the BCI to be put inside the machine. This means it requires the attention of the scientist (or even just a box with them inside). With
Adds the ability to save/load circuits for admins. Adds the ability to duplicate modules in a round. #60222, which lets you reprint a circuit you made that round, this means you can print out lots of BCIs, rather than going through the tedium of constantly remaking it.
BCI implanters are not roundstart, but rather in the advanced shells node. This is essentially the same as nanites, except for the difference of nanites starting with all the machinery, but none of the powers.
Changelog
cl
add: Added brain-computer interface circuit shells.
/cl
* Brain-computer interfaces, circuits in your brain
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
* Gas Masks Properly filter now (#58529)
This PR allows gas masks to properly filter toxic gases by using one-time-use filters that can be made in any lathe from roundstart. All gas masks start with filters in at roundstart.
These filters will have different filtering abilities that differenciate what gas they'll be able to filter the most. The highest ones will be plasma gas, co2 and n2o.
Currently there is only one filter available, it will filter plasma, co2 and n2o at higher amount, while nitryl, stimulum, freon, hypernob and bz will be at a mid range and the more complex/dangerous gases healium, zauker, proto nitrate, tritium, halon will have easier time passing even at trace amounts
More filters with different filtering levels soon(tm)
Warning, the masks will filter traces amount of gases, but will also help slowdown the damage you'll get by breathing the gas by reducing the amounts of moles taken (example plasma intoxication will be slower)
Gas masks now properly filter gases when a filter is used (they will work normally otherwise)
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@ users.noreply.github.com>
* Gas Masks Properly filter now
Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
* Adds the scanner shell. (#60325)
Adds the scanner shell that lets you scan objects. Not much else than that.
* Adds the scanner shell.
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
* Circuit submodules (#60109)
Adds the module component that is basically a subroutine. Allows you to compact your logic into a bunch of functions.
* Circuit submodules
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
* Adds temperature and pressure sensors to circuits (#59993)
Co-authored-by: Watermelon914 <37270891+Watermelon914@ users.noreply.github.com>
* Adds temperature and pressure sensors to circuits
Co-authored-by: obsol <33932119+read-0nly@users.noreply.github.com>
Co-authored-by: Watermelon914 <37270891+Watermelon914@ users.noreply.github.com>
* introduce advanced sucking functionality to custodians (+ bonus GAGging) (#59925)
* base sucking functionality
* functional upgrade and upgrade refactor
* minor tweak here
* finish overhaul of upgrades, add gags-ified upgrades
* add documentation (you love to see it)
* update sucking sound
* do some of the requested cleanup, fix key going into trash bag, add right click func
* introduce advanced sucking functionality to custodians (+ bonus GAGging)
Co-authored-by: Bobbahbrown <bobbahbrown@gmail.com>
* Adds the airlock shell, refactors USB code to be easier to use, implements USB cables for the binary valve and more. (#59728)
Adds the airlock shell. The circuit has full control over the airlock.
Refactors USB code to be easier to use for less experienced coders.
Implements USB cables for the binary valve to be able to open/close the valve.
Adds a private channel for radios that only lets circuits with the same owner's ID to interact with it.
* Adds the airlock shell, refactors USB code to be easier to use, implements USB cables for the binary valve and more.
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
* Adds the MMI circuit component. Allows inputting signals into circuit component ports (#59743)
Adds the MMI component which outputs signals whenever they click somewhere/try to move.
Allows inputting signals into ports, making it easier to debug integrated components.
* Adds the MMI circuit component. Allows inputting signals into circuit component ports
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
* Added circuit component UI details, added multiplexer and allowed inserting components directly into shells. (#59635)
Adds the multiplexer circuit component - en.wikipedia.org/wiki/Multiplexer
Circuit components can now be directly inserted into shells rather than having to take the integrated circuit out.
Special information can be accessed from components now through the "Info" button besides the eject button on a component.
* Added circuit component UI details, added multiplexer and allowed inserting components directly into shells.
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>