* Strays away from GLOB.machines when possible (#71100)
## About The Pull Request
This replaces needless GLOB.machines with more precise lists whenever
one existed, plus adding a new one for CTF machines.
## Why It's Good For The Game
GLOB.machines holds every single /obj/machinery in the game, so checking
the whole list for stuff is pretty big. This aims to cut that down by
using smaller lists whenever possible. I also gave CTF a new list
because it checked machines very often.
## Changelog
Nothing player facing.
* Strays away from GLOB.machines when possible
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
* Easy's Super Omega "unarmed strike based species var moved to limbs" refractor, unarmed strike striking with specific body parts rather than it just being flavor, and brain based attacking limb selection extra chunky edition. And also bodypart traits.
* Removed all the conflicts, and started converting all the arms and legs to the proper typepaths
* Actually makes the game compile :)
* Makes the maps compile too!
* Early mirror of #71143 because it's more relevant to us
Co-authored-by: itseasytosee <55666666+itseasytosee@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Fixes incorrectly passed arguments to demoralise poster signal handler (#70887)
## About The Pull Request
First argument is the source of the signal. This caused runtimes where
it tried to check a poster's mind.
## Why It's Good For The Game
Less runtimes
## Changelog
🆑 Melbert
fix: Triggering a traitor poster trap progresses their objective.
/🆑
* Fixes incorrectly passed arguments to demoralise poster signal handler
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Makes the Space Ninja modsuit module buttons pinned by default (#70997)
## About The Pull Request
Makes space ninjas spawn with their modsuit action buttons already
pinned
## Why It's Good For The Game
The radial menu isn't really practical for abilities you're going to be
using mid-combat, the throwing star dispenser is especially bad since
it's basically impossible to use at the rate it comes off cooldown if
you don't have it pinned.
People shouldn't need to know how to pin the modules or to go through
the UI pinning each of them just for the antag to be playable.
## Changelog
🆑
qol: Space Ninja now has their MODsuit module buttons pinned by default
/🆑
* Makes the Space Ninja modsuit module buttons pinned by default
Co-authored-by: GoblinBackwards <22856555+GoblinBackwards@users.noreply.github.com>
* Fixes and updates the eyesnatching objective (#70917)
* Makes the eyesnatching objective finally work, while updating some things like the name to not have the job in parenthesis, using balloon alerts slightly better, and removing a useless check.
* Adds a 1% chance to give the person an eyepatch on their eyes being taken. Also a 20% chance for them to cry, so the eye snatcher can laugh at them for being a baby.
* Fixes and updates the eyesnatching objective
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
* Refactors how duplicate handling with traitor objectives work. Adds a 'can_generate_objective' function. Adds a limit to kidnapping objectives (#70758)
* Refactored how duplicates are handled in traitor objective code. This will fix destroy heirloom and eyesnatching objectives from only ever being available once.
* Fixed destroy heirloom and eyesnatching objectives never generating
* Kidnapping objective can only be taken a maximum of 3 times within 15 minutes. This puts it in line with the assassinate and eyesnatching objectives.
* Refactors how duplicate handling with traitor objectives work. Adds a 'can_generate_objective' function. Adds a limit to kidnapping objectives
* update kill pet and smuggling
* smug
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
* Limits how much of the heirloom objective you can get within 10 minutes (#70856)
Limits heirloom objective so it isn't being constantly generated, like the kill objective.
* Limits how much of the heirloom objective you can get within 10 minutes
Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
* Adds a new spell to Heretic starting loadout, "Shadow Cloak", which conceals their identity. (#70648)
* Adds "Shadow cloak" to heretics, allowing them to disguise themselves as a shadowy figure, which is cancelled if they take too much damage.
* Adds a new spell to Heretic starting loadout, "Shadow Cloak", which conceals their identity.
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Adds unit test for items that can be equipped to suit storage slots that are missing sprites (#70643)
* Adds unit test for items that can be equipped to suit storage slots that are missing sprites
Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
* Frequency locks Confessional intercoms, but an emag can bypass it (#70745)
* Confessional intercoms are frequency locked, but can be emagged to bypass the restriction.
* Frequency locks Confessional intercoms, but an emag can bypass it
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Fixes an edge case heretic sacrifice runtime (#70723)
* Ensures this does not runtime
* Comment
* Fixes an edge case heretic sacrifice runtime
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Splattercasting, an offensive, sanguine equivalent to Lichdom. (#70637)
A spell similar to lichdom, though with different conditions.
Dramatically reduces your cooldowns
Cooldown saved is converted into blood lost
You are now a vampire, drinking blood refills your bloodwell, and you're naturally slowly running out.
New school, Sanguine spells, which aren't affected by splattercasting and generally involve blood.
Species change allowed by @ SuperNovaa41
* Splattercasting, an offensive, sanguine equivalent to Lichdom.
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* Changing species now maintains Brain traumas, Cybernetic implants, Liver traits, organ damage, and Heretic Living Heart (#70530)
About The Pull Request
Implements additional code in before_organ_replacement in additional places, to better maintain cohesion when species changes take place.
Brain traumas will now carry over on species change
Having synthetic / cybernetic organs will now carry over on species change
Liver job traits will also carry over on species change
Organ damage will, in most cases, carry over on species change (only if the new organ is identical to the old)
The heretic's Living Heart will attempt to carry over to species change, if it's valid
Some species will still not, as it will attempt to give heart -> liver or something and be invalid
Heretic Living Heart is now a cooldown action. Still not really content with the current state of it, it could use some improvements.
Fixes#42308Fixes#35539Fixes#69574
Why It's Good For The Game
Removes a lot of exploits involving using forced species change to get rid of stuff like quirks / permanent brain traumas and similar.
* Changing species now maintains Brain traumas, Cybernetic implants, Liver traits, organ damage, and Heretic Living Heart
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Makes weakpoint objective require both areas to be scanned + bugfixes + harddels (#70526)
* Makes weakpoint objective require both areas to be scanned + bugfixes + harddels
Co-authored-by: GoblinBackwards <22856555+GoblinBackwards@users.noreply.github.com>
* Fixes revolution auto shuttle call not accounting for mindless players (observers) and runtiming (#70541)
Fixes null mind check in revolution auto shuttle call causing no call to occur
* Fixes revolution auto shuttle call not accounting for mindless players (observers) and runtiming
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Fixes fugitive hunters not getting team huds (#70501)
* Fugitive Hunters now get their team antag hud properly.
* Fixes fugitive hunters not getting team huds
Co-authored-by: texan-down-under <73374039+etherware-novice@users.noreply.github.com>
* Independent blob spores and those created by the Distributed Neurons reagent no longer die instantly or cause a runtime. (#70461)
* blob zombies created by the Distributed Neurons reagent and cyto no longer die instantly due to not having an associated factory
* This was done without reverting the fix to factories that caused blob zombies to never need a factory, either.
* Independent blob spores and those created by the Distributed Neurons reagent no longer die instantly or cause a runtime.
Co-authored-by: FernandoJ8 <80640114+FernandoJ8@users.noreply.github.com>
* Fixes shields inhands (#70395)
Fixes#70377
Stobe shield has been broken for.... hell I don't even know how long lmao
cl ShizCalev
fix: Fixed some missing shield inhand icons.
fix: The strobe shield's inhand icon now plays the flashing animation when triggered again.
fix: The strobe shield will no longer blind the person holding it when it deflects a blow.
fix: The light from the strobe shield's flash no longer appears in your held inventory slot.
fix: Fixed the east facing left-handed strobe shield sprite being misaligned by two pixels.
/cl
* Fixes shields inhands
* goliath shield
Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
* Fixes some incorrect `before_cast`s (personality commune, revenant) (#70339)
before_cast returns a bitflag, shouldn't return a bool. Bools will break it, TRUE especially cause it's the same as CANCEL_CAST. See
Fixes tesla blast #69394Fixes#70302
I'll see if this can be unit tested as well
* Fixes some incorrect `before_cast`s (personality commune, revenant)
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Various Jaunt fixes (#70431)
* Jaunt code path reworked so that traits and other effects can be removed consistently regardless of how effect is ended.
Jaunts will more consistently clean themselves up (and unjaunt you) when you lose the spell.
If a shuttle lands on you while you are jaunted it will now kill you instead of crashing and fucking with the shuttle landing process.
Z travelling while inside an object or mob will now relay that direction instead, allowing you to jaunt up and down as well as cardinally.
Mirror walk button updates at correct times.
Blood and Shadow walk buttons have same functionality as Mirror Walk.
* Various Jaunt fixes
Co-authored-by: Jacquerel <hnevard@gmail.com>
* The Living Heart ritual kickstarts your heart for you, if it's not beating (#70358)
* Living Heart ritual kickstarts the heart for you
* The Living Heart ritual kickstarts your heart for you, if it's not beating
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Tastyfish <crazychris32@gmail.com>
* S/Laughter Demon Spawning Cleanup + Logging (#70365)
Adds some game logging to whenever one spawns in a s/laughter demon, very cool indeed.
* S/Laughter Demon Spawning Cleanup + Logging
Co-authored-by: san7890 <the@san7890.com>
* Fix xeno hivemind talk causing hissing sound (#69844)
* Fix xeno hivemind talk causing hissing sound
* Fix dullahan speech arg
Add message_range and saymode to say arguments
Add new say args to other say procs
Add new say args to other say procs
* Revert "Fix dullahan speech arg"
This reverts commit abff2bec1a03c1270b2896faa547c465e046ad78.
* Fix speech_args to be list
* Refactor hulk speech signal handler
* Revert "Revert "Fix dullahan speech arg""
This reverts commit 58997930096ef6b7fa8a1c79395595e61db954c6.
* Change filterproof to be null like other say procs
* Remove unused COMSIG_MOB_SAY defines
* Readd defines for COMSIGH_MOB_SAY
* Fix xeno hivemind talk causing hissing sound
* Updates the arguments of the say and whisper procs for the borers
Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Cyborg Model Advertisement Update, or How I Stopped Having To Guess Your Model (#70270)
* Cyborgs now list their model when examined
* Update code/modules/mob/living/silicon/robot/examine.dm
* Update code/modules/mob/living/silicon/robot/examine.dm
Co-authored-by: ShizCalev <ShizCalev@ users.noreply.github.com>
* Cyborg Model Advertisement Update, or How I Stopped Having To Guess Your Model
* Adds the changes to the borg shapeshifter too, from my modular PR
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
Co-authored-by: ShizCalev <ShizCalev@ users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* flagellant's hoods now have negative armor again (#70247)
* how'd it take us this long to think of this?
* desc changes
* flagellant's hoods now have negative armor again
Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
* makes radios use paths instead of new (#70252)
* makes radios initialize in Initialize instead of init()
* makes radios use paths instead of new
Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
* Nuclear Operatives Can Now Correctly Get Servant Golems (#70142)
Nuclear Operatives Can Now Correctly Get Servant Golems
* Nuclear Operatives Can Now Correctly Get Servant Golems
Co-authored-by: san7890 <the@san7890.com>
* Removes ghost check for battlecruiser objective and fixes players being able to roll it multiple times in a row (#70194)
Removes the ghost check for the battlecruiser objective
Fixes the same player being able to reroll battlecruiser
* Removes ghost check for battlecruiser objective and fixes players being able to roll it multiple times in a row
Co-authored-by: Salex08 <33989683+Salex08@users.noreply.github.com>