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

Prayer "refactor", patrons handle them now (+ underworld prayers) #652

Merged
merged 12 commits into from
Feb 9, 2025

Conversation

tontyGH
Copy link

@tontyGH tontyGH commented Feb 1, 2025

About The Pull Request

Prayers have been refactored so that most prayer behavior is handled by the patron
This means patrons can define their own requirements for prayers, handle hearing them differently
and can respond to rewards differently.

Additonally, there is now a new signal, COMSIG_CARBON_PRAY, which can be registered and provide custom prayer handling
Also includes some minor semi-related cleanup

Underworld Prayers

Spirits were seemingly supposed to be able to pray in the underworld, and would gain special behaviour
However, a logic error in the prayer proc made it so that spirits couldn't pray,
This fixes that, and makes underworld prayers be handled by the underworld area.

Why It's Good For The Game

Stuff like this shouldn't be hard-coded, and patrons should handle stuff that relates to them.
This makes the code a bit more flexible and allows us to make patrons more interesting.

Pre-Merge Checklist

  • You tested this on a local server.
  • This code did not runtime during testing.
  • You documented all of your changes.

Copy link
Author

@tontyGH tontyGH left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Double checked everything, should be good

@tontyGH tontyGH changed the title Prayer "refactor", prayers are handled by patrons Prayer "refactor", patrons handle them now (+ underworld prayers) Feb 1, 2025

/datum/patron/psydon/can_pray(mob/living/carbon/human/follower)
//We just kind of assume the follower is a human here
if(istype(follower.wear_neck, /obj/item/clothing/neck/roguetown/psycross))

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should also check elsewhere, like the wrists... that's where Inquisitors start with theirs. They currently have to awkwardly move it to their necks for a brief moment to pray.

Copy link
Author

@tontyGH tontyGH left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm on mobile and I need to change some stuff

code/game/area/roguetownareas.dm Outdated Show resolved Hide resolved
code/game/area/roguetownareas.dm Outdated Show resolved Hide resolved
code/datums/gods/_patron.dm Outdated Show resolved Hide resolved
@dwasint dwasint merged commit 06ae517 into Vanderlin-Tales-Of-Wine:main Feb 9, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants