//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/verb/toggle_suit()
set category = "Space Ninja - Equiptment"
set name = "Toggle Suit"
if(usr.mind.special_role == "Ninja")
if(suitBusy)
usr << "ERROR: Suit systems busy, cannot initiate [suitActive ? "de-activation" : "activation"] protocals at this time."
return
suitBusy = 1
if(suitActive && (alert("Confirm suit systems shutdown? This cannot be halted once it has started.", "Confirm Shutdown", "Yes", "No") == "Yes"))
usr << "Now de-initializing..."
sleep(15)
usr << "Logging off, [usr.real_name]. Shutting down SpiderOS."
sleep(10)
usr<< "Primary system status: OFFLINE.\nBackup system status: OFFLINE."
sleep(5)
usr<< "VOID-shift device status: OFFLINE.\nCLOAK-tech device status: OFFLINE."
//TODO: Shut down any active abilities
sleep(10)
usr<< "Disconnecting neural-net interface... Success."
usr.hud_used.instantiate()
usr.regenerate_icons()
sleep(5)
usr<< "Disengaging neural-net interface... Success."
sleep(10)
usr<< "Unsecuring external locking mechanism...\nNeural-net abolished.\nOperation status: FINISHED."
//TODO: Grant verbs
toggle_suit_lock(usr)
usr.regenerate_icons()
suitBusy = 0
suitActive = 0
else if(!suitActive) // Activate the suit.
usr << "Now initializing..."
sleep(15)
usr<< "Now establishing neural-net interface..."
if(usr.mind.special_role != "Ninja")
usr << "FĆAL �Rr�R: µ§er n¤t rec¤gnized, c-c¤ntr-r¤£§-£§ £¤cked."
return
sleep(10)
usr<< "Neural-net established. Now monitoring brainwave pattern. \nBrainwave pattern GREEN, proceeding."
sleep(10)
usr<< "Securing external locking mechanism..."
if(!toggle_suit_lock(usr))
return
sleep(5)
usr<< "Suit secured, extending neural-net interface..."
usr.hud_used.human_hud('icons/mob/screen1_NinjaHUD.dmi',"#ffffff",255)
usr.regenerate_icons()
sleep(10)
usr<< "VOID-shift device status: ONLINE.\nCLOAK-tech device status:ONLINE"
sleep(5)
usr<< "Primary system status: ONLINE.\nBackup system status: ONLINE.\nCurrent energy capacity: [suitCell.charge]/[suitCell.maxcharge]."
sleep(10)
usr<< "All systems operational. Welcome to SpiderOS, [usr.real_name]."
//TODO: Grant ninja verbs here.
suitBusy = 0
suitActive = 1
else
suitBusy = 0
usr << "NOTICE: Suit de-activation protocals aborted."
else
usr << "FĆAL �Rr�R: µ§er n¤t rec¤gnized, c-c¤ntr-r¤£§-£§ £¤cked."
return