This commit first and foremost ports the -tg- atom pooling system, and
removes the old experimental system entirely.
Secondly, this PR modifies the qdel system to use a -tg- lookalike
"destroy hint" system, which means that individual objects can tell qdel
what to do with them beyond taking care of things they need to delete.
This ties into the atom pooling system via a new hint define,
QDEL_HINT_PUTINPOOL, which will place the atom in the pool instead of
deleting it as per standard.
Emitter beams are now fully pooled.
Qdel now has semi-compatibility with all datum types, however it is not
the same as -tg-'s "Queue everything!" system. It simply passes it through
the GC immediately and adds it to the "hard del" lists. This means that
reagents can be qdel'ed, but there is no purpose as of yet, as it is more
or less the same as just deleting them, with the added effect of adding
logs of them being deleted to the garbage collector.
Adds fishbowls, fish tanks, and wall aquariums.
- Buildable with glass
- Fish Tanks and Wall Aquariums also have built-in lights that can be
toggled
- Wall Aquariums block atmos just like a full window or wall.
Adds fish and fish/aquarium related items:
- Goldfish, Clownfish, Sharks, and Baby Space Carp
- Eggs can be obtained for each of these fish types and a dud egg type.
- Fish food, fish nets, egg scoops, tank brushes
- These are used to maintain your aquarium
Adds new vendor: CritterCare!
- Sells pet supplies and pet rocks!
- Moved pet collars from the clothing machine into the CritterCare
Adds new room/area: Pet Store!
- Located between the Port Emergency Storage and Auxilary Tool Storage
(across from the Vault)
- Contains a CritterCare machine, 2 fishbowls, a bucket, and a sink
Adjusts some Cargo order options!
- New category: Vending
- Contains all the vending machine refill crates
- Renamed the Bartending Supply Crate to Bar Supply Crate to avoid
confusion
- Removes the coffee refill canisters from the Bar Supply Crate, placed
them into the new Coffee Supply Crate
- Adds new Clothing Supply Crate, contains refill canisters for the
Hatlord 9000, Suitlord 9000, Shoelord 9000, and ClothesMate vendors
- Adds new Pet Supply Crate, contains refill canisters for the new
CritterCare vendor
Makes the ClothesMate and CritterCare vendors constructable
- Using a screwdriver on a vendor circuitboard will now have a chance to
set it to the ClothesMate or CritterCare setting, in addition to the
previously possible settings like Booze-o-mat and Shoelord 9000.
New reagent: Fishwater
- Obtained by using an empty reagent_container on any aquarium that has
some water in it.
- Ingesting fishwater has a 30% chance per cycle to make you vomit (what
did you expect from dirty water and fish poo?)
- Fishwater is good for botany, as it provides both water and nutrients
to hydro trays
ADDITIONAL FIXES!
- Fixes the abandoned bar's misaligned area (mostly a mapper thing, will
also ensure an APC in the area will properly power the entire area (and
not space)
- Fixes a couple instances of piping mistakes where there were manifolds
and straight pipes on the same tile, preventing vent-crawlers from being
able to navigate properly
- One was in security, another was the back room of hydroponics
- Fixed a missing pipe in the AI upload causing the vent to be
disconnected from the pipe network
Contains Commits:
- Spellbook Refactor <AnturK/-tg-station@6380f67>
- Splits the Spells into Offensive/Utility <AnturK/-tg-station@25ba9fb>
More or less a complete overhaul of the spellbook to a datum based system.
This commit ports Duct Tape from bay, alongside a few other changes for
our own code.
Bay12 Features:
- You can tape paper to.. anything basically, like a sticky note.
Changes from Bay12:
- Tape is a stack now, and has 10 uses per roll.
- The guitar recipe now calls for 5 pieces of tape.
Adds 2 Horsemasks to the AutoDrobe's hacked items list.
Adds 2 new crates to cargo: Team Jerseys Crate and Polo Supply Crate.
- Team Jerseys Crate (15 supply points) contains 4 red jerseys, 4 blue
jerseys, and 1 beach ball
- Polo Supply Crate (20 supply points) contains 6 brooms, 6 horse masks
(to put on the brooms), and 1 beach ball
Adds new jerseys: an alternative to athletic shorts that come in red and
blue. Red team is the NT Phi-ghters, Blue is the NT Pi-rates. Show your
team spirit today!
A port of https://github.com/d3athrow/vgstation13/pull/4377

Allows brooms to be wielded with 2-hands. Doing so places the broom
between your legs so you look like you are riding it.
You can also put a horsehead mask onto the broom to create a stick-horse
to ride. This can also be wielded, but will ALWAYS appear between your
legs.
And for the more magically inclined, wielding a broom or stick-horse (2
hands!) will cause you to ride it like a witch, giving you the ability
to bypass hazards such as tables and banana peels.
A new mind attached list, restricted_roles, will keep incompatible jobsout of rotation.
Players who would otherwise qualify to play as a protected role will spawn
as the most wanted not protected role they qualify for if they are an
onstation antagonist. If they don't qualify for any job in this way
depending on preferences they will either spawn as an assistant or a random
job (which also makes sure they don't end up in an incompatible job).
Note this doesn't impact late join antagonists or mulligan antagonists.
Roundstart only.
This commit overhauls the global.dm file, global_lists.dm file, and
defines.dm file into a tree system based on -tg-.
All defines have been split and distributed in code/__DEFINES/
Everything from global.dm and global_lists.dm has been split and
distributed in code/_globalvars
The _compile_options.dm file contains anything that absolutely, 100%, must
be initialized before world.dm.
Name definitions have been moved to code/_globalvars/lists/names.dm.
Other things to note
- All instances of something.z == 2/1/3/5 have been replaced with easily
configurable defines, labeled ZLEVEL_. The map include file can
override these by defining custom ones in it's file, as it is at the
top of the tree.