* fixed storage examine broadcast, storage examine now broadcasts top level storage, excluded bluespace pocket
* actually gets top level storage + expand to storage not on mob
* initial changes
* Rad wave is working. now to implement the rest
* Makes the waves square
* Makes wave square
* multiplies the strength in all instances of radiation_pulse by 4 because each pulse makes one wave instead of 4 now
* Undef thing and apply suggestion
* Make radiation_pulse() not radiate the radiation source and implements contamination
* Adds contamination to uranium walls and meteors
* Fixes stuff
* Handle some contamination on attack still need to take care of meteors
* Fixed the meteor stuff
* Introduce emission types
* moves contaminate_touch to an atom proc and renames it to contaminate_atom
* deduplicates some contamination code
* Move inherent radioactivity to a component and signals from the atom vars and behaviour
* fix some things with the new component
* Update inherent_radioactivity.dm
* implement contaminating things that hit things that are inherently radioactive
* window things
* adds emission type to the rad_act call
* Changes radiation insulation values on a bunch of stuff
* fixes radioactive component radiating the wrong type
* more adjustments
* refactros rad_act
* adjustments to collector power production
* Adds plastitaniumglass windows and makes further adjustments
* Adds sprites to the shards and plastitanium directional window
* Update misc_cleanables.dm
* removes alpha rad insulation from floor turfs
* Fixes a bug with the starting tile of radiation waves
* More adjustments
* Adjusting singularity rad production
* reduces window half life a bit to make power smoother and buffs full window rad conversion
* Strengthens gamma and beta radiation effect on mobs.
* Makes radsuit block radiation completely
* Fixes Geiger Counters
* Fixes contamination not irradiating the contaminated thing
* Fixes inherent radioactivity not processing. Also makes it stop processing when a nuke core is contained
* Fixes ghost contamination
* Adds info to the collector
* Handles alpha radiation better on humans and changes some instances of rad_act to base_rad_act
* oops
* adjustments and fixes to alpha rad handling on mobs
* Make collector info more compact
* Core no longer radiates and contaminates from within the nuke until the plates are removed
* Contamination no longer counts as being inside a mob(it is supposed to be surface level)
* Adds inherent radioactivity to a bunch of uranium things. makes it all process.
* Nerf full windows
* Adjustments to collector and fulltile window radiation absorption
* Reduces passive contamination, especially while on the floor
* Adds different rad types to the geiger counter and fixes a runtime
* Makes full tile windows strong again and disallows building them on top of collectors
* adds emissive blockers to the rad blacklist and gives windows and collectors priority when irradiating for increased consistency
* Gives each contamination type it's own color.
* Gives each contamination type it's own color. And makes the rad hud display them separately
* Changes how much the radiation wave affects the source tile, adds decay for performance reasons and adjusts collector parameters as well as SM and singulo rad production
* improves performance at very high rad amounts
* Fixes supermatter sliver box not containing radiation
* Restores supermatter sliver to old behaviour(not inherently radioactive)
* Slight nerf to fulltile windows and removes an unnecessary multiplication from rad wave processing
* Removes redundant line from window rad act
* Fixes radiation waves ignoring walls
* fixes it better
* more adjustments to collector stats
* Adjustment to collector gamma absorption
* increases grille beta blocking
* Review changes
* one at a time let's go
* air alarm
* so many
* meh
* hell
* hell
* hmm
* Attack chain migration: /obj/machinery
* what the fuck?
* hell
* review fixes
* whoops
* fix build
* nuke fixes, more tests
* gland dispsenser and start of autolathe test
* var renames
* small fixes
* i tire of life
* more tests
* more tests
* more tests
* shrink map
* customize autolathe design disk load delay
* cell charger
* fire alarm frame installation test
* funny and burz reviews
* nuke fixes
* Refactor/deduplicate camera eye code
Camera Eyes previously had duplicated logic across several files. This
change uncooks the spaghetti. Additionally, half-baked support for TG's
multicam feature has been removed, as it was not functional or in use.
* lets ff now
* Camera Eye refactor fixes and finishing touches
This change completes a refactor of AI eyes, which were previously used
by xenobio consoles, syndicate and abductor camera consoles, shuttle
docking computers, holograms, and, of course, the AI. Duplicated logic
has been extracted to an abstract base mob, /mob/camera/eye, from which
new types for each of the above now derive.
Functionality is largely the same, with only a few minor cosmetic
differences (i.e. camera eyes are now appropriately named given their
type and user), as well as a quality-of-life enhancement for holograms,
slowing their movement speed to base run speed to prevent users from
accidentally zooming out of calls.
* Camera eye refactor: Fix AI acceleration toggle
The acceleration toggle was broken in the camera eye refactor, as
previously the boolean was stored on the AI rather than its eye. This
change fixes that.
* Camera eye refactor: Fix syndicate cam visibility
With the camera eye refactor, the syndicate advanced camera consoles
lost the ability to view maintenance tunnels and other areas without
active cameras, seeing static in their place instead (as all other
cameras do). This change reinstates the original behavior.
* Camera eye refactor: Convert spaces to tabs
* Camera eye refactor: Fix CRLF
* Apply suggestions from code review
General minor code quality improvements suggested by GDNgit
Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>
* Apply suggestions from code review
Rename parameter names to avoid src accesses, remove an ambiguous and
unused mob_define and holopad range variable from a previous WIP, change
the for loop in /mob/camera/eye/relaymove to a for-to loop, and change
the chat message warning, sent when an AI Eye is created on an AI that
already has one, to a stack trace
* Adds toggle to AI commands for fast holograms
* Refactor ripped Hologram Eye relaymove
Previously, the relaymove proc for hologram eyes was redundant and
nearly impossible to read. It has been separated out into a few
different named procs, and has had its use of `spawn` removed.
* Remove unnecessary src access
* Fix bug involving shuttle placement outlines
The camera eye refactor that this commit is a part of introduced a bug
that prevented shuttle placement outlines from showing up on first use
of the shuttle console. This change fixes that bug.
* Unrevert some changes from #26306 lost in merge
* Remove erroneous free xray vision on advanced cams
* Autodoc camera acceleration vars
* Remove redundant null var initialization per code review
Co-authored-by: Drsmail <60036448+Drsmail@users.noreply.github.com>
Signed-off-by: asciodev <81930475+asciodev@users.noreply.github.com>
* Changed variables to camel_case, autodocs, cleanup
Changed a number of camera eye-related variables to camel_case style,
added appropriate autodoc comments, as per code review. Also removed an
unused cameranet function, modified the call signature of a cameranet
function to be more semantic, and changed a qdel-on-initialize in camera
eyes to return INITIALIZE_HINT_QDEL instead.
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
* Remove stray qdel(src) per code review
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: asciodev <81930475+asciodev@users.noreply.github.com>
---------
Signed-off-by: asciodev <81930475+asciodev@users.noreply.github.com>
Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>
Co-authored-by: Drsmail <60036448+Drsmail@users.noreply.github.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
* MILLA phase 2
* Lint.
* Build Rust library
* Assorted bugfixes and tweaks
* Simplify fire mechanics and make hotspot sending to DM more reliable.
* Assorted tweaks, fixed an issue in the core engine and removed the softcap it made necesary.
* SM fixes, slower plasmafire, less overpowered pyro anomalies, and air alarm improvements.
* Review fixes.
* Build Rust library
* Unbalanced icon.
* Rebalance immovable rods.
* Unbalanced has alerts, can fight airflow (but get slowed)
* Build Rust library
* Stronger space cooling, slower temperature flow, faster burns, burnt floors, and a hotspot display fix.
* Build Rust library
* Tweaks to avoid merge conflict
* Oops.
* Build Rust library
* Rebalance wind.
* Rebalance temperature flow and space cooling.
* Fix gas flamethrower.
* Build Rust library
* Make air push slowdown directional, so you don't get slowed while moving with the air.
* Variable name cleanup.
* Reduce the speed of wind pushes.
* Prevent wind pushes from breaking your pull.
* Prevent swaps during wind push.
* Made supermatter crytals reliably run last in atmos machinery.
* Sped up plasmafire burning, but dropped the minimum burn amount.
* Rebalanced SM heat output.
* Rebalanced pyro anomaly.
* Build Rust library
* Lint
* Build Rust library
* Uncap fuel burnt readout.
* Added Custom air alarm mode, dropped Refill cap to ONE_ATMOSPHERE.
* Updated air alarm modes to use pressure settings instead of ONE_ATMOSPHERE
* Added a list of areas not in Filtering to atmos alert computer.
* Increase pressure gradient and vent output, especially at low distro pressure.
* Changed Immovable Rod from Moderate to Major.
* Lint
* Build Rust library
* More lint!
* Build Rust library
* Magboots, scaled slowdown, and nukie borg immunity
* Wind image
* Wind v2
* Wind v3
* pngcrush
* pngcrush again
* Moved hotspot removal into SSair, add wind effect.
* Lint
* Build Rust library
* Fix hotspots.
* Hotspot visual based on gas burnt
* Build Rust library
* Scaled wind to gas amount, stopped first wind push while moving.
* Made Rust panic logging safer.
* Made MILLA full tick and sleep timers more honest.
* Pressure overlay, ghost mode, atmos goggles.
* Build Rust library
* Lint
* Build Rust library
* More lint-y stuff.
* Build Rust library
* Repair pressure overlay if it loses its loc.
* Bind pressure overlays to their tile better.
* Build Rust library
* Make the pressure overlay work on z=1 and not proliferate effects.
* Don't block the supply shuttle.
* Don't fine for special effects.
* Maybe don't fine for ghosts, either.
* Build Rust library
* Make pressure overlay play nice with shuttles.
* Build Rust library
* Pressure scanning for borgs.
* Build Rust library
* Lint
* Build Rust library
* Made explosions not generate so much wind.
* Removed an old and non-functional proc.
* Clientless mobs can get pushed again.
* Build Rust library
* cargo fmt
* Build Rust library
* Don't divide by zero.
* Plasmafire generator for the Shadow
* Update shadow to use plasmafire generators
* Fix shadow's plasmafire generators going out on depart.
* Prevent heat2color from runtiming at absolute zero.
* Better nanofrost
* Build Rust library
* Singularity immunity
* Build Rust library
* Add back meson mode to atmospheric scanner goggles, so they don't stare deeply into the SM
* Build Rust library
* Dump panic outputs into data/ instead.
* Build Rust library
* Apply suggestions from code review
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Saner handling of MILLA crash.
* Build Rust library
---------
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
Co-authored-by: paradisess13[bot] <165046124+paradisess13[bot]@users.noreply.github.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
* refactor: Attack chain, initial setup.
* migrate curtain to make dreamchecker happy
* update thurible
* don't call attacked_by separately for legacy attack chain
* remove duplicate proc
* condense similar code, put allowances for legacy code in new procs
* update docs, include diagram source
* add comment on how to update diagram
* fix admonition
* mindflayer updates
* remove commented out code
* clarify all steps
* after_attack should be overridable
* whoops
* retrofit recent changes
* duh, can't restrict this yet because of tool_acts
* i hate ore bags with the fire of a thousand suns
* return correct value for object attack logic
* Various cleanups.
We don't want to attempt to pull stuff out of `/obj/item/attackby`,
because those pieces are part of the related objects' migrations, not
`/obj/item` itself. Attempting to do this causes knockon effects where
things expected to call e.g. `/obj/item/storage/attackby` in the call
chain were not ferried over to the new item interaction code, because
the related objects hadn't actually been migrated over yet.
I've used refactoring /obj/vehicle as the example for migrating
`attackby` methods instead.
* simplify some argument names
* fuck it
* make it do the thing
* Rename CI module call
* Prove that CI works
* improve test output
* aaand fix it again
* fix curtain tool interactions
* fix compile error
* fix compile error
* Better docs, introduce migration plan tool.
* IT WORKS UP UNTIL THIS POINT
* Consolidates SLOT_FLAG and SLOT_HUD into one
* Remove cover_both_ears
* SLOT_HUD to ITEM_SLOT
* Remove clothing_trait changes for the time being
* Remove accidental copy-paste
* Re-add no-slip var
* More failure to copy-paste correctly
* Leftover flag
* Combine left and right slot flags where possible
* UNGOOF MY DEFINES, PHAND IS NOT A THING
* Minor spacing changes
* Some more fixes from merge
* Seperates ITEM SLOT AMOUNT into two defines
* ON SECOND THOUGHT LETS NOT DO THAT.
* Addresses Contra's review
* Thank you GREP
* Rename ITEM_SLOT_FEET to ITEM_SLOT_SHOES
* Added a comment to the bitmasks in clothing defines
* Rename ITEM_SLOT_TIE to ITEM_SLOT_ACCESSORY
* These are for a seperate PR.
* Magboot fixes
* Requested changes
* Re-add accidental removal
* Wrong flags
* Update code/__DEFINES/clothing_defines.dm
Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>
Signed-off-by: Chap <erwin@lombok.demon.nl>
* Requested changes
* Merge fixes
* Fix double headset
* Fixes multiple accessories
---------
Signed-off-by: Chap <erwin@lombok.demon.nl>
Co-authored-by: Adrer <adrermail@gmail.com>
Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>
* LINDA -> MILLA
* Tiles now change their atmos mode properly.
* Fixed a bug that made walls generate supercold air when deconstructed/destroyed.
* Apply suggestions from code review
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Begone, var!
* MILLA -> milla
* Lint.
* More lint.
* Prevent negative/NaN atmos from spreading.
* Made fires start more reliably.
* Undef what the rest should not see.
* Enums are nice.
* Match LINDA better.
* Debugging verbs.
* Debug verb fixes.
* Labelled more lavaland stuff with ATMOS_MODE_LAVALAND
* Block superconductivity on a couple more things for Lavaland.
* Updated milla.dll
* Lavaland map fixes.
* Missed a spot.
* Begone, var! (again)
* Add libmilla_ci.so for continuous integration tests.
* Install/contributing instructions for MILLA.
* Directional plasmaglass windows on shuttles shouldn't stop protecting from heat after moving.
* Banish bad naming.
* Better naming and debug stats for SSair.
* Apply suggestions from code review
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Magic numbers and formatting.
* Don't screw up the temperature during reactions.
* Efficiency and readability.
* Fix hotspots.
* Removed redundant safety (MILLA will already output an error)
* Optimizations.
* oops
* TGS build script update.
* Change API of gas_mixture and how you get one from a turf.
* Get in there.
* so many vars
* MILLA binary updates.
* Lint
* Made MT cost more honest.
* Gave MILLA a read-only mode.
* More read-only vs synchronized mode work.
* Even more.
* Synchronize disposals.
* Updated a bunch of stuff to use SSair.synchronize or GM.synchronize.
* MILLA <3 Tracy
* lint
* cargo fmt
* more lint
* Test needed MILLA sync.
* Silence atmos machinery that's behaving as intended, but continue objecting to other potential failures to synchronize.
* Push new MILLA DLL
* Build MILLA
* Update PR instructions for MILLA.
* Add some fancy plasmaglass windows to the Lifebringers' ship.
* The golems remembered that they should insulate *all* their engines.
* First round of TM bugfixes.
* Build MILLA
* fix two lavaland ruin turf types
* bunch more maps
* fixes milla ci and makes the interesting turf verb better
* Solid turfs can no longer conduct heat (for now...)
* Made indoor tiles in beach and winter biodomes not lavaland air.
* Re-added random IT teleport, adjusted warning message
* Fixed a tinted window on Lavaland to be a plasglass window instead.
* Made firelocks and holofans heatproof
* Made RPD auto-wrench pipes if you have a wrench in your offhand.
* Runtime fixes.
* Made visuals update more reliably.
* Lint
* Update .github/CONTRIBUTING.md
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Build MILLA
* The Syndicate have installed tiny fans on their research base.
* The syndicate have figured out how to make plastitanium windows heatproof.
* This is getting out of hand. Now there are two of them.
* Un-break the auto-wrenching that I broke before committing.
* Build MILLA
* Build MILLA
* Massive MILLA refactor, assorted bugfixes.
* Build MILLA
* Explicit typing.
* Less sleeping/blocking.
* Build MILLA
* Yes, yes, this part can sleep.
* Build MILLA
* SSair reporting improvements.
* Build MILLA
* Please do not dock twice and splat yourself.
* Build MILLA
* Pls to not make SM go nuts.
* Build MILLA
* Build MILLA
* Added stricter lower bounds on plasmafire, fixing perpetually-burning SM.
* Build MILLA
* Lint
* Temporary logging, begone.
* Build MILLA
* Prevent hotspot strobing.
* Add in radiate_to_spess behavior.
* Build MILLA
* progress
* Compiling is good.
* bugfixes
* Progress.
* Ruins update.
* This one exists.
* Fixup temporary hotspots to last longer than one tick.
* Add/fix comments.
* Cut the slash.
* Fix test.
* No sleep for you.
* Build MILLA
* Prevent nested MILLA safety from runtiming.
* Build MILLA
* Runtime fix.
* Build MILLA
* Fix canisters not updating icon when gas contents change.
* Build MILLA
* Build MILLA
* Fixed an issue that made mechs very cold on environment air.
* Build MILLA
* oops
* Build MILLA
* Walls can make loud noises again.
* Build MILLA
* Fixes a rare runtime.
* Build MILLA
* Update .github/DOWNLOADING.md
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Review suggestions
* Lint
* Build MILLA
* bound_mixtures now only contains mixtures that can be written
* Build MILLA
* Apply suggestions from code review
Co-authored-by: Matt <116982774+Burzah@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Build MILLA
* Restore the original async behavior of pyro anomalies.
* Build MILLA
* Build MILLA
* Make the safety assertion in /datum/milla_safe safer.
* Build MILLA
---------
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
Co-authored-by: FunnyMan3595 (Charlie Nolan) <funnyman@google.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Co-authored-by: paradisess13[bot] <165046124+paradisess13[bot]@users.noreply.github.com>
Co-authored-by: warriorstar-orion <orion@snowfrost.garden>
Co-authored-by: GDN <Roanrichards1@Gmail.com>