* Generalize breakability to obj. Standardize health and maxHealth for objs. Make flashlights, cameras, beakers, and wall-mounted lanterns breakable.
* Moved breakable.dm.
* Fix metaclub beepsky's maxhealth to maxHealth.
* Attempted to fix named argument error.
* Attempt to fix take_damage() derived proc named argument error.
* Attempt to fixed named argument error.
* Fragments can be obj not just item.
* Remove debug.
* .
* Fixed conflicting proc definitions.
* Attempt to fix runtime.
* Partly dissolve existing implementations of object health into general framework.
* Declare parent args in take_damage() proc overrides.
* Typo fix.
* Comment change.
* Change destroy to qdel.
* Update breakable.dm
Check for null teeth.
* Teeth check.
* .
* Gum check.
* Bugfixes and general object kicking.
* .
* fix kicking
* .
* .
* Kicking small items around.
* Throwing something at an object to break the latter.
* Fix storage inconsistencies.
* Nicer kick damage calculation.
* You don't need teeth to bite properly with a beak.
* Items can take damage landing in disposals.
* Undo that.. there's bug potential.
* Generalize breakability to obj. Standardize health and maxHealth for objs. Make flashlights, cameras, beakers, and wall-mounted lanterns breakable.
* Moved breakable.dm.
* Fix metaclub beepsky's maxhealth to maxHealth.
* Attempted to fix named argument error.
* Attempt to fix take_damage() derived proc named argument error.
* Attempt to fixed named argument error.
* Fragments can be obj not just item.
* Remove debug.
* .
* Fixed conflicting proc definitions.
* Attempt to fix runtime.
* Partly dissolve existing implementations of object health into general framework.
* Declare parent args in take_damage() proc overrides.
* Typo fix.
* Comment change.
* Change destroy to qdel.
* Update breakable.dm
Check for null teeth.
* Teeth check.
* .
* Gum check.
* Most plastic items are now recyclable, under the label "miscellaneous". Amounts to be balanced, currently same as recipe.
* Mineral tiles can be recycled
* Gold teeth and collection plates can be recycled
* Recycling sorter will now empty out crates and closets before sorting, if possible
* New recycling material category for the sorter, plastic. Many items updated to be considered such.
* derp recycling sorter fixes
* derp what was the point in creating a category otherwise
* just in case
* dorf recycling
* Smithing recycling? It's been a while and I don't remember what I was up to.
* Fix#28612 (You cannot recycle coins into their base metal)
* Blacksmithing recycling nearly done now,
Just some weirdness with tower shields left, plasteel component doesn't transfer materials correctly.
* All sheets with materials defined should actually have a .materials now, so I can grab an alloy sheet and use it's materials to decide what's being transferred instead of trying to guess of it's material type/hoping it has a material type at all. Fixes tower shields not having plasma from plasteel.
There's still a TODO in how materials are transferred to blacksmithing products, and a bug that predates my changes, but I've no idea how to go about either and this whole PR feels unatomic enough as it already is. I just wanted to be able to recycle plastic bags man, not overhaul crafting.
* Sorter will now consider crates it can't open as non-recyclable, since the recycler simply can't deal with those and it wouldn't make sense to create another way to unlock locked crates anyway. No more clogged recycling because of a closed crate.
* Update boomerang materials
Co-authored-by: Jellyveggie <39123109+Jellyveggie@users.noreply.github.com>
* Standardises opposite_dirs and reverse_direction
* Moves this here, makes more sense in this file
* Compile
* Compile test for this
* Fix
* Cuts out now useless proc
* Cuts this down too
* Additional helper
* Better as a define
* Using this macro in practice
Co-authored-by: kanef <kanef9x@protonmail.com>
* fix map
* Fixing bad syntax
* Maybe this will work
* Travis wanted me to remove this
* Unticking attempt
* Unticking attempt 2
* Removing all useless broken zshadow stuff
* Maybe now?
* Oh weird
* Adding up/down pipe sprites
* Adding darkness overlay, attempt #1
* Second attempt, now works
* Turf tweaks, now much less visually glitchy, plus walls now make blank floors above them for less weirdness
* Fix, plus keeps this floor in place
* Really bad fix that stops space looking weird
* Now everything should work normally, except lighting overlays
* Updates the map
* Consistency
* Adds new fall damage sound
* Typo
* Jetpack fun
* Better
* Less bad brackets and parantheses pain
* OHhh
* These fly too, brooms next whenever I figure those out
* Finishing pipe icons
* Making it easier to build catwalks and stuff on turfs without clicking the stuff below by mistake
* Bringing back zshadow, but with no icon
* Oh it's this issue again
* Final fix, better attempt at image relay
* Now for it looking nice, vis_contents are bad here too
* Attempt at refactoring this, light overlays are now finally underneath players, at the cost of blocking everything else, but exxion wanted to testmerge it
* Map change
* Changing it back, test server stays on box anyways
* Removing non-working solution
* Removes broken lighting overlays
* Finally fixes up floor generation above walls
* Adding bones of a 3d implementation of spiral block for git push origin multizfungit push origin multiz
* More, almost done
* Finalised
* Cube option
* Logic fix
* Syntax
* Attempting to make item fall on arc
* Compile
* Now this is no longer needed
* BRACE FOR ENABLING MULTI-Z ZAS
* Attempt at fixing glass floor tiles
* Splitting off explosion proc into destroy part, bones of calling it recursively and smaller on above and below layers, implementation of multi-z explosion suggested by DeityLink
* Missing var
* Removing unused var and fixes consistency
* Fixing logic and syntax etc, still needs testing before uncomment
* Uncommenting, some fixes too
* Makes this a seperate function otherwise it won't call at all, MULTI Z EXPLOSIONS NOW CONFIRMED WORKING
* Client proc to test this
* Adds to list
* Typo not drawing red on main layer
* Here too
* Adding debug logs for clarity
* Better
* Even better
* Experimental multi-Z EMP support, cylindrical effect for now
* Better distance falloff
* Sound/visual support on other layers?
* Z cap for EMP sound
* Booms too
* Adds back accidentally deleted file
* Muuuch more sane check
* Attempt at connecting heard speech between multi Z
* Cleaner
* Missing bracket
* Removing zshadow mobs entirely again, no need for them whatsoever
* Multi-z visible messages
* Emotes
* Fix?
* Wew
* K
* Much nicer function
* I forget about this define
* Ohhhh
* Comma fix
* Aaa
* This might fix
* Removing visible message one for now
* Trying this solution
* Typo
* RIP location, hope this won't break anything
* Actually location gets to come back, fix is here
* I give up, the tests are clearly what's borken
* Let's see what this does with those nullspaces test items (yes really)
* Indent fix, plus nice comments
* MULTI-Z SOUND???
* Woops
* Jetpack and etc trails over open space now!
* No macros, this is why we can't have nice things
* Watch how coder stops potion of levitation, broom and fairy wing wielders from falling with ONE NEAT TRICK
* Gotta make leapers not fall somehow
* Bad oversight
* Fully allows going down stairs with weird border objects
* Flying now works properly for humans on open space
* Now, fall instantly on stop
* Oversight
* Oh this function
* New helper functions
* Oversight again
* Replacing lines with abs(), multi z singulo pull attempt
* Quick supermatter fix
* Don't cut overlays
* Move down here
* Typo
* Now actually works, implementation could be better though
* Additional helper function for z distances because BYOND hates comparing z
* Reimplementing for sound
* abs() to keep positive for max comparisons in line distances
* Keeping gas overlays outside of multi-z viewing to stop some glitches
* That didn't work
* Testing removal from float planes for stuff that never needed to be on it
* Fixes gas overlays showing up all wrong in multi Z ZAS
* Gutting this controller, no longer needed period, system works fine without it
* Now glass floors look mostly perfect on open spaces
* Var name change for fun stuff later
* Knew I'd miss one
* Gravity based fall delay?
* Settle with using sleep() for now, what could go wrong?
* Lagged the game horribly, so everything
* Here all along, huh
* Just remove it for now, it kinda works but not ideally at all
* Thank you TK code for giving me a nice and working way to do this
* Comments, oversights
* No wait it was right the first time
* Now for the damage multiplier
* Knockdown too
* Nicer format
* This should still be min, plus now have a debug log and shifted around logic
* Now for mech stuff
* Clamping knockdown
* Definition fix
* Dusting this off, hopeful fix to things not falling
* Probably don't need this, I forget
* Hahaha nope, this did nothing
* Finally, a way to make fall() call in mid air after a delay without horrible lag
* Tunes pipe layering if on same zlevel, getting there
* Now fully tuned
* Adding bones for pipe item support
* Test
* z_up pipe item icon state
* z_up and z_down pipe item icon state
* Adding these to pipe dispensers
* Typo
* RCDs too
* Moved here
* Moved back
* Makes space work nicer
* Oh and here
* Fall updates
* Don't need this
* Oversights everywhere
* Fixes
* More
* More, and new stuff
* Even more
* Dampening these a bit
* So many, so moved to new file
* Forgot this
* Refactor
* Forgot to actually use
* Indentation issues
* Works better like this
* Refactors into nicer proc
* One oversight
* Stair frames, to construct into stairs
* Stack recipe for em
* Cutting useless stuff
* Fixes
* Last fixes
* Stops uncrossing at non existant aboves
* Better logic
* Better logic
* Fix
* Fixes nullspace checking runtime
* Removes redundant check on stairs
* Replaces CanPass with Cross, functionality is same and definition is duplicate of it
* Missed one
* Darkening and falling tweaks
* Better call for gravity
* Oversight
* Stops falling in space, zero-g open space movement fixes etc
* Consistency
* Fixes slipping on open spaces with catwalks (lattices make sense I guess) and stairs not being snapped down to
* Var name fix
* Much nicer system with no recursive function or last_fall variable use
* Adds buildFrom()s so z-pipes can actually be fitted, stops spam of fall() calls on enter with lock for nicer gravity
* Makes z distances pay attention to multi z support
* Maybe this is better
* Left this in
* Adding visible and hidden variants for mapping
* Counts glass floors as open space for the purpose of open space checks
* Bracket fix
* Makes it a macro for easy viewing
* Space looks much better like this honestly
* Makes schematics actually show up on RPD in multi-z
* Making these tied to WORLD_ICON_SIZE
* Changes for someone to test
* Now the fix actually works
* Removes forceMove(), nicer solution
* Giving stairs all their dirs
* Fixing stair position problem and other things
* Stair deconstruction
* Removing redundant enter() check to move()
* Some updates as requested
* .dme and map/file fixes
* .dme and map/file fixes
* Updating can_falls
* Ladder climb fix
* Some port notes updates
* Docs itself
* Removing unused edge_type var
* Removing landmark object, converts it code side
* Removing unsimmed walls doing it, not necessary
* Updated descs
* Fixing observer non-standards in file
* More file cleanup
* Jetpacks allow z-travelling
* Now they really do
* Robots too
* Updating docs
* Code cleanup
* Catch one
* Indent fix
* Not sure what that even is
* Catching these
* Applying some old fixes
* Removing unused file
* Moving nodes back to original places, or an attempt to
* Here too
* Removing unused file
* Moving these back too
* Some fixes for now
* Some more
* Even more, almost done
* Better pipe icons
* More icons
* Disposal pipe construction
* Mixup
* List optimisation, new fixes
Co-authored-by: Damian <damian@autistici.org>
Co-authored-by: kanef <kanef9x@protonmail.com>
* astrrrr
* raaaaal
* jjj
* ooouuuuu
* rnneeeyyyyy
* astral journey
* yenruoj lartsa
* geez thank god I am such a rigorous QA Tester am I right?
* oh yeah, this takes care of that
* gne gne gne user
* scrapped
* there
* spawnless
* removing the extra linebreaks
* Loading AME jars with conveyors
* And rad collectors
* Fix
* Wrong name
* And now P.A.C.M.A.N.s
* And canisters
* And disposal bins
* And R-UST fuel injectors
* And R-UST fuel assembly ports
* Path fix
* Fix 2
* Typo
* Oh they're here too
* Supermatters too, hopefully fixes bugs
* Makes admin logs nicer
* Maybe like this
* Or this
Co-authored-by: kanef <kanef9x@protonmail.com>
* Consolidates sanity for loading people into medbay machinery
* Adds conveyor_act()
* Can multitool set output tile for Cryo and Cloner
* Conveyorbay only works on lying subjects
* Cryobelt accepts non-lying targets if they have clone damage
* powerhouse.ogg
* Create powerhouse.ogg
* Initial work on tool sounds
* Crowbars
* playtoolsound()
* aaaaaaaaaaaaaaaaaaaa
* HERE WE GO AGAIN
* Wrench
* Screwdriver.ogg REDUX, Cuffs
* drilling tools toolspeed is now a multiplier too
* Wirecutter
* It should now make the passing holder assume the 'other' holder destination if it does not have one for itself, preventing items from being trashed because some fatass clogged the pipe _after_ the cargo office.
* Flipped the operation since it's dependent on the src going to disposals.