This PR aims to clean or bring up to date portions of code about dna,
the dna console and mutations. This includes taking care of or removing
some of the awful choices like the pratically useless
`datum/mutation/human` pathing, or the class variable, in favor of using
sources to avoid potential issues with extraneous sources of a mutation.
The files changed are over a hundred just because I removed the
`datum/mutation/human` path, but the actual bulk of the code is mainly
shared between the datum/dna.dm, _mutations.dm and dna_console.dm.
Mutation shitcode is hurting my future plans for infusions a little.
Also it's a much needed refactor. Drafted 'till I'm sure it works
without issues.
🆑
refactor: Refactored mutation code backend. Report any issue.
/🆑
* Allows for some locs to have spells cast while inside, such as PAI cards (for PAIs), AI cards (for AIs), and mechas (#77418)
## About The Pull Request
Spiritual successor to #76716
- Some spells can now be cast while the mob is within the contents of
certain atoms.
- PAIs can now cast if within a PAI card
- AIs can now cast if within an AI card
- People within vehicles (mechas and cars) can now cast their spells
- Repulse and Knock now have unique interactions for being cast within a
locker
## Why It's Good For The Game
Carlac's PR gave me an idea for how to tackle this in a relatively clean
way so I went ahead and adapted the suggestion to something that works
for the cast chain.
This isn't perfect, some spells will need to be updated, but they can be
done piecemeal.
This is something that, IN THEORY, should have already been wholesale
supported by the spell refactor - any atom you pass into the cast chain
should "just work ™️ ", either rejecting if it fails the valid target
check or doing the spell effects as if the atom passed was the caster.
## Changelog
🆑 Melbert
add: PAIs can now cast wizard spells should they have any.
add: AIs located in intellicards can now cast wizard spells should they
have any.
add: Some spells, such as AoE or conjure spells, are now castable from
within Mechas or Clown Cars. To varying degrees of success.
add: Knock will now unlock and open closets you are hiding within.
add: Repulse will now throw open closets you are hiding within.
/🆑
* Allows for some locs to have spells cast while inside, such as PAI cards (for PAIs), AI cards (for AIs), and mechas
---------
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Adds chromosome effects to Cryokinesis, Shocktouch, Chameleon, and Webbing mutations. (#71118)
Cryokinesis instability up by 10 (from 20 to 30)
Cryokinesis base cooldown up by 1 second (from 15 to 16) now accepts
energetic chromosomes (8 seconds when applied)
Shock touch instability up by 5 (from 30 to 35) now accepts both
energetic and power chromosomes
Shock touch cooldown up by 2 (from 10 to 12) (cooldown of 6 when
energetic is applied)
If a power chromosome is applied Shock touch does a weak 7500 power
(I`ve seen it hit from 5-7 damage) tesla shock with range of 7 when used
on a viable target (extra damage does not apply to target, no you cant
use it on yourself, no you cant use it on someone that is shock immune,
yes you have to put yourself in harms way to apply the tesla shock.)
(The vars for the tesla shock can be edited by admins for events/abuse)
Chameleon now accepts power chromosomes to fully stealth about 3 seconds
faster.
Webbing now accepts energetic chromosomes
* ty snakebitten
Co-authored-by: moocowswag <62126254+moocowswag@users.noreply.github.com>
* Completely removes `proc_holders` from existence. Refactors all wizard, xeno, spider, and genetics powers to be actions. Also refactors and sorts ton of accompanying code.
* our changes
* yes
* 0
* Update blackmesa.dmm
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* Adds cryokinesis and renames the cold resistence file to space adaptation
* adds cryokinesis
* fixes icon conflict
is there actually a proper way to fix them thats not copying master and reimplimenting your own sprites?
* fixes a typo and lowers instability of cryokines by 5
* Apply suggestions from code review
Co-Authored-By: Time-Green <timkoster1@hotmail.com>
* maybe reverts line ending?
* unfucks flags?
* probably unfucks line endings
i swear to fucking god why does it even do this. i never even touched the file and reverting it to master doesnt do anything. fuck you git