(Ready) Clockwork Cult Rework: Proof-of-concept

This commit is contained in:
Ashe Higgs
2017-09-26 16:21:26 -04:00
committed by CitadelStationBot
parent b51e4457f5
commit e575bd6685
103 changed files with 4394 additions and 2615 deletions
+15
View File
@@ -46,6 +46,21 @@
if("icon")
SStitle.icon = icon
/turf/closed/indestructible/reebe
name = "void"
icon_state = "reebe"
opacity = FALSE
baseturf = /turf/closed/indestructible/reebe
/turf/closed/indestructible/reebe/ratvar_act()
return
/turf/closed/indestructible/reebe/narsie_act()
return
/turf/closed/indestructible/reebe/CollidedWith(atom/movable/AM)
playsound(src, 'sound/effects/bamf.ogg', 25, TRUE)
/turf/closed/indestructible/riveted
icon = 'icons/turf/walls/riveted.dmi'
icon_state = "riveted"
+31
View File
@@ -67,6 +67,37 @@
desc = "A floor made of invulnerable notebook paper."
icon_state = "paperfloor"
/turf/open/indestructible/clock_spawn_room
name = "cogmetal"
desc = "Brass plating that gently radiates heat. For some reason, it reminds you of blood."
icon_state = "reebe"
baseturf = /turf/open/indestructible/clock_spawn_room
/turf/open/indestructible/clock_spawn_room/Entered()
..()
START_PROCESSING(SSfastprocess, src)
/turf/open/indestructible/clock_spawn_room/Destroy()
STOP_PROCESSING(SSfastprocess, src)
. = ..()
/turf/open/indestructible/clock_spawn_room/process()
if(!port_servants())
STOP_PROCESSING(SSfastprocess, src)
/turf/open/indestructible/clock_spawn_room/proc/port_servants()
. = FALSE
for(var/mob/living/L in src)
if(is_servant_of_ratvar(L))
. = TRUE
L.forceMove(get_turf(pick(GLOB.servant_spawns)))
visible_message("<span class='warning'>[L] vanishes in a flash of red!</span>")
L.visible_message("<span class='warning'>[L] appears in a flash of red!</span>", \
"<span class='bold cult'>sas'so c'arta forbici</span><br><span class='danger'>You're yanked away from [src]!</span>")
playsound(src, 'sound/magic/enter_blood.ogg', 50, TRUE)
playsound(L, 'sound/magic/exit_blood.ogg', 50, TRUE)
flash_color(L, flash_color = "#C80000", flash_time = 10)
/turf/open/Initalize_Atmos(times_fired)
excited = 0
update_visuals()
+1 -2
View File
@@ -128,8 +128,7 @@
. = ..()
drop_x = x
drop_y = y
if(z+1 <= world.maxz)
drop_z = z+1
drop_z = z - 1
var/turf/T = locate(drop_x, drop_y, drop_z)
T.visible_message("<span class='boldwarning'>The ceiling gives way!</span>")
playsound(T, 'sound/effects/break_stone.ogg', 50, 1)
+18 -9
View File
@@ -142,22 +142,25 @@
name = "clockwork floor"
desc = "Tightly-pressed brass tiles. They emit minute vibration."
icon_state = "plating"
var/uses_overlay = TRUE
var/obj/effect/clockwork/overlay/floor/realappearence
/turf/open/floor/clockwork/Initialize()
. = ..()
new /obj/effect/temp_visual/ratvar/floor(src)
new /obj/effect/temp_visual/ratvar/beam(src)
realappearence = new /obj/effect/clockwork/overlay/floor(src)
realappearence.linked = src
change_construction_value(1)
if(uses_overlay)
new /obj/effect/temp_visual/ratvar/floor(src)
new /obj/effect/temp_visual/ratvar/beam(src)
realappearence = new /obj/effect/clockwork/overlay/floor(src)
realappearence.linked = src
change_construction_value(1)
/turf/open/floor/clockwork/Destroy()
STOP_PROCESSING(SSobj, src)
change_construction_value(-1)
if(realappearence)
qdel(realappearence)
realappearence = null
if(uses_overlay)
change_construction_value(-1)
if(realappearence)
qdel(realappearence)
realappearence = null
return ..()
/turf/open/floor/clockwork/ReplaceWithLattice()
@@ -217,6 +220,12 @@
animate(src, color = previouscolor, time = 8)
addtimer(CALLBACK(src, /atom/proc/update_atom_colour), 8)
/turf/open/floor/clockwork/reebe
name = "cogplate"
desc = "Warm brass plating. You can feel it gently vibrating, as if machinery is on the other side."
icon_state = "reebe"
baseturf = /turf/open/floor/clockwork/reebe
uses_overlay = FALSE
/turf/open/floor/bluespace
slowdown = -1
+1 -5
View File
@@ -56,7 +56,6 @@
sheet_amount = 1
girder_type = /obj/structure/destructible/clockwork/wall_gear
var/obj/effect/clockwork/overlay/wall/realappearence
var/obj/structure/destructible/clockwork/cache/linkedcache
/turf/closed/wall/clockwork/Initialize()
..()
@@ -68,13 +67,10 @@
/turf/closed/wall/clockwork/examine(mob/user)
..()
if((is_servant_of_ratvar(user) || isobserver(user)) && linkedcache)
if((is_servant_of_ratvar(user) || isobserver(user)))
to_chat(user, "<span class='brass'>It is linked to a Tinkerer's Cache, generating components!</span>")
/turf/closed/wall/clockwork/Destroy()
if(linkedcache)
linkedcache.linkedwall = null
linkedcache = null
change_construction_value(-5)
if(realappearence)
qdel(realappearence)