This commit overhauls mass drivers.
Every component of mass drivers are now buildable.
This means:
- Mass Drivers
- Mass Driver Control Computers
- Mass Driver Buttons
Mass driver control computers now support multiple mass drivers.
You can link mass-drivers to buttons via multitool.
Buttons have a range of 7 for their mass driver link.
Computers have infinite range.
Fixes the biogenerator getting stuck if it can't fill a beaker, eating
resources if it can't fill a beaker, and getting splashed every time you
tried to load a beaker.
Splints will now work again, on arms/hands/legs/feet, and health
analyzers will warn about unsplinted limbs. Having a broken left arm
will no longer cause you to drop what's in your right hand.
This brings handheld signalers in line with the frequency range of
cartridge-based signalers, and fixes anomalies' built-in signalers to
also be in this range.
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.
This commit ports -tg-'s port of the /vg/ smoothwall system. An important
thing to note is that we have extra code on top of the -tg- port to make
it work at all, and therefore, it may not be as efficent.
This commit refactors light_color definitions for most machines and
consoles that use light_color's. Instead of having the same color repeated
over and over again, there are #defines for most of the common ones.
Some machines and other places may not use lighting defs- this is
intentional. The defines as they are, are relatively clean, and machinery
was where the bulk of repeated light definitions were. Other, special
colors, can just be defined in the same file that they are used once in.
This commit lightens the restrictions on stacks, so that they can now
build on any type of /turf/simulated instead of requiring
/turf/simulated/floor.
The primary intent of this commit is allowing people to build on shuttles,
as they are now considerably less "magical", given that they have
lighting, and glass sheets + metal rods already ignore these restrictions.
This commit readds every fluff lighter to a new lighters.dm file, as well
as moving every lighter into it. There are enough to justify seperating it
from cigs_lighters.dm. Fluff lighter paths have not been touched for
compatibility to the database and map.
This commit also readds the flasks, with the fluff paths removed.
Cryopods attempt to preserve certain important items when despawning
their occupants. They also attempt to remove the contents of anything on
their occupants. Some preserved items have important contents, which
should not be removed, and may cause runtimes after retrieval. This
should fix those runtimes.
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!
Some recipes were sorted using paths that resulted in empty recipe types
(for example, /datum/recipe/microwave/human/burger causing an empty
/detum/recipe/microwave/human type to exist). These would be included in
the available recipes, and since their requirements are null, would all
be satisfied by anything in the machine. Since their result is null, a
runtime would occur while trying to create nothing.
This fixes some (all? Too lazy to test them all) kitchen machines never
failing.
Vending machines would attempt to build_inventory using what appears to
have been an old, multi-call method, including a named argument that no
longer exists and would runtime.
If you tried to clean an atom with soap, and that atom was deleted
before you finished cleaning, the message attempting to display its name
would runtime.
Holidays are now actual datums with procs and vars and everything.
Holidays run a proc called celebrate() when it's time to celebrate them.
Currently none of them do anything but that should change, wink wink.
Holidays can now run for more than a day. The important ones, april fools,
christmas, halloween, new years, and easter, all last at least a week.
The idea is so people can celebrate christmas in game without having to,
you know, actually play on fucking christmas. And also to put a time limit
on how long stuff like the annoying spookoween closet skeletons will stick
around so it doesn't overstay its welcome and become annoying as shit like
last year.
The event SS now allows more than 1 holiday to run at a time.
This matters for new years + christmas, easter + april fools, easter + 4/20,
and any holiday that can happen on friday the 13th.
The events get stored in a list that's only initialized if there's an active
holiday so testing for potential holidays is still pretty easy.
Added more easter dates so we won't have to add more until 2040.
The current batch run out in 2017.
:-------------PARACODE NOTES------------:
Tied to event process
Extra procs for holidays to be able to run special events alone
Admin manual-override functionality maintained and ported to new system