Skip to content

Commit 317d2a3

Browse files
author
Ava
committed
Polishing and consistency
1 parent de64c7d commit 317d2a3

File tree

11 files changed

+31
-21
lines changed

11 files changed

+31
-21
lines changed

code/game/gamemodes/cult/arcane_tome.dm

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,8 @@
9090
return
9191
. = ..()
9292

93+
/// Causes `user` to attempt to create a rune of type `rune_type`, using their blood (or equivalent) as the medium.
94+
/// Inflicts a small amount of damage to the hands and creates blood decals in the process that remain if interrupted.
9395
/obj/item/arcane_tome/proc/scribe_rune(mob/living/user, obj/effect/rune_type)
9496
if (locate(/obj/effect/rune) in get_turf(user))
9597
to_chat(user, SPAN_WARNING("You can only fit one rune on any given space."))

code/game/gamemodes/cult/cultify/mob.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
G.invisibility = 0
2929
to_chat(G, "<span class='sinister'>You feel relieved as what's left of your soul finally escapes its prison of flesh.</span>")
3030

31-
cult.harvested += G.mind
31+
LAZYADD(cult.harvested, G.mind)
3232
else
3333
dust()
3434

code/game/gamemodes/cult/runes/_rune.dm

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -78,23 +78,24 @@
7878
/**
7979
* Checks if a given mob can participate as an invoker for this rune.
8080
*
81-
* By default, a mob must be a human, a cultist, and able to speak.
81+
* By default, a mob must be a human or construct, a cultist, and able to speak.
8282
* Arguments:
8383
* * `invoker` - The mob being checked as a possible contributor
8484
* * `silent` - If non-true, shows an error message to the mob being checked. Defaults to `TRUE`
8585
*/
8686
/obj/effect/rune/proc/can_contribute(mob/living/invoker, silent = TRUE)
8787
var/fail_message
88-
if (!ishuman(invoker))
89-
return
90-
var/mob/living/carbon/human/H = invoker
91-
if (!iscultist(H))
88+
if (!iscultist(invoker))
9289
fail_message = "You can't mouth the arcane scratchings without fumbling over them."
93-
else if (H.is_muzzled() || H.silent || (H.sdisabilities & MUTE))
94-
fail_message = "You can't speak the words of \the [src]."
90+
if (ishuman(invoker))
91+
var/mob/living/carbon/human/H = invoker
92+
if (H.is_muzzled() || H.silent || (H.sdisabilities & MUTE))
93+
fail_message = "You can't speak the words of \the [src]."
94+
else if (!istype(invoker, /mob/living/simple_mob/construct))
95+
fail_message = "Your mind cannot comprehend the words of \the [src]."
9596
if (fail_message)
9697
if (!silent)
97-
to_chat(H, SPAN_WARNING(fail_message))
98+
to_chat(invoker, SPAN_WARNING(fail_message))
9899
return
99100
return TRUE
100101

code/game/gamemodes/cult/runes/sacrifice.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@
6262
if (sacrificing.mind && cult.sacrifice_target == sacrificing.mind)
6363
for (var/mob/living/C in invokers)
6464
to_chat(C, SPAN_OCCULT("The Geometer of Blood is sated. Your objective is now complete."))
65-
cult.sacrificed += sacrificing
65+
LAZYADD(cult.sacrificed, sacrificing)
6666
else
6767
for (var/mob/living/C in invokers)
6868
to_chat(C, SPAN_OCCULT("The Geometer of Blood feasts on your sacrifice. You have pleased It."))

code/game/gamemodes/cult/runes/tear_reality.dm

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@
1010
if (narsie_cometh)
1111
to_chat(invoker, SPAN_WARNING("The Geometer has already been called forth."))
1212
return
13+
else if (!cult.allow_narsie)
14+
to_chat(invoker, SPAN_WARNING("The Geometer does not wish the veil destroyed here this day."))
15+
return
1316
return TRUE
1417

1518
/obj/effect/rune/tear_reality/invoke(list/invokers)

code/game/gamemodes/cult/runes/teleport.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
/obj/effect/rune/teleport/examine(mob/user, infix, suffix)
1010
. = ..()
1111
if (iscultist(user) || isobserver(user))
12-
. += SPAN_DANGER("This rune has a key word of \"[key_word]\".")
12+
. += SPAN_DANGER("This rune's key word is \"[key_word]\".")
1313

1414
/obj/effect/rune/teleport/after_scribe(mob/living/author)
1515
var/word = input(author, "Choose a key word for this rune.", rune_name) as null|anything in cult.english_words

code/game/gamemodes/cult/talismans/_talisman.dm

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@
3535
return
3636
return ..()
3737

38+
/// The per-type proc for the talisman actually doing something on activation. This is what you want to override.
39+
/// Some talismans (like Stun) have their own logic and thus ignore this proc.
3840
/obj/item/paper/talisman/proc/invoke(mob/living/user)
3941
return
4042

code/game/gamemodes/cult/talismans/armor.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,5 @@
1212
var/datum/gender/G = gender_datums[user.get_visible_gender()]
1313
user.visible_message(
1414
SPAN_DANGER("\The [src] expands to briefly envelop \the [user]'s body before [G.he] tears through it in a gushing spurt of black sludge."),
15-
SPAN_DANGER("The talisman expands to wrap you tightly, and you allow it to shroud you with tainted magmellite before you tear through the un-paper.")
15+
SPAN_NOTICE("The talisman expands to wrap you tightly, and you allow it to shroud you with tainted magmellite before you tear through the un-paper.")
1616
)

code/game/gamemodes/cult/talismans/teleport.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
/obj/item/paper/talisman/teleport/examine(mob/user)
99
. = ..()
1010
if (iscultist(user) || isobserver(user))
11-
. += SPAN_OCCULT("Its key word is \"[key_word]\".")
11+
. += SPAN_DANGER("This talisman's key word is \"[key_word]\".")
1212

1313
/obj/item/paper/talisman/teleport/invoke(mob/living/user)
1414
var/list/runes

code/game/gamemodes/objective.dm

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -861,7 +861,7 @@ var/global/list/all_objectives = list()
861861
if(target) explanation_text = "Sacrifice [target.name], the [target.assigned_role]. You will need the sacrifice rune (Hell blood join) and three acolytes to do so."
862862

863863
/datum/objective/cult/sacrifice/check_completion()
864-
return (target && cult && !cult.sacrificed.Find(target))
864+
return (target && cult && LAZYFIND(cult.sacrificed, target))
865865

866866
/datum/objective/rev/find_target()
867867
..()
@@ -896,4 +896,3 @@ var/global/list/all_objectives = list()
896896
rval = 2
897897
return 0
898898
return rval
899-

0 commit comments

Comments
 (0)