Subspace Jammers can be bought in the traitor uplink for 25 TC. They are already in the code, but this PR adds them to the uplink.
This PR also adds a power meter to the sprite, as a small QoL change.
They run off of weapon cells and one cell will last for about a minute.
Adds a traitor device to warn the traitor if they're being spied or are about to be spied on by the AI or anyone using a camera console.
It will warn the holder by changing color, beeping a specific tone, and sending a message to their chat log. It only does this when the state of spying changes, so it will not spam the chatlog if nothing changes. Only the holder can hear the warnings. It also functions like a regular multitool.
+Readds jumper cable kits to revive FBPs (Robotics will spawn with these
without any map changes but they will be empty so that needs to be fixed
anyways)
+Readds jumper cable kits to cargo orders
-Lowers jumper cable kits in order to 2 from 4 to be in line with the
defibrillator changes
+Adds robot defibrillators to both medical modules
+Adds robot jumper cables to research module
+Adds some new icons for jumper cables to fit in better with the new
defibrillator sprites
- Removed gun_vr judge, Polaris has one now.
- Removed vorestation m44 mags, Polaris has those now.
- Removed detective's .44 magnum because NO YOU CANNOT HAVE A FUCKING
MAGNUM
- Corrected inconsistent naming of .44 speedloaders
- Corrected inconsistent naming of .357 speedloaders
- Fixed broken calibers for .357 stuff to be consistent with upcoming
Polaris sync.
AOOC can be granted on a per-antag type basis. If the type has can_use_aooc equal to true, they can both use and see AOOC. It is true by default to allow for the upcoming Infiltrator type to automatically be able to use it.
The types disallowed from AOOC are ERT, Traders, and Renegades. This means admins can now use AOOC to talk to the real antags and not the ERT.
- Fixes pirate gun not getting 12g caliber correctly.
- Fixes .357 caliber not being named consistently with everything else.
(Do not merge this until
https://github.com/PolarisSS13/Polaris/pull/3533 is merged pls, unless
Yosh fixes his caliber to be correct also.)
- Changes .50AE ammo to .44 because that's more consistent with what the
gun is capable of in-game, because it uses the same damage values as the
.357 and not a bullet that shoots through through your fridge, through
your house, and hits your neighbor's home invader like a .50AE is IRL.
The fact that it's .44 makes much more sense. This is purely a fluff
change because it annoyed me.
- Fixes a bunch of ammo.dmi icon names and makes the file not a jumbled
fucking mess. This means now your 762 mags and the newly renamed 44 mags
will not be broken anymore.
-Added Eggnerd limb design disk to the mail order pack.
-Added the non-security oties on the pred crate picklist.
-Added mail order guard puppy crate. (the frankensteinian voremobcode+followerpetcode+beepskycode combowombo)
-Attempts a workaround for janihound belly not bulging from people. (I swear it was working before the merged code cleanup :v)
-Janihound sprites centered properly.
-Made remains(mouse skeletons etc.) edible again.
* The cryopod simply qdel's the datacore records. Old garbage.dm hard-del()'d datums, so it was fine. Now we need to make sure they are actually removed from the data_core.
* Testing shows this fixes#1713 and in most cases the objects also GC cleanly. However some older computers still retain hard references to data_core entries. But even in the cases where that prevents a clean GC, the player is still removed from the manifest successfully and promptly, so that can wait.
I like the ones I wrote, but these are proooobably better.
They have normal units, which are worn on the back and you can grab the paddles out of to shock people.
Then there's compact units, which are worn as a belt, and serve the same purpose.
And finally there's the combat units, which allow revives through spacesuits, and have no safety so you can zap living people on harm intent (good for antags? CMO?).
These appropriately check for blood, a heart, etc. So, in that way, they're a bit more realisic than my original ones which I was sorta lazy in writing.
Emagging them turns off the safeties, allowing them to zap people who are still alive.
I actually cleaned up their sprite choice code a little and added a sprite for the 'combat' one since previously it was just the emagged sprite (flashing exclamation point). Now it's just got a red heart monitor, and the emagged ones keeps the exclamation.
Did make one balance change in that compact ones use twice the power (inefficient small capacitors? or something?).
* Fixes Baystation12/Baystation12/issues/17443 - Runtime in radiation.dm,30: illegal: sqrt(-2.857143)
* Updating radiation power to below zero should simply delete the source.
* Fixes at least one cause of Runtime in radiation.dm,41: Cannot read null.z in an effort to fix Baystation12/Baystation12/issues/17411
* Optimized garbage collection of radiation sources until we get qdel() hints.
* Made the RADIATION_LOWER_LIMIT configurable (option for people to save some cpu time)
* Added some comments and broke the proccessor into separate procs for profiling purposes
* Added a changelog.
s = Speedloaders. (Functionally the same as clips, but they're not
_really_ the same thing, just in case we change these later.)
c = Clips. (Can also be used to fill other magazines.)
m = Magazine. (Holds ammo rounds.)
a = Ammo. (Individual rounds of ammo.)
* The performance of the radiation controller as-is was not fast enough for inclusion in production servers, but it has some nice featuers, so rewrote it to be more performant.
* Instead of storing the radiation strength for every turf, we only store the sources of radiation, and calculate the strength only for mobs who might be in range.
* Old method was ray-tracing to every turf in range whether anything was there to be irradiated or not. Could be hundreds of turfs. New method only lazily calcualtes strength at a turf if we actually need to know it. Often times this is zero turfs if nobody is standing in engineering.
* Removed the automatic processing of objects with "rad_power" set. Objects are responsible for calling the repository to create/update their radiation sources. Saves some extra overhead that in practice was redundant with other process controllers.
* Also tweaked to be more respectful of qdel'd objects and added some comments.