//Verbs link to procs because verb-like procs have a bug which prevents their use if the arguments are not readily referenced.
//^ Old coder words may be false these days, Not taking the risk for now.
/obj/item/clothing/suit/space/space_ninja/proc/init()
set name = "Initialize Suit"
set desc = "Initializes the suit for field operation."
set category = "Ninja Equip"
ninitialize()
/obj/item/clothing/suit/space/space_ninja/proc/deinit()
set name = "De-Initialize Suit"
set desc = "Begins procedure to remove the suit."
set category = "Ninja Equip"
if(!s_busy)
deinitialize()
else
affecting << "The function did not trigger!"
/obj/item/clothing/suit/space/space_ninja/proc/ninitialize(delay = s_delay, mob/living/carbon/human/U = loc)
if(U.mind && U.mind.assigned_role==U.mind.special_role && !s_initialized && !s_busy)//Shouldn't be busy... but anything is possible I guess.
s_busy = 1
for(var/i,i<7,i++)
switch(i)
if(0)
U << "Now initializing..."
if(1)
if(!lock_suit(U))//To lock the suit onto wearer.
break
U << "Securing external locking mechanism...\nNeural-net established."
if(2)
U << "Extending neural-net interface...\nNow monitoring brain wave pattern..."
if(3)
if(U.stat==2||U.health<=0)
U << "FÄAL �Rr�R: 344--93#�&&21 BR��N |/|/aV� PATT$RN RED\nA-A-aB�rT�NG..."
unlock_suit()
break
lock_suit(U,1)//Check for icons.
U.regenerate_icons()
U << "Linking neural-net interface...\nPattern\green GREEN, continuing operation."
if(4)
U << "VOID-shift device status: ONLINE.\nCLOAK-tech device status: ONLINE."
if(5)
U << "Primary system status: ONLINE.\nBackup system status: ONLINE.\nCurrent energy capacity: [cell.charge]."
if(6)
U << "All systems operational. Welcome to SpiderOS, [U.real_name]."
grant_ninja_verbs()
grant_equip_verbs()
ntick()
sleep(delay)
s_busy = 0
else
if(!U.mind||U.mind.assigned_role!=U.mind.special_role)//Your run of the mill persons shouldn't know what it is. Or how to turn it on.
U << "You do not understand how this suit functions. Where the heck did it even come from?"
else if(s_initialized)
U << "The suit is already functioning. Please report this bug."
else
U << "ERROR: You cannot use this function at this time."
return
/obj/item/clothing/suit/space/space_ninja/proc/deinitialize(delay = s_delay)
if(affecting==loc&&!s_busy)
var/mob/living/carbon/human/U = affecting
if(!s_initialized)
U << "The suit is not initialized. Please report this bug."
return
if(alert("Are you certain you wish to remove the suit? This will take time and remove all abilities.",,"Yes","No")=="No")
return
if(s_busy)
U << "ERROR: You cannot use this function at this time."
return
s_busy = 1
for(var/i = 0,i<7,i++)
switch(i)
if(0)
U << "Now de-initializing..."
spideros = 0//Spideros resets.
if(1)
U << "Logging off, [U:real_name]. Shutting down SpiderOS."
remove_ninja_verbs()
if(2)
U << "Primary system status: OFFLINE.\nBackup system status: OFFLINE."
if(3)
U << "VOID-shift device status: OFFLINE.\nCLOAK-tech device status: OFFLINE."
cancel_stealth()//Shutdowns stealth.
if(4)
U << "Disconnecting neural-net interface...\greenSuccess."
if(5)
U << "Disengaging neural-net interface...\greenSuccess."
if(6)
U << "Unsecuring external locking mechanism...\nNeural-net abolished.\nOperation status: FINISHED."
remove_equip_verbs()
unlock_suit()
U.regenerate_icons()
sleep(delay)
s_busy = 0
return