mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-22 12:41:09 +01:00
## About The Pull Request This PR makes many small adjustments to the textual content of chaplain sects. Most changes are for grammar, consistency with game mechanics, and (to a much lesser extent) thematic appropriateness. <details><summary><s>A <i>small</i> probability/easter egg has also been introduced where. . .</summary> . . .dream sect chaplains may find their visions of an ascended Knock heretic clouded with a labyrinthine equivalent. </s></details> ## Why It's Good For The Game Improvements to grammar (hopefully) equate to improvements in readability. If anything seems amiss then I should be able to adjust or explain it. ## Changelog 🆑 spellcheck: Proofread most text associated with chaplain sects. /🆑
92 lines
4.3 KiB
Plaintext
92 lines
4.3 KiB
Plaintext
/**
|
|
* Deaconize
|
|
* Makes a sentient, non-cult member of the station into a Holy person, able to use bibles & other chap gear.
|
|
* Is a one-time use ability, given to all sects that don't have their own variation of it.
|
|
*/
|
|
/datum/religion_rites/deaconize
|
|
name = "Deaconize"
|
|
desc = "Converts someone to your sect. They must be willing, so the first invocation will only prompt them to join. \
|
|
They will gain the same holy abilities as you. This is a one-time use rite, so make sure they are worthy!"
|
|
ritual_length = 30 SECONDS
|
|
ritual_invocations = list(
|
|
"A good, honorable person has been brought here by faith ...",
|
|
"With their hands ready to serve ...",
|
|
"Heart ready to listen ...",
|
|
"And soul ready to follow ...",
|
|
"May we offer our own hand in return ..."
|
|
)
|
|
invoke_msg = "And use them to the best of our abilities."
|
|
rite_flags = RITE_ALLOW_MULTIPLE_PERFORMS | RITE_ONE_TIME_USE
|
|
|
|
///The person currently being deaconized.
|
|
var/mob/living/carbon/human/potential_deacon
|
|
|
|
/datum/religion_rites/deaconize/Destroy()
|
|
potential_deacon = null
|
|
return ..()
|
|
|
|
/datum/religion_rites/deaconize/perform_rite(mob/living/user, atom/religious_tool)
|
|
if(!ismovable(religious_tool))
|
|
to_chat(user, span_warning("This rite requires a religious device that individuals can be buckled to."))
|
|
return FALSE
|
|
var/atom/movable/movable_reltool = religious_tool
|
|
if(!movable_reltool)
|
|
return FALSE
|
|
var/mob/living/carbon/human/possible_deacon = locate() in movable_reltool.buckled_mobs
|
|
if(!possible_deacon)
|
|
to_chat(user, span_warning("Nothing is buckled to the [movable_reltool]!"))
|
|
return FALSE
|
|
if(!is_valid_for_deacon(possible_deacon, user))
|
|
return FALSE
|
|
//no one invited or this is not the invited person
|
|
if(!potential_deacon || (possible_deacon != potential_deacon))
|
|
INVOKE_ASYNC(src, PROC_REF(invite_deacon), possible_deacon)
|
|
to_chat(user, span_notice("They have been offered the opportunity to join our ranks. Wait for them to decide and try again."))
|
|
return FALSE
|
|
return ..()
|
|
|
|
/datum/religion_rites/deaconize/invoke_effect(mob/living/carbon/human/user, atom/movable/religious_tool)
|
|
. = ..()
|
|
if(!(potential_deacon in religious_tool.buckled_mobs)) //checks one last time if the right corpse is still buckled
|
|
to_chat(user, span_warning("[potential_deacon] is no longer on the altar!"))
|
|
return FALSE
|
|
if(potential_deacon.stat != CONSCIOUS)
|
|
to_chat(user, span_warning("[potential_deacon] has to be conscious for the rite to work!"))
|
|
return FALSE
|
|
if(!potential_deacon.mind)
|
|
to_chat(user, span_warning("[potential_deacon]'s mind appears to be elsewhere!"))
|
|
return FALSE
|
|
if(IS_CULTIST(potential_deacon))//what the fuck?!
|
|
to_chat(user, span_warning("[GLOB.deity] has seen a true, dark evil in [potential_deacon]'s heart, and they have been smitten!"))
|
|
playsound(get_turf(religious_tool), 'sound/effects/pray.ogg', 50, TRUE)
|
|
potential_deacon.gib(DROP_ORGANS|DROP_BODYPARTS)
|
|
return FALSE
|
|
var/datum/brain_trauma/special/honorbound/honor = user.has_trauma_type(/datum/brain_trauma/special/honorbound)
|
|
if(honor && (potential_deacon in honor.guilty))
|
|
honor.guilty -= potential_deacon
|
|
to_chat(user, span_notice("[GLOB.deity] has bound [potential_deacon] to the code! They are now a holy role (albeit the lowest level of such)!"))
|
|
potential_deacon.mind.set_holy_role(HOLY_ROLE_DEACON)
|
|
GLOB.religious_sect.on_conversion(potential_deacon)
|
|
playsound(get_turf(religious_tool), 'sound/effects/pray.ogg', 50, TRUE)
|
|
return TRUE
|
|
|
|
///Helper if the passed possible_deacon is valid to become a deacon or not.
|
|
/datum/religion_rites/deaconize/proc/is_valid_for_deacon(mob/living/carbon/human/possible_deacon, mob/living/user)
|
|
if(possible_deacon.stat != CONSCIOUS)
|
|
to_chat(user, span_warning("[possible_deacon] needs to be alive and conscious to join!"))
|
|
return FALSE
|
|
if(possible_deacon.mind && possible_deacon.mind.holy_role)
|
|
to_chat(user, span_warning("[possible_deacon] is already a member of the religion!"))
|
|
return FALSE
|
|
return TRUE
|
|
|
|
/**
|
|
* Async proc that waits for a response on joining the sect.
|
|
* If they accept, the deaconize rite can now recruit them instead of just offering more invites.
|
|
*/
|
|
/datum/religion_rites/deaconize/proc/invite_deacon(mob/living/carbon/human/invited)
|
|
var/ask = tgui_alert(invited, "Join [GLOB.deity]? You will be expected to follow the chaplain's order.", "Invitation", list("Yes", "No"), 60 SECONDS)
|
|
if(ask != "Yes")
|
|
return
|
|
potential_deacon = invited
|