diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/game/gamemodes/cult/cult_items.dm
index 680317bb768..179d87099e2 100644
--- a/code/game/gamemodes/cult/cult_items.dm
+++ b/code/game/gamemodes/cult/cult_items.dm
@@ -15,6 +15,7 @@
/obj/item/weapon/melee/cultblade/attack(mob/living/target, mob/living/carbon/human/user)
if(!iscultist(user))
user.Weaken(5)
+ user.unEquip(src, 1)
user.visible_message("A powerful force shoves [user] away from [target]!", \
"\"You shouldn't play with sharp things. You'll poke someone's eye out.\"")
if(ishuman(user))
@@ -50,7 +51,7 @@
/obj/item/weapon/restraints/legcuffs/bola/cult
- name = "nar'sian bola"
+ name = "nar'sien bola"
desc = "A strong bola, bound with dark magic. Throw it to trip and slow your victim."
icon_state = "bola_cult"
breakouttime = 45
@@ -116,19 +117,215 @@
armor = list(melee = 50, bullet = 30, laser = 50,energy = 20, bomb = 25, bio = 10, rad = 0)
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
-
/obj/item/clothing/head/helmet/space/cult
- name = "nar-sian bruiser's helmet"
- desc = "A heavily-armored helmet worn by warriors of the Nar-Sian cult. It can withstand hard vacuum."
+ name = "nar-sien hardened helmet"
+ desc = "A heavily-armored helmet worn by warriors of the Nar-Sien cult. It can withstand hard vacuum."
icon_state = "cult_helmet"
item_state = "cult_helmet"
armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30)
/obj/item/clothing/suit/space/cult
- name = "nar-sian bruiser's armor"
+ name = "nar-sien hardened armor"
icon_state = "cult_armor"
item_state = "cult_armor"
- desc = "A heavily-armored exosuit worn by warriors of the Nar-Sian cult. It can withstand hard vacuum."
- w_class = 3
+ desc = "A heavily-armored exosuit worn by warriors of the Nar-Sien cult. It can withstand hard vacuum."
+ w_class = 2
allowed = list(/obj/item/weapon/tome,/obj/item/weapon/melee/cultblade,/obj/item/weapon/tank/internals/)
armor = list(melee = 70, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30)
+
+/obj/item/weapon/sharpener/cult
+ name = "eldritch whetstone"
+ desc = "A block, empowered by dark magic. Sharp weapons will be enhanced when used on the stone."
+ used = 0
+ increment = 5
+ max = 40
+ prefix = "darkened"
+
+/obj/item/clothing/suit/hooded/cultrobes/cult_shield
+ name = "empowered cultist armor"
+ desc = "Empowered garb which creates a powerful shield around the user."
+ icon_state = "cult_armor"
+ item_state = "cult_armor"
+ w_class = 4
+ armor = list(melee = 50, bullet = 40, laser = 50,energy = 30, bomb = 50, bio = 30, rad = 30)
+ body_parts_covered = CHEST|GROIN|LEGS|ARMS
+ allowed = list(/obj/item/weapon/tome,/obj/item/weapon/melee/cultblade)
+ var/current_charges = 3
+ var/shield_state = "shield-red"
+ hooded = 1
+ hoodtype = /obj/item/clothing/head/cult_hoodie
+
+/obj/item/clothing/head/cult_hoodie
+ name = "empowered cultist armor"
+ desc = "Empowered garb which creates a powerful shield around the user."
+ icon_state = "cult_hoodalt"
+ armor = list(melee = 50, bullet = 40, laser = 50,energy = 30, bomb = 50, bio = 30, rad = 30)
+ body_parts_covered = HEAD
+ flags = NODROP
+ flags_inv = HIDEHAIR|HIDEFACE|HIDEEARS
+
+/obj/item/clothing/suit/hooded/cultrobes/cult_shield/pickup(mob/living/user)
+ ..()
+ if(!iscultist(user))
+ user << "\"I wouldn't advise that.\""
+ user << "An overwhelming sense of nausea overpowers you!"
+ user.unEquip(src, 1)
+ user.Dizzy(30)
+ user.Weaken(5)
+
+
+/obj/item/clothing/suit/hooded/cultrobes/cult_shield/hit_reaction(mob/living/carbon/human/owner, attack_text, isinhands)
+ if(current_charges > 0)
+ var/datum/effect_system/spark_spread/s = new
+ s.set_up(2, 1, src)
+ s.start()
+ owner.visible_message("[owner]'s shields deflect [attack_text] in a shower of sparks!")
+ current_charges--
+ if(current_charges <= 0)
+ owner.visible_message("[owner]'s shield is destroyed!")
+ shield_state = "broken"
+ owner.update_inv_wear_suit()
+ return 1
+ return 0
+
+/obj/item/clothing/suit/hooded/cultrobes/cult_shield/worn_overlays(isinhands)
+ . = list()
+ if(!isinhands)
+ . += image(icon = 'icons/effects/effects.dmi', icon_state = "[shield_state]")
+
+/obj/item/clothing/suit/hooded/cultrobes/berserker
+ name = "flagellant's robes"
+ desc = "Blood-soaked robes infused with dark magic; allows the user to move at inhuman speeds, but at the cost of increased damage."
+ icon_state = "cultrobes"
+ item_state = "cultrobes"
+ flags_inv = HIDEJUMPSUIT
+ allowed = list(/obj/item/weapon/tome,/obj/item/weapon/melee/cultblade)
+ body_parts_covered = CHEST|GROIN|LEGS|ARMS
+ armor = list(melee = -100, bullet = -100, laser = -100,energy = -100, bomb = -100, bio = -100, rad = -100)
+ slowdown = -1
+ hooded = 1
+ hoodtype = /obj/item/clothing/head/berserkerhood
+
+/obj/item/clothing/head/berserkerhood
+ name = "flagellant's robes"
+ desc = "Blood-soaked garb infused with dark magic; allows the user to move at inhuman speeds, but at the cost of increased damage."
+ icon_state = "culthood"
+ body_parts_covered = HEAD
+ flags = NODROP
+ flags_inv = HIDEHAIR|HIDEFACE|HIDEEARS
+ armor = list(melee = -100, bullet = -100, laser = -100,energy = -100, bomb = -100, bio = -100, rad = -100)
+
+/obj/item/clothing/suit/hooded/cultrobes/berserker/pickup(mob/living/user)
+ ..()
+ if(!iscultist(user))
+ user << "\"I wouldn't advise that.\""
+ user << "An overwhelming sense of nausea overpowers you!"
+ user.unEquip(src, 1)
+ user.Dizzy(30)
+ user.Weaken(5)
+
+/obj/item/clothing/glasses/night/cultblind
+ desc = "May nar-sie guide you through the darkness and shield you from the light."
+ name = "zealot's blindfold"
+ icon_state = "blindfold"
+ item_state = "blindfold"
+ darkness_view = 8
+ flash_protect = 1
+
+/obj/item/clothing/glasses/night/cultblind/pickup(mob/living/user)
+ ..()
+ if(!iscultist(user))
+ user << "\"I wouldn't advise that.\""
+ user << "An overwhelming sense of nausea overpowers you!"
+ user.unEquip(src, 1)
+ user.Dizzy(30)
+ user.Weaken(5)
+
+/obj/item/weapon/reagent_containers/food/drinks/bottle/unholywater
+ name = "flask of unholy water"
+ desc = "Toxic to nonbelievers; this water renews and reinvigorates the faithful of nar'sie."
+ icon_state = "holyflask"
+ color = "#333333"
+ list_reagents = list("unholywater" = 40)
+
+/obj/item/device/shuttle_curse
+ name = "cursed orb"
+ desc = "You peer within this smokey orb and glimpse terrible fates befalling the escape shuttle."
+ icon = 'icons/obj/projectiles.dmi'
+ icon_state ="bluespace"
+ color = "#ff0000"
+ var/global/curselimit = 0
+
+/obj/item/device/shuttle_curse/attack_self(mob/user)
+ if(!iscultist(user))
+ user.unEquip(src, 1)
+ user.Weaken(5)
+ user << "A powerful force shoves you away from [src]!"
+ return
+ if(curselimit > 1)
+ user << "We have exhausted our ability to curse the shuttle."
+ return
+ if(SSshuttle.emergency.mode == SHUTTLE_CALL)
+ var/cursetime = 1500
+ var/timer = SSshuttle.emergency.timeLeft(1) + cursetime
+ SSshuttle.emergency.setTimer(timer)
+ user << "You shatter the orb! A dark essence spirals into the air, then disappears."
+ playsound(user.loc, "sound/effects/Glassbr1.ogg", 50, 1)
+ qdel(src)
+ sleep(20)
+ var/global/list/curses
+ if(!curses)
+ curses = list("A fuel technician just slit his own throat and begged for death. The shuttle will be delayed by two minutes.",
+ "The shuttle's navigation programming was replaced by a file containing two words, IT COMES. The shuttle will be delayed by two minutes.",
+ "The shuttle's custodian tore out his guts and began painting strange shapes on the floor. The shuttle will be delayed by two minutes.",
+ "A shuttle engineer began screaming 'DEATH IS NOT THE END' and ripped out wires until an arc flash seared off her flesh. The shuttle will be delayed by two minutes.",
+ "A shuttle inspector started laughing madly over the radio and then threw herself into an engine turbine. The shuttle will be delayed by two minutes.",
+ "The shuttle dispatcher was found dead with bloody symbols carved into their flesh. The shuttle will be delayed by two minutes.")
+ var/message = pick_n_take(curses)
+ priority_announce("[message]", "System Failure", 'sound/misc/notice1.ogg')
+ curselimit++
+
+/obj/item/device/cult_shift
+ name = "veil shifter"
+ desc = "The veil between worlds is weak, this relic teleports you forward a small distance. It may be used twice before its power is lost."
+ icon = 'icons/obj/cult.dmi'
+ icon_state ="shifter"
+ var/uses = 2
+
+/obj/item/device/cult_shift/proc/handle_teleport_grab(turf/T, mob/user)
+ var/mob/living/carbon/human/H = user
+ if(H.pulling && (istype(H.pulling, /mob/living)))
+ var/mob/living/victim = H.pulling
+ if(!victim.anchored)
+ victim.forceMove(locate(T.x+rand(-1,1),T.y+rand(-1,1),T.z))
+ return
+
+/obj/item/device/cult_shift/attack_self(mob/user)
+ if(!iscultist(user))
+ user.unEquip(src, 1)
+ user.Weaken(5)
+ user << "A powerful force shoves you away from [src]!"
+ return
+ uses--
+ if (uses<1)
+ qdel(src)
+ var/mob/living/carbon/human/H = user
+ var/turf/destination = get_teleport_loc(H.loc,H,9,1,3,1,0,1)
+ var/turf/mobloc = get_turf(H.loc)//Safety
+
+ if(destination&&istype(mobloc, /turf))//So we don't teleport out of containers
+ spawn(0)
+ playsound(H.loc, "sparks", 50, 1)
+ anim(mobloc,src,'icons/mob/mob.dmi',,"cultout",,H.dir)
+
+ handle_teleport_grab(destination, H)
+ H.loc = destination
+
+ spawn(0)
+ PoolOrNew(/obj/effect/particle_effect/sparks, H.loc)
+ playsound(H.loc, 'sound/effects/phasein.ogg', 25, 1)
+ playsound(H.loc, "sparks", 50, 1)
+ anim(H.loc,H,'icons/mob/mob.dmi',,"cultin",,H.dir)
+
+ else
+ H << "The veil cannot be torn here!"
diff --git a/code/game/gamemodes/cult/cult_structures.dm b/code/game/gamemodes/cult/cult_structures.dm
index d0df29a0c6e..3c3ccf77cdb 100644
--- a/code/game/gamemodes/cult/cult_structures.dm
+++ b/code/game/gamemodes/cult/cult_structures.dm
@@ -2,32 +2,146 @@
density = 1
anchored = 1
icon = 'icons/obj/cult.dmi'
+ var/cooldowntime = 0
+ var/health = 100
+ var/maxhealth = 100
+/obj/structure/cult/proc/getETA()
+ var/time = round((0-(world.time-cooldowntime))/600, 1)
+ var/eta = "[time] minutes."
+ if(time == 1)
+ eta = "about one minute."
+ else if(time == 0)
+ eta = "less than thirty seconds."
+ return eta
+
/obj/structure/cult/talisman
name = "altar"
- desc = "A bloodstained altar dedicated to Nar-Sie"
+ desc = "A bloodstained altar dedicated to Nar-Sie."
icon_state = "talismanaltar"
+
+/obj/structure/cult/talisman/attack_hand(mob/living/user)
+ if(!iscultist(user))
+ user << "You don't even begin to understand what these words mean..."
+ return
+ if(cooldowntime > world.time)
+ user << "The magic here is weak, it will be ready to use again in [getETA()]. "
+ return
+ cooldowntime = world.time + 2400
+ var/choice = alert(user,"You study the schematics etched into the forge...",,"Eldritch Whetstone","Zealot's Blindfold","Flask of Unholy Water")
+ switch(choice)
+ if("Eldritch Whetstone")
+ var/obj/item/weapon/sharpener/cult/N = new(get_turf(src))
+ user << "You kneel before the altar and your faith is rewarded with an [N.name]!"
+ if("Zealot's Blindfold")
+ var/obj/item/clothing/glasses/night/cultblind/N = new(get_turf(src))
+ user << "You kneel before the altar and your faith is rewarded with a [N.name]!"
+ if("Flask of Unholy Water")
+ var/obj/item/weapon/reagent_containers/food/drinks/bottle/unholywater/N = new(get_turf(src))
+ user << "You kneel before the altar and your faith is rewarded with a [N.name]!"
+
+
/obj/structure/cult/forge
name = "daemon forge"
- desc = "A forge used in crafting the unholy weapons used by the armies of Nar-Sie"
+ desc = "A forge used in crafting the unholy weapons used by the armies of Nar-Sie."
icon_state = "forge"
+ luminosity = 3
+
+/obj/structure/cult/forge/attack_hand(mob/living/user)
+ if(!iscultist(user))
+ user << "You don't even begin to understand what these words mean..."
+ return
+ if(cooldowntime > world.time)
+ user << "The magic here is weak, it will be ready to use again in [getETA()]. "
+ return
+ cooldowntime = world.time + 2400
+ var/choice = alert(user,"You study the schematics etched into the forge...",,"Shielded Robe","Flagellant's Robe","Nar-Sien Hardsuit")
+ switch(choice)
+ if("Shielded Robe")
+ var/obj/item/clothing/suit/hooded/cultrobes/cult_shield/N = new(get_turf(src))
+ user << "You work the forge as dark knowledge guides your hands, creating [N]!"
+ if("Flagellant's Robe")
+ var/obj/item/clothing/suit/hooded/cultrobes/berserker/N = new(get_turf(src))
+ user << "You work the forge as dark knowledge guides your hands, creating [N]!"
+ if("Nar-Sien Hardsuit")
+ new /obj/item/clothing/head/helmet/space/cult(get_turf(src))
+ var /obj/item/clothing/suit/space/cult/N = new(get_turf(src))
+ user << "You work the forge as dark knowledge guides your hands, creating [N]!"
/obj/structure/cult/pylon
name = "pylon"
- desc = "A floating crystal that hums with an unearthly energy"
+ desc = "A floating crystal that slowly heals those faithful to Nar'Sie."
icon_state = "pylon"
luminosity = 5
+ var/heal_delay = 50
+ var/last_shot = 0
+ var/list/corruption = list()
+
+/obj/structure/cult/pylon/New()
+ SSobj.processing |= src
+ corruption += get_turf(src)
+ for(var/i in 1 to 5)
+ for(var/t in corruption)
+ var/turf/T = t
+ corruption |= T.GetAtmosAdjacentTurfs()
+ ..()
+
+/obj/structure/cult/pylon/Destroy()
+ SSobj.processing.Remove(src)
+ return ..()
+
+/obj/structure/cult/pylon/process()
+ if((last_shot + heal_delay) <= world.time)
+ last_shot = world.time
+ for(var/mob/living/L in range(5, src))
+ if(iscultist(L))
+ var/mob/living/carbon/human/H = L
+ if(istype(H))
+ L.adjustBruteLoss(-1, 0)
+ L.adjustFireLoss(-1, 0)
+ L.updatehealth()
+ if(istype(L, /mob/living/simple_animal/hostile/construct))
+ var/mob/living/simple_animal/M = L
+ if(M.health < M.maxHealth)
+ M.adjustHealth(-2)
+ if(corruption.len)
+ var/turf/T = pick_n_take(corruption)
+ corruption -= T
+ if (istype(T, /turf/open/floor/engine/cult) || istype(T, /turf/open/space) || istype(T, /turf/open/floor/plating/lava))
+ return
+ T.ChangeTurf(/turf/open/floor/engine/cult)
/obj/structure/cult/tome
- name = "desk"
- desc = "A desk covered in arcane manuscripts and tomes in unknown languages. Looking at the text makes your skin crawl"
+ name = "archives"
+ desc = "A desk covered in arcane manuscripts and tomes in unknown languages. Looking at the text makes your skin crawl."
icon_state = "tomealtar"
luminosity = 1
+/obj/structure/cult/tome/attack_hand(mob/living/user)
+ if(!iscultist(user))
+ user << "You don't even begin to understand what these words mean..."
+ return
+ if(cooldowntime > world.time)
+ user << "The magic here is weak, it will be ready to use again in [getETA()]. "
+ return
+ cooldowntime = world.time + 2400
+ var/choice = alert(user,"You flip through the black pages of the archives...",,"Supply Talisman","Shuttle Curse","Veil Shift")
+ switch(choice)
+ if("Supply Talisman")
+ var/obj/item/weapon/paper/talisman/supply/N = new(get_turf(src))
+ N.uses = 2
+ user << "You summon [N] from the archives!"
+ if("Shuttle Curse")
+ var/obj/item/device/shuttle_curse/N = new(get_turf(src))
+ user << "You summon [N] from the archives!"
+ if("Veil Shift")
+ var /obj/item/device/cult_shift/N = new(get_turf(src))
+ user << "You summon [N] from the archives!"
+
/obj/effect/gateway
name = "gateway"
- desc = "You're pretty sure that abyss is staring back"
+ desc = "You're pretty sure that abyss is staring back."
icon = 'icons/obj/cult.dmi'
icon_state = "hole"
density = 1
diff --git a/code/game/gamemodes/cult/talisman.dm b/code/game/gamemodes/cult/talisman.dm
index 0125bec86da..09d2e4be1c3 100644
--- a/code/game/gamemodes/cult/talisman.dm
+++ b/code/game/gamemodes/cult/talisman.dm
@@ -321,16 +321,28 @@
user << "This talisman will only work on a stack of metal sheets!"
log_game("Construct talisman failed - not a valid target")
-/obj/item/weapon/paper/talisman/construction/afterattack(obj/item/stack/sheet/metal/target, mob/user, proximity_flag, click_parameters)
+/obj/item/weapon/paper/talisman/construction/afterattack(obj/item/stack/sheet/target, mob/user, proximity_flag, click_parameters)
..()
- if(proximity_flag && istype(target) && iscultist(user))
- var/turf/T = get_turf(target)
- if(target.use(25))
- new /obj/structure/constructshell(T)
- user << "The talisman clings to the metal and twists it into a construct shell!"
+ if(proximity_flag && iscultist(user))
+ if(istype(target, /obj/item/stack/sheet/metal))
+ var/turf/T = get_turf(target)
+ if(target.use(25))
+ new /obj/structure/constructshell(T)
+ user << "The talisman clings to the metal and twists it into a construct shell!"
+ user << sound('sound/effects/magic.ogg',0,1,25)
+ PoolOrNew(/obj/effect/overlay/temp/cult/turf/open/floor, T)
+ qdel(src)
+ if(istype(target, /obj/item/stack/sheet/plasteel))
+ var/quantity = target.amount
+ var/turf/T = get_turf(target)
+ new /obj/item/stack/sheet/runed_metal(T,quantity)
+ target.use(quantity)
+ user << "The talisman clings to the plasteel and runes of power appear on the surface!"
+ user << sound('sound/effects/magic.ogg',0,1,25)
+ PoolOrNew(/obj/effect/overlay/temp/cult/turf/open/floor, T)
qdel(src)
else
- user << "The talisman requires at least 25 sheets of metal!"
+ user << "The talisman requires metal or plasteel!"
//Talisman of Shackling: Applies special cuffs directly from the talisman
@@ -390,6 +402,6 @@
origin_tech = "materials=2;magnets=5"
/obj/item/weapon/restraints/handcuffs/energy/cult/used/dropped(mob/user)
- user.visible_message("[user]'s [src] shatter in a discharge of dark magic!", \
+ user.visible_message("[user]'s shackles shatter in a discharge of dark magic!", \
"Your [src] shatters in a discharge of dark magic!")
qdel(src)
diff --git a/code/game/machinery/doors/airlock_types.dm b/code/game/machinery/doors/airlock_types.dm
index 25a44c23489..f265bfe46ef 100644
--- a/code/game/machinery/doors/airlock_types.dm
+++ b/code/game/machinery/doors/airlock_types.dm
@@ -318,6 +318,22 @@
icon = 'icons/obj/doors/airlocks/cult/runed/cult.dmi'
overlays_file = 'icons/obj/doors/airlocks/cult/runed/overlays.dmi'
doortype = /obj/structure/door_assembly/door_assembly_cult
+ hackProof = 1
+ aiControlDisabled = 1
+
+/obj/machinery/door/airlock/cult/allowed(mob/M)
+ if(!iscultist(M))
+ PoolOrNew(/obj/effect/overlay/temp/cult/sac, src.loc)
+ var/atom/throwtarget
+ throwtarget = get_edge_target_turf(src, get_dir(src, get_step_away(M, src)))
+ M << pick(sound('sound/hallucinations/turn_around1.ogg',0,1,50), sound('sound/hallucinations/turn_around2.ogg',0,1,50))
+ M.Weaken(2)
+ M.throw_at_fast(throwtarget, 5, 1,src)
+ return 0
+ else
+ PoolOrNew(/obj/effect/overlay/temp/cult/door, src.loc)
+ return 1
+
/obj/machinery/door/airlock/cult/narsie_act()
return
diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm
index a12c51ed506..84f474abe0a 100644
--- a/code/game/objects/items/stacks/sheets/sheet_types.dm
+++ b/code/game/objects/items/stacks/sheets/sheet_types.dm
@@ -215,11 +215,12 @@ var/global/list/datum/stack_recipe/cardboard_recipes = list ( \
*/
var/global/list/datum/stack_recipe/runed_metal_recipes = list ( \
- new/datum/stack_recipe("runed girder", /obj/structure/girder/cult, 2, time = 50, one_per_turf = 1, on_floor = 1), \
- new/datum/stack_recipe("pylon", /obj/structure/cult/pylon, 4, time = 40, one_per_turf = 1, on_floor = 1), \
- new/datum/stack_recipe("forge", /obj/structure/cult/forge, 6, time = 40, one_per_turf = 1, on_floor = 1), \
- new/datum/stack_recipe("archives", /obj/structure/cult/tome, 4, time = 40, one_per_turf = 1, on_floor = 1), \
- new/datum/stack_recipe("altar", /obj/structure/cult/talisman, 10, time = 40, one_per_turf = 1, on_floor = 1), \
+ new/datum/stack_recipe("runed door", /obj/machinery/door/airlock/cult, 3, time = 50, one_per_turf = 1, on_floor = 1), \
+ new/datum/stack_recipe("runed girder", /obj/structure/girder/cult, 1, time = 50, one_per_turf = 1, on_floor = 1), \
+ new/datum/stack_recipe("pylon", /obj/structure/cult/pylon, 3, time = 40, one_per_turf = 1, on_floor = 1), \
+ new/datum/stack_recipe("forge", /obj/structure/cult/forge, 5, time = 40, one_per_turf = 1, on_floor = 1), \
+ new/datum/stack_recipe("archives", /obj/structure/cult/tome, 2, time = 40, one_per_turf = 1, on_floor = 1), \
+ new/datum/stack_recipe("altar", /obj/structure/cult/talisman, 5, time = 40, one_per_turf = 1, on_floor = 1), \
)
/obj/item/stack/sheet/runed_metal
@@ -230,6 +231,12 @@ var/global/list/datum/stack_recipe/runed_metal_recipes = list ( \
icon = 'icons/obj/items.dmi'
sheettype = "runed"
+/obj/item/stack/sheet/runed_metal/attack_self(mob/living/user)
+ if(!iscultist(user))
+ user << "Only one with forbidden knowledge could hope to work this metal..."
+ return
+ return ..()
+
/obj/item/stack/sheet/runed_metal/fifty
amount = 50
@@ -267,5 +274,3 @@ var/global/list/datum/stack_recipe/runed_metal_recipes = list ( \
throw_speed = 1
throw_range = 3
origin_tech = "materials=2;bio=2"
-
-
diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm
index 359b80ef881..010789c22e2 100644
--- a/code/game/objects/structures/girders.dm
+++ b/code/game/objects/structures/girders.dm
@@ -328,8 +328,8 @@
add_fingerprint(user)
if(istype(W, /obj/item/weapon/tome) && iscultist(user)) //Cultists can demolish cult girders instantly with their tomes
user.visible_message("[user] strikes [src] with [W]!", "You demolish [src].")
- var/obj/item/stack/sheet/runed_metal/R = new(get_turf(src))
- R.amount = 2
+ var/obj/item/stack/sheet/metal/R = new(get_turf(src))
+ R.amount = 1
qdel(src)
else if(istype(W, /obj/item/weapon/weldingtool))
diff --git a/code/game/turfs/simulated/walls_misc.dm b/code/game/turfs/simulated/walls_misc.dm
index 1c38131239d..038bfb3fd26 100644
--- a/code/game/turfs/simulated/walls_misc.dm
+++ b/code/game/turfs/simulated/walls_misc.dm
@@ -12,7 +12,7 @@
..()
/turf/closed/wall/cult/break_wall()
- new/obj/item/stack/sheet/runed_metal/(get_turf(src), 2)
+ new/obj/item/stack/sheet/metal/(get_turf(src), 1)
return (new /obj/structure/girder/cult(src))
/turf/closed/wall/cult/devastate_wall()
@@ -101,4 +101,4 @@
/turf/closed/wall/shuttle/shuttleRotate(rotation)
var/matrix/M = transform
M.Turn(rotation)
- transform = M
\ No newline at end of file
+ transform = M
diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm
index f0020af71d8..a851f1e95e0 100644
--- a/code/modules/reagents/chemistry/reagents/other_reagents.dm
+++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm
@@ -211,14 +211,17 @@
description = "Something that shouldn't exist on this plane of existance."
/datum/reagent/fuel/unholywater/on_mob_life(mob/living/M)
- M.adjustBrainLoss(3)
if(iscultist(M))
- M.status_flags |= GOTTAGOFAST
M.drowsyness = max(M.drowsyness-5, 0)
- M.AdjustParalysis(-2, 0)
+ M.AdjustParalysis(-1, 0)
M.AdjustStunned(-2, 0)
M.AdjustWeakened(-2, 0)
+ M.adjustToxLoss(-2, 0)
+ M.adjustOxyLoss(-2, 0)
+ M.adjustBruteLoss(-2, 0)
+ M.adjustFireLoss(-2, 0)
else
+ M.adjustBrainLoss(3)
M.adjustToxLoss(2, 0)
M.adjustFireLoss(2, 0)
M.adjustOxyLoss(2, 0)
diff --git a/icons/mob/mob.dmi b/icons/mob/mob.dmi
index 116fbe4090c..24ca7afeeac 100644
Binary files a/icons/mob/mob.dmi and b/icons/mob/mob.dmi differ
diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi
index cce17c5a3fb..11f55cbc902 100644
Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ
diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi
index 623836f5898..37f7af70e08 100644
Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ
diff --git a/icons/obj/cult.dmi b/icons/obj/cult.dmi
index a7b5af73017..95712fe106c 100644
Binary files a/icons/obj/cult.dmi and b/icons/obj/cult.dmi differ