Skip to content
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

Aura rework into mob modifiers. #4818

Draft
wants to merge 1 commit into
base: dev
Choose a base branch
from

Conversation

MistakeNot4892
Copy link
Contributor

@MistakeNot4892 MistakeNot4892 commented Jan 26, 2025

Description of changes

  • Removes /obj/aura.
  • Adds /decl/mob_modifier and /datum/mob_modifier as well as vars and procs to track them on /mob/living.
  • Sets/clears a modifier on the HUD when prone or restrained/buckled.
  • Converts existing auras into modifiers.

https://cdn.discordapp.com/attachments/808112536082841631/1332947606556512286/aFFNpHSmc8.mp4?ex=67971bb2&is=6795ca32&hm=fc578a36349046c99895ad8dd77bf4bde96dad289601fa35f62d06d731feab82&

TODO

  • Add basic structure and HUD elements for modifiers.
  • Track the same modifier coming from multiple sources.
  • Convert drake aura to modifier.
  • Convert personal shields to modifiers.
  • Convert regeneration aura to modifier.
  • Convert radiant aura to modifier.
  • Convert nanoswarm to modifier.
  • Convert rings to use item effects.
  • Convert aura item effect to use a modifier.
  • Convert mech shields to a modifier.
  • Convert mech ballistic shields to a modifier.
  • Convert cloaking to use a modifier.
  • Convert stasis to use a modifier.
  • Integrate the main modifier element with /datum/hud
  • Make HUD marker take a basic icon from the HUD style decl and use overlays.
  • Debounce or otherwise fix up position/offsets for HUD markers.
  • Get a better icon for the prone modifier.
  • Get status condition modifiers to work.
  • Add any additional modifiers that could use a tooltip (druggy, dizzy, etc?)
  • See how the new modifiers work with abilities, maybe lower the default ability screen_loc by one tile.

Final shakedown testing

  • Retest light aura
  • Retest radiant aura
  • Retest personal shields
  • Retest nanoswarm augment
  • Retest drake sifsap aura
  • Retest regeneration aura
  • Retest mech shields
  • Retest stasis
  • Retest cloaking

Why and what will this PR improve

Makes auras/status more obvious and provides immediate information about them via tooltip.
Removes objects (and hence verb refreshes and such) from the concept of a duration status condition.

Authorship

Myself. Basic idea is from Polaris though.

Changelog

🆑
tweak: Modifiers like regeneration or personal shielding will now show at the top of the screen.
/:cl:

@MistakeNot4892 MistakeNot4892 added the work in progress This PR is under development and shouldn't be merged. label Jan 26, 2025
@MistakeNot4892 MistakeNot4892 force-pushed the port/effects branch 9 times, most recently from 07b597d to ac06263 Compare January 28, 2025 13:46
@MistakeNot4892 MistakeNot4892 changed the title Aura rework into status effects. Aura rework into mob modifiers. Jan 28, 2025
@MistakeNot4892 MistakeNot4892 force-pushed the port/effects branch 4 times, most recently from 3b4a155 to c05c9c8 Compare January 29, 2025 07:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
work in progress This PR is under development and shouldn't be merged.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant