mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-21 02:57:48 +01:00
Datumizes Cult. (#24379)
* cult 1 * massive data refactor * progress * More crap * IM SCARED IT COMPILES * oops * more fixes * good comment * hell yeah, team control * lol * blamo * blam * More stuff * team refactor * epic merge fail * src not _src_ * more * progress * cult * more stuff * water * goodbye __IMPLIED_TYPE__ * time to undraft * FUCK FUCK FUCK * okay this is better * goodbye todos * fix * order of operations * last fix? maybe * yeah * oops * okay this should be ALL the fixes * wow * hell yeah * wow * fixes duplicate teams + adds more team safeties * how the fuck did this happen * admin objective improvements * wah more bullshit * guh * fuuuuck * fucking hell * fixes
This commit is contained in:
@@ -80,14 +80,14 @@
|
||||
|
||||
/obj/effect/temp_visual/dir_setting/wraith/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = SSticker.cultdat?.wraith_jaunt_in_animation
|
||||
icon_state = GET_CULT_DATA(wraith_jaunt_in_animation, initial(icon_state))
|
||||
|
||||
/obj/effect/temp_visual/dir_setting/wraith/out
|
||||
icon_state = "phase_shift"
|
||||
|
||||
/obj/effect/temp_visual/dir_setting/wraith/out/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = SSticker.cultdat?.wraith_jaunt_out_animation
|
||||
icon_state = GET_CULT_DATA(wraith_jaunt_out_animation, initial(icon_state))
|
||||
|
||||
/obj/effect/temp_visual/dir_setting/tailsweep
|
||||
icon_state = "tailsweep"
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
for(var/mob/M in range(heavy_range, epicenter))
|
||||
SEND_SOUND(M, emp_sound)
|
||||
for(var/atom/T in range(light_range, epicenter))
|
||||
if(cause == "cult" && iscultist(T))
|
||||
if(cause == "cult" && IS_CULTIST(T))
|
||||
continue
|
||||
var/distance = get_dist(epicenter, T)
|
||||
var/will_affect = FALSE
|
||||
|
||||
@@ -180,11 +180,27 @@
|
||||
return
|
||||
if(M.stat != CONSCIOUS)
|
||||
to_chat(user, "<span class='warning'>They must be conscious before you can convert [M.p_them()]!</span>")
|
||||
else if(SSticker.mode.add_revolutionary(M.mind))
|
||||
else if(add_revolutionary(M.mind))
|
||||
times_used-- //Flashes less likely to burn out for headrevs when used for conversion
|
||||
else
|
||||
to_chat(user, "<span class='warning'>This mind seems resistant to [src]!</span>")
|
||||
|
||||
/obj/item/flash/proc/add_revolutionary(datum/mind/converting_mind)
|
||||
var/mob/living/carbon/human/conversion_target = converting_mind.current
|
||||
if(converting_mind.assigned_role in GLOB.command_positions)
|
||||
return FALSE
|
||||
if(!istype(conversion_target))
|
||||
return FALSE
|
||||
if(ismindshielded(conversion_target))
|
||||
return FALSE
|
||||
if(converting_mind.has_antag_datum(/datum/antagonist/rev))
|
||||
return FALSE
|
||||
converting_mind.add_antag_datum(/datum/antagonist/rev)
|
||||
|
||||
conversion_target.Silence(10 SECONDS)
|
||||
conversion_target.Stun(10 SECONDS)
|
||||
return TRUE
|
||||
|
||||
/obj/item/flash/cyborg
|
||||
origin_tech = null
|
||||
|
||||
|
||||
@@ -493,11 +493,11 @@ GLOBAL_LIST_INIT(cult_recipes, list (
|
||||
|
||||
/obj/item/stack/sheet/runed_metal/New()
|
||||
. = ..()
|
||||
icon_state = SSticker.cultdat?.runed_metal_icon_state
|
||||
item_state = SSticker.cultdat?.runed_metal_item_state
|
||||
icon_state = GET_CULT_DATA(runed_metal_icon_state, initial(icon_state))
|
||||
item_state = GET_CULT_DATA(runed_metal_item_state, initial(item_state))
|
||||
|
||||
/obj/item/stack/sheet/runed_metal/attack_self(mob/living/user)
|
||||
if(!iscultist(user))
|
||||
if(!IS_CULTIST(user))
|
||||
to_chat(user, "<span class='warning'>Only one with forbidden knowledge could hope to work this metal...</span>")
|
||||
return
|
||||
if(usr.holy_check())
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
if(target.mind)
|
||||
if(target.mind.has_antag_datum(/datum/antagonist/rev))
|
||||
SSticker.mode.remove_revolutionary(target.mind)
|
||||
if(target.mind in SSticker.mode.cult)
|
||||
if(IS_CULTIST(target))
|
||||
to_chat(target, "<span class='warning'>You feel the corporate tendrils of Nanotrasen try to invade your mind!</span>")
|
||||
return TRUE
|
||||
|
||||
|
||||
@@ -561,8 +561,10 @@
|
||||
var/mob/living/carbon/human/target = M
|
||||
|
||||
if(target.mind)
|
||||
if(iscultist(target))
|
||||
SSticker.mode.remove_cultist(target.mind, TRUE, TRUE) // This proc will handle message generation.
|
||||
if(IS_CULTIST(target))
|
||||
var/datum/antagonist/cultist/cultist = IS_CULTIST(target)
|
||||
cultist.remove_gear_on_removal = TRUE
|
||||
target.mind.remove_antag_datum(/datum/antagonist/cultist)
|
||||
praying = FALSE
|
||||
return
|
||||
var/datum/antagonist/vampire/V = M.mind?.has_antag_datum(/datum/antagonist/vampire)
|
||||
|
||||
@@ -156,7 +156,7 @@
|
||||
|
||||
/obj/item/melee/spellblade/examine(mob/user)
|
||||
. = ..()
|
||||
if(enchant && (iswizard(user) || iscultist(user))) // only wizards and cultists understand runes
|
||||
if(enchant && (iswizard(user) || IS_CULTIST(user))) // only wizards and cultists understand runes
|
||||
. += "The runes along the side read; [enchant.desc]."
|
||||
|
||||
|
||||
|
||||
@@ -170,8 +170,8 @@
|
||||
|
||||
/obj/structure/door_assembly/door_assembly_cult/Initialize(mapload)
|
||||
. = ..()
|
||||
icon = SSticker.cultdat?.airlock_runed_icon_file
|
||||
overlays_file = SSticker.cultdat?.airlock_runed_overlays_file
|
||||
icon = GET_CULT_DATA(airlock_runed_icon_file, initial(icon))
|
||||
overlays_file = GET_CULT_DATA(airlock_runed_overlays_file, initial(overlays_file))
|
||||
update_icon()
|
||||
|
||||
/obj/structure/door_assembly/door_assembly_cult/unruned
|
||||
@@ -182,8 +182,8 @@
|
||||
|
||||
/obj/structure/door_assembly/door_assembly_cult/unruned/Initialize(mapload)
|
||||
. = ..()
|
||||
icon = SSticker.cultdat?.airlock_unruned_icon_file
|
||||
overlays_file = SSticker.cultdat?.airlock_unruned_overlays_file
|
||||
icon = GET_CULT_DATA(airlock_unruned_icon_file, initial(icon))
|
||||
overlays_file = GET_CULT_DATA(airlock_unruned_overlays_file, initial(overlays_file))
|
||||
update_icon()
|
||||
|
||||
/obj/structure/door_assembly/door_assembly_centcom
|
||||
|
||||
@@ -454,11 +454,11 @@
|
||||
|
||||
/obj/structure/girder/cult/Initialize(mapload)
|
||||
. = ..()
|
||||
icon_state = SSticker.cultdat?.cult_girder_icon_state
|
||||
icon_state = GET_CULT_DATA(cult_girder_icon_state, initial(icon_state))
|
||||
|
||||
/obj/structure/girder/cult/attackby(obj/item/W, mob/user, params)
|
||||
add_fingerprint(user)
|
||||
if(istype(W, /obj/item/melee/cultblade/dagger) && iscultist(user)) //Cultists can demolish cult girders instantly with their dagger
|
||||
if(istype(W, /obj/item/melee/cultblade/dagger) && IS_CULTIST(user)) //Cultists can demolish cult girders instantly with their dagger
|
||||
user.visible_message("<span class='warning'>[user] strikes [src] with [W]!</span>", "<span class='notice'>You demolish [src].</span>")
|
||||
refundMetal(metalUsed)
|
||||
qdel(src)
|
||||
|
||||
Reference in New Issue
Block a user