About The Pull Request
Round 2.
image
Adds a new tech to be unlocked within the B.E.P.I.S.'s major techs, called "Specialized Engineering". Within that tech are 2 new items, Heat Resistant Rods, and the Tinker's Gloves, as well as a new minor tech, the Survival Pen.
Heat Resistant Rods:
Have you ever wanted to expand Lavaland Base? Build a lava fortress worthy of your magnificence? Well, now you can! Using Heat Resistant Rods, you can make a catwalk to cross lava tiles, as well as build atop lava, without messy methods like using the RCD!
Tinker's Gloves:
This just in engineers, insulated gloves have new competition in town! The Tinker's gloves are complicated, overdesigned gloves that, while not very shockproof, allow for faster wall girder construction. No longer will you need to die of old age walling off an area when you're out of RCD ammo! Warning: This product contains no likeness to clockwork gauntlets used by the extinct cult of Rat'Var, and any such similarity is by no means intentional.
Survival Pen:
Have you ever been stuck on lavaland, trapped by your survival pod with just a few chairs, some titanium walls, and walls of ash closing in on you? Well THANK GOD you have your Rockbreaker brand Survival Pen! Allows for basic mining operations, and is portable like a standard pen!
BUT WAIT!
A watcher blocks your path. Thankfully, your expensive, diamond encrusted pen isn't just good for being the world's slowest pickaxe, it's ALSO coated in the one thing watchers crave: DIAMONDS. Toss the pen to draw the watcher's attention elsewhere.
Why It's Good For The Game
Starts to fill our B.E.P.I.S. Major Reward Techs, as intended, and fills a niche that doesn't get much play nowadays: Building on Lavaland. This was something I've had in the back of my mind since we did the first tests of the Disaster gamemode a few months ago, so each item here was made with the intention of improving the mining base should the station become un-livable. Lava-Proof Rods are beneficial in that you'll be able to cross and build over lava by the mid-end of the shift. RCDs still work as usual, but this way you won't have to worry about getting specialized engineering equipment as a member of cargo or science. The tinker's gloves are basically a variant of the nitrile gloves, but they grant a speed bonus to adding plating to metal girders, so that some kind of functional alternative to giving every engineer insulated gloves.
Survival Pens are quite honestly very niche, but getting dumb pens with extra functionality is a tradition of trade shows all over the world, so it feels right at home as a minor reward.
Also, does a tiny change to the doe sprites, just to look a little bit less old.
Changelog
cl
add: A new Technology has been implemented as a major reward in the B.E.P.I.S., Specialized Engineering, to appeal to engineering utility and new construction horizons.
tweak: Watchers will now actively consume diamond ore left lying around, alongside the new survival pens.
/cl
* update_icon() improvements
Fixes some update_icon() calls to properly call parent and use update_overlays() and update_icon_state().
The rest of obj/item fuck it
* Suggested fixes, also passes the linter
* I always forget . = ..() is faster than return ..() FOR SOME FUCKING REASON
* Actually this is better
* Signilzes datum/action to update its icon when its connected item does.
* No more double mats
* this isn't even a stack. I have been bambozeeled.
* Turns out the src. was important
* Alright this should work better.
* Alright this does work.
removes materials list from items, uses custom_materials instead. This might introduce some bugs so we should testmerge this for a while (and Ill test stuff locally as much as I can)
this also adds material crafting to sheets. Test case being chairs. In the future we can add stuff like tables, walls, doors etc.
also applies materials to everything, with fixes, which can close#46299
Ports carpets from TauCetiStation
Original PR: TauCetiStation/TauCetiClassic#2989
Adds tables to match the carpets
Carpets Good. Tables Good.
Changelog
cl
imageadd: 8 new carpets and fancy tables
add: exotic carpet crate
/cl
About The Pull Request
Completely removes item_color and the clusterfuck of bad programming it caused.
In places where item_color was used for entirely unique purposes it was split off and renamed to a new var on that typepath only, or refactored so it wasn't needed
In places where item_color was used as a dye color, it was converted to the new dye_color var
In places where item_color was used as the worn overlay it was removed and instead now icon_state is always used as the clothing overlay.
A new mob_overlay_icon var was added for manually setting where the mob overlay icon path is for specific items.
Moved some mob overlay files relating to clothing to their own directory as well for organization purposes.
Totally refactors washing machines, instead of the horrible abortion that was iterating through the typepath it now uses a registry of dye results.
Some bonus functionality to come out of this:
the washing machine now supports arbitrary dye colors.
Why It's Good For The Game
It's been 4 years since the "this should be deprecated soonish" comment was added, and this var is a shitpile of confusion if you just trace the usage of it.
Changelog
cl
add: Washing machines now support arbitrary dye color
add: Washing machines now dye nearly every item.
refactor: lots of backend changes to clothing overlays, report any issues
/cl
cl
tweak: stacks no longer give you a pop up window when you alt click on one on the floor
/cl
its rather obnoxious when you try to grab something from a tile (example after an explosion) which has some giant sprites of rod/tiles/metal and you want toalt click to see the tile content but instead you have to pixel snipe else you get a pop up window
99% of the time you want to grab part of a stack you do it in hand or in the bag anyway which have no effects from this pr
* 1/4 done? maybe?
* more
* stuff
* incremental stuff
* stuff
* stuff & things
* mostly done but not yet
* stuffing
* stuffing 2: electric boogaloo
* Git Commit and the Kingdom of the Crystal Skull
* make it actually compile
* found more stuff
* fixes
* fix AI laws appearing out of order
* fix windows
* should be the remaining stuff
* this time for real
* i guess it should compile too
* fix sechuds
* Adds cryokinesis and renames the cold resistence file to space adaptation
* adds cryokinesis
* fixes icon conflict
is there actually a proper way to fix them thats not copying master and reimplimenting your own sprites?
* fixes a typo and lowers instability of cryokines by 5
* Apply suggestions from code review
Co-Authored-By: Time-Green <timkoster1@hotmail.com>
* maybe reverts line ending?
* unfucks flags?
* probably unfucks line endings
i swear to fucking god why does it even do this. i never even touched the file and reverting it to master doesnt do anything. fuck you git
cl coiax
add: Microwaves have a single wire accessible when open, the activation wire.
When cut, the microwave will no longer function, when pulsed, the microwave
will turn on.
add: Stabilized dark purple extracts now cook items in your hands, rather than dropping
the cooked item on the floor.
/cl
Previously microwaves just worked on their contents, now they keep a subset of contents called ingredients, because otherwise it would explode whenever you put a signaler inside.
Someone asked me to do it. It seemed like a neat idea. God knows
what horrible things people will do with this.
* Passes thrownthing to hitby
* Items now also pass thrownthing
* No longer uses default arguments
Also fixes bananium shield
* Adds more arguments to hitby calls
* Standardises throw_impact
* Clears up some loose ends
* Adds back wacky comment
* Reinstates can_push=FALSE on bananium shield
* Can build on top of windows
-Players can now build things while standing on the same tile as a directional window.
* Changed the check for fulltile
-This actually covers all fulltile windows
* No more stacking windows
-Full tiles can no longer be built on top of directional windows
-Directional windows can still be built on the same tile as long as they dont face the same direction
* Now contains 50% less IF!!
-Put both if's into one
* Still pretty fucky
-If the dir of the constructed object has var fulltile set to TRUE then FULLTILE_WINDOW_DIR will be passed to the method valid_window_location else the user's dir is passed.
* just a space
* Now gets initial dir of object being built and passes that to valid_window_location
* Puts back required time for the emitter and field_generator and also removes a certain issue that certain people were causing
* Couple of things I missed
* I noticed the error with regards to atom and changed to obj like I was trying to originally. Also its fine to build on tables that wasnt the issue with this specific aspect.
* Edge windows. We need those.
* optimised the checks to be behind a if check for when you are actually needing to make something for the floor...
* Corrects a input proc by request
* Working is not my strong suit.
* small changes
* Adds a use_tool helper and changes some tools to use it
* Ports most tool operations to use_tool
* Converts more tool operations to use_tool and tool_act
* Changes some things to default_unfasten_wrench
* Improves tool_behavior support in mech construction
* Code review memes
* Fixes all instant use_tool calls failing
* Code improvements
* merge fixes
* Can disable auto-merge
New argument which lets you stop stacks from automatically merging when picking them up
* Fix 0 stacks
* Updated simple_animal/put_in_hands()
I had some time free, and noticed how awful the reagent grinder code was - it used huge static lists containing types and their associated reagents from grinding.
This is now split into two new vars on /obj/item - var/list/grind_results and var/list/juice_results, as well as two new helper procs, on_grind() and on_juice() to allow those to change based on conditions like plant potency. Such checks and the like have been moved to that. If any of these procs return -1, the operation is canceled.
I also fixed some of the recipes that didn't work. The reagent IDs for them didn't exist, leading me to believe that they weren't tested. I corrected that! (I've tested every single recipe in this PR, with the exception of a few juicing-related ones.)
* ports baycode stack_recipe_list
comfy and office chairs use stack recipe lists
* removed some src. and made list_recipes() into interact()
* /datum/browser for stack menus
* revert unnecessary edit
* Revert "all this wrapping and it's not even christmas (#33035)"
This reverts commit faaf151580.
* Revert "fuck me for forgetting to graph this one"
This reverts commit 45d7acea2f.
* Revert "defines math"
This reverts commit 2817a1737b.