diff --git a/code/datums/antagonists/datum_cult.dm b/code/datums/antagonists/datum_cult.dm index 0cda783b09..588a2b7cf8 100644 --- a/code/datums/antagonists/datum_cult.dm +++ b/code/datums/antagonists/datum_cult.dm @@ -37,14 +37,12 @@ message_admins("Cult Sacrifice: Could not find unconvertable or convertable target. WELP!") GLOB.sac_complete = TRUE SSticker.mode.cult_objectives += "sacrifice" - if(GLOB.summon_spots.len) - SSticker.mode.cult_objectives += "eldergod" - else + if(!GLOB.summon_spots.len) while(GLOB.summon_spots.len < SUMMON_POSSIBILITIES) - var/area/summon = pick(GLOB.sortedAreas) + var/area/summon = pick(GLOB.sortedAreas - GLOB.summon_spots) if(summon && (summon.z == ZLEVEL_STATION) && summon.valid_territory) - GLOB.summon_spots |= summon - SSticker.mode.cult_objectives += "eldergod" + GLOB.summon_spots += summon + SSticker.mode.cult_objectives += "eldergod" /datum/antagonist/cult/proc/cult_memorization(datum/mind/cult_mind) var/mob/living/current = cult_mind.current @@ -56,6 +54,7 @@ explanation = "Sacrifice [GLOB.sac_mind], the [GLOB.sac_mind.assigned_role] via invoking a Sacrifice rune with them on it and three acolytes around it." else explanation = "The veil has already been weakened here, proceed to the final objective." + GLOB.sac_complete = TRUE if("eldergod") explanation = "Summon Nar-Sie by invoking the rune 'Summon Nar-Sie'. The summoning can only be accomplished in [english_list(GLOB.summon_spots)] - where the veil is weak enough for the ritual to begin." if(!silent) @@ -160,4 +159,4 @@ bloodmark.Remove(current) throwing.Remove(current) current.update_action_buttons_icon() - current.remove_status_effect(/datum/status_effect/cult_master) \ No newline at end of file + current.remove_status_effect(/datum/status_effect/cult_master) diff --git a/code/game/gamemodes/cult/cult.dm b/code/game/gamemodes/cult/cult.dm index a58c4874dc..76ad53e51c 100644 --- a/code/game/gamemodes/cult/cult.dm +++ b/code/game/gamemodes/cult/cult.dm @@ -53,7 +53,6 @@ /datum/game_mode/cult/pre_setup() cult_objectives += "sacrifice" - cult_objectives += "eldergod" if(config.protect_roles_from_antagonist) restricted_jobs += protected_jobs @@ -102,6 +101,13 @@ GLOB.sac_image = reshape else message_admins("Cult Sacrifice: Could not find unconvertable or convertable target. WELP!") + if(!GLOB.summon_spots.len) + while(GLOB.summon_spots.len < SUMMON_POSSIBILITIES) + var/area/summon = pick(GLOB.sortedAreas - GLOB.summon_spots) + if((summon.z == ZLEVEL_STATION) && summon.valid_territory) + GLOB.summon_spots += summon + cult_objectives += "eldergod" + for(var/datum/mind/cult_mind in cultists_to_cult) equip_cultist(cult_mind.current) update_cult_icons_added(cult_mind) @@ -239,11 +245,11 @@ SSblackbox.add_details("cult_objective","cult_sacrifice|FAIL") if("eldergod") if(!eldergod) - explanation = "Summon Nar-Sie. Success!" + explanation = "Summon Nar-Sie. The summoning can only be accomplished in [english_list(GLOB.summon_spots)].Success!" SSblackbox.add_details("cult_objective","cult_narsie|SUCCESS") SSticker.news_report = CULT_SUMMON else - explanation = "Summon Nar-Sie. Fail." + explanation = "Summon Nar-Sie. The summoning can only be accomplished in [english_list(GLOB.summon_spots)]Fail." SSblackbox.add_details("cult_objective","cult_narsie|FAIL") SSticker.news_report = CULT_FAILURE