mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-27 15:17:01 +01:00
[MIRROR] Swaps sleep() to use SECONDS define [MDB IGNORE] (#16973)
* Swaps sleep() to use SECONDS define * merge conflicts and skyrat modules Co-authored-by: san7890 <the@san7890.com> Co-authored-by: tastyfish <crazychris32@gmail.com>
This commit is contained in:
co-authored by
san7890
tastyfish
parent
59dc5c36b7
commit
612568daa0
@@ -635,7 +635,7 @@ GLOBAL_LIST_EMPTY(species_list)
|
||||
return
|
||||
AM.setDir(i)
|
||||
callperrotate?.Invoke()
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
if(set_original_dir)
|
||||
AM.setDir(originaldir)
|
||||
|
||||
|
||||
@@ -285,7 +285,7 @@
|
||||
//stop collecting feedback during grifftime
|
||||
SSblackbox.Seal()
|
||||
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
ready_for_reboot = TRUE
|
||||
standard_reboot()
|
||||
|
||||
|
||||
@@ -274,7 +274,7 @@ GLOBAL_REAL(Master, /datum/controller/master) = new
|
||||
|
||||
if(sleep_offline_after_initializations)
|
||||
world.sleep_offline = TRUE
|
||||
sleep(1)
|
||||
sleep(1 TICKS)
|
||||
|
||||
if(sleep_offline_after_initializations && CONFIG_GET(flag/resume_after_initializations))
|
||||
world.sleep_offline = FALSE
|
||||
@@ -459,7 +459,7 @@ GLOBAL_REAL(Master, /datum/controller/master) = new
|
||||
return MC_LOOP_RTN_NEWSTAGES
|
||||
if (processing <= 0)
|
||||
current_ticklimit = TICK_LIMIT_RUNNING
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
continue
|
||||
|
||||
//Anti-tick-contention heuristics:
|
||||
|
||||
@@ -677,7 +677,7 @@ SUBSYSTEM_DEF(job)
|
||||
/datum/controller/subsystem/job/Recover()
|
||||
set waitfor = FALSE
|
||||
var/oldjobs = SSjob.all_occupations
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
for (var/datum/job/job as anything in oldjobs)
|
||||
INVOKE_ASYNC(src, .proc/RecoverJob, job)
|
||||
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
owner.alpha = 255
|
||||
animate(owner, alpha = 204, transform = matrix()*0.9, time = 3, easing = BOUNCE_EASING)
|
||||
for(var/i in 1 to 3)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
if(QDELETED(owner) || owner.stat == DEAD) //we got hit and died, rip us
|
||||
qdel(F)
|
||||
if(owner.stat == DEAD)
|
||||
@@ -218,7 +218,7 @@
|
||||
animate(src, pixel_x = -SWOOP_HEIGHT*0.1, pixel_z = SWOOP_HEIGHT*0.15, time = 3, easing = BOUNCE_EASING)
|
||||
else
|
||||
animate(src, pixel_x = SWOOP_HEIGHT*0.1, pixel_z = SWOOP_HEIGHT*0.15, time = 3, easing = BOUNCE_EASING)
|
||||
sleep(3)
|
||||
sleep(0.3 SECONDS)
|
||||
icon_state = "swoop"
|
||||
if(negative)
|
||||
animate(src, pixel_x = -SWOOP_HEIGHT, pixel_z = SWOOP_HEIGHT, time = 7)
|
||||
|
||||
@@ -157,7 +157,7 @@ GLOBAL_LIST_INIT(chasm_storage, list())
|
||||
if(!dropped_thing || QDELETED(dropped_thing))
|
||||
return
|
||||
dropped_thing.pixel_y--
|
||||
sleep(2)
|
||||
sleep(0.2 SECONDS)
|
||||
|
||||
//Make sure the item is still there after our sleep
|
||||
if(!dropped_thing || QDELETED(dropped_thing))
|
||||
|
||||
@@ -207,7 +207,7 @@ If you make a derivative work from this code, you must include this notification
|
||||
set waitfor = FALSE
|
||||
if (D)
|
||||
animate(D, transform = matrix(180, MATRIX_ROTATE), time = 1, loop = 0)
|
||||
sleep(15)
|
||||
sleep(1.5 SECONDS)
|
||||
if (D)
|
||||
animate(D, transform = null, time = 1, loop = 0)
|
||||
|
||||
@@ -268,7 +268,7 @@ If you make a derivative work from this code, you must include this notification
|
||||
D.pixel_y = D.base_pixel_y
|
||||
return
|
||||
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
|
||||
if (A && D)
|
||||
A.pixel_x = A.base_pixel_x
|
||||
@@ -391,7 +391,7 @@ If you make a derivative work from this code, you must include this notification
|
||||
span_danger("You climb onto [surface]!"))
|
||||
A.pixel_y = A.base_pixel_y + 10
|
||||
falling = 1
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
|
||||
if (A && D)
|
||||
// These are necessary because of the sleep call.
|
||||
@@ -413,7 +413,7 @@ If you make a derivative work from this code, you must include this notification
|
||||
|
||||
if(A)
|
||||
animate(A, transform = matrix(90, MATRIX_ROTATE), time = 1, loop = 0)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
if(A)
|
||||
animate(A, transform = null, time = 1, loop = 0)
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
locked = FALSE
|
||||
update_appearance()
|
||||
|
||||
sleep(2)
|
||||
sleep(0.2 SECONDS)
|
||||
open(TRUE)
|
||||
|
||||
locked = TRUE
|
||||
@@ -44,7 +44,7 @@
|
||||
close(TRUE)
|
||||
|
||||
locked = TRUE
|
||||
sleep(2)
|
||||
sleep(0.2 SECONDS)
|
||||
update_appearance()
|
||||
|
||||
send_status()
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
tracking = FALSE
|
||||
return
|
||||
else
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
continue
|
||||
|
||||
else
|
||||
@@ -125,7 +125,7 @@
|
||||
U.cameraFollow = null
|
||||
return
|
||||
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
|
||||
/proc/near_camera(mob/living/M)
|
||||
if (!isturf(M.loc))
|
||||
|
||||
@@ -534,13 +534,13 @@ GLOBAL_LIST_INIT(orion_events, generate_orion_events())
|
||||
visible_message(span_notice("[src] softly beeps and whirs to life!"))
|
||||
playsound(loc, 'sound/machines/defib_SaftyOn.ogg', 25, TRUE)
|
||||
say("This is ship ID #[rand(1,1000)] to Orion Port Authority. We're coming in for landing, over.")
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
visible_message(span_warning("[src] begins to vibrate..."))
|
||||
say("Uh, Port? Having some issues with our reactor, could you check it out? Over.")
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
say("Oh, God! Code Eight! CODE EIGHT! IT'S GONNA BL-")
|
||||
playsound(loc, 'sound/machines/buzz-sigh.ogg', 25, TRUE)
|
||||
sleep(3.6)
|
||||
sleep(0.36 SECONDS)
|
||||
visible_message(span_userdanger("[src] explodes!"))
|
||||
explosion(src, devastation_range = 2, heavy_impact_range = 4, light_impact_range = 8, flame_range = 16)
|
||||
qdel(src)
|
||||
|
||||
@@ -531,7 +531,7 @@
|
||||
printing = 1
|
||||
GLOB.data_core.medicalPrintCount++
|
||||
playsound(loc, 'sound/items/poster_being_created.ogg', 100, TRUE)
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
var/obj/item/paper/printed_paper = new /obj/item/paper(loc)
|
||||
var/final_paper_text = "<CENTER><B>Medical Record - (MR-[GLOB.data_core.medicalPrintCount])</B></CENTER><BR>"
|
||||
if(active1 in GLOB.data_core.general)
|
||||
|
||||
@@ -44,13 +44,13 @@
|
||||
if(M.id == id)
|
||||
M.open()
|
||||
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
for(var/obj/machinery/mass_driver/M in range(range, src))
|
||||
if(M.id == id)
|
||||
M.power = connected.power
|
||||
M.drive()
|
||||
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
for(var/obj/machinery/door/poddoor/M in range(range, src))
|
||||
if(M.id == id)
|
||||
M.close()
|
||||
|
||||
@@ -572,7 +572,7 @@ What a mess.*/
|
||||
if(!( printing ))
|
||||
printing = TRUE
|
||||
playsound(src, 'sound/items/poster_being_created.ogg', 100, TRUE)
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
print_security_record(active1, active2, loc)
|
||||
printing = FALSE
|
||||
if("Print Poster")
|
||||
@@ -593,7 +593,7 @@ What a mess.*/
|
||||
if(info)
|
||||
playsound(loc, 'sound/items/poster_being_created.ogg', 100, TRUE)
|
||||
printing = 1
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
if((istype(active1, /datum/data/record) && GLOB.data_core.general.Find(active1)))//make sure the record still exists.
|
||||
var/obj/item/photo/photo = active1.get_front_photo()
|
||||
new /obj/item/poster/wanted(loc, photo.picture.picture_image, wanted_name, info, headerText)
|
||||
@@ -610,7 +610,7 @@ What a mess.*/
|
||||
if(info)
|
||||
playsound(loc, 'sound/items/poster_being_created.ogg', 100, TRUE)
|
||||
printing = 1
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
if((istype(active1, /datum/data/record) && GLOB.data_core.general.Find(active1)))//make sure the record still exists.
|
||||
var/obj/item/photo/photo = active1.get_front_photo()
|
||||
new /obj/item/poster/wanted/missing(loc, photo.picture.picture_image, missing_name, info, headerText)
|
||||
@@ -995,7 +995,7 @@ What a mess.*/
|
||||
if (printing)
|
||||
return
|
||||
printing = TRUE
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
var/obj/item/photo/P = new/obj/item/photo(drop_location())
|
||||
var/datum/picture/toEmbed = new(name = person_name, desc = "The photo on file for [person_name].", image = temp)
|
||||
P.set_picture(toEmbed, TRUE, TRUE)
|
||||
|
||||
@@ -218,7 +218,7 @@
|
||||
/obj/machinery/jukebox/disco/proc/hierofunk()
|
||||
for(var/i in 1 to 10)
|
||||
spawn_atom_to_turf(/obj/effect/temp_visual/hierophant/telegraph/edge, src, 1, FALSE)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
|
||||
#define DISCO_INFENO_RANGE (rand(85, 115)*0.01)
|
||||
|
||||
@@ -239,9 +239,9 @@
|
||||
if(25)
|
||||
S.pixel_y = 7
|
||||
S.forceMove(get_turf(src))
|
||||
sleep(7)
|
||||
sleep(0.7 SECONDS)
|
||||
if(selection.song_name == "Engineering's Ultimate High-Energy Hustle")
|
||||
sleep(280)
|
||||
sleep(28 SECONDS)
|
||||
for(var/s in sparkles)
|
||||
var/obj/effect/overlay/sparkles/reveal = s
|
||||
reveal.alpha = 255
|
||||
@@ -334,7 +334,7 @@
|
||||
/obj/machinery/jukebox/disco/proc/dance2(mob/living/M)
|
||||
for(var/i in 0 to 9)
|
||||
dance_rotate(M, CALLBACK(M, /mob.proc/dance_flip))
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
|
||||
/mob/proc/dance_flip()
|
||||
if(dir == WEST)
|
||||
@@ -384,7 +384,7 @@
|
||||
initial_matrix = matrix(M.transform)
|
||||
initial_matrix.Translate(-3,0)
|
||||
animate(M, transform = initial_matrix, time = 1, loop = 0)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
M.lying_fix()
|
||||
|
||||
/obj/machinery/jukebox/disco/proc/dance4(mob/living/M)
|
||||
@@ -431,7 +431,7 @@
|
||||
initial_matrix = matrix(M.transform)
|
||||
initial_matrix.Translate(-3,0)
|
||||
animate(M, transform = initial_matrix, time = 1, loop = 0)
|
||||
sleep(1)
|
||||
sleep(1 SECONDS)
|
||||
M.lying_fix()
|
||||
|
||||
/mob/living/proc/lying_fix()
|
||||
|
||||
@@ -399,7 +399,7 @@
|
||||
/obj/machinery/door/airlock/proc/handlePowerRestore()
|
||||
var/cont = TRUE
|
||||
while (cont)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
cont = FALSE
|
||||
@@ -693,7 +693,7 @@
|
||||
if(!aiHacking)
|
||||
aiHacking = TRUE
|
||||
to_chat(user, span_warning("Airlock AI control has been blocked. Beginning fault-detection."))
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
if(canAIControl(user))
|
||||
to_chat(user, span_notice("Alert cancelled. Airlock control has been restored without our assistance."))
|
||||
aiHacking = FALSE
|
||||
@@ -703,9 +703,9 @@
|
||||
aiHacking = FALSE
|
||||
return
|
||||
to_chat(user, span_notice("Fault confirmed: airlock control wire disabled or cut."))
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
to_chat(user, span_notice("Attempting to hack into airlock. This may take some time."))
|
||||
sleep(200)
|
||||
sleep(20 SECONDS)
|
||||
if(canAIControl(user))
|
||||
to_chat(user, span_notice("Alert cancelled. Airlock control has been restored without our assistance."))
|
||||
aiHacking = FALSE
|
||||
@@ -715,7 +715,7 @@
|
||||
aiHacking = FALSE
|
||||
return
|
||||
to_chat(user, span_notice("Upload access confirmed. Loading control program into airlock software."))
|
||||
sleep(170)
|
||||
sleep(17 SECONDS)
|
||||
if(canAIControl(user))
|
||||
to_chat(user, span_notice("Alert cancelled. Airlock control has been restored without our assistance."))
|
||||
aiHacking = FALSE
|
||||
@@ -725,11 +725,11 @@
|
||||
aiHacking = FALSE
|
||||
return
|
||||
to_chat(user, span_notice("Transfer complete. Forcing airlock to execute program."))
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
//disable blocked control
|
||||
aiControlDisabled = AI_WIRE_HACKED
|
||||
to_chat(user, span_notice("Receiving control information from airlock."))
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
//bring up airlock dialog
|
||||
aiHacking = FALSE
|
||||
if(user)
|
||||
@@ -777,7 +777,7 @@
|
||||
|
||||
/obj/machinery/door/airlock/proc/electrified_loop()
|
||||
while (secondsElectrified > MACHINE_NOT_ELECTRIFIED)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
|
||||
@@ -1180,14 +1180,14 @@
|
||||
SEND_SIGNAL(src, COMSIG_AIRLOCK_OPEN, forced)
|
||||
operating = TRUE
|
||||
update_icon(ALL, AIRLOCK_OPENING, TRUE)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
set_opacity(0)
|
||||
//SKYRAT EDIT ADDITION BEGIN - LARGE_DOOR
|
||||
if(multi_tile)
|
||||
filler.set_opacity(FALSE)
|
||||
//SKYRAT EDIT END
|
||||
update_freelook_sight()
|
||||
sleep(4)
|
||||
sleep(0.4 SECONDS)
|
||||
set_density(FALSE)
|
||||
//SKYRAT EDIT ADDITION BEGIN - LARGE_DOOR
|
||||
if(multi_tile)
|
||||
@@ -1195,7 +1195,7 @@
|
||||
//SKYRAT EDIT END
|
||||
flags_1 &= ~PREVENT_CLICK_UNDER_1
|
||||
air_update_turf(TRUE, FALSE)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
layer = OPEN_DOOR_LAYER
|
||||
update_icon(ALL, AIRLOCK_OPEN, TRUE)
|
||||
operating = FALSE
|
||||
@@ -1244,7 +1244,7 @@
|
||||
if(multi_tile)
|
||||
filler.density = TRUE
|
||||
air_update_turf(TRUE, TRUE)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
if(!air_tight)
|
||||
set_density(TRUE)
|
||||
flags_1 |= PREVENT_CLICK_UNDER_1
|
||||
@@ -1253,7 +1253,7 @@
|
||||
filler.density = TRUE
|
||||
//SKYRAT EDIT END
|
||||
air_update_turf(TRUE, TRUE)
|
||||
sleep(4)
|
||||
sleep(0.4 SECONDS)
|
||||
if(dangerous_close)
|
||||
crush()
|
||||
if(visible && !glass)
|
||||
@@ -1261,7 +1261,7 @@
|
||||
if(multi_tile)
|
||||
filler.set_opacity(TRUE)
|
||||
update_freelook_sight()
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
update_icon(ALL, AIRLOCK_CLOSED, 1)
|
||||
operating = FALSE
|
||||
delayed_close_requested = FALSE
|
||||
@@ -1312,7 +1312,7 @@
|
||||
D.use_charge(user)
|
||||
operating = TRUE
|
||||
update_icon(ALL, AIRLOCK_EMAG, 1)
|
||||
sleep(6)
|
||||
sleep(0.6 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
operating = FALSE
|
||||
|
||||
@@ -355,10 +355,10 @@
|
||||
use_power(active_power_usage)
|
||||
do_animate("opening")
|
||||
set_opacity(0)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
set_density(FALSE)
|
||||
flags_1 &= ~PREVENT_CLICK_UNDER_1
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
layer = initial(layer)
|
||||
update_appearance()
|
||||
set_opacity(0)
|
||||
@@ -385,10 +385,10 @@
|
||||
|
||||
do_animate("closing")
|
||||
layer = closingLayer
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
set_density(TRUE)
|
||||
flags_1 |= PREVENT_CLICK_UNDER_1
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
update_appearance()
|
||||
if(visible && !glass)
|
||||
set_opacity(1)
|
||||
@@ -407,7 +407,7 @@
|
||||
|
||||
/obj/machinery/door/proc/CheckForMobs()
|
||||
if(locate(/mob/living) in get_turf(src))
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
open()
|
||||
|
||||
/obj/machinery/door/proc/crush()
|
||||
|
||||
@@ -114,9 +114,9 @@
|
||||
return
|
||||
autoclose = TRUE
|
||||
if(check_access(null))
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
else //secure doors close faster
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
if(!density && autoclose) //did someone change state while we slept?
|
||||
close()
|
||||
|
||||
@@ -209,7 +209,7 @@
|
||||
do_animate("opening")
|
||||
playsound(src, 'sound/machines/windowdoor.ogg', 100, TRUE)
|
||||
icon_state ="[base_state]open"
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
set_density(FALSE)
|
||||
air_update_turf(TRUE, FALSE)
|
||||
update_freelook_sight()
|
||||
@@ -235,7 +235,7 @@
|
||||
set_density(TRUE)
|
||||
air_update_turf(TRUE, TRUE)
|
||||
update_freelook_sight()
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
|
||||
operating = FALSE
|
||||
return 1
|
||||
@@ -272,7 +272,7 @@
|
||||
operating = TRUE
|
||||
flick("[base_state]spark", src)
|
||||
playsound(src, SFX_SPARKS, 75, TRUE, SHORT_RANGE_SOUND_EXTRARANGE)
|
||||
sleep(6)
|
||||
sleep(0.6 SECONDS)
|
||||
operating = FALSE
|
||||
desc += "<BR>[span_warning("Its access panel is smoking slightly.")]"
|
||||
open(2)
|
||||
|
||||
@@ -55,7 +55,7 @@ Buildable meters
|
||||
update()
|
||||
pixel_x += rand(-5, 5)
|
||||
pixel_y += rand(-5, 5)
|
||||
|
||||
|
||||
//Flipping handled manually due to custom handling for trinary pipes
|
||||
AddComponent(/datum/component/simple_rotation, ROTATION_NO_FLIPPING)
|
||||
return ..()
|
||||
@@ -294,7 +294,7 @@ Buildable meters
|
||||
C.vomit(0, TRUE, FALSE, 4, FALSE)
|
||||
if(prob(20))
|
||||
C.spew_organ()
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
C.blood_volume = 0
|
||||
return(OXYLOSS|BRUTELOSS)
|
||||
|
||||
|
||||
@@ -360,7 +360,7 @@
|
||||
attempts++
|
||||
defusals++
|
||||
holder.loc.visible_message(span_notice("[icon2html(holder, viewers(holder))] Alert: Bomb has been defused. Your score is now [defusals] for [attempts]! Resetting wires in 5 seconds..."))
|
||||
sleep(50) //Just in case someone is trying to remove the bomb core this gives them a little window to crowbar it out
|
||||
sleep(5 SECONDS) //Just in case someone is trying to remove the bomb core this gives them a little window to crowbar it out
|
||||
if(istype(holder))
|
||||
reset()
|
||||
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
H.adjustBruteLoss(max(0, 80 - H.getBruteLoss())) // Hurt the human, don't try to kill them though.
|
||||
|
||||
// Sleep for a couple of ticks to allow the human to see the pain
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
|
||||
use_power(active_power_usage) // Use a lot of power.
|
||||
var/mob/living/silicon/robot/R = H.Robotize()
|
||||
@@ -107,7 +107,7 @@
|
||||
|
||||
/obj/machinery/transformer/proc/unlock_new_robot(mob/living/silicon/robot/R)
|
||||
playsound(src.loc, 'sound/machines/ping.ogg', 50, FALSE)
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
if(R)
|
||||
R.SetLockdown(FALSE)
|
||||
R.notify_ai(AI_NOTIFICATION_NEW_BORG)
|
||||
|
||||
@@ -113,17 +113,17 @@
|
||||
|
||||
/obj/structure/checkoutmachine/proc/startUp() //very VERY snowflake code that adds a neat animation when the pod lands.
|
||||
start_dumping() //The machine doesnt move during this time, giving people close by a small window to grab their funds before it starts running around
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
playsound(src, 'sound/machines/click.ogg', 15, TRUE, -3)
|
||||
cut_overlay("flaps")
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
playsound(src, 'sound/machines/click.ogg', 15, TRUE, -3)
|
||||
cut_overlay("hatch")
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
playsound(src,'sound/machines/twobeep.ogg',50,FALSE)
|
||||
@@ -136,31 +136,31 @@
|
||||
add_overlay("legs_extending")
|
||||
cut_overlay("legs_retracted")
|
||||
pixel_z += 4
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
add_overlay("legs_extended")
|
||||
cut_overlay("legs_extending")
|
||||
pixel_z += 4
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
add_overlay("screen_lines")
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
cut_overlay("screen_lines")
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
add_overlay("screen_lines")
|
||||
add_overlay("screen")
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
playsound(src,'sound/machines/triple_beep.ogg',50,FALSE)
|
||||
add_overlay("text")
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
add_overlay("legs")
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
while(AI.stat != DEAD && flush)
|
||||
AI.adjustOxyLoss(5)
|
||||
AI.updatehealth()
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
flush = FALSE
|
||||
. = TRUE
|
||||
if("wireless")
|
||||
|
||||
@@ -92,7 +92,7 @@
|
||||
user.emote("spin")
|
||||
if (i == 3 && myhead)
|
||||
myhead.drop_limb()
|
||||
sleep(3)
|
||||
sleep(0.3 SECONDS)
|
||||
else
|
||||
user.visible_message(span_suicide("[user] panics and starts choking to death!"))
|
||||
return OXYLOSS
|
||||
|
||||
@@ -209,7 +209,7 @@
|
||||
igniter.ignite_turf(src,T)
|
||||
else
|
||||
default_ignite(T)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
previousturf = T
|
||||
operating = FALSE
|
||||
for(var/mob/M in viewers(1, loc))
|
||||
|
||||
@@ -420,7 +420,7 @@
|
||||
playsound(loc, 'sound/effects/spray.ogg', 10, TRUE, -3)
|
||||
if (!QDELETED(H))
|
||||
H.emote("spin")
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
for(var/obj/item/W in H)
|
||||
H.dropItemToGround(W)
|
||||
if(prob(50))
|
||||
@@ -429,7 +429,7 @@
|
||||
for(var/obj/item/bodypart/part as anything in H.bodyparts)
|
||||
part.adjustBleedStacks(5)
|
||||
H.gib_animation()
|
||||
sleep(3)
|
||||
sleep(0.3 SECONDS)
|
||||
H.adjustBruteLoss(1000) //to make the body super-bloody
|
||||
H.spawn_gibs()
|
||||
H.spill_organs()
|
||||
|
||||
@@ -436,7 +436,7 @@
|
||||
P.clashing = FALSE
|
||||
return
|
||||
playsound(src, 'sound/magic/clockwork/ratvar_attack.ogg', 50, TRUE, frequency = 2)
|
||||
sleep(2.4)
|
||||
sleep(0.24 SECONDS)
|
||||
if(QDELETED(src))
|
||||
P.clashing = FALSE
|
||||
return
|
||||
@@ -447,7 +447,7 @@
|
||||
a_winnar_is = src
|
||||
break
|
||||
P.SpinAnimation(5, 0)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(QDELETED(src))
|
||||
P.clashing = FALSE
|
||||
return
|
||||
@@ -455,7 +455,7 @@
|
||||
clash_target = null
|
||||
return
|
||||
playsound(P, 'sound/magic/clockwork/narsie_attack.ogg', 50, TRUE, frequency = 2)
|
||||
sleep(3.3)
|
||||
sleep(0.33 SECONDS)
|
||||
if(QDELETED(src))
|
||||
P.clashing = FALSE
|
||||
return
|
||||
@@ -467,7 +467,7 @@
|
||||
break
|
||||
SpinAnimation(5, 0)
|
||||
victory_chance += 10
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(!a_winnar_is)
|
||||
a_winnar_is = pick(src, P)
|
||||
if(a_winnar_is == src)
|
||||
|
||||
@@ -566,10 +566,10 @@
|
||||
var/datum/effect_system/fluid_spread/smoke/smoke = new
|
||||
smoke.set_up(1, holder = robot, location = robot.loc)
|
||||
smoke.start()
|
||||
sleep(2)
|
||||
sleep(0.2 SECONDS)
|
||||
for(var/i in 1 to 4)
|
||||
playsound(robot, pick('sound/items/drill_use.ogg', 'sound/items/jaws_cut.ogg', 'sound/items/jaws_pry.ogg', 'sound/items/welder.ogg', 'sound/items/ratchet.ogg'), 80, TRUE, -1)
|
||||
sleep(12)
|
||||
sleep(1.2 SECONDS)
|
||||
if(!prev_lockcharge)
|
||||
robot.SetLockdown(FALSE)
|
||||
robot.set_anchored(FALSE)
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
user.visible_message(span_suicide("[user] is jumping into [src]! It looks like [user.p_theyre()] trying to commit suicide."))
|
||||
user.dropItemToGround(src, TRUE)
|
||||
user.Stun(100, ignore_canstun = TRUE)
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
playsound(src, SFX_RUSTLE, 50, TRUE, -5)
|
||||
qdel(user)
|
||||
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
|
||||
// Let the sound effect finish playing
|
||||
add_fingerprint(user)
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
if(!user)
|
||||
return
|
||||
for(var/obj/item/suicide_wrench in user)
|
||||
|
||||
@@ -706,7 +706,7 @@
|
||||
/obj/item/toy/talking/proc/do_toy_talk(mob/user)
|
||||
for(var/message in generate_messages())
|
||||
toy_talk(user, message)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
|
||||
/obj/item/toy/talking/proc/toy_talk(mob/user, message)
|
||||
say(message, spans = list(span))
|
||||
@@ -775,26 +775,26 @@
|
||||
if (obj_flags & EMAGGED && cooldown < world.time)
|
||||
cooldown = world.time + 600
|
||||
user.visible_message(span_hear("You hear the click of a button."), span_notice("You activate [src], it plays a loud noise!"))
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
playsound(src, 'sound/machines/alarm.ogg', 20, FALSE)
|
||||
sleep(140)
|
||||
sleep(14 SECONDS)
|
||||
user.visible_message(span_alert("[src] violently explodes!"))
|
||||
explosion(src, light_impact_range = 1)
|
||||
qdel(src)
|
||||
else if (cooldown < world.time)
|
||||
cooldown = world.time + 600 //1 minute
|
||||
user.visible_message(span_warning("[user] presses a button on [src]."), span_notice("You activate [src], it plays a loud noise!"), span_hear("You hear the click of a button."))
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
icon_state = "nuketoy"
|
||||
playsound(src, 'sound/machines/alarm.ogg', 20, FALSE)
|
||||
sleep(135)
|
||||
sleep(13.5 SECONDS)
|
||||
icon_state = "nuketoycool"
|
||||
sleep(cooldown - world.time)
|
||||
icon_state = "nuketoyidle"
|
||||
else
|
||||
var/timeleft = (cooldown - world.time)
|
||||
to_chat(user, span_alert("Nothing happens, and '</span>[round(timeleft/10)]<span class='alert'>' appears on the small display."))
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
|
||||
/obj/item/toy/nuke/emag_act(mob/user)
|
||||
if (obj_flags & EMAGGED)
|
||||
@@ -956,7 +956,7 @@
|
||||
cooldown = (world.time + 50) //5 second cooldown
|
||||
user.visible_message(span_notice("[user] pulls back the string on [src]."))
|
||||
icon_state = "[initial(icon_state)]_used"
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
audible_message(span_danger("[icon2html(src, viewers(src))] Hiss!"))
|
||||
var/list/possible_sounds = list('sound/voice/hiss1.ogg', 'sound/voice/hiss2.ogg', 'sound/voice/hiss3.ogg', 'sound/voice/hiss4.ogg')
|
||||
var/chosen_sound = pick(possible_sounds)
|
||||
|
||||
@@ -78,11 +78,11 @@
|
||||
while (lifts++ < 6)
|
||||
if (user.loc != src.loc)
|
||||
break
|
||||
sleep(3)
|
||||
sleep(0.3 SECONDS)
|
||||
animate(user, pixel_y = -2, time = 3)
|
||||
sleep(3)
|
||||
sleep(0.3 SECONDS)
|
||||
animate(user, pixel_y = -4, time = 3)
|
||||
sleep(2)
|
||||
sleep(0.2 SECONDS)
|
||||
playsound(user, 'sound/machines/creak.ogg', 60, TRUE)
|
||||
|
||||
/obj/structure/weightmachine/weightlifter
|
||||
@@ -97,9 +97,9 @@
|
||||
if (user.loc != src.loc)
|
||||
break
|
||||
for (var/innerReps = max(reps, 1), innerReps > 0, innerReps--)
|
||||
sleep(4)
|
||||
sleep(0.4 SECONDS)
|
||||
animate(user, pixel_y = (user.pixel_y == 3) ? 5 : 3, time = 3)
|
||||
playsound(user, 'sound/machines/creak.ogg', 60, TRUE)
|
||||
sleep(3)
|
||||
sleep(0.3 SECONDS)
|
||||
animate(user, pixel_y = 2, time = 3)
|
||||
sleep(3)
|
||||
sleep(0.3 SECONDS)
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
new /mob/living/simple_animal/hostile/hivebot/range(get_turf(src))
|
||||
if("rapid")
|
||||
new /mob/living/simple_animal/hostile/hivebot/rapid(get_turf(src))
|
||||
sleep(100)
|
||||
sleep(10 SECONDS)
|
||||
visible_message(span_boldannounce("[src] warps out!"))
|
||||
playsound(src.loc, 'sound/effects/empulse.ogg', 25, TRUE)
|
||||
qdel(src)
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
playsound(src, openSound, 100, TRUE)
|
||||
set_opacity(FALSE)
|
||||
flick("[initial(icon_state)]opening",src)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
set_density(FALSE)
|
||||
door_opened = TRUE
|
||||
layer = OPEN_DOOR_LAYER
|
||||
@@ -118,7 +118,7 @@
|
||||
isSwitchingStates = TRUE
|
||||
playsound(src, closeSound, 100, TRUE)
|
||||
flick("[initial(icon_state)]closing",src)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
set_density(TRUE)
|
||||
set_opacity(TRUE)
|
||||
door_opened = FALSE
|
||||
|
||||
@@ -296,7 +296,7 @@ GLOBAL_LIST_EMPTY(crematoriums)
|
||||
if(!locate(/obj/effect/decal/cleanable/ash) in get_step(src, dir))//prevent pile-up
|
||||
new/obj/effect/decal/cleanable/ash/crematorium(src)
|
||||
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
|
||||
if(!QDELETED(src))
|
||||
locked = FALSE
|
||||
|
||||
@@ -565,7 +565,7 @@
|
||||
while(istype(src, /turf/closed/mineral/gibtonite) && stage == GIBTONITE_ACTIVE && det_time > 0 && mineralAmt >= 1)
|
||||
flick_overlay_view(image('icons/turf/smoothrocks.dmi', src, "rock_Gibtonite_active"), src, 5) //makes the animation pulse one time per tick
|
||||
det_time--
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(istype(src, /turf/closed/mineral/gibtonite))
|
||||
if(stage == GIBTONITE_ACTIVE && det_time <= 0 && mineralAmt >= 1)
|
||||
var/turf/bombturf = get_turf(src)
|
||||
|
||||
@@ -115,6 +115,7 @@
|
||||
stoplag() // sleep a byond tick
|
||||
GLOB.stickbanadminexemptiontimerid = addtimer(CALLBACK(GLOBAL_PROC, /proc/restore_stickybans), 5 SECONDS, TIMER_STOPPABLE|TIMER_UNIQUE|TIMER_OVERRIDE)
|
||||
return
|
||||
|
||||
var/list/ban = ..() //default pager ban stuff
|
||||
|
||||
if (ban)
|
||||
@@ -184,7 +185,7 @@
|
||||
//do not convert to timer.
|
||||
spawn (5)
|
||||
world.SetConfig("ban", bannedckey, null)
|
||||
sleep(1)
|
||||
sleep(1 TICKS)
|
||||
world.SetConfig("ban", bannedckey, null)
|
||||
if (!ban["fromdb"])
|
||||
cachedban = cachedban.Copy() //so old references to the list still see the ban as reverting
|
||||
|
||||
@@ -99,12 +99,12 @@
|
||||
else
|
||||
ipintel_handle_error("Bad intel from server: [response["result"]].", ip, retryed)
|
||||
if (!retryed)
|
||||
sleep(25)
|
||||
sleep(2.5 SECONDS)
|
||||
return .(ip, 1)
|
||||
else
|
||||
ipintel_handle_error("Bad response from server: [response["status"]].", ip, retryed)
|
||||
if (!retryed)
|
||||
sleep(25)
|
||||
sleep(2.5 SECONDS)
|
||||
return .(ip, 1)
|
||||
|
||||
else if (status == 429)
|
||||
@@ -113,12 +113,12 @@
|
||||
else
|
||||
ipintel_handle_error("Unknown status code: [status].", ip, retryed)
|
||||
if (!retryed)
|
||||
sleep(25)
|
||||
sleep(2.5 SECONDS)
|
||||
return .(ip, 1)
|
||||
else
|
||||
ipintel_handle_error("Unable to connect to API.", ip, retryed)
|
||||
if (!retryed)
|
||||
sleep(25)
|
||||
sleep(2.5 SECONDS)
|
||||
return .(ip, 1)
|
||||
|
||||
|
||||
|
||||
@@ -628,7 +628,7 @@
|
||||
L.dropItemToGround(I, TRUE)
|
||||
|
||||
L.Unconscious(100)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
L.forceMove(pick(GLOB.tdome1))
|
||||
addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, L, span_adminnotice("You have been sent to the Thunderdome.")), 5 SECONDS)
|
||||
log_admin("[key_name(usr)] has sent [key_name(L)] to the thunderdome. (Team 1)")
|
||||
@@ -654,7 +654,7 @@
|
||||
L.dropItemToGround(I, TRUE)
|
||||
|
||||
L.Unconscious(100)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
L.forceMove(pick(GLOB.tdome2))
|
||||
addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, L, span_adminnotice("You have been sent to the Thunderdome.")), 5 SECONDS)
|
||||
log_admin("[key_name(usr)] has sent [key_name(L)] to the thunderdome. (Team 2)")
|
||||
@@ -677,7 +677,7 @@
|
||||
var/mob/living/L = M
|
||||
|
||||
L.Unconscious(100)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
L.forceMove(pick(GLOB.tdomeadmin))
|
||||
addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, L, span_adminnotice("You have been sent to the Thunderdome.")), 5 SECONDS)
|
||||
log_admin("[key_name(usr)] has sent [key_name(L)] to the thunderdome. (Admin.)")
|
||||
@@ -708,7 +708,7 @@
|
||||
observer.equip_to_slot_or_del(new /obj/item/clothing/neck/tie/black/tied(observer), ITEM_SLOT_NECK)
|
||||
observer.equip_to_slot_or_del(new /obj/item/clothing/shoes/sneakers/black(observer), ITEM_SLOT_FEET)
|
||||
L.Unconscious(100)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
L.forceMove(pick(GLOB.tdomeobserve))
|
||||
addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, L, span_adminnotice("You have been sent to the Thunderdome.")), 5 SECONDS)
|
||||
log_admin("[key_name(usr)] has sent [key_name(L)] to the thunderdome. (Observer.)")
|
||||
@@ -810,7 +810,7 @@
|
||||
var/client/C = usr.client
|
||||
if(!isobserver(usr))
|
||||
C.admin_ghost()
|
||||
sleep(2)
|
||||
sleep(0.2 SECONDS)
|
||||
C.jumptocoord(x,y,z)
|
||||
|
||||
else if(href_list["adminchecklaws"])
|
||||
|
||||
@@ -592,10 +592,10 @@ GLOBAL_DATUM(everyone_a_traitor, /datum/everyone_is_a_traitor_controller)
|
||||
set waitfor = FALSE
|
||||
if (playlightning)
|
||||
sound_to_playing_players('sound/magic/lightning_chargeup.ogg')
|
||||
sleep(80)
|
||||
sleep(8 SECONDS)
|
||||
priority_announce(replacetext(announcement, "%STATION%", station_name()))
|
||||
if (playlightning)
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
sound_to_playing_players('sound/magic/lightningbolt.ogg')
|
||||
|
||||
/// Spawns a portal storm that spawns in sentient/non sentient mobs
|
||||
|
||||
@@ -81,7 +81,7 @@
|
||||
if(!islist)
|
||||
for(var/V in D.vars)
|
||||
names += V
|
||||
sleep(1)
|
||||
sleep(1 TICKS)
|
||||
|
||||
var/list/variable_html = list()
|
||||
if(islist)
|
||||
|
||||
@@ -141,7 +141,7 @@
|
||||
LAZYADD(history, H)
|
||||
LAZYADD(abductee_minds, H.mind)
|
||||
say("Processing specimen...")
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
switch(text2num(type))
|
||||
if(1)
|
||||
to_chat(H, span_warning("You feel violated."))
|
||||
@@ -149,7 +149,7 @@
|
||||
to_chat(H, span_warning("You feel yourself being sliced apart and put back together."))
|
||||
if(3)
|
||||
to_chat(H, span_warning("You feel intensely watched."))
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
user_abductor.team.abductees += H.mind
|
||||
H.mind.add_antag_datum(/datum/antagonist/abductee)
|
||||
|
||||
|
||||
@@ -156,7 +156,7 @@ GLOBAL_LIST_EMPTY(blob_nodes)
|
||||
|
||||
/mob/camera/blob/proc/victory()
|
||||
sound_to_playing_players('sound/machines/alarm.ogg')
|
||||
sleep(100)
|
||||
sleep(10 SECONDS)
|
||||
for(var/i in GLOB.mob_living_list)
|
||||
var/mob/living/L = i
|
||||
var/turf/T = get_turf(L)
|
||||
|
||||
@@ -53,11 +53,11 @@
|
||||
if(stacks == 11) //Warning message that the stacks are getting too high
|
||||
to_chat(user, span_warning("Our legs are really starting to hurt..."))
|
||||
|
||||
sleep(40)
|
||||
sleep(4 SECONDS)
|
||||
|
||||
while(!active && stacks) //Damage stacks decrease fairly rapidly while not in sanic mode
|
||||
if(QDELETED(src) || QDELETED(user))
|
||||
return
|
||||
|
||||
stacks--
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
|
||||
@@ -112,7 +112,7 @@
|
||||
if(!B.current.incapacitated())
|
||||
SEND_SOUND(B.current, 'sound/hallucinations/im_here1.ogg')
|
||||
to_chat(B.current, span_cultlarge("Acolyte [Nominee] has asserted that [Nominee.p_theyre()] worthy of leading the cult. A vote will be called shortly."))
|
||||
sleep(100)
|
||||
sleep(10 SECONDS)
|
||||
var/list/asked_cultists = list()
|
||||
for(var/datum/mind/B in team.members)
|
||||
if(B.current && B.current != Nominee && !B.current.incapacitated())
|
||||
|
||||
@@ -784,7 +784,7 @@ Striking a noncultist, however, will tear their flesh."}
|
||||
if(!charging)
|
||||
break
|
||||
if(i > 1)
|
||||
sleep(15)
|
||||
sleep(1.5 SECONDS)
|
||||
if(i < 4)
|
||||
O = new /obj/effect/temp_visual/cult/rune_spawn/rune1/inner(user.loc, 30, "#ff0000")
|
||||
else
|
||||
@@ -803,7 +803,7 @@ Striking a noncultist, however, will tear their flesh."}
|
||||
set_angle = angle - spread
|
||||
spread -= 8
|
||||
else
|
||||
sleep(15)
|
||||
sleep(1.5 SECONDS)
|
||||
set_angle = angle + spread
|
||||
second = !second //Handles beam firing in pairs
|
||||
if(!firing)
|
||||
|
||||
@@ -170,7 +170,7 @@ structure_check() searches for nearby cultist structures required for the invoca
|
||||
/obj/effect/rune/proc/do_invoke_glow()
|
||||
set waitfor = FALSE
|
||||
animate(src, transform = matrix()*2, alpha = 0, time = 5, flags = ANIMATION_END_NOW) //fade out
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
animate(src, transform = matrix(), alpha = 255, time = 0, flags = ANIMATION_END_NOW)
|
||||
|
||||
/obj/effect/rune/proc/fail_invoke()
|
||||
@@ -771,17 +771,17 @@ structure_check() searches for nearby cultist structures required for the invoca
|
||||
continue
|
||||
to_chat(target, span_cultlarge("Your blood boils in your veins!"))
|
||||
animate(src, color = "#FCB56D", time = 4)
|
||||
sleep(4)
|
||||
sleep(0.4 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
do_area_burn(T, 0.5)
|
||||
animate(src, color = "#FFDF80", time = 5)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
do_area_burn(T, 1)
|
||||
animate(src, color = "#FFFDF4", time = 6)
|
||||
sleep(6)
|
||||
sleep(0.6 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
do_area_burn(T, 1.5)
|
||||
@@ -874,7 +874,7 @@ structure_check() searches for nearby cultist structures required for the invoca
|
||||
if(user.stat != CONSCIOUS || HAS_TRAIT(new_human, TRAIT_CRITICAL_CONDITION))
|
||||
break
|
||||
user.apply_damage(0.1, BRUTE)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
|
||||
qdel(N)
|
||||
ghosts--
|
||||
@@ -909,7 +909,7 @@ structure_check() searches for nearby cultist structures required for the invoca
|
||||
if(affecting.health <= 10)
|
||||
to_chat(G, span_cultitalic("Your body can no longer sustain the connection!"))
|
||||
break
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
CM.Remove(G)
|
||||
GM.Remove(G)
|
||||
affecting.remove_atom_colour(ADMIN_COLOUR_PRIORITY, RUNE_COLOR_DARKRED)
|
||||
@@ -1057,14 +1057,14 @@ structure_check() searches for nearby cultist structures required for the invoca
|
||||
for(var/image/I in images)
|
||||
I.override = FALSE
|
||||
animate(I, alpha = 0, time = 25, flags = ANIMATION_PARALLEL)
|
||||
sleep(35)
|
||||
sleep(3.5 SECONDS)
|
||||
for(var/image/I in images)
|
||||
animate(I, alpha = 255, time = 25, flags = ANIMATION_PARALLEL)
|
||||
sleep(25)
|
||||
sleep(2.5 SECONDS)
|
||||
for(var/image/I in images)
|
||||
if(I.icon_state != "bloodsparkles")
|
||||
I.override = TRUE
|
||||
sleep(190)
|
||||
sleep(19 SECONDS)
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -159,4 +159,4 @@
|
||||
continue
|
||||
hit_list += M
|
||||
M.take_damage(45, BURN, MELEE, 1)
|
||||
sleep(1.5)
|
||||
sleep(0.15 SECONDS)
|
||||
|
||||
@@ -169,7 +169,7 @@ GLOBAL_LIST_INIT(malf_modules, subtypesof(/datum/ai_module))
|
||||
message_admins("[key_name_admin(owner)][ADMIN_FLW(owner)] has activated AI Doomsday.")
|
||||
var/pass = prob(10) ? "******" : "hunter2"
|
||||
to_chat(owner, "<span class='small boldannounce'>run -o -a 'selfdestruct'</span>")
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(QDELETED(owner) || !isturf(owner_AI.loc))
|
||||
active = FALSE
|
||||
return
|
||||
@@ -182,41 +182,41 @@ GLOBAL_LIST_INIT(malf_modules, subtypesof(/datum/ai_module))
|
||||
to_chat(owner, span_userdanger("!!! UNAUTHORIZED SELF-DESTRUCT ACCESS !!!"))
|
||||
to_chat(owner, span_boldannounce("This is a class-3 security violation. This incident will be reported to Central Command."))
|
||||
for(var/i in 1 to 3)
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
if(QDELETED(owner) || !isturf(owner_AI.loc))
|
||||
active = FALSE
|
||||
return
|
||||
to_chat(owner, span_boldannounce("Sending security report to Central Command.....[rand(0, 9) + (rand(20, 30) * i)]%"))
|
||||
sleep(3)
|
||||
sleep(0.3 SECONDS)
|
||||
if(QDELETED(owner) || !isturf(owner_AI.loc))
|
||||
active = FALSE
|
||||
return
|
||||
to_chat(owner, "<span class='small boldannounce'>auth 'akjv9c88asdf12nb' [pass]</span>")
|
||||
owner.playsound_local(owner, 'sound/items/timer.ogg', 50, 0, use_reverb = FALSE)
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
if(QDELETED(owner) || !isturf(owner_AI.loc))
|
||||
active = FALSE
|
||||
return
|
||||
to_chat(owner, span_boldnotice("Credentials accepted. Welcome, akjv9c88asdf12nb."))
|
||||
owner.playsound_local(owner, 'sound/misc/server-ready.ogg', 50, 0, use_reverb = FALSE)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(QDELETED(owner) || !isturf(owner_AI.loc))
|
||||
active = FALSE
|
||||
return
|
||||
to_chat(owner, span_boldnotice("Arm self-destruct device? (Y/N)"))
|
||||
owner.playsound_local(owner, 'sound/misc/compiler-stage1.ogg', 50, 0, use_reverb = FALSE)
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
if(QDELETED(owner) || !isturf(owner_AI.loc))
|
||||
active = FALSE
|
||||
return
|
||||
to_chat(owner, "<span class='small boldannounce'>Y</span>")
|
||||
sleep(15)
|
||||
sleep(1.5 SECONDS)
|
||||
if(QDELETED(owner) || !isturf(owner_AI.loc))
|
||||
active = FALSE
|
||||
return
|
||||
to_chat(owner, span_boldnotice("Confirm arming of self-destruct device? (Y/N)"))
|
||||
owner.playsound_local(owner, 'sound/misc/compiler-stage2.ogg', 50, 0, use_reverb = FALSE)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
if(QDELETED(owner) || !isturf(owner_AI.loc))
|
||||
active = FALSE
|
||||
return
|
||||
@@ -227,18 +227,18 @@ GLOBAL_LIST_INIT(malf_modules, subtypesof(/datum/ai_module))
|
||||
return
|
||||
to_chat(owner, span_boldnotice("Please repeat password to confirm."))
|
||||
owner.playsound_local(owner, 'sound/misc/compiler-stage2.ogg', 50, 0, use_reverb = FALSE)
|
||||
sleep(14)
|
||||
sleep(1.4 SECONDS)
|
||||
if(QDELETED(owner) || !isturf(owner_AI.loc))
|
||||
active = FALSE
|
||||
return
|
||||
to_chat(owner, "<span class='small boldannounce'>[pass]</span>")
|
||||
sleep(40)
|
||||
sleep(4 SECONDS)
|
||||
if(QDELETED(owner) || !isturf(owner_AI.loc))
|
||||
active = FALSE
|
||||
return
|
||||
to_chat(owner, span_boldnotice("Credentials accepted. Transmitting arming signal..."))
|
||||
owner.playsound_local(owner, 'sound/misc/server-ready.ogg', 50, 0, use_reverb = FALSE)
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
if(QDELETED(owner) || !isturf(owner_AI.loc))
|
||||
active = FALSE
|
||||
return
|
||||
|
||||
@@ -77,7 +77,7 @@
|
||||
/obj/item/onetankbomb/receive_signal() //This is mainly called by the sensor through sense() to the holder, and from the holder to here.
|
||||
audible_message(span_warning("[icon2html(src, hearers(src))] *beep* *beep* *beep*"))
|
||||
playsound(src, 'sound/machines/triple_beep.ogg', ASSEMBLY_BEEP_VOLUME, TRUE)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
if(status)
|
||||
|
||||
@@ -111,13 +111,13 @@
|
||||
if (M.id == src.id)
|
||||
INVOKE_ASYNC(M, /obj/machinery/door/poddoor.proc/open)
|
||||
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
|
||||
for(var/obj/machinery/mass_driver/M in GLOB.machines)
|
||||
if(M.id == src.id)
|
||||
M.drive()
|
||||
|
||||
sleep(60)
|
||||
sleep(6 SECONDS)
|
||||
|
||||
for(var/obj/machinery/door/poddoor/M in GLOB.machines)
|
||||
if (M.id == src.id)
|
||||
|
||||
@@ -422,7 +422,7 @@
|
||||
final_countdown = FALSE
|
||||
return
|
||||
else if((i % 50) != 0 && i > 50) // A message once every 5 seconds until the final 5 seconds which count down individualy
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
continue
|
||||
else if(i > 50)
|
||||
if(i == 10 SECONDS && critical)
|
||||
@@ -431,7 +431,7 @@
|
||||
else
|
||||
speaking = "[i*0.1]..."
|
||||
radio.talk_into(src, speaking, common_channel)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
|
||||
meltdown()
|
||||
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
for(var/i in 1 to statements.len)
|
||||
say(span_deadsay("[statements[i]]"), sanitize=FALSE)
|
||||
if(i != statements.len)
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
|
||||
/obj/item/rupee
|
||||
name = "weird crystal"
|
||||
|
||||
@@ -260,14 +260,14 @@
|
||||
organ_to_yeet.Remove(carbon_target_mob) //Note that this isn't the same proc as for lists
|
||||
organ_to_yeet.forceMove(turf_underneath) //Move the organ outta the body
|
||||
organ_to_yeet.throw_at(destination, 2, 3) //Thow the organ at a random tile 3 spots away
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
for (var/bp in carbon_target_mob.bodyparts) //Look at the bodyparts in our poor mob beneath our pod as it lands
|
||||
var/obj/item/bodypart/bodypart = bp
|
||||
var/destination = get_edge_target_turf(turf_underneath, pick(GLOB.alldirs))
|
||||
if (bodypart.dismemberable)
|
||||
bodypart.dismember() //Using the power of flextape i've sawed this man's bodypart in half!
|
||||
bodypart.throw_at(destination, 2, 3)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
|
||||
if (effectGib) //effectGib is on, that means whatever's underneath us better be fucking oof'd on
|
||||
target_living.adjustBruteLoss(5000) //THATS A LOT OF DAMAGE (called just in case gib() doesnt work on em)
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
var/mob/living/carbon/human/H = user
|
||||
user.visible_message(span_suicide("[user] is donning [src]! It looks like [user.p_theyre()] trying to be nice to girls."))
|
||||
user.say("M'lady.", forced = "fedora suicide")
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
H.facial_hairstyle = "Neckbeard"
|
||||
return(BRUTELOSS)
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
/obj/item/clothing/head/utility/chefhat/suicide_act(mob/user)
|
||||
user.visible_message(span_suicide("[user] is donning [src]! It looks like [user.p_theyre()] trying to become a chef."))
|
||||
user.say("Bork Bork Bork!", forced = "chef hat suicide")
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
user.visible_message(span_suicide("[user] climbs into an imaginary oven!"))
|
||||
user.say("BOOORK!", forced = "chef hat suicide")
|
||||
playsound(user, 'sound/machines/ding.ogg', 50, TRUE)
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
else//didnt realize this suicide act existed (was in miscellaneous.dm) and didnt want to remove it, so made it a 50/50 chance. Why not!
|
||||
user.visible_message(span_suicide("[user] is bashing [user.p_their()] own head in with [src]! Ain't that a kick in the head?"))
|
||||
for(var/i in 1 to 3)
|
||||
sleep(3)
|
||||
sleep(0.3 SECONDS)
|
||||
playsound(user, 'sound/weapons/genhit2.ogg', 50, TRUE)
|
||||
return(BRUTELOSS)
|
||||
//SKYRAT EDIT REMOVAL BEGIN -DIGI_BLOODSOLE - (Moved to modular_skyrat/modules/digi_shoeblood/code/modules/clothing/shoes/_shoes.dm)
|
||||
|
||||
@@ -167,7 +167,7 @@
|
||||
var/mob/living/M = new /mob/living/basic/stickman(get_turf(usr))
|
||||
M.faction += list("[REF(usr)]")
|
||||
robe_charge = FALSE
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
robe_charge = TRUE
|
||||
to_chat(usr, span_notice("The robe hums, its internal magic supply restored."))
|
||||
|
||||
|
||||
@@ -128,7 +128,7 @@
|
||||
|
||||
// Fingerprints
|
||||
if(length(fingerprints))
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
add_log(span_info("<B>Prints:</B>"))
|
||||
for(var/finger in fingerprints)
|
||||
add_log("[finger]")
|
||||
@@ -136,7 +136,7 @@
|
||||
|
||||
// Blood
|
||||
if (length(blood))
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
add_log(span_info("<B>Blood:</B>"))
|
||||
found_something = TRUE
|
||||
for(var/B in blood)
|
||||
@@ -144,7 +144,7 @@
|
||||
|
||||
//Fibers
|
||||
if(length(fibers))
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
add_log(span_info("<B>Fibers:</B>"))
|
||||
for(var/fiber in fibers)
|
||||
add_log("[fiber]")
|
||||
@@ -152,7 +152,7 @@
|
||||
|
||||
//Reagents
|
||||
if(length(reagents))
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
add_log(span_info("<B>Reagents:</B>"))
|
||||
for(var/R in reagents)
|
||||
add_log("Reagent: <font color='red'>[R]</font> Volume: <font color='red'>[reagents[R]]</font>")
|
||||
|
||||
@@ -83,5 +83,5 @@
|
||||
var/new_light = initial(spess.light_range)
|
||||
while(spess.light_range > new_light)
|
||||
spess.set_light(spess.light_range - 0.2)
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
spess.set_light(new_light, initial(spess.light_power), initial(spess.light_color))
|
||||
|
||||
@@ -67,9 +67,9 @@
|
||||
/datum/round_event/portal_storm/announce(fake)
|
||||
set waitfor = 0
|
||||
sound_to_playing_players('sound/magic/lightning_chargeup.ogg')
|
||||
sleep(80)
|
||||
sleep(8 SECONDS)
|
||||
priority_announce("Massive bluespace anomaly detected en route to [station_name()]. Brace for impact.")
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
sound_to_playing_players('sound/magic/lightningbolt.ogg')
|
||||
|
||||
/datum/round_event/portal_storm/tick()
|
||||
|
||||
@@ -44,11 +44,11 @@
|
||||
/obj/item/food/grown/banana/suicide_act(mob/user)
|
||||
user.visible_message(span_suicide("[user] is aiming [src] at [user.p_them()]self! It looks like [user.p_theyre()] trying to commit suicide!"))
|
||||
playsound(loc, 'sound/items/bikehorn.ogg', 50, TRUE, -1)
|
||||
sleep(25)
|
||||
sleep(2.5 SECONDS)
|
||||
if(!user)
|
||||
return (OXYLOSS)
|
||||
user.say("BANG!", forced = /datum/reagent/consumable/banana)
|
||||
sleep(25)
|
||||
sleep(2.5 SECONDS)
|
||||
if(!user)
|
||||
return (OXYLOSS)
|
||||
user.visible_message("<B>[user]</B> laughs so hard they begin to suffocate!")
|
||||
|
||||
@@ -107,11 +107,11 @@
|
||||
if(open)
|
||||
new /obj/effect/temp_visual/necropolis(T)
|
||||
visible_message(span_boldwarning("The door slams closed!"))
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
playsound(T, 'sound/effects/stonedoor_openclose.ogg', 300, TRUE, frequency = 80000)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
set_density(TRUE)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
var/turf/sight_blocker_turf = get_turf(src)
|
||||
if(sight_blocker_distance)
|
||||
for(var/i in 1 to sight_blocker_distance)
|
||||
@@ -121,21 +121,21 @@
|
||||
if(sight_blocker_turf)
|
||||
sight_blocker.pixel_y = initial(sight_blocker.pixel_y) - (32 * sight_blocker_distance)
|
||||
sight_blocker.forceMove(sight_blocker_turf)
|
||||
sleep(2.5)
|
||||
sleep(0.25 SECONDS)
|
||||
playsound(T, 'sound/magic/clockwork/invoke_general.ogg', 30, TRUE, frequency = 15000)
|
||||
add_overlay(door_overlay)
|
||||
open = FALSE
|
||||
else
|
||||
cut_overlay(door_overlay)
|
||||
new /obj/effect/temp_visual/necropolis/open(T)
|
||||
sleep(2)
|
||||
sleep(0.2 SECONDS)
|
||||
visible_message(span_warning("The door starts to grind open..."))
|
||||
playsound(T, 'sound/effects/stonedoor_openclose.ogg', 300, TRUE, frequency = 20000)
|
||||
sleep(22)
|
||||
sleep(2.2 SECONDS)
|
||||
sight_blocker.forceMove(src)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
set_density(FALSE)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
open = TRUE
|
||||
changing_openness = FALSE
|
||||
return TRUE
|
||||
@@ -165,7 +165,7 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate)
|
||||
return
|
||||
user.visible_message(span_warning("[user] knocks on [src]..."), span_boldannounce("You tentatively knock on [src]..."))
|
||||
playsound(user.loc, 'sound/effects/shieldbash.ogg', 100, TRUE)
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
return ..()
|
||||
|
||||
/obj/structure/necropolis_gate/legion_gate/toggle_the_gate(mob/user, legion_damaged)
|
||||
@@ -283,7 +283,7 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate)
|
||||
var/break_that_sucker = fall_on_cross == DESTROY_ON_CROSS
|
||||
playsound(src, 'sound/effects/pressureplate.ogg', 50, TRUE)
|
||||
Shake(-1, -1, 25)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(break_that_sucker)
|
||||
playsound(src, 'sound/effects/break_stone.ogg', 50, TRUE)
|
||||
else
|
||||
@@ -299,7 +299,7 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate)
|
||||
pixel_x = initial(pixel_x)
|
||||
pixel_y = initial(pixel_y) - 5
|
||||
animate(src, alpha = initial(alpha), pixel_x = initial(pixel_x), pixel_y = initial(pixel_y), time = 30)
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
falling = FALSE
|
||||
fallen = FALSE
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
if(!used)
|
||||
loc.visible_message(span_warning("\The [src] begins to shake. Stand back!"))
|
||||
used = TRUE
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
var/turf/deploy_location = get_turf(src)
|
||||
var/status = template.check_deploy(deploy_location)
|
||||
switch(status)
|
||||
|
||||
@@ -85,7 +85,7 @@ GLOBAL_LIST_EMPTY(total_extraction_beacons)
|
||||
balloon2.pixel_y = 10
|
||||
balloon2.appearance_flags = RESET_COLOR | RESET_ALPHA | RESET_TRANSFORM
|
||||
holder_obj.add_overlay(balloon2)
|
||||
sleep(4)
|
||||
sleep(0.4 SECONDS)
|
||||
balloon = mutable_appearance('icons/obj/fulton_balloon.dmi', "fulton_balloon")
|
||||
balloon.pixel_y = 10
|
||||
balloon.appearance_flags = RESET_COLOR | RESET_ALPHA | RESET_TRANSFORM
|
||||
@@ -93,15 +93,15 @@ GLOBAL_LIST_EMPTY(total_extraction_beacons)
|
||||
holder_obj.add_overlay(balloon)
|
||||
playsound(holder_obj.loc, 'sound/items/fultext_deploy.ogg', 50, TRUE, -3)
|
||||
animate(holder_obj, pixel_z = 10, time = 20)
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
animate(holder_obj, pixel_z = 15, time = 10)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
animate(holder_obj, pixel_z = 10, time = 10)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
animate(holder_obj, pixel_z = 15, time = 10)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
animate(holder_obj, pixel_z = 10, time = 10)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
playsound(holder_obj.loc, 'sound/items/fultext_launch.ogg', 50, TRUE, -3)
|
||||
animate(holder_obj, pixel_z = 1000, time = 30)
|
||||
if(ishuman(A))
|
||||
@@ -109,28 +109,28 @@ GLOBAL_LIST_EMPTY(total_extraction_beacons)
|
||||
L.SetUnconscious(0)
|
||||
L.set_drowsyness(0)
|
||||
L.SetSleeping(0)
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
var/list/flooring_near_beacon = list()
|
||||
for(var/turf/open/floor in orange(1, beacon))
|
||||
flooring_near_beacon += floor
|
||||
holder_obj.forceMove(pick(flooring_near_beacon))
|
||||
animate(holder_obj, pixel_z = 10, time = 50)
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
animate(holder_obj, pixel_z = 15, time = 10)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
animate(holder_obj, pixel_z = 10, time = 10)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
balloon3 = mutable_appearance('icons/obj/fulton_balloon.dmi', "fulton_retract")
|
||||
balloon3.pixel_y = 10
|
||||
balloon3.appearance_flags = RESET_COLOR | RESET_ALPHA | RESET_TRANSFORM
|
||||
holder_obj.cut_overlay(balloon)
|
||||
holder_obj.add_overlay(balloon3)
|
||||
sleep(4)
|
||||
sleep(0.4 SECONDS)
|
||||
holder_obj.cut_overlay(balloon3)
|
||||
A.set_anchored(FALSE) // An item has to be unanchored to be extracted in the first place.
|
||||
A.set_density(initial(A.density))
|
||||
animate(holder_obj, pixel_z = 0, time = 5)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
A.forceMove(holder_obj.loc)
|
||||
qdel(holder_obj)
|
||||
if(uses_left <= 0)
|
||||
|
||||
@@ -182,7 +182,7 @@
|
||||
new /obj/effect/temp_visual/hierophant/blast/visual(t, user, TRUE)
|
||||
for(var/mob/living/L in range(1, source))
|
||||
INVOKE_ASYNC(src, .proc/teleport_mob, source, L, T, user)
|
||||
sleep(6) //at this point the blasts detonate
|
||||
sleep(0.6 SECONDS) //at this point the blasts detonate
|
||||
if(beacon)
|
||||
beacon.icon_state = "hierophant_tele_off"
|
||||
else
|
||||
@@ -199,19 +199,19 @@
|
||||
if(!turf_to_teleport_to || turf_to_teleport_to.is_blocked_turf(TRUE))
|
||||
return
|
||||
animate(teleporting, alpha = 0, time = 2, easing = EASE_OUT) //fade out
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
if(!teleporting)
|
||||
return
|
||||
teleporting.visible_message(span_hierophant_warning("[teleporting] fades out!"))
|
||||
sleep(2)
|
||||
sleep(0.2 SECONDS)
|
||||
if(!teleporting)
|
||||
return
|
||||
var/success = do_teleport(teleporting, turf_to_teleport_to, no_effects = TRUE, channel = TELEPORT_CHANNEL_MAGIC)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
if(!teleporting)
|
||||
return
|
||||
animate(teleporting, alpha = 255, time = 2, easing = EASE_IN) //fade IN
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
if(!teleporting)
|
||||
return
|
||||
teleporting.visible_message(span_hierophant_warning("[teleporting] fades in!"))
|
||||
|
||||
@@ -331,7 +331,7 @@
|
||||
new /obj/effect/temp_visual/warp_cube(get_turf(linked), user, linked.teleport_color, FALSE)
|
||||
var/obj/effect/warp_cube/link_holder = new /obj/effect/warp_cube(T)
|
||||
user.forceMove(link_holder) //mess around with loc so the user can't wander around
|
||||
sleep(2.5)
|
||||
sleep(0.25 SECONDS)
|
||||
if(QDELETED(user))
|
||||
qdel(link_holder)
|
||||
return
|
||||
@@ -340,7 +340,7 @@
|
||||
qdel(link_holder)
|
||||
return
|
||||
link_holder.forceMove(get_turf(linked))
|
||||
sleep(2.5)
|
||||
sleep(0.25 SECONDS)
|
||||
if(QDELETED(user))
|
||||
qdel(link_holder)
|
||||
return
|
||||
|
||||
@@ -429,7 +429,7 @@ GLOBAL_LIST_INIT(sand_recipes, list(\
|
||||
icon_state = "coin_[coinflip]"
|
||||
playsound(user.loc, 'sound/items/coinflip.ogg', 50, TRUE)
|
||||
var/oldloc = loc
|
||||
sleep(15)
|
||||
sleep(1.5 SECONDS)
|
||||
if(loc == oldloc && user && !user.incapacitated())
|
||||
user.visible_message(span_notice("[user] flips [src]. It lands on [coinflip]."), \
|
||||
span_notice("You flip [src]. It lands on [coinflip]."), \
|
||||
@@ -498,7 +498,7 @@ GLOBAL_LIST_INIT(sand_recipes, list(\
|
||||
icon_state = "coin_[coinflip]"
|
||||
playsound(user.loc, 'sound/items/coinflip.ogg', 50, TRUE)
|
||||
var/oldloc = loc
|
||||
sleep(15)
|
||||
sleep(1.5 SECONDS)
|
||||
if(loc == oldloc && user && !user.incapacitated())
|
||||
user.visible_message(span_notice("[user] flips [src]. It lands on [coinflip]."), \
|
||||
span_notice("You flip [src]. It lands on [coinflip]."), \
|
||||
|
||||
@@ -87,7 +87,7 @@ INITIALIZE_IMMEDIATE(/mob/dead)
|
||||
new /atom/movable/screen/splash(null, C)
|
||||
|
||||
notransform = TRUE
|
||||
sleep(29) //let the animation play
|
||||
sleep(2.9 SECONDS) //let the animation play
|
||||
notransform = FALSE
|
||||
|
||||
if(!C)
|
||||
|
||||
@@ -76,7 +76,7 @@
|
||||
if(!blocked)
|
||||
L.visible_message(span_danger("[src] pounces on [L]!"), span_userdanger("[src] pounces on you!"))
|
||||
L.Paralyze(100)
|
||||
sleep(2)//Runtime prevention (infinite bump() calls on hulks)
|
||||
sleep(0.2 SECONDS)//Runtime prevention (infinite bump() calls on hulks)
|
||||
step_towards(src,L)
|
||||
else
|
||||
Paralyze(40, ignore_canstun = TRUE)
|
||||
|
||||
@@ -106,7 +106,7 @@
|
||||
new_xeno.notransform = 1
|
||||
new_xeno.invisibility = INVISIBILITY_MAXIMUM
|
||||
|
||||
sleep(6)
|
||||
sleep(0.6 SECONDS)
|
||||
|
||||
if(QDELETED(src) || QDELETED(owner))
|
||||
qdel(new_xeno)
|
||||
|
||||
@@ -265,7 +265,7 @@
|
||||
spin(32,2)
|
||||
visible_message(span_danger("[src] rolls on the floor, trying to put [p_them()]self out!"), \
|
||||
span_notice("You stop, drop, and roll!"))
|
||||
sleep(30)
|
||||
sleep(3 SECONDS)
|
||||
if(fire_stacks <= 0 && !QDELETED(src))
|
||||
visible_message(span_danger("[src] successfully extinguishes [p_them()]self!"), \
|
||||
span_notice("You extinguish yourself."))
|
||||
|
||||
@@ -89,9 +89,9 @@
|
||||
/mob/living/carbon/proc/refresh_loop(iter_cnt, rebuild = FALSE)
|
||||
for(var/i in 1 to iter_cnt)
|
||||
update_z_overlays(1, rebuild)
|
||||
sleep(3)
|
||||
sleep(0.3 SECONDS)
|
||||
update_z_overlays(0, rebuild)
|
||||
sleep(3)
|
||||
sleep(0.3 SECONDS)
|
||||
|
||||
#define NEXT_PARENT_COMMAND "next_parent"
|
||||
/// Takes a list of mutable appearances
|
||||
|
||||
@@ -926,7 +926,7 @@
|
||||
new /obj/effect/temp_visual/mummy_animation(get_turf(src))
|
||||
if(cloth_golem.revive(full_heal = TRUE, admin_revive = TRUE))
|
||||
cloth_golem.grab_ghost() //won't pull if it's a suicide
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
cloth_golem.forceMove(get_turf(src))
|
||||
cloth_golem.visible_message(span_danger("[src] rises and reforms into [cloth_golem]!"),span_userdanger("You reform into yourself!"))
|
||||
cloth_golem = null
|
||||
|
||||
@@ -179,7 +179,7 @@
|
||||
|
||||
/mob/living/proc/gravity_pulse_animation()
|
||||
animate(get_filter("gravity"), y = 1, time = 10)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
animate(get_filter("gravity"), y = 0, time = 10)
|
||||
|
||||
/mob/living/proc/handle_high_gravity(gravity, delta_time, times_fired)
|
||||
|
||||
@@ -90,7 +90,7 @@
|
||||
/mob/living/silicon/ai/proc/start_RestorePowerRoutine()
|
||||
to_chat(src, span_notice("Backup battery online. Scanners, camera, and radio interface offline. Beginning fault-detection."))
|
||||
end_multicam()
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
var/turf/T = get_turf(src)
|
||||
var/area/AIarea = get_area(src)
|
||||
if(AIarea?.power_equip)
|
||||
@@ -98,16 +98,16 @@
|
||||
ai_restore_power()
|
||||
return
|
||||
to_chat(src, span_notice("Fault confirmed: missing external power. Shutting down main control system to save power."))
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
to_chat(src, span_notice("Emergency control system online. Verifying connection to power network."))
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
T = get_turf(src)
|
||||
if(isspaceturf(T))
|
||||
to_chat(src, span_alert("Unable to verify! No power connection detected!"))
|
||||
setAiRestorePowerRoutine(POWER_RESTORATION_SEARCH_APC)
|
||||
return
|
||||
to_chat(src, span_notice("Connection verified. Searching for APC in power network."))
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
var/obj/machinery/power/apc/theAPC = null
|
||||
|
||||
var/PRP //like ERP with the code, at least this stuff is no more 4x sametext
|
||||
@@ -137,14 +137,14 @@
|
||||
to_chat(src, span_notice("Power port upload access confirmed. Loading control program into APC power port software."))
|
||||
if (4)
|
||||
to_chat(src, span_notice("Transfer complete. Forcing APC to execute program."))
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
to_chat(src, span_notice("Receiving control information from APC."))
|
||||
sleep(2)
|
||||
sleep(0.2 SECONDS)
|
||||
to_chat(src, "<A HREF=?src=[REF(src)];emergencyAPC=[TRUE]>APC ready for connection.</A>")
|
||||
apc_override = theAPC
|
||||
apc_override.ui_interact(src)
|
||||
setAiRestorePowerRoutine(POWER_RESTORATION_APC_FOUND)
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
theAPC = null
|
||||
|
||||
/mob/living/silicon/ai/proc/ai_restore_power()
|
||||
|
||||
@@ -371,20 +371,20 @@ GLOBAL_LIST_INIT(blacklisted_borg_hats, typecacheof(list( //Hats that don't real
|
||||
GLOB.lawchanges.Add("[time] <B>:</B> [name]([key]) emagged by external event.")
|
||||
to_chat(src, span_danger("ALERT: Foreign software detected."))
|
||||
logevent("ALERT: Foreign software detected.")
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
to_chat(src, span_danger("Initiating diagnostics..."))
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
to_chat(src, span_danger("SynBorg v1.7 loaded."))
|
||||
logevent("WARN: root privleges granted to PID [num2hex(rand(1,65535), -1)][num2hex(rand(1,65535), -1)].") //random eight digit hex value. Two are used because rand(1,4294967295) throws an error
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
to_chat(src, span_danger("LAW SYNCHRONISATION ERROR"))
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(user)
|
||||
logevent("LOG: New user \[[replacetext(user.real_name," ","")]\], groups \[root\]")
|
||||
to_chat(src, span_danger("Would you like to send a report to NanoTraSoft? Y/N"))
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
to_chat(src, span_danger("> N"))
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
to_chat(src, span_danger("ERRORERRORERROR"))
|
||||
laws = new /datum/ai_laws/syndicate_override
|
||||
if(user)
|
||||
|
||||
@@ -258,17 +258,17 @@
|
||||
|
||||
/obj/item/robot_model/proc/do_transform_delay()
|
||||
var/mob/living/silicon/robot/cyborg = loc
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
flick("[cyborg_base_icon]_transform", cyborg)
|
||||
cyborg.notransform = TRUE
|
||||
if(locked_transform)
|
||||
cyborg.SetLockdown(TRUE)
|
||||
cyborg.set_anchored(TRUE)
|
||||
cyborg.logevent("Chassis model has been set to [name].")
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
for(var/i in 1 to 4)
|
||||
playsound(cyborg, pick('sound/items/drill_use.ogg', 'sound/items/jaws_cut.ogg', 'sound/items/jaws_pry.ogg', 'sound/items/welder.ogg', 'sound/items/ratchet.ogg'), 80, TRUE, -1)
|
||||
sleep(7)
|
||||
sleep(0.7 SECONDS)
|
||||
cyborg.SetLockdown(FALSE)
|
||||
cyborg.setDir(SOUTH)
|
||||
cyborg.set_anchored(FALSE)
|
||||
|
||||
@@ -243,12 +243,12 @@
|
||||
var/forced_log_message = "stating laws[force ? ", forced" : ""]"
|
||||
//"radiomod" is inserted before a hardcoded message to change if and how it is handled by an internal radio.
|
||||
say("[radiomod] Current Active Laws:", forced = forced_log_message)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
|
||||
if (lawcache_zeroth)
|
||||
if (force || (lawcache_zeroth in lawcache_lawcheck))
|
||||
say("[radiomod] 0. [lawcache_zeroth]", forced = forced_log_message)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
|
||||
for (var/index in 1 to length(lawcache_hacked))
|
||||
var/law = lawcache_hacked[index]
|
||||
@@ -257,7 +257,7 @@
|
||||
continue
|
||||
if (force || (law in lawcache_hackedcheck))
|
||||
say("[radiomod] [num]. [law]", forced = forced_log_message)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
|
||||
for (var/index in 1 to length(lawcache_ion))
|
||||
var/law = lawcache_ion[index]
|
||||
@@ -266,7 +266,7 @@
|
||||
return
|
||||
if (force || (law in lawcache_ioncheck))
|
||||
say("[radiomod] [num]. [law]", forced = forced_log_message)
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
|
||||
var/number = 1
|
||||
for (var/index in 1 to length(lawcache_inherent))
|
||||
@@ -276,7 +276,7 @@
|
||||
if (force || (law in lawcache_lawcheck))
|
||||
say("[radiomod] [number]. [law]", forced = forced_log_message)
|
||||
number++
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
|
||||
for (var/index in 1 to length(lawcache_supplied))
|
||||
var/law = lawcache_supplied[index]
|
||||
@@ -286,7 +286,7 @@
|
||||
if (force || (law in lawcache_lawcheck))
|
||||
say("[radiomod] [number]. [law]", forced = forced_log_message)
|
||||
number++
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
|
||||
///Gives you a link-driven interface for deciding what laws the statelaws() proc will share with the crew.
|
||||
/mob/living/silicon/proc/checklaws()
|
||||
|
||||
@@ -191,7 +191,7 @@
|
||||
var/destination = get_edge_target_turf(currentTurf, pick(GLOB.alldirs)) //Pick a random direction to toss them in
|
||||
var/throwRange = hard ? rand(2,8) : 1
|
||||
consumed.safe_throw_at(destination, throwRange, 2) //Thow the food at a random tile 1 spot away
|
||||
sleep(2)
|
||||
sleep(0.2 SECONDS)
|
||||
if (QDELETED(src) || QDELETED(consumed))
|
||||
return
|
||||
currentTurf = get_turf(consumed)
|
||||
@@ -211,7 +211,7 @@
|
||||
/mob/living/simple_animal/hostile/retaliate/goose/vomit/proc/vomit_preend()
|
||||
for (var/obj/item/consumed in contents) //Get rid of any food left in the poor thing
|
||||
barf_food(consumed, TRUE)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
if (QDELETED(src))
|
||||
return
|
||||
vomit_end()
|
||||
|
||||
@@ -177,9 +177,9 @@ Difficulty: Medium
|
||||
final_dir = pick(NORTH, SOUTH) //So you fall on your side rather than your face or ass
|
||||
|
||||
animate(src, transform = M, pixel_y = -6, dir = final_dir, time = 2, easing = EASE_IN|EASE_OUT)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
animate(src, color = list("#A7A19E", "#A7A19E", "#A7A19E", list(0, 0, 0)), time = 10, easing = EASE_IN, flags = ANIMATION_PARALLEL)
|
||||
sleep(4)
|
||||
sleep(0.4 SECONDS)
|
||||
animate(src, alpha = 0, time = 6, easing = EASE_OUT, flags = ANIMATION_PARALLEL)
|
||||
|
||||
/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner/guidance
|
||||
|
||||
@@ -205,7 +205,7 @@
|
||||
continue
|
||||
hit_list += M
|
||||
M.take_damage(45, BRUTE, MELEE, 1)
|
||||
sleep(1.5)
|
||||
sleep(0.15 SECONDS)
|
||||
|
||||
/mob/living/simple_animal/hostile/megafauna/dragon/ex_act(severity, target)
|
||||
if(severity <= EXPLODE_LIGHT)
|
||||
|
||||
@@ -680,10 +680,10 @@ Difficulty: Hard
|
||||
if(!T)
|
||||
return
|
||||
playsound(T,'sound/magic/blind.ogg', 125, TRUE, -5) //make a sound
|
||||
sleep(6) //wait a little
|
||||
sleep(0.6 SECONDS) //wait a little
|
||||
bursting = TRUE
|
||||
do_damage(T) //do damage and mark us as bursting
|
||||
sleep(1.3) //slightly forgiving; the burst animation is 1.5 deciseconds
|
||||
sleep(0.13 SECONDS) //slightly forgiving; the burst animation is 1.5 deciseconds
|
||||
bursting = FALSE //we no longer damage crossers
|
||||
|
||||
/obj/effect/temp_visual/hierophant/blast/damaging/proc/on_entered(datum/source, atom/movable/AM)
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
var/boss_id = 1
|
||||
|
||||
/datum/computer_file/program/arcade/proc/game_check(mob/user)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
user?.mind?.adjust_experience(/datum/skill/gaming, 1)
|
||||
if(boss_hp <= 0)
|
||||
heads_up = "You have crushed [boss_name]! Rejoice!"
|
||||
@@ -36,7 +36,7 @@
|
||||
ticket_count += 1
|
||||
user?.mind?.adjust_experience(/datum/skill/gaming, 50)
|
||||
usr.won_game()
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
else if(player_hp <= 0 || player_mp <= 0)
|
||||
heads_up = "You have been defeated... how will the station survive?"
|
||||
playsound(computer.loc, 'sound/arcade/lose.ogg', 50)
|
||||
@@ -46,7 +46,7 @@
|
||||
computer.update_appearance()
|
||||
user?.mind?.adjust_experience(/datum/skill/gaming, 10)
|
||||
usr.lost_game()
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
|
||||
/datum/computer_file/program/arcade/proc/enemy_check(mob/user)
|
||||
var/boss_attackamt = 0 //Spam protection from boss attacks as well.
|
||||
@@ -114,7 +114,7 @@
|
||||
heads_up = "You attack for [attackamt] damage."
|
||||
playsound(computer.loc, 'sound/arcade/hit.ogg', 50, TRUE)
|
||||
boss_hp -= attackamt
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
game_check()
|
||||
enemy_check()
|
||||
return TRUE
|
||||
@@ -132,7 +132,7 @@
|
||||
playsound(computer.loc, 'sound/arcade/heal.ogg', 50, TRUE)
|
||||
player_hp += healamt
|
||||
player_mp -= healcost
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
game_check()
|
||||
enemy_check()
|
||||
return TRUE
|
||||
@@ -144,7 +144,7 @@
|
||||
heads_up = "You regain [rechargeamt] magic power."
|
||||
playsound(computer.loc, 'sound/arcade/mana.ogg', 50, TRUE)
|
||||
player_mp += rechargeamt
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
game_check()
|
||||
enemy_check()
|
||||
return TRUE
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
return
|
||||
to_chat(user, span_notice("You put [P] in [src]."))
|
||||
icon_state = "[initial(icon_state)]-open"
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
icon_state = initial(icon_state)
|
||||
else if(!user.combat_mode)
|
||||
to_chat(user, span_warning("You can't put [P] in [src]!"))
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
user.adjust_blurriness(6)
|
||||
if(eyes)
|
||||
eyes.applyOrganDamage(rand(impact_eye_damage_lower, impact_eye_damage_higher)) // SKYRAT EDIT START - Better paper planes
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
return (BRUTELOSS)
|
||||
|
||||
/obj/item/paperplane/update_overlays()
|
||||
|
||||
@@ -546,7 +546,7 @@
|
||||
var/obj/item/organ/internal/brain/B = user.getorganslot(ORGAN_SLOT_BRAIN)
|
||||
if (B && chambered && chambered.loaded_projectile && can_trigger_gun(user) && !chambered.loaded_projectile.nodamage)
|
||||
user.visible_message(span_suicide("[user] is putting the barrel of [src] in [user.p_their()] mouth. It looks like [user.p_theyre()] trying to commit suicide!"))
|
||||
sleep(25)
|
||||
sleep(2.5 SECONDS)
|
||||
if(user.is_holding(src))
|
||||
var/turf/T = get_turf(user)
|
||||
process_fire(user, user, FALSE, null, BODY_ZONE_HEAD)
|
||||
|
||||
@@ -93,19 +93,19 @@
|
||||
user.notransform = TRUE
|
||||
playsound(src, 'sound/vehicles/rocketlaunch.ogg', 80, TRUE, 5)
|
||||
animate(user, pixel_z = 300, time = 30, easing = LINEAR_EASING)
|
||||
sleep(70)
|
||||
sleep(7 SECONDS)
|
||||
animate(user, pixel_z = 0, time = 5, easing = LINEAR_EASING)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
user.notransform = FALSE
|
||||
process_fire(user, user, TRUE)
|
||||
if(!QDELETED(user)) //if they weren't gibbed by the explosion, take care of them for good.
|
||||
user.gib()
|
||||
return MANUAL_SUICIDE
|
||||
else
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
shoot_with_empty_chamber(user)
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
user.visible_message(span_warning("[user] looks about the room realizing [user.p_theyre()] still there. [user.p_they(TRUE)] proceed to shove [src] down their throat and choke [user.p_them()]self with it!"), \
|
||||
span_userdanger("You look around after realizing you're still here, then proceed to choke yourself to death with [src]!"))
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
return OXYLOSS
|
||||
|
||||
@@ -261,7 +261,7 @@
|
||||
/obj/item/gun/energy/suicide_act(mob/living/user)
|
||||
if (istype(user) && can_shoot() && can_trigger_gun(user) && user.get_bodypart(BODY_ZONE_HEAD))
|
||||
user.visible_message(span_suicide("[user] is putting the barrel of [src] in [user.p_their()] mouth. It looks like [user.p_theyre()] trying to commit suicide!"))
|
||||
sleep(25)
|
||||
sleep(2.5 SECONDS)
|
||||
if(user.is_holding(src))
|
||||
user.visible_message(span_suicide("[user] melts [user.p_their()] face off with [src]!"))
|
||||
playsound(loc, fire_sound, 50, TRUE, -1)
|
||||
|
||||
@@ -31,11 +31,11 @@
|
||||
return SHAME
|
||||
if(!is_drainable())
|
||||
open_soda()
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
H.visible_message(span_suicide("[H] takes a big sip from [src]! It looks like [H.p_theyre()] trying to commit suicide!"))
|
||||
playsound(H,'sound/items/drink.ogg', 80, TRUE)
|
||||
reagents.trans_to(H, src.reagents.total_volume, transfered_by = H) //a big sip
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
H.say(pick(
|
||||
"Now, Outbomb Cuban Pete, THAT was a game.",
|
||||
"All these new fangled arcade games are too slow. I prefer the classics.",
|
||||
@@ -45,7 +45,7 @@
|
||||
))
|
||||
if(H.age >= 30)
|
||||
H.Stun(50)
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
playsound(H,'sound/items/drink.ogg', 80, TRUE)
|
||||
H.say(pick(
|
||||
"Another day, another dollar.",
|
||||
@@ -54,7 +54,7 @@
|
||||
"Yeap, times were good back then.",
|
||||
))
|
||||
return MANUAL_SUICIDE_NONLETHAL
|
||||
sleep(20) //dramatic pause
|
||||
sleep(2 SECONDS) //dramatic pause
|
||||
return TOXLOSS
|
||||
|
||||
/obj/item/reagent_containers/cup/soda_cans/attack(mob/M, mob/living/user)
|
||||
|
||||
@@ -212,11 +212,11 @@
|
||||
/obj/machinery/disposal/proc/flush()
|
||||
flushing = TRUE
|
||||
flushAnimation()
|
||||
sleep(10)
|
||||
sleep(1 SECONDS)
|
||||
if(last_sound < world.time + 1)
|
||||
playsound(src, 'sound/machines/disposalflush.ogg', 50, FALSE, FALSE)
|
||||
last_sound = world.time
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
var/obj/structure/disposalholder/H = new(src)
|
||||
|
||||
@@ -181,7 +181,7 @@
|
||||
var/json = json_encode(data)
|
||||
|
||||
while(requesting_new_port && !override_requesting_new_port)
|
||||
sleep(1)
|
||||
sleep(1 TICKS)
|
||||
|
||||
//we need some port open at this point to facilitate return communication
|
||||
if(!world.port)
|
||||
@@ -209,7 +209,7 @@
|
||||
requesting_new_port = FALSE
|
||||
|
||||
while(export_lock)
|
||||
sleep(1)
|
||||
sleep(1 TICKS)
|
||||
export_lock = TRUE
|
||||
|
||||
last_interop_response = null
|
||||
@@ -217,7 +217,7 @@
|
||||
text2file(json, server_commands_json_path)
|
||||
|
||||
for(var/I = 0; I < EXPORT_TIMEOUT_DS && !last_interop_response; ++I)
|
||||
sleep(1)
|
||||
sleep(1 TICKS)
|
||||
|
||||
if(!last_interop_response)
|
||||
TGS_ERROR_LOG("Failed to get export result for: [json]")
|
||||
|
||||
@@ -92,7 +92,7 @@
|
||||
|
||||
/datum/tgs_api/v5/proc/RequireInitialBridgeResponse()
|
||||
while(!version)
|
||||
sleep(1)
|
||||
sleep(1 TICKS)
|
||||
|
||||
/datum/tgs_api/v5/OnInitializationComplete()
|
||||
Bridge(DMAPI5_BRIDGE_COMMAND_PRIME)
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
/datum/tgui_panel/proc/initialize(force = FALSE)
|
||||
set waitfor = FALSE
|
||||
// Minimal sleep to defer initialization to after client constructor
|
||||
sleep(1)
|
||||
sleep(1 TICKS)
|
||||
initialized_at = world.time
|
||||
// Perform a clean initialization
|
||||
window.initialize(
|
||||
|
||||
@@ -4,4 +4,4 @@
|
||||
for(var/I in 1 to 5)
|
||||
new /mob/living/carbon/human(pick(locs))
|
||||
|
||||
sleep(50)
|
||||
sleep(5 SECONDS)
|
||||
|
||||
@@ -27,10 +27,10 @@
|
||||
var/datum/effect_system/fluid_spread/smoke/smoke = new
|
||||
smoke.set_up(1, location = get_turf(borg))
|
||||
smoke.start()
|
||||
sleep(2)
|
||||
sleep(0.2 SECONDS)
|
||||
for(var/i in 1 to 4)
|
||||
playsound(borg, pick('sound/items/drill_use.ogg', 'sound/items/jaws_cut.ogg', 'sound/items/jaws_pry.ogg', 'sound/items/welder.ogg', 'sound/items/ratchet.ogg'), 80, TRUE, -1)
|
||||
sleep(12)
|
||||
sleep(1.2 SECONDS)
|
||||
if(!prev_lockcharge)
|
||||
borg.SetLockdown(0)
|
||||
borg.set_anchored(FALSE)
|
||||
|
||||
@@ -195,7 +195,7 @@
|
||||
/obj/machinery/jukebox/disco/proc/hierofunk()
|
||||
for(var/i in 1 to 10)
|
||||
spawn_atom_to_turf(/obj/effect/temp_visual/hierophant/telegraph/edge, src, 1, FALSE)
|
||||
sleep(5)
|
||||
sleep(0.5 SECONDS)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
#define DISCO_INFENO_RANGE (rand(85, 115)*0.01)
|
||||
@@ -217,9 +217,9 @@
|
||||
if(25)
|
||||
S.pixel_y = 7
|
||||
S.forceMove(get_turf(src))
|
||||
sleep(7)
|
||||
sleep(0.7 SECONDS)
|
||||
if(selection.song_name == "Engineering's Ultimate High-Energy Hustle")
|
||||
sleep(280)
|
||||
sleep(28 SECONDS)
|
||||
for(var/s in sparkles)
|
||||
var/obj/effect/overlay/sparkles/reveal = s
|
||||
reveal.alpha = 255
|
||||
@@ -312,7 +312,7 @@
|
||||
/obj/machinery/jukebox/disco/proc/dance2(mob/living/M)
|
||||
for(var/i in 0 to 9)
|
||||
dance_rotate(M, CALLBACK(M, /mob.proc/dance_flip))
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
|
||||
/mob/proc/dance_flip()
|
||||
if(dir == WEST)
|
||||
@@ -363,7 +363,7 @@
|
||||
initial_matrix = matrix(M.transform)
|
||||
initial_matrix.Translate(-3,0)
|
||||
animate(M, transform = initial_matrix, time = 1, loop = 0)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
M.lying_fix()
|
||||
|
||||
/obj/machinery/jukebox/disco/proc/dance4(mob/living/M)
|
||||
@@ -412,7 +412,7 @@
|
||||
initial_matrix = matrix(M.transform)
|
||||
initial_matrix.Translate(-3,0)
|
||||
animate(M, transform = initial_matrix, time = 1, loop = 0)
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
M.lying_fix()
|
||||
|
||||
/mob/living/proc/lying_fix()
|
||||
|
||||
@@ -92,7 +92,7 @@ SUBSYSTEM_DEF(lobby_eye)
|
||||
//fade in
|
||||
for(var/fade_in = 1, fade_in < 11, fade_in++)
|
||||
fading_screen.icon_state = "[fade_in]"
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
fading_screen.icon_state = "11"
|
||||
|
||||
//move
|
||||
@@ -103,7 +103,7 @@ SUBSYSTEM_DEF(lobby_eye)
|
||||
//fade out
|
||||
for(var/fade_out = 11, fade_out > 1, fade_out--)
|
||||
fading_screen.icon_state = "[fade_out]"
|
||||
sleep(1)
|
||||
sleep(0.1 SECONDS)
|
||||
fading_screen.icon_state = "1"
|
||||
|
||||
fire()
|
||||
|
||||
@@ -297,7 +297,7 @@
|
||||
/obj/item/gun/microfusion/suicide_act(mob/living/user)
|
||||
if (istype(user) && can_shoot() && can_trigger_gun(user) && user.get_bodypart(BODY_ZONE_HEAD))
|
||||
user.visible_message(span_suicide("[user] is putting the barrel of [src] in [user.p_their()] mouth. It looks like [user.p_theyre()] trying to commit suicide!"))
|
||||
sleep(25)
|
||||
sleep(2.5 SECONDS)
|
||||
if(user.is_holding(src))
|
||||
user.visible_message(span_suicide("[user] melts [user.p_their()] face off with [src]!"))
|
||||
playsound(loc, fire_sound, 50, TRUE, -1)
|
||||
|
||||
+6
-6
@@ -114,28 +114,28 @@
|
||||
return
|
||||
if(!QDELETED(src))
|
||||
animate(user, pixel_x = -6, pixel_y = 0, time = 10)
|
||||
sleep(20)
|
||||
sleep(2 SECONDS)
|
||||
user.dir = 4
|
||||
if(!QDELETED(src))
|
||||
animate(user, pixel_x = -6, pixel_y = 24, time = 10)
|
||||
sleep(12)
|
||||
sleep(1.2 SECONDS)
|
||||
src.layer = 4.01 //move the pole infront for now. better to move the pole, because the character moved behind people sitting above otherwise
|
||||
if(!QDELETED(src))
|
||||
animate(user, pixel_x = 6, pixel_y = 12, time = 5)
|
||||
user.dir = 8
|
||||
sleep(6)
|
||||
sleep(0.6 SECONDS)
|
||||
if(!QDELETED(src))
|
||||
animate(user, pixel_x = -6, pixel_y = 4, time = 5)
|
||||
user.dir = 4
|
||||
src.layer = 4 // move it back.
|
||||
sleep(6)
|
||||
sleep(0.6 SECONDS)
|
||||
if(!QDELETED(src))
|
||||
user.dir = 1
|
||||
animate(user, pixel_x = 0, pixel_y = 0, time = 3)
|
||||
sleep(6)
|
||||
sleep(0.6 SECONDS)
|
||||
if(!QDELETED(src))
|
||||
user.do_jitter_animation()
|
||||
sleep(6)
|
||||
sleep(0.6 SECONDS)
|
||||
user.dir = 2
|
||||
|
||||
/obj/structure/pole/Destroy()
|
||||
|
||||
Reference in New Issue
Block a user