/obj/item/clothing/under/syclothing/proc/toggle_on_off()
if(s_busy)
to_chat(loc, "ERROR: You cannot use this function at this time.")
return FALSE
if(s_initialized)
deinitialize()
else
ninitialize()
. = TRUE
/obj/item/clothing/under/syclothing/proc/ninitialize(delay = s_delay, mob/living/carbon/human/U = loc)
if(!U.mind)
return //Not sure how this could happen.
s_busy = TRUE
to_chat(U, "Now initializing...")
addtimer(CALLBACK(src, .proc/ninitialize_two, delay, U), delay)
/obj/item/clothing/under/syclothing/proc/ninitialize_two(delay, mob/living/carbon/human/U)
if(!lock_suit(U))//To lock the suit onto wearer.
s_busy = FALSE
return
to_chat(U, "Analyzing body composition and data...\nSecuring external locking mechanism...")
addtimer(CALLBACK(src, .proc/ninitialize_three, delay, U), delay)
/obj/item/clothing/under/syclothing/proc/ninitialize_three(delay, mob/living/carbon/human/U)
to_chat(U, "Preparing for psionic link...\nNow monitoring brain activity...")
addtimer(CALLBACK(src, .proc/ninitialize_four, delay, U), delay)
/obj/item/clothing/under/syclothing/proc/ninitialize_four(delay, mob/living/carbon/human/U)
if(U.stat == DEAD|| U.health <= 0)
to_chat(U, "FÄAL �Rr�R: 344--93#�&&21 BR��N |/|/aV� PATT$RN RED\nA-A-aB�rT�NG...")
unlock_suit()
s_busy = FALSE
return
to_chat(U, "Psionic link processing...\nPattern\green GREEN, continuing operation.")
addtimer(CALLBACK(src, .proc/ninitialize_five, delay, U), delay)
/obj/item/clothing/under/syclothing/proc/ninitialize_five(delay, mob/living/carbon/human/U)
to_chat(U, "PHASE-shift device status: ONLINE.\nInertial dampeners: ONLINE.")
addtimer(CALLBACK(src, .proc/ninitialize_six, delay, U), delay)
/obj/item/clothing/under/syclothing/proc/ninitialize_six(delay, mob/living/carbon/human/U)
to_chat(U, "Primary system status: ONLINE.\nBackup system status: ONLINE.\nDownscaling for application...")
do_sparks(5, FALSE, U.loc)
addtimer(CALLBACK(src, .proc/ninitialize_seven, delay, U), delay)
/obj/item/clothing/under/syclothing/proc/ninitialize_seven(delay, mob/living/carbon/human/U)
to_chat(U, "All systems operational. Welcome to SYTech OS, [U.real_name].")
s_initialized = TRUE
s_busy = FALSE
U.size_multiplier = 0.25
/obj/item/clothing/under/syclothing/proc/deinitialize(delay = s_delay)
if(affecting==loc)
var/mob/living/carbon/human/U = affecting
if(alert("Are you certain you wish to remove the suit? This will take time and remove all abilities, as well as keep you small!",,"Yes","No")=="No")
return
s_busy = TRUE
addtimer(CALLBACK(src, .proc/deinitialize_two, delay, U), delay)
/obj/item/clothing/under/syclothing/proc/deinitialize_two(delay, mob/living/carbon/human/U)
to_chat(U, "Now de-initializing...")
addtimer(CALLBACK(src, .proc/deinitialize_three, delay, U), delay)
/obj/item/clothing/under/syclothing/proc/deinitialize_three(delay, mob/living/carbon/human/U)
to_chat(U, "Logging off, [U.real_name]. Shutting down SYTech OS.")
addtimer(CALLBACK(src, .proc/deinitialize_four, delay, U), delay)
/obj/item/clothing/under/syclothing/proc/deinitialize_four(delay, mob/living/carbon/human/U)
to_chat(U, "Primary system status: OFFLINE.\nBackup system status: OFFLINE.")
addtimer(CALLBACK(src, .proc/deinitialize_five, delay, U), delay)
/obj/item/clothing/under/syclothing/proc/deinitialize_five(delay, mob/living/carbon/human/U)
to_chat(U, "PHASE-shift device status: OFFLINE.\nInertial dampeners: OFFLINE.")
addtimer(CALLBACK(src, .proc/deinitialize_six, delay, U), delay)
/obj/item/clothing/under/syclothing/proc/deinitialize_six(delay, mob/living/carbon/human/U)
to_chat(U, "Disconnecting psionic-link...\greenSuccess.")
addtimer(CALLBACK(src, .proc/deinitialize_seven, delay, U), delay)
/obj/item/clothing/under/syclothing/proc/deinitialize_seven(delay, mob/living/carbon/human/U)
to_chat(U, "Disengaging body analysis and brain-monitoring...\greenSuccess.")
addtimer(CALLBACK(src, .proc/deinitialize_eight, delay, U), delay)
/obj/item/clothing/under/syclothing/proc/deinitialize_eight(delay, mob/living/carbon/human/U)
to_chat(U, "Unsecuring external locking mechanism...\nTechnology engram secured.\nOperation status: FINISHED.")
unlock_suit()
s_initialized = FALSE
s_busy = FALSE