mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-30 00:29:02 +01:00
Cultists can now unanchor and move around cult structures (#17573)
* Cultists can now unanchor and move around cult structures * helpful messages for unhelpful cultists * checkpocalypse
This commit is contained in:
@@ -8,9 +8,21 @@
|
||||
|
||||
/obj/structure/cult/examine(mob/user)
|
||||
..()
|
||||
user << "<span class='notice'>\The [src] is [anchored ? "":"not "]secured to the floor.</span>"
|
||||
if(iscultist(user) && cooldowntime > world.time)
|
||||
user << "<span class='cultitalic'>The magic in [src] is weak, it will be ready to use again in [getETA()].</span>"
|
||||
|
||||
/obj/structure/cult/attackby(obj/I, mob/user, params)
|
||||
if(istype(I, /obj/item/weapon/tome) && iscultist(user))
|
||||
anchored = !anchored
|
||||
user << "<span class='notice'>You [anchored ? "":"un"]secure \the [src] [anchored ? "to":"from"] the floor.</span>"
|
||||
if(!anchored)
|
||||
icon_state = "[initial(icon_state)]_off"
|
||||
else
|
||||
icon_state = initial(icon_state)
|
||||
else
|
||||
return ..()
|
||||
|
||||
/obj/structure/cult/proc/getETA()
|
||||
var/time = (cooldowntime - world.time)/600
|
||||
var/eta = "[round(time, 1)] minutes"
|
||||
@@ -28,6 +40,9 @@
|
||||
if(!iscultist(user))
|
||||
user << "<span class='warning'>You're pretty sure you know exactly what this is used for and you can't seem to touch it.</span>"
|
||||
return
|
||||
if(!anchored)
|
||||
user << "<span class='cultitalic'>You need to anchor [src] to the floor with a tome first.</span>"
|
||||
return
|
||||
if(cooldowntime > world.time)
|
||||
user << "<span class='cultitalic'>The magic in [src] is weak, it will be ready to use again in [getETA()].</span>"
|
||||
return
|
||||
@@ -40,7 +55,7 @@
|
||||
pickedtype = /obj/item/clothing/glasses/night/cultblind
|
||||
if("Flask of Unholy Water")
|
||||
pickedtype = /obj/item/weapon/reagent_containers/food/drinks/bottle/unholywater
|
||||
if(pickedtype && Adjacent(user) && src && !qdeleted(src) && !user.incapacitated() && cooldowntime <= world.time)
|
||||
if(src && !qdeleted(src) && anchored && pickedtype && Adjacent(user) && !user.incapacitated() && iscultist(user) && cooldowntime <= world.time)
|
||||
cooldowntime = world.time + 2400
|
||||
var/obj/item/N = new pickedtype(get_turf(src))
|
||||
user << "<span class='cultitalic'>You kneel before the altar and your faith is rewarded with an [N]!</span>"
|
||||
@@ -56,6 +71,9 @@
|
||||
if(!iscultist(user))
|
||||
user << "<span class='warning'>The heat radiating from [src] pushes you back.</span>"
|
||||
return
|
||||
if(!anchored)
|
||||
user << "<span class='cultitalic'>You need to anchor [src] to the floor with a tome first.</span>"
|
||||
return
|
||||
if(cooldowntime > world.time)
|
||||
user << "<span class='cultitalic'>The magic in [src] is weak, it will be ready to use again in [getETA()].</span>"
|
||||
return
|
||||
@@ -68,7 +86,7 @@
|
||||
pickedtype = /obj/item/clothing/suit/hooded/cultrobes/berserker
|
||||
if("Nar-Sien Hardsuit")
|
||||
pickedtype = /obj/item/clothing/suit/space/hardsuit/cult
|
||||
if(pickedtype && Adjacent(user) && src && !qdeleted(src) && !user.incapacitated() && cooldowntime <= world.time)
|
||||
if(src && !qdeleted(src) && anchored && pickedtype && Adjacent(user) && !user.incapacitated() && iscultist(user) && cooldowntime <= world.time)
|
||||
cooldowntime = world.time + 2400
|
||||
var/obj/item/N = new pickedtype(get_turf(src))
|
||||
user << "<span class='cultitalic'>You work the forge as dark knowledge guides your hands, creating [N]!</span>"
|
||||
@@ -133,6 +151,9 @@
|
||||
if(!iscultist(user))
|
||||
user << "<span class='warning'>All of these books seem to be gibberish.</span>"
|
||||
return
|
||||
if(!anchored)
|
||||
user << "<span class='cultitalic'>You need to anchor [src] to the floor with a tome first.</span>"
|
||||
return
|
||||
if(cooldowntime > world.time)
|
||||
user << "<span class='cultitalic'>The magic in [src] is weak, it will be ready to use again in [getETA()].</span>"
|
||||
return
|
||||
@@ -145,7 +166,7 @@
|
||||
pickedtype = /obj/item/device/shuttle_curse
|
||||
if("Veil Shifter")
|
||||
pickedtype = /obj/item/device/cult_shift
|
||||
if(pickedtype && Adjacent(user) && src && !qdeleted(src) && !user.incapacitated() && cooldowntime <= world.time)
|
||||
if(src && !qdeleted(src) && anchored && pickedtype && Adjacent(user) && !user.incapacitated() && iscultist(user) && cooldowntime <= world.time)
|
||||
cooldowntime = world.time + 2400
|
||||
var/obj/item/N = new pickedtype(get_turf(src))
|
||||
user << "<span class='cultitalic'>You summon [N] from the archives!</span>"
|
||||
|
||||
@@ -17,6 +17,7 @@ This file contains the arcane tome files.
|
||||
..()
|
||||
if(iscultist(user) || user.stat == DEAD)
|
||||
user << "<span class='cult'>The scriptures of the Geometer. Allows the scribing of runes and access to the knowledge archives of the cult of Nar-Sie.</span>"
|
||||
user << "<span class='cult'>Striking a cult structure will unanchor or reanchor it.</span>"
|
||||
user << "<span class='cult'>Striking another cultist with it will purge holy water from them.</span>"
|
||||
user << "<span class='cult'>Striking a noncultist, however, will sear their flesh.</span>"
|
||||
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 16 KiB |
Reference in New Issue
Block a user