Disarming now takes a portion of your stamina. You cannot disarm if your stamina is near-empty.
Disarming someone with a weapon in their hand has a chance for them to retaliate by bashing you with it.
I coded this at 1 AM. I want reviewers to look at this critically. In my testing, the stamina worked out pretty well, you could do around 6 disarms before being pooped. Also in my testing, the retaliation never happened, could be bad luck, could be bad code. Anyone got any ideas? I'd love to improve this.
Part 1 in the "why my impact wrench no wrench bolt" saga
tl;dr for end users: combitools / impact wrenches now work on everything their non-powered versions do (except mechs and RIGs, tune in next time on dragon ball Z for that)
essentially all this PR does is murder every istype() check possible that could use a helper function instead, most notably many pen checks with ispen(). it also repaths combitools and powerdrills to /obj/item/weapon so they aren't instantly taken out of contention by half of the known attackby() prompts
I already squashed a couple runtimes here and there from the pen changes and it's possible I missed another because pencode is another scourge upon our lives
Changes:
tweak: "Tweaked the hivebot spawnrate and spawn pattern."
bugfix: "Fixed some miscellaneous bugs related to hivebots and added the beacons to the gold slime core blacklist."
bugfix: "Tesla no longer melts ashes, emitter beams, its own energy balls and accelerated particles." Fixes#7249
bugfix: "Tesla now properly consumes accelerated particles."
Title. Yield Declarations follow standard format, with the addition of an optional 'waste detected' field that displays any materials that the miners wasted. This also offers a vague IC trade-off if the miners are lazy but also suck at their jobs. The papers are also auto-stamped by the machine, although they should still be stamped by a QM or head as well, this is just a certificate of authenticity so to speak.
Yield Declarations can only be printed with an inserted ID and any amount of output materials (or wasted input). The miner and note fields are left blank to be filled in by the user, see below.
Suit slot items can now support armband and decor items. Uniforms can now have multiple armbands, since they can be flipped. Patches are now properly flippable.
This was a bad idea from the start. Using this chemical with smokes creates a lot of tesla bolts that either kills everything in its path or just crashes the server.
You can now build improvised swords. The hilt determines the integrity thereof, while the blade determines the damage it does.
Additionally, it also adds a var that sets whether the material item uses its material name or not.
bugfix: "Animal traps no longer can have more than one prey at a time.". Fixes#7219
bugfix: "Traps now properly trap prey when it is thrown at them."
bugfix: "Deconstructing trap with prey inside no longer makes prey anchored to the turf."
bugfix: "You cannot buckle a person into a trap."
bugfix: "You can no longer deconstruct trap with welder off."
bugfix: "Passing throuh trap no longer traps you if it is full."
Nutrition loss due to not having enough blood was pretty damn insane. I mean yeah you're supposed to be hungry when you lose a bunch of blood but not "I can down 3 steaks and still have enough for desert hungry"
This PR fixes that by significantly reducing the penalties.
Most of the vending machines didn't have premium or contraband items, which is depressing because other servers don't have this problem. This PR specifically does the following:
Moves a bunch of assembly items into the contraband ToolAssist vendor.
Adds a multitool to the ToolAssit vendor.
Adds soymilk to the contraband Coffee vendor.
Adds a teapot to the premium Coffee vendor.
Adds all the halloween candy to the snacks vendor.
Adds a cookie to the premium snacks vendor.
Adds 2L bottles of cola, space mountain wind, and space up to the premium drinks vendor.
Adds a clown cartridge to the HoP's Contraband PDA vendor.
Adds a captain's cartridge to the HoP's premium PDA vendor.
Adds Blank Cigarettes and AcmeCo Cigarettes to the contraband smokes vendor.
Adds Zippo to the premium smokes vendor.
Adds a bottle of chloral hydrate to the contraband nanomed.
Adds epinephrine to the premium nanomed.
Adds a bunch of sensors to the ToxMate contraband vendor.
Adds an ultra rare hat to the premium ToxMate vendor.
Adds Tramadol to the premium nanomed wallmed vendor.
Adds ambrosia deus to the premium garden vendor.
Moved the red wizard outfit and wizard hat to the contraband section of the wizard vendor.
Added a fake wizard hat to the premium section of the wizard vendor.
Added a filled NT lunchbox to the premium section of the Kitchen vendor.
Added chloral hydrate gas grenades to the premium section of the tacticool vendor.
Added a fake desert eagle to the contraband section of the ERT vendor.
Added tactical shields to the premium section of the ERT vendor.
Added real flashes to the contraband section of the robotics vendor.
Added pAI cards to the premium section of the robotics vendor.
Moved Zora Jelly to the premium section of the Zora Soda vendor.
Bugfix: Tesla no longer gains energy from just colliding with objects
Bugfix: Fixes sprite for singularity beacon not showing up
Bugfix: Tesla no longer spams admin longs when a new ball is created outside of containment
Bugfix: Telsa looses energy when dropping ball which should be slightly below how much is required for new ball.
tweak: Tesla dissipation rate has been buffed, it now looses energy faster
tweak: Tesla dissipates every time it zaps something
tweak: Tesla now melts any object or mob(but not turfs) it touches or when it zaps it while sacrificing a miniball.
rscadd: Added special emergency singularity beacon that is to be used when Singulo/Telsa are on the Loose. When Tesla zaps the beacon, it will discharge all energy into it, dying and destroying beacon.
Resolves#7172. Resolves#7190.
Cooking appliances are no longer esoteric technology beyond the control of NT's finest researchers.
Adds microwave, oven, deep fryer, cereal maker, and candy maker circuit boards for research and construction.
Constructing, upgrading, and deconstructing microwaves and other cooking appliances is now possible. (Note, as of yet upgrading microwaves has no purpose. Will be fixed ASAP along w/ microwave overhaul)
Oven efficiency now starts at 70% once pre-heated, to alleviate the incredibly slow cooking times at round-start.
Oven heat loss from the door being open cut down to 1.5x from 4x.
Deconstructing a machine now returns cable coil.
Wirecutting a blueprint on the cable-coil stage lowers it to the 'secured blueprint' stage, requiring a wrench to disassemble instead of wirecutters again.
Printing a smart-fridge board no longer gives you an operating table circuit board.
Deconstructing a machine no longer displays the incorrect icon state (box instead of blueprint).
Candy and cereal makers work again. (woops)
Fixes#6456.
Added a check to repeat offenders (and also loyalists, just to be safe) on CentCom's roundstart report to command, so command won't be instructed to rehabilitate Mercenary Big Chungus.
ed: oh also fixed the formatting on the report slightly
Fixed mech sounds and some other sounds becoming garbled due to a random frequency being picked.
Made gunshots and flashbangs be heard farther and through walls again and not just via line of sight.
Voidsuits now have a 'Toggle Helmet' button just like Toggle Helmet Light or Toggle Magboots.
Full credit to Kasuobes and Baystation12/Baystation12#15923, for coming up with a much more elegant solution than I could in ten minutes.
The ling is ass. It's just. Ass. Butts. It isn't scary. Whap it and cuff it, toss it in solitary and smack its horribly deformed ass. Now they can tear through walls. Nice.
Forming armblades and flesh riot shields as ling now break cuffs and straitjackets.
Changing into a lesser form now uncuffs you
You can use an armblade is a crowbar, to do crowbar based activities.
The armblade can be used to slice and dice through non-reinforced walls and girders.
Changed the spawning mechanics of hivebots and expanded their roster with three new types, Bomber, Guardian and Harvester.
Tweaked the slime infestation event to be a bit more colorful and spawn a couple more slimes than currently.
Made it so infestation events no longer trigger outside the station at shuttle docks,, inside xenobiology cells, substations, at centcomm or outside etc.
Fixed the prison break event from not working correctly with virology, added a chance for it to happen at the bridge.
Fixed some announcements missing their custom titles. Particularly those used by random events. Tweaked their font and size.
Breath masks, as well as other adjustable masks, didn't have a proper name and category set for them, resulting in "adjust mask" verb being in its own "commands" category. This PR capitalizes the verb name and moves it into "Object" category.
Ice now melts at 25C. Other methods to fix the ice-instantly-melting issue didn't end so well ( #6617 et al.) and this seems to be how most baycode implementations handle the problem. If someone has a better solution, please, suggest, and I'll nuke this into the floor. Fixes#6119.
Soda cans (incl. water bottles) can now be re-filled after bursting open from shaking. This also fixes a crash related to putting these cans into chem machines and the like. Fixes#6499.
Robots and silicons can no longer be force-fed. Fixes#5016.
Custom output food from cooking appliances now fits inside storage containers. Fixes#4106.
Custom output food from the oven now causes a 'ding' as with normal cooking. Fixes#3904.
Batter now requires proximity to be applied. Fixes#5724.
Lasagne and doner kebab contents buffed to match the ingredients used in their creation. Fixes#6195.
Fixes#7191.
Simply put, borg inflatable dispenser didn't have a check to see if it was actively deploying, so you could swap modes and place down an unrecoverable barricade as per issue linked above. This resolves that issue.
Adds more of the Medical and Science uniform sprites. Still have stuff to do. My understanding of code is pretty limited so if anyone knows how to do any of the things I'm trying to do, please comment and tell me how. Otherwise, I'll keep trying to get them working. Also please if any merciful coder feels like looking over any changes out of the kindness of their heart while I'm working on this, please point out anything that might be broken or wrong.
Asymmetrical accessories can now be flipped! This is done through the attack_self proc (i.e., activating it in your active hand), or a right-click menu if the item already has an attack_self behaviour.
This affects:
Stethoscopes
All medals
All badges
Armbands
Holsters
Machete Holster
Scarves
TCFL ribbons
Shoulder capes
Sleeve patches
Bandoliers
Political pins
Machine overloads are now no longer a joke. The strength of APC machine overloads is now reduced by roughly 2/3rds. As you can see by the below graph, this change is very much needed.
image
X axis is the APC's power cell charge.
Y axis is the strength of the explosion.
Purple line is the strength of the explosion in its current state. As you can see above, it caps out very easily and super fast: Basically 4 AA batteries can destroy nearly everything.
Red line is the new strength of the explosion in this PR. It's much more reasonable and caps out at APCs with upgrades.
That purple dotted line down the middle is the cell capacity of a normal APC.