I looked up the c4 code the other day to learn about how x-4 was directional now and found out the code is full of variables that were mostly "M" or "AM" or "UM" that made reading it real hard so I made my own vars to make it a little better looking
About The Pull Request
Ports smooth tiles from TGMC and textured tiles(with color tweaks) from Skyrat, TauCeti, and Eris. I was sent the sprites on discord and told it was from Skyrat, but the PR credits TauCeti AND Eris so im just going to credit all 3 thanks other servers :) Shoutout to @Imaginos16 for all the help you rock.
Details: Resprites the grey, dark, and white tiles. Adds textured version of grey, dark, and white tiles with variations. Adds smooth tiles. New tiles added to reskinning with rotational support. Sprite changes to yellowsiding, plastic, materialfloor, plaque, reacharge_floor, sepia, chapel, and pinkblack to match the new base tiles. Small consistency adjustments on wood_tile and its broken states. Removes 2 unused dirt floor tiles. Reorganized icons\turf\floors.dmi. Sprite adjustments to various icons in icons\obj\tiles.dmi to match the updated sprites. Consistency resprites for glass_wire and tile_e. Small decal tweaks to fit the new base tiles.
dreamseeker_z7J61czzMG
Normal, Dark, White, Smooth + textured and size variations.
Some areas on Meta
Example of texture tile usage. NO mapping changes in this PR, thats for @EOBGames to do ;)
Why It's Good For The Game
60 shades of grey yee yee ass old floor sprite days are over.
Changelog
🆑 Twaticus, Imaginos16
imageadd: Resprites (almost) all base floor tiles.
imageadd: Ports smooth tiles & textured versions of grey, black, and white tiles.
imageadd: Dance floor item icons are no longer massive.
/🆑
This adds a rare-ish negative station trait that gives Pun Pun a weapon, fills their heart with anger, and bloodies up the location they spawn in. (Yes the weapon is even more rarely a gun)
A request for one of the weapons to be a sign meant that a random sign type was added here as well.
Redoes how geese handle eating shit, it was fucking stupid and caused harddels, and while this method is technically slower in the best case, it's a fucking goose
Fixes action related harddels, I hate how they work but at least this way they won't hold refs.
Fixes the hierophont causing its beacon to harddel
Removes the M variable from megafauna actions, it was used like a typed owner and caused harddels, so I burned it
Fixes target and targets_from harddels, replaces all setters of target with LoseTarget and GiveTarget, which should help maintain behavior. I'm not sure if this breaks anything, but if it does we should fix the assumptions that code makes instead of reverting this change
Fixes more area_senstive_contents related harddels, we need to allow the mob to move before clearing out its list.
Fixes marked object harddels (I'm coming for you admin team)
Fixes a language based human harddel
Fixes managed overlay related harddels (This was just emissive blockers, but I think this is a good safety net to have. If we clear the overlay list we should clear this one as well)
Fixes bot core harddels, I hate the fact that this exists but it has no reason to know who its owner is
Adds a walk(src, 0) to simple_animal destroy, it's the best bang for the buck in terms of stopping spurious harddels. Walk related harddels aren't that expensive in the first place, since byond does the same thing I'm doing here, but this makes finding mob harddels easier, so let's go with it
I fixed another source of part harddels, I hate fullupgrade so much
Fixes all the sound loop harddels
Everything that called turf.assume_air and turf.remove_air was already updating turfs, and all that not tying
the two together did was add more boiler plate, and break things when people forgot about it.
This shouldn't add any overhead outside of hotspots, but I think that's trivial
* FINALLY IT IS DONE FUCK
* tip of the round into ooc
* adds cyopod chat messages to the info chat filter
* last one I promise probably, mob spawner messages to info filter
* holoparasite, round will start in x and keybinding conflict to respective filters
* removed motd from constants, made it infoplain surrounded instead
* changed info to infoplain
Aims to speed up the replacement of broken disposal pipes by making it less demanding on the player. Hopefully this will lead to it happening more often. Does this by:
Allowing the RPD to destroy broken disposal pipes
Automatically destroying broken disposal pipes before trying to secure new ones of the same direction over the top of them
Automatically crowbarring floor tiles while trying to secure disposal pipes over the top of them if a crowbar is held in the offhand
Speeds up the rate at which broken disposal pipes can be replaced.
At the moment to replace a disposal pipe you have to weld each end of the broken pipe. It requires fuel, activation of eye protection and three seconds per end. This becomes time consuming when you have a lot of pipes to replace. It only serves to further disincentivise repair of everything but small breaches.
This PR lessens the requirement to only an RPD and half a second per end. You can also just place a pipe of the same direction over a broken pipe and the ends will be deleted for you. If you place a disposal pipe over a broken pipe that's above a floor tile while holding a crowbar, the floor tile will be removed so the RPD can secure the pipe. All that's left is welding the pipe and replacing the floor tile.
Hopefully this will lead to more people replacing disposals. There's still undesirable difficulty in finding out where pipes went and which ones were used (if you can't figure it out the only solution is making do or looking at the .dmm -- usually it just doesn't get fixed) but that's out of scope for this pull request. Replacing disposal pipes is just one of several jobs involved in repairing hull breaches that players don't want to do. Hopefully this eases the tedium of replacing obvious pipes.
extends the tile reskinning functionality to iron, bronze, plastitanium, carpet and pod floors
makes a bit of tile code better
moves some paths around, like elevator shafts being plating instead of floor
adds rotating as a tile reskinning function available on chapel or side floors for example
lets players customize any rooms they would want much more than it is possible now, allowing for more creativity
This PR fixes issues with the chameleon jumpsuit and sneakers. In addition to that, it properly defines setting for GAGS worn and inhand icons instead of having them be in Initialize() for specific item types. Names for the prisoner jumpsuits and wheelys have also been reverted to how they were before the GAGS PR.
* Makes all uses of atmos_senstive pass in mapload as context
* Converts atmos senstive to connect_loc, does some general cleanup to the element, and makes it check the state of the tile the thing is on assuming creation didn't happen as a part of map loading
* Updates connect loc to match the new arg list
maxymax13, /vg/station, Citadel Station
I really wanted #58190 (A port of cit tiles, fucking ahewhads) but then nobody gave it mergies so i've redone it except not stale, not merge conflict'd and not using stack crafting instead of tile floofing!
I fully replaced the fugly diagonal one with my own nicer parquet one, adjusted red carpet to be less noisy, and made a damaged state.
Much more customization for wood flooring enjoyers, and it's obtainable ingame, in an out-of-the-way method! Think of the bar remodels you could do with this and some cans of paint! Now all we need is to make the vinyl siding and wood panel siding decals place-able...
3 new variations for wooden tiles are available (large, parquet, and tiled), the same way you color titanium tiles! Remember, use a screwdriver and not a crowbar!
A new red planetary pattern design is available for arcade carpet!
* Makes tanks only process when needed, rather then doing it constantly
* Makes portable atmos machines only process when needed, makes adding and removing atmos machinery cheaper, makes the tank processing logic actually work properly
* Makes pipelines only react() when their mix changes, fixes a ton of misuses of update_parents that were causing about 10ms of load for atmos just from reconcile_air()
* Adds in a new reaction framework alongside the old one for profiling related reasons
* whoops
* Cleanup, removes the react profiling code, I've chosen a direction to go here
* Cleans up some code, adds comments describing how to interact with portable atmos machines/tanks and their
mixes, adds a blurb to Atmospherics.md about the topic as a whole, leaves a line of bread for someone to follow
if I get hit by a bus in 2 days (Knock on wood)
* Removes priority from reactions, moves priority groups to the defines file
* whoops
* Converts air_contents to _air_contents, replaces all the out of file things that used it with return_air()
* Replaces the canister air contents uses, converts it back to air_contents, I decided I didn't like the _
* Fixes
* IDs now reset their account when imprinted
ID's can now properly be reused without giving people random economy accounts as the imprinting on the PDA painter now sets the ID's account back to null
Does what it says on the tin! I've noticed that the Rapid Service Fabricator and the science/chemistry plumbing devices had no in-hand sprites, and decided "screw it" and made some for them!
New sprites, especially for things that exist but have no in-hands, is awesome!
Adds a new obj_flag that prevents building on objects that shouldn't be built on.
Adds it to the stasis bed and the sleeper, as well as some machines that become undense when the doors opens (nanite chambers, DNA scanners, suit storage unit, and gulag teleporter).
If I forgot any feel free to lmk.
Fixes#58528 (Operating table + stasis bed memes)
Some objects/machines that aren't dense (or become undense in certain states) shouldn't be able to be built upon, so this flag allows for specifying that you can't build on it.
I realized while playing cook the other day that we did not have risotto as a recipe, I was very disappointed to see we did not have it.
Risotto is good, therefore it is good for the game. Our rice recipes are quite dull so hopefully, this will be a neat new thing to do with it.
Sprites borrowed/stolen from Aurora's Synnono Aurorastation/Aurora.3#2567
There was a math error in mail's implementation in the economy SS when I switched it over to delta_time, so that basically the time-based define MAX_MAIL_PER_MINUTE was being multiplied by delta_time. Just one problem, delta_time was being considered in deciseconds as usual, but my chimp brain failed to recognize that, meaning that the maximum amount of mail arriving on station was around 100x more than expected.
This corrects the delta_time variable to think in terms of MINUTE time defines, not just a static decimal multipliers.
Junk mail is funny and good, but you'll never read any of these if you get 200+ letters every shift just like it.
Additionally, adds some fluff text to the examine_more of letters, to let players know that you can use destination taggers to sne and distribute letters once they arrive.
QOL tweak is just to make cargo players and in-game purists lives easier.
* Adds explosion SFX to the blastcannon and explosive compressor
- Extracts the explosion SFX and screenshake proc from the SSexplosions explosion handling proc and lets the explosive compressor and blastcannon use it.
* Miscellaneous changes
- Adds defines for the internal explosion arglist keys
- Reverses the values of the explosion severity defines
- Changes almost everything that uses `/proc/explosion` to use named arguments
- Removes a whole bunch of argname = 0 in explosion calls.
* Removes named callback arguments.
* Changes the explosion signals to just use the arguments list
Adds a simple framework to let objects respond to explosions occurring inside of them.
Changes a whole bunch of explosions to use the object being exploded as the origin of the explosion rather than the turf the object is on.
Makes the explosive compressor and blastcannon actually use the TTVs they are given.
Adds support for things responding to internal explosions.
Less snowflake code for the explosive compressor and blastcannon calculating bomb range.*
Less confusing explosion severity defines.
Less opaque explosion arguments
*does not guarantee that the solution to letting them actually use the TTV is any less snowflake.
* Organizing
Moves the following:
Enchiladas, from MEAT, to MEXICAN
Meat Bun, from PASTRIES, to MEAT
Hotdog, from PASTRIES, to SANDWICHES
Melon Bowl, from MISC, to SALADS
Oatmeal, from SALAD, to SOUPS (And changes the object path to match.)
Does the traitorous task of adding the GRAIN tag to Enchiladas. May god have mercy on my soul.
* Adds a trailing new line
Co-authored-by: Winter Flare <7543955+Owai-Seek@users.noreply.github.com>
now mail doesn't get sent to... BAD recipients. (Antags arm, just say antags)
fixes incorrect unwrapping message (bad usage of a visible message)
mail recipients wasn't shuffling either. I'm fairly certain this was leading to some people always getting mail and some never getting it.
removes the 75% chance on screwdrivers initialize to have a random pixel_y between 0 and 16
it looks bad now that the screwdriver is centered on the tile
You can see why this is bad from the issue, but it applies a lot of other places you can cram the projector into. Like transit tubes! Or vehicles! Or free escapes from welded lockers! Spooky.