* testing makes me feel good
* invalid lists
* get rid of those boards
* show expected mats
* oop
* error
* wip techweb porting
* more techweb entries
* ported too
* disable those for now
* okay nevermind i guess
* already exists
* assemblies
* moar
* welding helmet
* many entries
* lol tg
* fix test
* again
* fixagain
* more moved
* update techweb test
* catch that too
* screeee
* more fixes
* missing announcement
* orphaned sleevecard
* some more fixing
* test
* more
* oops
* glasses
* illegal icons
* non starting
* it's starting
* messed up
* cleanup
* more generic stuff
* morrrreee
* the plastic set
* oops
* correct value
* barbed wires
* more cleaning
* many more
* gone
* cleanup
* no longer
* do not allow duped designs
* it's own node
* proper order no dupes
* last of the broken nodes
* fix bad path
* cleanup
* more test more limits
* gone
* almost done
* these are gone
* syringe gun
* bioregenerator design
* all moved
* organized and webbed
* more fixes
* oops
* cleaning up
* organization
* clean up
* organize
* organized
* didn't save
* wrong mat
* adds many missing ammo types
* svd doesn't exist
* 10mm pistol added
* magazines not casings
* these are pistols
* this is used by like, one weapon
* m1 is ancient
* this is hunting
* extremely botched untested lathe
* disk junk
* rough foundations
* slowly converting
* slowly building this
* local materials
* almost
* big reorganization
* more cleanup
* more cleaning
* lathe stuff
* small fixes
* oops
* many fixes
* mat fix
* more fixes
* actually isolate the hacked designs
* protolathe hacking
* imprinter hacking
* missing ammos
* sheet printing for autolathe
* fixs
* again
* fixed test
* test test
* fix
* fix
* WHY
* fix it...
* here we go
* material print
* on turf
* body disk
* consistant name
* Many weapons to hacked lathe
* missing node
* wrong section
* fixes
* this list should be unified
* ammo boxes
* don't do single shells anymore
* wat
* specifics
* snowflake
* not needed
* already available
* pickaxe too
* tweak
* removed unneeded node
* missing surgery items
* Apply suggestion from @Cameron-The-Raven
* Adds RMS
* typo
* illegal needs hacked
* disabled material weapons
* circuit testing
* STRING TEST
* test
* fixing some things
* huh?
* hidden circuits
* some flakey boards
* grammar
* fixes
* more hidden
* wrong board
* security cams
* alert consoles
* spaceheater is simple enough to not have one
* pcus
* cargo vendors
* tcomms stuff
* solar tracker circuit
* artifact stuff
* SM stuff
* illegal machines
* med machines
* no longer needed
* more stuff
* these are not standard
* moreeee
* doppler and more
* organized
* finishing
* oop
* use the define
* inheret
* dopper fixes
* space heater
* doing some organization
* explain the var
* some tweaks
* wrong one
* fixed test
* material test too
* simple roto gens
* use the define
* emergency power node
* tgui fixes for icons
* not needed
* color blended material designs
* icons for large research
* oops
* unshit that
* use stack here
* center math
* .
* .
* .
* .
* .
* unifi
* fix these
* NO COPYPASTA
* ILLEEGGALLL
* mandate descriptions
* agony
* actually lets do this
* use macros
* description
* desc
* desc
* desc
* desc
* desc
* desc
* gps desc
* telecomms component desc
---------
Co-authored-by: Cameron Lennox <killer65311@gmail.com>
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
* some more new to init
* rigs
* rigs
* intellisense moment
* telcoms and landmarks
* fix that as well
* some more minor things
* re add missing message
* fix trash eating...
- Unified pipe *unwrenching* by creating a standard proc along with the `construction_type` var.
- Eliminated the pipe fitting name & icon_state lookup tables by adding `pipe_state` var on atmos machinery and referencing that.
- Each pipe which can be made from a fitting object should override `pipe_state` with the icon state to be used on the pipe fitting object.
- Eliminated the giant switch statement of doom in pipe construction by delegating that work to `on_construction` proc.
- To make this work, every pipe must implement `get_neighbor_nodes_for_init` which returns a list of nodes which should be re-initialized on that pipe's construction.
- Combined the SCRUBBERS, SUPPLY and REGULAR pipe fitting classes together by storing the `piping_layer` variable and using the `setPipingLayer` procs
- Standardized the code for searching for node neighbors into the `can_be_node` proc.
- This proc is also improved in that is a mutual check, `check_connectable` is called on BOTH objects, so they have to mutually agree to connect as nodes. Eliminates lots of special edge case logic.
- Updated all the `amos_init` procs to use `can_be_node`. In the most common cases, even that boilerplate code is consolidated into the `STANDARD_ATMOS_CHOOSE_NODE` macro.
- Implemented `pipe_flags` which lets pipes declare (or override) certain requirements.
- Adds a "pipe_recipe" datum to help out things that construct pipes. By taking it out of the dispenser, we open the road for multiple dispenser types. No, no RPD yet. Soon.
- Enhances the pipe dispenser to operate on pipe recipe datums instead of hard coded lists of pipes it can construct. These datums are also (partially) initialized from the pipe machine types themselves, reducing having to define stuff in multiple places.
- Switched pipe dispenser UI to use browse(). Not a NanoUI, but makes it a bit prettier with low effort.
- Changed pipe dispenser to use a button selector to switch between Regular/Scrubbers/Supply instead of having separate list items.
- Added icon states to HE pipes to support the "connected on neither side" state.
* Remove remaining hard del()'s in our code.
* Replace deleted() and gcDestroyed with QDELETED macro.
* Fix some strange calls directly to Del() (capital D)
* Make Destroy() return qdel hints.
* Make a few of the Destroy()'s more comprehensive in cleaning up references.
* In edited Destroy() procs, converted to use qdel_null and qdel_null_list macros when possible for pretty code.
* Removed unused variable `sleevecard`
* This device converts CO2 to O2 using power and "algae". The extra carbon is a byproduct in the form of "graphite"
* This is intended for virgo3b, which has no oxygen in its atmosphere but enough CO2 for us to just extract it.