About The Pull Request
Adds 'notice' span class to all visible_messages which had no span class, making all those black messages blue.
Why It's Good For The Game
This should help differentiate action-messages from talking-messages in the chat. More actions will be blue, thus black talking-messages should pop out more.
About The Pull Request
It adds a shrink ray that has 5 shots, can be recharged, has unique (coder)sprites, and has a cool sound
Shoot a thing with the shrink ray to make it small. Anything can be shrunk except floors
Shrunken things grow back after a couple seconds, might adjust this
Small things will not block vision and can be walked over (this includes walls)
Small people won't fit into their clothes and will drop all their stuff (or rather, their stuff will drop off of them). They also can't move very fast, and take 2x damage while shrunk.
Preview video here
Why It's Good For The Game
It's really goddamn cool
Changelog
cl PKPenguin321, Fury McFlurry
add: A shrink ray for abductors that they can buy at their console for 2 experiment points. Anything can be shrunken, and shrunken things can be walked over/seen past (for example, you can shrink a wall and then walk around it). If a human is shrunk, they will drop all of their belongings, move slower, and take 2x damage.
imageadd: Shrink ray sprites by Fury McFlurry. Thank you!
/cl
I intend to add it as a thing abductors can purchase but am putting it up now for code review and if anybody has any other ideas on good thematically fitting places to put it.
About The Pull Request
title.
Also renames INORGANIC to MINERAL and removes it from simplemobs (never used for simplemobs) where it doesn't fit. Doesn't make sense to have both ORGANIC and INORGANIC as a flag.
Why It's Good For The Game
There's no reason to use a list for this.
Changelog
cl
code: Changed mob biotypes from lists to flags.
/cl
About The Pull Request
Adds cancel buttons to input boxes that didn't have them before.
Why It's Good For The Game
Good UX.
Changelog
cl
add: More cancel buttons.
/cl
About The Pull Request
One day I will get this right.
Sanity no longer decays if you are above the allowed mood threshold.
Neutral mood no longer raises sanity.
Aheals now restore sanity for unstable people.
Fixes#45715
Why It's Good For The Game
Getting free maximum sanity from just being on neutral mood was a bit silly and counterintuitive. The sanity for being below the maximum allowed value was also a bit harsh.
Changelog
cl
balance: another sanity rebalancing.
/cl
Adds chemical filters to the plumbing arsenal
They have one input, and three outputs. The left and right outputs can be given filters. It's basically the exact same as atmos filters but it has TWO filter sides.
It doesn't have an enormous list of chems to select from, you just enter a chem and it's added if it's valid.
cl
add: Adds chemical filters to plumbing
/cl
I was planning to do a bunch at once, but europe is on fire and im delirious
I also moved the existing unique plumbing datums into their own folder, wich was only chemical acclimators
* adds "you" to some combat visible_messages.
* more you-messages and attack verbs to present tense.
* small fixes
* more additions and small fixes
* few message tweaks
* Fixes a typo and few other wordings.
* Adds a GPS component. Megafauna no longer needs gps implants.
* Removes commented out code.
* Removes the last internal radio
* I was already wondering why the diff was so small
About The Pull Request
title.
Why It's Good For The Game
The goal of this is to get rid of the Touch hook for gloves. Currently the only other thing that uses this proc is ninja gloves which I will try to remove at a later date.
Changelog
cl
code: Gloves of the North Star functionality is now handled by a component.
/cl
About The Pull Request
repaths clothing/under to be more sane
Also fixed a couple of bugs relating to pathing being incorrect, and modified a couple of bad descriptions and names
Also adds a map path updating script, which also helps show the full repath.
Why It's Good For The Game
improves maintainability, makes mapping easier, stages for a clothing dmi split
Changelog
cl
refactor: repathed all under clothing, keep an eye out for errors
/cl
* This turns butchering into something that resembles a component.
* Changes how the recycler works.
It no longer uses butchering in disgusting ways.
* I guess this works? It's not pretty though.
* How the fuck...
* Finishes pump and fixes visual bug with disconnecting plumbing objects
* More bugfixes, finishes liquid pump
* Chemical synthesizer, wrench signal to handle unwrenching
* adds input and output pipes and changes ob into obj
* dmdocs all of plumbing through proper means
* adds sprites by meyhaza
also added wrenching interaction and fixed a dumb dumb with me fucking up an object path
* brightens the sprites a little by me
* removes big select from synthesizer ui
* update tgui.js thing
* unfuck pump color
apparently the replace all of spriting has downsides
* chemical acclimator
only heats and cools but i gotta commit and do other stuff
* finishes chemical acclimators
* uodates .dme
* updates .dme again
forgot plumbing component
About The Pull Request
This PR adds signals for all basic tool acts.
Replaced signals places where it's appropriate.
Why It's Good For The Game
It's kinda dirty how we used to do attackby and then check for tool behaviour. Since we now have stuff like plumbing and possibly that one laser PR, we need signals that directly relate to tool behaviour.
Changelog
cl
code: Added signals for all basic tool acts.
/cl
Ever since the big BoH nerf, BoH bombing is kind of a joke. The damage it does is not really huge, and it's lame for traitors - it lacks emotion and their target may not even die, as they can use the ladders to get away.
So, what this does is add back some soul into BoH bombing, while not making it too round-ending and adding some degree of damage control for admins in case of griefing.
When BoH bombing, a stationary singulo with custom sprite will spawn. Its gravitational pull is REALLY strong, so people near it are probably going to get eaten, and there will be some real damage to the hull. The singulo will cease existing after 5 seconds.
For antags, I think this becomes much more interesting than the current BoH bombing. In the case of griefers, the damage to the station isn't too big because the singulo is stationary and fades away after some seconds. And then, admins can click a button in their chat to bring back everything the singulo ate into the game (the button expires in 10 minutes, however, but this can be changed if you think it is needed).
Settings like gravitational pull can be tweaked if yall find it to be too strong or something.
Changelog
cl
tweak: BoH bombing changed again. Now it's more violent.
/cl
Removes dumb visual bugs.
Put the copy pasted wrench stuff for disabling and enabling the component, in the component using a new signal from default_unfasten_wrench.
Add a general plumbing machinery subtype. Right now it's mainly for cataloging.
Adds the chemical synthesizer. You can select a single chemical and an amount between 0 and 5. It will produce it every tick. Should be combined with other synthesizers to create meth factories.
Makes the liquid pump a fully functioning machine.
cl
add: The station comes one step closer to plumbing with the introduction of the chemical synthesizer.
sprite: sprites for the synthesizer, input and output commissioned by @Meyhazah
/cl
I wanted to do all the plumbing basic equipment at once, but stuff like plumbing heaters is gonna be ugly if I don't rework them completely and I don't wanna scare the maintainers away.
There is slight copypasting from the chem_dispenser and with the chem synthesizer, but having it be inhereted would be a worse clusterfuck IMO.
* Aheals now fix addictions and mood.
* Does it properly. Now uses a signal to detect the aheal.
* Removes a getComponent in living and puts that shit into the mood component.
* Fixes a small oversight with where I placed the moodie purge.
Fixes an issue related to mood. They had the wrong sanity icon when
spawned in. Yes, two is correct. Having exactly SANITY_NEUTRAL (100)
will result in slightly positive sanity.
cl Time-Green
add: Adds plumbing pipes and some hidden plumbing related machines. They're not available in-game yet.
sprites: Geyser and geyser pump sprites created by Mey-Ha-Zah!
/cl
Adds the following objects:
Fluid ducts . Like atmos pipe, but for reagents. They're smart and can be seperated by layer and color
Geysers. They spawn on lavaland and can be harvested with liquid pumps or just beakers.
Liquid pumps. For pumping geysers. They need to be on a wire node and connected to a duct network.
Plumbable reagent dispenser subtype.
New plumbing RPD specific RPD.
Plungers. The reinforced plunger can be used for plunging geysers to activate them. They currently serve no other function and can't be worn as a hat yet.
They're all disabled and admin only.
Adds the following systems:
Ductnet datum. They pretty much say "hey, we're connected"
Plumbing component. You can turn any movable atom into a plumbable thing. Comes with overlays and everything. They're essential for everything that has input and outputs, except pipes. That means you can have machines connected to both atmospheric pipes and fluid ducts. They only connect with layer 3 ducts.
Fluid subsystem that handles the processing on the plumbing machinery and other plumbing related stuff.
Basically atmospherics but with reagents. Reagents are pressurized and thus transferred instantly, to avoid those stupid leftovers in pipes no one likes. I am PRing it now because if I were to add a dozen or so associated machines, it would be too much of a pain to manage/review in one PR. It would also be a massive waste if people didn't even want it in the first place.
Also yes all of this works (as far as I know)
Things I plan to add in later PR's
Layers / colors (maybe) done
Machinery (Stuff like chemical processors, filters, special mixing chambers and factories)
Make geysers more interesting, so chemists/atmostechs/cargotechs/assistants can go to lavaland and get some exotic stuff.
Pipe fractures. Damaged pipes could do the cartooney water soaker beam coming out to shoot at people cause why the fuck not.
Code concerns:
Connecting is handled through pipes only. Not sure if this is the best approach. This means plumbing devices cant directly connect to each other without pipes. I could add some exceptions to handle it. I could also take connecting away from pipes and make it a global proc, with alot of exceptions since it'd be handling both plumbing machinery and the ducts.
Reagent transferring. Basically the transfer is instantaneous from A to B. I did this because stuff getting stuck in pipes could pose some serious mixing problems with chemistry, since it's alot more delicate than atmos. I could understand if people would want it to be like atmos. It wouldn't be difficult to change.
Also for testing I suggest you set the pipe_dispenser to category 3 to print fluid ducts. My tests were done with
/obj/structure/geyser
/obj/structure/reagent_dispensers/plumbed/storage
/obj/item/plunger/reinforced
/obj/machinery/power/liquid_pump
/obj/item/pipe_dispenser/plumbing
that and standard tools for setting things up
If you came here thinking this was some game feature then you are in the wrong place. Here is where I ramble about code.
This adds /datum/element as a sort of sibling to components. Only one of each type gets instanced and they do not get tied directly to any particular thing like a component does. Basically they're a very lightweight component for doing simple functionality that doesn't have much state.
Originally this concept came about as a kind of component that could be shared between many parents to reduce some resource costs. Doing this would allow us to componentize more behaviors that are a part of too many things to be viable to have a whole component for every single one. For example a component on every space turf would be entirely unviable. With elements it's much more reasonable.
This implements a prety bare framework and a couple components are migrated to it. It's ready to be used but I fully expect I'm going to need to refine how it works for all the usecases we'll want it for.
Also: this fixes the qdeleted signal. This signal isn't even possible because after qdel is done there's nothing to receive a signal anyway. I've changed it to a qdeling signal instead. I need it to work for some elements to know when to clean themselves up.