* 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>
* Refactor /mob/unEquip.
* fix things found in testing
* more fixes from testing
* fix removal of hooded suits
* fix flayers inability to deploy swarmprod
* fix changeling blade activation
* unnecessary parens
* pass default unequip args to proc overrides
* fix belts being able to forceMove into full hands
* 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.
* refactor: Rename all non-snake_case types (not procs or vars (yet)).
* completely dynamic update script
* might help to include the data
* update aa's scuffed python
* oh
* set script PR number
* run updatepaths again
* Add other table updates with JSON columns
* bump SQL version
* just fucking end my life
* move JSON data
* 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>
* Helper proc from unbuckling a mob
* Rename to unbuckle
* Minor fixes
* Move buckled up /mob/living
---------
Co-authored-by: Adrer <adrermail@gmail.com>
* Globals work
* Double access works
* All other things
* Revert "All other things"
This reverts commit 6574442eb6.
* More changes that compile and work
* IT WORKS AAAAAA
* Changes even more .len to length()
* Apply suggestions from code review
* Update code/datums/mind.dm
* Update code/__HELPERS/sorts/InsertSort.dm
Co-authored-by: Deniz <66401072+Oyu07@users.noreply.github.com>
* Update code/__HELPERS/sanitize_values.dm
Co-authored-by: Deniz <66401072+Oyu07@users.noreply.github.com>
---------
Co-authored-by: FunnyMan3595 (Charlie Nolan) <funnyman@google.com>
Co-authored-by: Deniz <66401072+Oyu07@users.noreply.github.com>
* CI
* undef
* hooooly crap
* yeah
* false by default
* fixes
* alright, there we go
* oops lmao
* lol, lmao even
* proper programming
* fix
* losin my mind
* oops
* yeah coloring
* WE LOVE MULTIPLE DEFINES (ive lost my sanity)
* undo all of it
* flags
* back
* head/mask
* left
* right
* Cuffs
* other name changes
* ID and PDA
* idk about calling them SLOT_HUD now
* glasses, gloves, and shoes, oh my!
* the rest
* comment
* comments out TEG crate
* buffs turbine power generation curve.
* adds overheat to turbine
* Allows for overheat to dissapate while at low RPM
* Adds bearing heat meter to control console
* Multitool is now required to link turbines
* spacing consistancy
* comment per Sirryan review
* adresses review, replaces reconnect with DC button
* better comments
* properly defines things. debugging is important
* temp must be above 500k for power to be generated
* Adresses latest review
* Define fixes
* TGUI update
* should fix CI. Probably.
* typo fix
* lewcc review
* Deconflicted TGUI
* Heri and Hal reviews
* Deconflict TGUI
* deconflicts TGUI
* Steel review
* Slight formatting
---------
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
* The Great Toolening
* oops all belts (incoming self conflict lul)
* defines shouldnt lie
* mini crowbar TODOs
* beeeeeeeeeg crowbar
* oops it needs a design
* purple kit + vendor fix
* add mini crowbar dmi
* oops forgot this
* i am an idiot sandwhich
* im bad at code
* scratch that, i cant read my VSC
* wrench undo + readd to boxes
* nukies too
* man i cant code
* power tools should logically follow
* formatting
* maybe im free?
* forgot inhands
* Update toolbox.dm
* bluespace belt buff (unironic)
* undo for now
* fixes bluespace/tot belts + adds w_class override
* adds small crowbar to e-toolboxes and tot tools
* power tool fix
* Rnd build path
Co-authored-by: Adrer <erwin@lombok.demon.nl>
* design fix
* merge conflict + small fix
* small name fixes
---------
Co-authored-by: Adrer <erwin@lombok.demon.nl>
* I AM NOT A KING. I AM NOT A GOD. I AM LUNACY.
* THE SCOPE CREEP
* This was done in vi. No langserver. Send help.
* Progress
* Some issues fixed
* The code builds, but the maps dont
* CC builds, I doubt anything else does
* Do this now
* Safety
* The map compiles
* THE MAPPING HELL
* Airlock controllers dont work
* Fixed bombs
* AND THATS FIXED
* Phantom edit
* Restores LL I think
* The mapmerge hooks are actually retarded
* Fixes spawners
* Half working air control
* Picky
* Hyper efficient tank monitor
* Sanity
* Laying the framework
* Improved alert console
* Dont think this is actually done anywhere
* Metering
* ONE HUNDRED AND ~~EIGHTY~~ TWENTY SEVEN
* WE ARE READY FOR BOX TO BUILD
* One map done
* Well that was easy
* Another one
* I think this is done
* I should have removed this
* I would make a russian joke but <current event>
* Delta WIP
* Makes delta work
* Early review
* TM safeguard
* oops
* METAAAAAAAAAAAAAAAAAAAAAAAAA
* Fix#4213
* Trailing
* oh for piss sake
* Shutter fix
* Roundstart ATs can go away
* Review pass 1
* What could go wrong
* BOOM BOOM BOOM
* Not needed
* Fix seed vault
* Oops
* Review changes
* fixes the syndie multitool tech origin, I am god
* someone didn't know how origin_tech worked heh
* I dunno what this is but AA wanted it
* Revert "I dunno what this is but AA wanted it"
This reverts commit 073dc5b8b5.
* maybe this-a-work?
* Revert "maybe this-a-work?"
This reverts commit 6b9b4a43a1.
* Affected Arc, more like Affected Arc
* WILL, THIS, WORK?
* amogus
* I'm a genius
* Warriorstar request