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

Some more Chaplain QoL #8988

Merged
merged 6 commits into from May 21, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion code/controllers/subsystem/explosion.dm
Expand Up @@ -323,7 +323,7 @@ SUBSYSTEM_DEF(explosions)
var/dist = init_dist

//Phew, that was a close one.
if(holy && (locate(/obj/effect/blessing) in T))
if(holy && T.is_holy())
continue

if(reactionary)
Expand Down
6 changes: 4 additions & 2 deletions code/datums/components/religious_tool.dm
Expand Up @@ -54,8 +54,7 @@
/datum/component/religious_tool/proc/AttemptActions(datum/source, obj/item/the_item, mob/living/user)
SIGNAL_HANDLER
var/turf/T = get_turf(parent)
var/area/A = T.loc
if(!istype(A, /area/chapel))
if(!T.is_holy())
to_chat(user, "<span class='warning'>The [source] can only function in a holy area!</span>")
return COMPONENT_NO_AFTERATTACK

Expand Down Expand Up @@ -242,6 +241,9 @@
if(!can_i_see)
return
examine_list += ("<span class='notice'>Use a bible to interact with this.</span>")
if(user.mind?.holy_role)
var/obj/structure/altar_of_gods/altar = parent
examine_list +=("<span class='notice'>You can tap this with your holy weapon to [altar.anchored ? "un" : ""]anchor it.</span>")
if(!easy_access_sect)
if(operation_flags & RELIGION_TOOL_SECTSELECT)
examine_list += ("<span class='notice'>This looks like it can be used to select a sect.</span>")
Expand Down
2 changes: 1 addition & 1 deletion code/game/alternate_appearance.dm
Expand Up @@ -170,7 +170,7 @@ GLOBAL_LIST_EMPTY(active_alternate_appearances)
add_hud_to(mob)

/datum/atom_hud/alternate_appearance/basic/blessedAware/mobShouldSee(mob/M)
if(M.mind && (M.mind.assigned_role == JOB_NAME_CHAPLAIN))
if(M.mind && M.mind?.holy_role)
return TRUE
if (istype(M, /mob/living/simple_animal/hostile/construct/wraith))
return TRUE
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/empulse.dm
Expand Up @@ -19,7 +19,7 @@

for(var/turf/T as() in spiral_range_turfs(light_range, epicenter))
//Blessing protects from holy EMPS
if(holy && (locate(/obj/effect/blessing) in T))
if(holy && T.is_holy())
continue
for(var/atom/A as() in T)
//Magic check.
Expand Down
8 changes: 8 additions & 0 deletions code/game/turfs/turf.dm
Expand Up @@ -577,3 +577,11 @@ GLOBAL_LIST_EMPTY(created_baseturf_lists)
if(turf_to_check.density || LinkBlockedWithAccess(turf_to_check, caller, ID))
continue
. += turf_to_check

/// Checks if the turf was blessed with holy water OR the area its in is Chapel
/turf/proc/is_holy()
if(locate(/obj/effect/blessing) in src)
return TRUE
if(istype(loc, /area/chapel))
return TRUE
return FALSE
CydiaLamiales marked this conversation as resolved.
Show resolved Hide resolved
2 changes: 1 addition & 1 deletion code/modules/antagonists/cult/cult_items.dm
Expand Up @@ -865,7 +865,7 @@ Striking a noncultist, however, will tear their flesh."}
new /obj/effect/temp_visual/dir_setting/cult/phase(user.loc, user.dir)
var/turf/temp_target = get_turf_in_angle(set_angle, targets_from, 40)
for(var/turf/T in getline(targets_from,temp_target))
if (locate(/obj/effect/blessing, T))
if (T.is_holy())
temp_target = T
playsound(T, 'sound/machines/clockcult/ark_damage.ogg', 50, 1)
new /obj/effect/temp_visual/at_shield(T, T)
Expand Down
2 changes: 1 addition & 1 deletion code/modules/antagonists/revenant/revenant.dm
Expand Up @@ -432,7 +432,7 @@
if(stepTurf.flags_1 & NOJAUNT_1)
to_chat(src, "<span class='warning'>Some strange aura is blocking the way.</span>")
return
if(locate(/obj/effect/blessing) in stepTurf)
if(stepTurf.is_holy())
to_chat(src, "<span class='warning'>Holy energies block your path!</span>")
return
return TRUE
Expand Down
2 changes: 1 addition & 1 deletion code/modules/antagonists/revenant/revenant_abilities.dm
Expand Up @@ -157,7 +157,7 @@
if(stepTurf.flags_1 & NOJAUNT_1)
to_chat(user, "<span class='warning'>Some strange aura blocks your way to spirit realm.</span>")
return
if(locate(/obj/effect/blessing) in stepTurf)
if(stepTurf.is_holy())
to_chat(user, "<span class='warning'>Holy energies block your way to spirit realm!</span>")
return
revenant.phase_shift()
Expand Down
4 changes: 2 additions & 2 deletions code/modules/mob/mob_movement.dm
Expand Up @@ -257,7 +257,7 @@
if(stepTurf.flags_1 & NOJAUNT_1)
to_chat(L, "<span class='warning'>Some strange aura is blocking the way.</span>")
return
if(locate(/obj/effect/blessing) in stepTurf)
if(stepTurf.is_holy())
to_chat(L, "<span class='warning'>Holy energies block your path!</span>")
return
L.forceMove(stepTurf)
Expand All @@ -277,7 +277,7 @@
if(!is_reebe(loccheck.z))
to_chat(L, "<span class='warning'>Some strange aura is blocking the way.</span>")
return
if(locate(/obj/effect/blessing) in stepTurf)
if(stepTurf.is_holy())
to_chat(L, "<span class='warning'>Holy energies block your path!</span>")
return
L.forceMove(stepTurf)
Expand Down
3 changes: 1 addition & 2 deletions code/modules/religion/rites.dm
Expand Up @@ -36,8 +36,7 @@
if(!can_afford(user))
return FALSE
var/turf/T = get_turf(religious_tool)
var/area/A = T.loc
if(!istype(A, /area/chapel))
if(!T.is_holy())
to_chat(user, "<span class='warning'>The altar can only function in a holy area!</span>")
return FALSE
if(!GLOB.religious_sect.altar_anchored)
Expand Down
2 changes: 1 addition & 1 deletion code/modules/spells/spell_types/ethereal_jaunt.dm
Expand Up @@ -100,7 +100,7 @@
if(newLoc.flags_1 & NOJAUNT_1)
to_chat(user, "<span class='warning'>Some strange aura is blocking the way.</span>")
return
if (locate(/obj/effect/blessing, newLoc))
if (newLoc.is_holy())
to_chat(user, "<span class='warning'>Holy energies block your path!</span>")
return

Expand Down