Sight update to strike team admin proc. It should pick people as intended now. Can't really test it locally so who knows.

Admins can again spawn everyone as ninjas, including themselves. Inactive player checking is still there though.
A slightly updated stealth graphic for ninjas.
Fixed a lawsync() run time error.
Fixed station_explosion_cinematic() run time error.
Fixed copy_to() run time error.
Fixed dnainjector/attack() run time error.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1667 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
noisomehollow@lycos.com
2011-06-06 06:43:59 +00:00
parent fc6d5d122a
commit 501c855aac
8 changed files with 112 additions and 122 deletions
@@ -1377,7 +1377,8 @@
AddCamoOverlay(loc)//Overlay camo.
if(3)
if(istype(loc, /turf))
if(prob(90))//Ninjas may flick into view once in a while if they are stealthed.
//Ninjas may flick into view once in a while if they are stealthed.
if(prob(90))
NinjaStealthActive(loc)
else
NinjaStealthMalf()
+28 -27
View File
@@ -1,7 +1,7 @@
/mob/living/silicon/robot/verb/cmd_show_laws()
set category = "Robot Commands"
set name = "Show Laws"
src.show_laws()
show_laws()
/mob/living/silicon/robot/show_laws(var/everyone = 0)
var/who
@@ -16,13 +16,13 @@
src << "<b>AI signal lost, unable to sync laws.</b>"
else
src.lawsync()
lawsync()
src << "<b>Laws synced with AI, be sure to note any changes.</b>"
if (mind.special_role == "traitor" && mind.original == src)
src << "<b>Remember, your AI does NOT share or know about your law 0."
else
src << "<b>No AI selected to sync laws with, disabling lawsync protocol.</b>"
src.lawupdate = 0
lawupdate = 0
who << "<b>Obey these laws:</b>"
laws.show_laws(who)
@@ -59,59 +59,60 @@
*/
/mob/living/silicon/robot/proc/lawsync()
var/datum/ai_laws/master = src.connected_ai.laws
var/datum/ai_laws/master = connected_ai ? connected_ai.laws : null
var/temp
if (master)
src.laws.ion.len = master.ion.len
laws.ion.len = master.ion.len
for (var/index = 1, index <= master.ion.len, index++)
temp = master.ion[index]
if (length(temp) > 0)
src.laws.ion[index] = temp
laws.ion[index] = temp
if (!checktraitor(src) || mind.original != src)
temp = master.zeroth
src.laws.zeroth = temp
laws.zeroth = temp
src.laws.inherent.len = master.inherent.len
laws.inherent.len = master.inherent.len
for (var/index = 1, index <= master.inherent.len, index++)
temp = master.inherent[index]
if (length(temp) > 0)
src.laws.inherent[index] = temp
laws.inherent[index] = temp
src.laws.supplied.len = master.supplied.len
laws.supplied.len = master.supplied.len
for (var/index = 1, index <= master.supplied.len, index++)
temp = master.supplied[index]
if (length(temp) > 0)
src.laws.supplied[index] = temp
laws.supplied[index] = temp
return
/mob/living/silicon/robot/proc/laws_sanity_check()
if (!src.laws)
src.laws = new /datum/ai_laws/asimov
if (!laws)
laws = new /datum/ai_laws/asimov
/mob/living/silicon/robot/proc/set_zeroth_law(var/law)
src.laws_sanity_check()
src.laws.set_zeroth_law(law)
laws_sanity_check()
laws.set_zeroth_law(law)
/mob/living/silicon/robot/proc/add_inherent_law(var/law)
src.laws_sanity_check()
src.laws.add_inherent_law(law)
laws_sanity_check()
laws.add_inherent_law(law)
/mob/living/silicon/robot/proc/clear_inherent_laws()
src.laws_sanity_check()
src.laws.clear_inherent_laws()
laws_sanity_check()
laws.clear_inherent_laws()
/mob/living/silicon/robot/proc/add_supplied_law(var/number, var/law)
src.laws_sanity_check()
src.laws.add_supplied_law(number, law)
laws_sanity_check()
laws.add_supplied_law(number, law)
/mob/living/silicon/robot/proc/clear_supplied_laws()
src.laws_sanity_check()
src.laws.clear_supplied_laws()
laws_sanity_check()
laws.clear_supplied_laws()
/mob/living/silicon/robot/proc/add_ion_law(var/law)
src.laws_sanity_check()
src.laws.add_ion_law(law)
laws_sanity_check()
laws.add_ion_law(law)
/mob/living/silicon/robot/proc/clear_ion_laws()
src.laws_sanity_check()
src.laws.clear_ion_laws()
laws_sanity_check()
laws.clear_ion_laws()
+2 -2
View File
@@ -2166,8 +2166,8 @@ note dizziness decrements automatically in the mob's Life() proc.
var/mob/M = mob
M.loc = null // HACK, but whatever, this works
var/obj/screen/boom = M.hud_used.station_explosion
if (M.client)
if (M.client&&M.hud_used)//They may some times not have a hud, apparently.
var/obj/screen/boom = M.hud_used.station_explosion
M.client.screen += boom
if(ticker)
switch(ticker.mode.name)
+3 -6
View File
@@ -902,17 +902,14 @@ datum/preferences
else
character.face_icon_state = "bald"
if (underwear == 1)
character.underwear = pick(1,2,3,4,5)
else
character.underwear = 0
character.underwear = underwear == 1 ? pick(1,2,3,4,5) : 0
character.update_face()
character.update_body()
if(!safety)//To prevent run-time errors due to null datum when using randomize_appearance_for()
spawn(10)//as they should already have these set at game spawn.
if(character)
spawn(10)
if(character&&character.client)
character.client.midis = midis
character.client.ooccolor = ooccolor
character.client.be_alien = be_alien