mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
Cultist shades made by non-cultists will now drop their HuD, and have a warning message. (#21806)
* Non-cult shades HuDs * succ
This commit is contained in:
@@ -307,8 +307,8 @@
|
|||||||
qdel(add_target)
|
qdel(add_target)
|
||||||
return
|
return
|
||||||
|
|
||||||
message_admins("BLOODCULT: [key_name(body)] has been soul-stoned by [key_name(user)].")
|
message_admins("BLOODCULT: [key_name(body)] has been soul-stoned by [key_name(user)][iscultist(user) ? ", a cultist." : "a NON-cultist."].")
|
||||||
log_admin("BLOODCULT: [key_name(body)] has been soul-stoned by [key_name(user)].")
|
log_admin("BLOODCULT: [key_name(body)] has been soul-stoned by [key_name(user)][iscultist(user) ? ", a cultist." : "a NON-cultist."].")
|
||||||
|
|
||||||
//Creating a shade inside the stone and putting the victim in control
|
//Creating a shade inside the stone and putting the victim in control
|
||||||
var/mob/living/simple_animal/shade/shadeMob = new(src)//put shade in stone
|
var/mob/living/simple_animal/shade/shadeMob = new(src)//put shade in stone
|
||||||
@@ -329,10 +329,9 @@
|
|||||||
dir = NORTH
|
dir = NORTH
|
||||||
update_icon()
|
update_icon()
|
||||||
user.update_inv_hands()
|
user.update_inv_hands()
|
||||||
to_chat(shadeMob, "Your soul has been captured! You are now bound to [user.name]'s will, help them suceed in their goals at all costs.")
|
to_chat(shadeMob, "<span class='notice'>Your soul has been captured! You are now bound to [user.name]'s will, help them succeed in their goals at all costs.</span>")
|
||||||
to_chat(user, "<span class='notice'>[true_name]'s soul has been ripped from their body and stored within the soul stone.</span>")
|
to_chat(user, "<span class='notice'>[true_name]'s soul has been ripped from their body and stored within the soul stone.</span>")
|
||||||
|
|
||||||
|
|
||||||
//Is our user a cultist? Then you're a cultist too now!
|
//Is our user a cultist? Then you're a cultist too now!
|
||||||
if (iscultist(user))
|
if (iscultist(user))
|
||||||
var/datum/role/cultist/newCultist = new
|
var/datum/role/cultist/newCultist = new
|
||||||
@@ -346,6 +345,12 @@
|
|||||||
newCultist.conversion["soulstone"] = user
|
newCultist.conversion["soulstone"] = user
|
||||||
cult_risk(user)//risk of exposing the cult early if too many soul trappings
|
cult_risk(user)//risk of exposing the cult early if too many soul trappings
|
||||||
|
|
||||||
|
else
|
||||||
|
if (iscultist(shadeMob))
|
||||||
|
to_chat(shadeMob, "<span class='userdanger'>Your master is NOT a cultist, but you are. You are still to follow their commands and help them in their goal.</span>")
|
||||||
|
to_chat(shadeMob, "<span class='sinister'>Your loyalty to Nar-Sie temporarily wanes, but the God takes his toll on your treacherous mind. You only remember of who converted you.</span>")
|
||||||
|
shadeMob.mind.decult()
|
||||||
|
|
||||||
//Pretty particles
|
//Pretty particles
|
||||||
var/turf/T1 = get_turf(target)
|
var/turf/T1 = get_turf(target)
|
||||||
var/turf/T2 = null
|
var/turf/T2 = null
|
||||||
|
|||||||
@@ -36,20 +36,23 @@
|
|||||||
/datum/role/cultist/PostMindTransfer(var/mob/living/new_character)
|
/datum/role/cultist/PostMindTransfer(var/mob/living/new_character)
|
||||||
. = ..()
|
. = ..()
|
||||||
if (issilicon(new_character))
|
if (issilicon(new_character))
|
||||||
antag.antag_roles -= CULTIST
|
antag.decult()
|
||||||
antag.current.remove_language(LANGUAGE_CULT)
|
|
||||||
for(var/spell/cult/spell_to_remove in antag.current.spell_list)
|
|
||||||
antag.current.remove_spell(spell_to_remove)
|
|
||||||
if (src in blood_communion)
|
|
||||||
blood_communion.Remove(src)
|
|
||||||
update_faction_icons()
|
|
||||||
return
|
|
||||||
update_cult_hud()
|
update_cult_hud()
|
||||||
antag.current.add_language(LANGUAGE_CULT)
|
antag.current.add_language(LANGUAGE_CULT)
|
||||||
if((ishuman(antag.current) || ismonkey(antag.current)) && !(locate(/spell/cult) in antag.current.spell_list))
|
if((ishuman(antag.current) || ismonkey(antag.current)) && !(locate(/spell/cult) in antag.current.spell_list))
|
||||||
antag.current.add_spell(new /spell/cult/trace_rune, "cult_spell_ready", /obj/abstract/screen/movable/spell_master/bloodcult)
|
antag.current.add_spell(new /spell/cult/trace_rune, "cult_spell_ready", /obj/abstract/screen/movable/spell_master/bloodcult)
|
||||||
antag.current.add_spell(new /spell/cult/erase_rune, "cult_spell_ready", /obj/abstract/screen/movable/spell_master/bloodcult)
|
antag.current.add_spell(new /spell/cult/erase_rune, "cult_spell_ready", /obj/abstract/screen/movable/spell_master/bloodcult)
|
||||||
|
|
||||||
|
/datum/mind/proc/decult()
|
||||||
|
antag_roles -= CULTIST
|
||||||
|
current.remove_language(LANGUAGE_CULT)
|
||||||
|
for(var/spell/cult/spell_to_remove in current.spell_list)
|
||||||
|
current.remove_spell(spell_to_remove)
|
||||||
|
var/datum/role/cultist/C = GetRole(CULTIST)
|
||||||
|
if (C in blood_communion)
|
||||||
|
blood_communion.Remove(C)
|
||||||
|
update_faction_icons()
|
||||||
|
|
||||||
/datum/role/cultist/process()
|
/datum/role/cultist/process()
|
||||||
..()
|
..()
|
||||||
if (holywarning_cooldown > 0)
|
if (holywarning_cooldown > 0)
|
||||||
|
|||||||
Reference in New Issue
Block a user