Merge pull request #109 from SamCroswell/master

Various Fixes/Tweaks to Ninja
This commit is contained in:
ZomgPonies
2014-01-07 22:34:16 -08:00
3 changed files with 63 additions and 20 deletions
+49 -2
View File
@@ -23,6 +23,7 @@ ________________________________________________________________________________
verbs += /obj/item/clothing/suit/space/space_ninja/proc/init//suit initialize verb
verbs += /obj/item/clothing/suit/space/space_ninja/proc/ai_instruction//for AIs
verbs += /obj/item/clothing/suit/space/space_ninja/proc/ai_holo
verbs += /obj/item/clothing/suit/space/space_ninja/proc/ai_overrideninja // Experemental
//verbs += /obj/item/clothing/suit/space/space_ninja/proc/display_verb_procs//DEBUG. Doesn't work.
spark_system = new()//spark initialize
spark_system.set_up(5, 0, src)
@@ -772,8 +773,8 @@ ________________________________________________________________________________
return
/obj/item/clothing/suit/space/space_ninja/proc/ai_hack_ninja()
set name = "Hack SpiderOS"
set desc = "Hack directly into the Black Widow(tm) neuro-interface."
set name = "Display SpiderOS"
set desc = "Hack into SpiderOS and display a modified interface."
set category = "AI Ninja Equip"
set src = usr.loc
@@ -790,9 +791,54 @@ ________________________________________________________________________________
AI << "You have seized your hacking attempt. [affecting.real_name] has regained control."
affecting << "<b>UPDATE</b>: [AI.real_name] has ceased hacking attempt. All systems clear."
verbs += /obj/item/clothing/suit/space/space_ninja/proc/ai_overrideninja
remove_AI_verbs()
return
/obj/item/clothing/suit/space/space_ninja/proc/ai_overrideninja()// Experemental -- Dave
set name = "Hack Ninja Systems"
set desc = "Hack directly into the Black Widow(tm) neuro-interface."
set category = "AI Ninja Equip"
set src = usr.loc
var/mob/living/carbon/human/U = affecting
var/mob/living/silicon/ai/A = AI
if(A.laws.zeroth || A.laws != /datum/ai_laws/ninja_override)//Gives a few seconds to re-upload the AI somewhere before it takes full control.
s_busy = 1
for(var/i,i<5,i++)
if(AI==A)
switch(i)
if(0)
A << "\red <b>NOTICE</b>:\n beginning hack attempt..."
U << "\red <b>WARNING</b>: HACKING ATTEMP IN PR0GRESs!"
spideros = 0
k_unlock = 0
U << browse(null, "window=spideros")
if(1)
A << "Disconnecting neural interface..."
U << "\red <b>WARNING</b>: RO0Gr--S 2&3%"
if(2)
A << "Shutting down external protocol..."
U << "\red <b>WARNING</b>: PRֆGr5S 677^%"
cancel_stealth()
if(3)
A << "Connecting to kernel..."
U << "\red <b>WARNING</b>: RrR_404"
A.control_disabled = 0
if(4)
A << "Connection established and secured. Menu updated."
U << "\red <b>Wr#nING</b>: #%@!!WȆ|_454@ \nUnB88l3 T L-o-LCaT2 ##$!RN0..%.."
verbs -= /obj/item/clothing/suit/space/space_ninja/proc/ai_overrideninja
grant_AI_verbs()
return
sleep(s_delay)
else break
s_busy = 0
else
A << "/red Unable to hack target with current lawset!"
//=======//GENERAL SUIT PROCS//=======//
/obj/item/clothing/suit/space/space_ninja/attackby(obj/item/I, mob/U)
@@ -858,6 +904,7 @@ ________________________________________________________________________________
else
U << "\red <b>ERROR</b>: \black Procedure interrupted. Process terminated."
else
U.drop_item()
I.loc = src
t_disk = I
U << "\blue You slot \the [I] into \the [src]."
+7 -12
View File
@@ -482,27 +482,22 @@ As such, it's hard-coded for now. No reason for it not to be, really.
if(alert("Are you sure you want to send in a space ninja?",,"Yes","No")=="No")
return
if(alert("Would you like random or custom paramaters?",,"Random","Custom")=="Custom")
var/mission
var/mission
if(alert("Would you the Ninja to have a random or preset mission?",,"Random","Preset")=="Preset")
while(!mission)
mission = copytext(sanitize(input(src, "Please specify which mission the space ninja shall undertake.", "Specify Mission", "")),1,MAX_MESSAGE_LEN)
if(!mission)
if(alert("Error, no mission set. Do you want to exit the setup process?",,"Yes","No")=="Yes")
return
var/input = ckey(input("Pick character to spawn as the Space Ninja", "Key", ""))
var/input
if(alert("Would you like the Ninja to be a random ghost or a preset ckey?",,"Random","Preset")=="Preset")
input = ckey(input("Pick character to spawn as the Space Ninja", "Key", ""))
if(!input)
return
space_ninja_arrival(input, mission)
space_ninja_arrival(input, mission)
message_admins("\blue [key_name_admin(key)] has spawned [input] as a Space Ninja.\nTheir <b>mission</b> is: [mission]")
else
space_ninja_arrival()
message_admins("\blue [key_name_admin(key)] has spawned a random player as a Space Ninja.")
log_admin("[key] used Spawn Space Ninja.")
message_admins("\blue [key_name_admin(usr)] has spawned [(input) ? input : "a random ghost"] as a Space Ninja.\nTheir <b>mission</b> is [(mission) ? ":" + mission : "randomly generated"]")
return