diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm
index 51c8803cee..e8a07fc8c5 100644
--- a/code/modules/antagonists/cult/runes.dm
+++ b/code/modules/antagonists/cult/runes.dm
@@ -185,6 +185,9 @@ structure_check() searches for nearby cultist structures required for the invoca
color = RUNE_COLOR_OFFER
req_cultists = 1
rune_in_use = FALSE
+ var/mob/living/currentconversionman
+ var/conversiontimeout
+ var/conversionresult
/obj/effect/rune/convert/do_invoke_glow()
return
@@ -241,6 +244,21 @@ structure_check() searches for nearby cultist structures required for the invoca
to_chat(M, "Something is shielding [convertee]'s mind!")
log_game("Offer rune failed - convertee had anti-magic")
return 0
+ to_chat(convertee, "Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible, truth. The veil of reality has been ripped away \
+ and something evil takes root.")
+ to_chat(convertee, "Do you wish to embrace the Geometer of Blood? Click here to stop resisting the truth. Or you could choose to continue resisting...")
+ currentconversionman = convertee
+ conversiontimeout = world.time + (10 SECONDS)
+ convertee.Stun(100)
+ conversionresult = FALSE
+ while(world.time < conversiontimeout && convertee && !conversionresult)
+ stoplag(1)
+ currentconversionman = null
+ if(convertee && get_turf(convertee) != get_turf(src))
+ return FALSE
+ if(!conversionresult && convertee)
+ do_sacrifice(convertee, invokers)
+ return FALSE
var/brutedamage = convertee.getBruteLoss()
var/burndamage = convertee.getFireLoss()
if(brutedamage || burndamage)
@@ -252,8 +270,6 @@ structure_check() searches for nearby cultist structures required for the invoca
SSticker.mode.add_cultist(convertee.mind, 1)
new /obj/item/melee/cultblade/dagger(get_turf(src))
convertee.mind.special_role = ROLE_CULTIST
- to_chat(convertee, "Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible, truth. The veil of reality has been ripped away \
- and something evil takes root.")
to_chat(convertee, "Assist your new compatriots in their dark dealings. Your goal is theirs, and theirs is yours. You serve the Geometer above all else. Bring it back.\
")
if(ishuman(convertee))
@@ -313,6 +329,12 @@ structure_check() searches for nearby cultist structures required for the invoca
sacrificial.gib()
return TRUE
+/obj/effect/rune/convert/Topic(href, href_list)
+ if(href_list["signmeup"])
+ if(currentconversionman == usr)
+ conversionresult = TRUE
+ else
+ to_chat(usr, "Your fate has already been set in stone.")
/obj/effect/rune/empower