Skip to content

Commit

Permalink
Variable invoker texts
Browse files Browse the repository at this point in the history
  • Loading branch information
Ilysen committed Jul 25, 2023
1 parent 5eaa6ff commit f90c891
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 6 deletions.
4 changes: 3 additions & 1 deletion code/game/gamemodes/cult/arcane_tome.dm
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,11 @@
if (!initial(NR.can_write))
continue
var/obj/item/paper/talisman/T = initial(NR.talisman_path)
var/req_invokers = initial(NR.required_invokers)
var/invokers_text = initial(NR.invokers_text)
runes[++runes.len] = list(
"name" = initial(NR.rune_name),
"invokers" = initial(NR.required_invokers),
"invoker_data" = invokers_text != null ? invokers_text : (req_invokers > 1 ? req_invokers : null),
"talisman" = T ? initial(T.tome_desc) : null,
"shorthand" = initial(NR.rune_shorthand) ? initial(NR.rune_shorthand) : initial(NR.rune_desc),
"typepath" = NR
Expand Down
2 changes: 2 additions & 0 deletions code/game/gamemodes/cult/runes/_rune.dm
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@
var/obj/item/paper/talisman/talisman_path
/// How many cultists need to be adjacent to this rune and able to speak in order to activate it.
var/required_invokers = 1
/// If non-null, this will be displayed in the rune's tome description instead of the invoker number.
var/invokers_text
/// The actual name of this rune (like "Sacrifice", "Convert", or so on), shown to cultists or ghosts that examine it.
var/rune_name
/// Very short description of the rune's functionality, to be shown as a tooltip in the tome.
Expand Down
3 changes: 2 additions & 1 deletion code/game/gamemodes/cult/runes/sacrifice.dm
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
/obj/effect/rune/sacrifice
rune_name = "Sacrifice"
rune_desc = "Offer a living thing or a body to the Geometer of Blood. Living beings require three invokers to sacrifice, while dead beings require only one."
rune_shorthand = "Offers a creature to the Geometer for consumption."
rune_shorthand = "Offers a creature to the Geometer for consumption. Living beings require three invokers; dead being require only one."
circle_words = list(CULT_WORD_HELL, CULT_WORD_BLOOD, CULT_WORD_JOIN)
invocation = "Barhah hra zar'garis!"
invokers_text = "1 or 3"
var/mob/living/sacrificing

/// Fetches a sacrifice on top of this rune, aiming for the most "valuable" one (by way of species rarity, role, objective, and so on).
Expand Down
8 changes: 4 additions & 4 deletions nano/templates/arcane_tome.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
<br /><br />
The tome is an essential tool, and every cultist should have one unless they have a good reason not to. It's small enough to fit into pockets, webbing, and so on, so it should be easy to find a place to squeeze it. That being said, arcane tomes are strange things to nonbelievers, and security may become concerned if they see one, especially near runes; try and keep it concealed.
<br /><br />
If need be, your tome can serve as a weapon as well. Simply switch to Harm intent and attack your foes with it to deal burn damage. Naturally, it will be abundantly obvious to the target that you are doing something otherworldly and very harmful.
If need be, your tome can serve as a weapon as well. Simply switch to Harm intent and attack your foes with it to deal burn damage. Naturally, doing so will be abundantly obvious to your target and everyone around.
{{else data.archive == 2}}
<b>Runes</b> are eldritch scrawlings, etched with precise shapes and words to invoke the power of Nar-Sie. They are the primary source of your power as a cultist, and they allow you to perform anomalous feats akin to magic. Some runes can be made into <b>talismans</b> that offer something akin to their abilities in a more portable form.
<br /><br />
Expand Down Expand Up @@ -49,8 +49,8 @@
<div class="itemContent">
{{:value.shorthand}}
<br/>
{{if value.invokers > 1}}
<br/><b><i>Required invokers - </i></b>{{:value.invokers}}
{{if value.invoker_data}}
<br/><b><i>Required invokers - </i></b>{{:value.invoker_data}}
{{/if}}
{{if value.talisman}}
<br/><b><i>Talisman effect - </i></b>{{:value.talisman}}
Expand All @@ -63,7 +63,7 @@
<div align="center">
<i>Entries marked with an asterisk (*) can be made into a talisman.</i><br /><br />
{{for data.runes}}
{{:helper.link(value.name + (value.talisman ? " *" : "") + (value.invokers > 1 ? " (" + value.invokers + " invokers)" : ""), null, { "write_rune" : value.typepath })}}
{{:helper.link(value.name + (value.talisman ? " *" : "") + (value.invoker_data ? " (" + value.invoker_data + " invokers)" : ""), null, { "write_rune" : value.typepath })}}
{{/for}}
</div>
{{/if}}
Expand Down

0 comments on commit f90c891

Please sign in to comment.