//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 to_chat(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) to_chat(U, "Now initializing...") if(1) if(!lock_suit(U))//To lock the suit onto wearer. break to_chat(U, "Securing external locking mechanism...\nNeural-net established.") if(2) to_chat(U, "Extending neural-net interface...\nNow monitoring brain wave pattern...") if(3) if(U.stat==2||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() break lock_suit(U,1)//Check for icons. U.regenerate_icons() to_chat(U, "Linking neural-net interface...\nPattern\green GREEN, continuing operation.") if(4) to_chat(U, "VOID-shift device status: ONLINE.\nCLOAK-tech device status: ONLINE.") if(5) to_chat(U, "Primary system status: ONLINE.\nBackup system status: ONLINE.\nCurrent energy capacity: [cell.charge].") if(6) to_chat(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. to_chat(U, "You do not understand how this suit functions. Where the heck did it even come from?") else if(s_initialized) to_chat(U, "The suit is already functioning. Please report this bug.") else to_chat(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) to_chat(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) to_chat(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) to_chat(U, "Now de-initializing...") spideros = 0//Spideros resets. if(1) to_chat(U, "Logging off, [U:real_name]. Shutting down SpiderOS.") remove_ninja_verbs() if(2) to_chat(U, "Primary system status: OFFLINE.\nBackup system status: OFFLINE.") if(3) to_chat(U, "VOID-shift device status: OFFLINE.\nCLOAK-tech device status: OFFLINE.") cancel_stealth()//Shutdowns stealth. if(4) to_chat(U, "Disconnecting neural-net interface...\greenSuccess.") if(5) to_chat(U, "Disengaging neural-net interface...\greenSuccess.") if(6) to_chat(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