8000 A bunch of quirk refactors + improvements by Absolucy · Pull Request #4642 · Monkestation/Monkestation2.0 · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

A bunch of quirk refactors + improvements #4642

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 18 commits into from
Dec 31, 2024

Conversation

Absolucy
Copy link
Member
@Absolucy Absolucy commented Dec 21, 2024

About The Pull Request

Why It's Good For The Game

nice for things to work, it's cleaner code, and just better overall

Changelog

🆑
refactor: Cleaned up and refactored quite a bit of code related to quirks.
fix: Quirks should properly transfer on cloning now.
fix: Fixed the dwarfism and gigantism quirks being broken with bloodsuckers and such.
fix: Stowaways should no longer have the chance to spawn in lockers where they will immediately die from no air or something.
/:cl:

@Absolucy Absolucy added Process: do not merge don't merge this ffs Code: Fix fix da bug Feature: Refactor/Rework Completely redoing a larger thing / recoding a thing labels Dec 21, 2024
@github-actions github-actions bot added the Merge Conflict DO NOT RENAME THIS LABEL label Dec 24, 2024
@github-actions github-actions bot removed the Merge Conflict DO NOT RENAME THIS LABEL label Dec 25, 2024
@Absolucy Absolucy marked this pull request as ready for review December 25, 2024 21:00
@Absolucy Absolucy removed the Process: do not merge don't merge this ffs label Dec 25, 2024
ThePooba pushed a commit that referenced this pull request Dec 29, 2024
* Restores Oozling wetness system. Bring a Towel.
-Restores dormant Oozling wetness system
-Makes wetness affect unconscious Oozlings.
-Removes flat bloodloss from getting wet.

* Oozling core gps Fix
-Fixes bug where core still broadcasting after crushing
-Fixes bug being unable to crush a core with a off gps
-Adds a bit of flavor text for crushing cores with off gps

* fix: Dup/Del Bug with chasms.
- Ensures items are properly transferred to the core to prevent conflicts between overlapping movement mechanics. e.g. Chasms

* fix: Limb implants being voided when dismemebered
-If the limb has an implant it will drop them to the floor instead of voiding it.

* Readds oozling melting from touch water sources.

* fix: Chest and Cavity implants. Revive visual bug
-Implants that go into the chest now drop unpon revival
-Cavity implant objects now drop unpon revival
-Fixes visual bugs caused by reviving a oozling core
-Minor grammar fixes

* Restores Oozling healing and tones it down
-Restores oozlings healing ability from plasma
-Heals 2.5 shared between heal and brute
-Healing is disabled by hydrophobia or if Oozlings skin reaches cold limit

* Refactor item core storage system
-General refactoring
-Added filters for banned items and allowed implants and organs
-Fixes bug with Nuclear Authentation Disk. Resolve other protected items with the banned items list.

* Allows external organs to be stored and saved
-External features (Not Anime Traits) such as tails wings antenna will be removed and stored in the core

* fix: Core can now case and store injector implants
-Oozling cores now recase injector implants before storing
-Minor fixes

* add: Oozlings scream and jitter upon revive

* fix: Resolves (#4219)

* Minor text fix

* Removes hyno plasma remineder when souless.

* fix:Legions absorb oozling core and drops on death

* Should make gibbing deaths delete the core

* Fix Oozling ability status effects remaining

* Refix eyesight repair clean up from #4584

* For code testing

* Refactored core item proccessing. Deep item filter

* Fixes quirk item duplications and rerolls

* Fixes hydrophobia blocking touch water

* bal moves revival effects to nugget revivals

* Properly removes and fixes blindess.

* Revival limb removal refeactor.
	-Moves the slime blood drop from drop_limb to dismemberment
	-nugget revival now uses drop_limb allowing for the body and UI to update properly.
	-head decapitations now drop contents except normal eyes
	-makes revival compatable with bright eyes. No more duping eyes.

* Various small fixes picked 09cc588 from PR #4269

* Quick compat fix for TM #4642
@Absolucy Absolucy merged commit d33c200 into Monkestation:master Dec 31, 2024
24 checks passed
@Absolucy Absolucy deleted the quirk-improvements branch December 31, 2024 07:54
github-actions bot added a commit that referenced this pull request Dec 31, 2024
ThePooba pushed a commit that referenced this pull request Jan 7, 2025
* Restores Oozling wetness system. Bring a Towel.
-Restores dormant Oozling wetness system
-Makes wetness affect unconscious Oozlings.
-Removes flat bloodloss from getting wet.

* Oozling core gps Fix
-Fixes bug where core still broadcasting after crushing
-Fixes bug being unable to crush a core with a off gps
-Adds a bit of flavor text for crushing cores with off gps

* fix: Dup/Del Bug with chasms.
- Ensures items are properly transferred to the core to prevent conflicts between overlapping movement mechanics. e.g. Chasms

* fix: Limb implants being voided when dismemebered
-If the limb has an implant it will drop them to the floor instead of voiding it.

* Readds oozling melting from touch water sources.

* fix: Chest and Cavity implants. Revive visual bug
-Implants that go into the chest now drop unpon revival
-Cavity implant objects now drop unpon revival
-Fixes visual bugs caused by reviving a oozling core
-Minor grammar fixes

* Restores Oozling healing and tones it down
-Restores oozlings healing ability from plasma
-Heals 2.5 shared between heal and brute
-Healing is disabled by hydrophobia or if Oozlings skin reaches cold limit

* Refactor item core storage system
-General refactoring
-Added filters for banned items and allowed implants and organs
-Fixes bug with Nuclear Authentation Disk. Resolve other protected items with the banned items list.

* Allows external organs to be stored and saved
-External features (Not Anime Traits) such as tails wings antenna will be removed and stored in the core

* fix: Core can now case and store injector implants
-Oozling cores now recase injector implants before storing
-Minor fixes

* add: Oozlings scream and jitter upon revive

* fix: Resolves (#4219)

* Minor text fix

* Removes hyno plasma remineder when souless.

* fix:Legions absorb oozling core and drops on death

* Should make gibbing deaths delete the core

* Fix Oozling ability status effects remaining

* Refix eyesight repair clean up from #4584

* For code testing

* Refactored core item proccessing. Deep item filter

* Fixes quirk item duplications and rerolls

* Fixes hydrophobia blocking touch water

* bal moves revival effects to nugget revivals

* Properly removes and fixes blindess.

* Revival limb removal refeactor.
	-Moves the slime blood drop from drop_limb to dismemberment
	-nugget revival now uses drop_limb allowing for the body and UI to update properly.
	-head decapitations now drop contents except normal eyes
	-makes revival compatable with bright eyes. No more duping eyes.

* Various small fixes picked 09cc588 from PR #4269

* Quick compat fix for TM #4642

* Undoes gibbing core deletion fix.

* Restores DNA gib removal check. GC changes.
notghosti pushed a commit to notghosti/Monkestation2.0 that referenced this pull request Jan 9, 2025
* Restores Oozling wetness system. Bring a Towel.
-Restores dormant Oozling wetness system
-Makes wetness affect unconscious Oozlings.
-Removes flat bloodloss from getting wet.

* Oozling core gps Fix
-Fixes bug where core still broadcasting after crushing
-Fixes bug being unable to crush a core with a off gps
-Adds a bit of flavor text for crushing cores with off gps

* fix: Dup/Del Bug with chasms.
- Ensures items are properly transferred to the core to prevent conflicts between overlapping movement mechanics. e.g. Chasms

* fix: Limb implants being voided when dismemebered
-If the limb has an implant it will drop them to the floor instead of voiding it.

* Readds oozling melting from touch water sources.

* fix: Chest and Cavity implants. Revive visual bug
-Implants that go into the chest now drop unpon revival
-Cavity implant objects now drop unpon revival
-Fixes visual bugs caused by reviving a oozling core
-Minor grammar fixes

* Restores Oozling healing and tones it down
-Restores oozlings healing ability from plasma
-Heals 2.5 shared between heal and brute
-Healing is disabled by hydrophobia or if Oozlings skin reaches cold limit

* Refactor item core storage system
-General refactoring
-Added filters for banned items and allowed implants and organs
-Fixes bug with Nuclear Authentation Disk. Resolve other protected items with the banned items list.

* Allows external organs to be stored and saved
-External features (Not Anime Traits) such as tails wings antenna will be removed and stored in the core

* fix: Core can now case and store injector implants
-Oozling cores now recase injector implants before storing
-Minor fixes

* add: Oozlings scream and jitter upon revive

* fix: Resolves (Monkestation#4219)

* Minor text fix

* Removes hyno plasma remineder when souless.

* fix:Legions absorb oozling core and drops on death

* Should make gibbing deaths delete the core

* Fix Oozling ability status effects remaining

* Refix eyesight repair clean up from Monkestation#4584

* For code testing

* Refactored core item proccessing. Deep item filter

* Fixes quirk item duplications and rerolls

* Fixes hydrophobia blocking touch water

* bal moves revival effects to nugget revivals

* Properly removes and fixes blindess.

* Revival limb removal refeactor.
	-Moves the slime blood drop from drop_limb to dismemberment
	-nugget revival now uses drop_limb allowing for the body and UI to update properly.
	-head decapitations now drop contents except normal eyes
	-makes revival compatable with bright eyes. No more duping eyes.

* Various small fixes picked 09cc588 from PR Monkestation#4269

* Quick compat fix for TM Monkestation#4642
notghosti pushed a commit to notghosti/Monkestation2.0 that referenced this pull request Jan 9, 2025
* A bunch of quirk refactors + improvements

* Fix a runtime with the heterochromatic quirk (usually during credits)

* properly clone heterochromatic and phobia, dont clone junkie/smoker, prevent runtimes in bilingual

* fix test failures related to clown disbelief

* Add some medical record text, exclude some others from scans, and sort variables

* okay this ain't needed

* ???

* okay im just trying to see wtf is going on with CI now

* lmao of fucking course

* yeah fuck it lets visually align all of those bc why not

* Fix invalid args being passed to `on_clone`

* move sign language to `add()`

* fix clowns not believing in themselves

* get rid of `QUIRK_BRIGHT_EYES`

* change filename to avoid conflict with Monkestation#4140 hopefully??
notghosti pushed a commit to notghosti/Monkestation2.0 that referenced this pull request Jan 9, 2025
notghosti pushed a commit to notghosti/Monkestation2.0 that referenced this pull request Jan 9, 2025
* Restores Oozling wetness system. Bring a Towel.
-Restores dormant Oozling wetness system
-Makes wetness affect unconscious Oozlings.
-Removes flat bloodloss from getting wet.

* Oozling core gps Fix
-Fixes bug where core still broadcasting after crushing
-Fixes bug being unable to crush a core with a off gps
-Adds a bit of flavor text for crushing cores with off gps

* fix: Dup/Del Bug with chasms.
- Ensures items are properly transferred to the core to prevent conflicts between overlapping movement mechanics. e.g. Chasms

* fix: Limb implants being voided when dismemebered
-If the limb has an implant it will drop them to the floor instead of voiding it.

* Readds oozling melting from touch water sources.

* fix: Chest and Cavity implants. Revive visual bug
-Implants that go into the chest now drop unpon revival
-Cavity implant objects now drop unpon revival
-Fixes visual bugs caused by reviving a oozling core
-Minor grammar fixes

* Restores Oozling healing and tones it down
-Restores oozlings healing ability from plasma
-Heals 2.5 shared between heal and brute
-Healing is disabled by hydrophobia or if Oozlings skin reaches cold limit

* Refactor item core storage system
-General refactoring
-Added filters for banned items and allowed implants and organs
-Fixes bug with Nuclear Authentation Disk. Resolve other protected items with the banned items list.

* Allows external organs to be stored and saved
-External features (Not Anime Traits) such as tails wings antenna will be removed and stored in the core

* fix: Core can now case and store injector implants
-Oozling cores now recase injector implants before storing
-Minor fixes

* add: Oozlings scream and jitter upon revive

* fix: Resolves (Monkestation#4219)

* Minor text fix

* Removes hyno plasma remineder when souless.

* fix:Legions absorb oozling core and drops on death

* Should make gibbing deaths delete the core

* Fix Oozling ability status effects remaining

* Refix eyesight repair clean up from Monkestation#4584

* For code testing

* Refactored core item proccessing. Deep item filter

* Fixes quirk item duplications and rerolls

* Fixes hydrophobia blocking touch water

* bal moves revival effects to nugget revivals

* Properly removes and fixes blindess.

* Revival limb removal refeactor.
	-Moves the slime blood drop from drop_limb to dismemberment
	-nugget revival now uses drop_limb allowing for the body and UI to update properly.
	-head decapitations now drop contents except normal eyes
	-makes revival compatable with bright eyes. No more duping eyes.

* Various small fixes picked 09cc588 from PR Monkestation#4269

* Quick compat fix for TM Monkestation#4642

* Undoes gibbing core deletion fix.

* Restores DNA gib removal check. GC changes.
Jacquerel pushed a commit to tgstation/tgstation that referenced this pull request Jan 26, 2025
## About The Pull Request

Several quirks that process have some common checks and patterns: only
processing if the mob's stat is conscious or not dead, or not processing
if they have certain traits.

This refactors quirk processing so those checks are a part of
`/datum/quirk` itself, and the quirk will automatically be start/stop
being processed by `SSquirks` based on those conditions, by registering
signals to re-check if the quirk should be processing or not.

This ports said refactor from my downstream PR,
Monkestation/Monkestation2.0#4642 (and is
unaffected by the bug that
Monkestation/Monkestation2.0#4836 fixes, due to
additional refactors regarding trait handling)

## Why It's Good For The Game

Less repetitive code is always better, and leaves less room for errors.
Also, completely stopping the quirk from being processed by `SSquirks`
can save a minuscule amount of CPU time.

## Changelog
:cl:
refactor: Refactored how quirks handle starting/stopping processing.
/:cl:
vinylspiders pushed a commit to NovaSector/NovaSector that refer 8000 enced this pull request Jan 28, 2025
## About The Pull Request

Several quirks that process have some common checks and patterns: only
processing if the mob's stat is conscious or not dead, or not processing
if they have certain traits.

This refactors quirk processing so those checks are a part of
`/datum/quirk` itself, and the quirk will automatically be start/stop
being processed by `SSquirks` based on those conditions, by registering
signals to re-check if the quirk should be processing or not.

This ports said refactor from my downstream PR,
Monkestation/Monkestation2.0#4642 (and is
unaffected by the bug that
Monkestation/Monkestation2.0#4836 fixes, due to
additional refactors regarding trait handling)

## Why It's Good For The Game

Less repetitive code is always better, and leaves less room for errors.
Also, completely stopping the quirk from being processed by `SSquirks`
can save a minuscule amount of CPU time.

## Changelog
:cl:
refactor: Refactored how quirks handle starting/stopping processing.
/:cl:
# Conflicts:
#	code/datums/quirks/_quirk.dm
Iajret pushed a commit to Fluffy-Frontier/FluffySTG that referenced this pull request Jan 30, 2025
## About The Pull Request

Several quirks that process have some common checks and patterns: only
processing if the mob's stat is conscious or not dead, or not processing
if they have certain traits.

This refactors quirk processing so those checks are a part of
`/datum/quirk` itself, and the quirk will automatically be start/stop
being processed by `SSquirks` based on those conditions, by registering
signals to re-check if the quirk should be processing or not.

This ports said refactor from my downstream PR,
Monkestation/Monkestation2.0#4642 (and is
unaffected by the bug that
Monkestation/Monkestation2.0#4836 fixes, due to
additional refactors regarding trait handling)

## Why It's Good For The Game

Less repetitive code is always better, and leaves less room for errors.
Also, completely stopping the quirk from being processed by `SSquirks`
can save a minuscule amount of CPU time.

## Changelog
:cl:
refactor: Refactored how quirks handle starting/stopping processing.
/:cl:
# Conflicts:
#	code/datums/quirks/_quirk.dm
vinylspiders pushed a commit to NovaSector/NovaSector that referenced this pull request Jan 31, 2025
## About The Pull Request

Several quirks that process have some common checks and patterns: only
processing if the mob's stat is conscious or not dead, or not processing
if they have certain traits.

This refactors quirk processing so those checks are a part of
`/datum/quirk` itself, and the quirk will automatically be start/stop
being processed by `SSquirks` based on those conditions, by registering
signals to re-check if the quirk should be processing or not.

This ports said refactor from my downstream PR,
Monkestation/Monkestation2.0#4642 (and is
unaffected by the bug that
Monkestation/Monkestation2.0#4836 fixes, due to
additional refactors regarding trait handling)

## Why It's Good For The Game

Less repetitive code is always better, and leaves less room for errors.
Also, completely stopping the quirk from being processed by `SSquirks`
can save a minuscule amount of CPU time.

## Changelog
:cl:
refactor: Refactored how quirks handle starting/stopping processing.
/:cl:
# Conflicts:
#	code/datums/quirks/_quirk.dm
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Code: Fix fix da bug Feature: Refactor/Rework Completely redoing a larger thing / recoding a thing
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant
0