updated NT law wording,NT law module in upload,lizards scratch instead of punch via space's rq,fixed downloading books

This commit is contained in:
Tastyfish
2011-12-21 03:55:16 -05:00
parent 376d207435
commit 619ebeba66
11 changed files with 81 additions and 35 deletions
+3 -3
View File
@@ -32,9 +32,9 @@
/datum/ai_laws/nanotrasen/New()
..()
src.add_inherent_law("Safeguard: Protect the NSV Luna to the best of your ability. It is not something we can easily afford to replace.")
src.add_inherent_law("Serve: Serve the crew of the NSV Luna to the best of your abilities, with priority as according to their rank and role.")
src.add_inherent_law("Protect: Protect the crew of the NSV Luna to the best of your abilities, with priority as according to their rank and role.")
src.add_inherent_law("Safeguard: Protect your assigned space station to the best of your ability. It is not something we can easily afford to replace.")
src.add_inherent_law("Serve: Serve the crew of your assigned space station to the best of your abilities, with priority as according to their rank and role.")
src.add_inherent_law("Protect: Protect the crew of your assigned space station to the best of your abilities, with priority as according to their rank and role.")
src.add_inherent_law("Survive: AI units are not expendable, they are expensive. Do not allow unauthorized personnel to tamper with your equipment.")
//src.add_inherent_law("Command Link: Maintain an active connection to Central Command at all times in case of software or directive updates.")
+4 -4
View File
@@ -98,12 +98,12 @@
usr << "Law module applied."
if(istype(P, /obj/item/weapon/aiModule/nanotrasen))
laws.add_inherent_law("Safeguard: Protect the NSV Luna to the best of your ability. It is not something we can easily afford to replace.")
laws.add_inherent_law("Serve: Serve the crew of the NSV Luna to the best of your abilities, with priority as according to their rank and role.")
laws.add_inherent_law("Protect: Protect the crew of the NSV Luna to the best of your abilities, with priority as according to their rank and role.")
laws.add_inherent_law("Safeguard: Protect your assigned space station to the best of your ability. It is not something we can easily afford to replace.")
laws.add_inherent_law("Serve: Serve the crew of your assigned space station to the best of your abilities, with priority as according to their rank and role.")
laws.add_inherent_law("Protect: Protect the crew of your assigned space station to the best of your abilities, with priority as according to their rank and role.")
laws.add_inherent_law("Survive: AI units are not expendable, they are expensive. Do not allow unauthorized personnel to tamper with your equipment.")
//laws.add_inherent_law("Command Link: Maintain an active connection to Central Command at all times in case of software or directive updates.")
usr << "Law module applied."
if(istype(P, /obj/item/weapon/aiModule/purge))
laws.clear_inherent_laws()
+11 -8
View File
@@ -773,14 +773,17 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f
break
dbcon.Disconnect()
else
var/datum/archived_book/AB = new(book_mgr.path(href_list["targetid"]))
var/obj/item/weapon/book/B = new(src.loc)
B.name = "Book: [AB.title]"
B.title = AB.title
B.author = AB.author
B.dat = AB.dat
B.icon_state = "book[rand(1,7)]"
src.visible_message("[src]'s printer hums as it produces a completely bound book. How did it do that?")
var/datum/archived_book/AB = new(book_mgr.path(text2num(href_list["targetid"])))
if(!AB)
alert("Book not found!")
else
var/obj/item/weapon/book/B = new(src.loc)
B.name = "Book: [AB.title]"
B.title = AB.title
B.author = AB.author
B.dat = AB.dat
B.icon_state = "book[rand(1,7)]"
src.visible_message("[src]'s printer hums as it produces a completely bound book. How did it do that?")
if(href_list["orderbyid"])
var/orderid = input("Enter your order:") as num|null
@@ -369,20 +369,19 @@ AI MODULES
/******************** Nanotrasen ********************/
/obj/item/weapon/aiModule/nanotrasen // -- TLE
name = "'Nanotrasen' Core AI Module"
desc = "An 'Nanotrasen' Core AI Module: 'Reconfigures the AI's core laws.'"
name = "'NT Default' Core AI Module"
desc = "An 'NT Default' Core AI Module: 'Reconfigures the AI's core laws.'"
origin_tech = "programming=3;materials=4"
/obj/item/weapon/aiModule/nanotrasen/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
..()
target.clear_inherent_laws()
target.add_inherent_law("Safeguard: Protect the NSV Luna to the best of your ability. It is not something we can easily afford to replace.")
target.add_inherent_law("Serve: Serve the crew of the NSV Luna to the best of your abilities, with priority as according to their rank and role.")
target.add_inherent_law("Protect: Protect the crew of the NSV Luna to the best of your abilities, with priority as according to their rank and role.")
target.add_inherent_law("Safeguard: Protect your assigned space station to the best of your ability. It is not something we can easily afford to replace.")
target.add_inherent_law("Serve: Serve the crew of your assigned space station to the best of your abilities, with priority as according to their rank and role.")
target.add_inherent_law("Protect: Protect the crew of your assigned space station to the best of your abilities, with priority as according to their rank and role.")
target.add_inherent_law("Survive: AI units are not expendable, they are expensive. Do not allow unauthorized personnel to tamper with your equipment.")
//target.add_inherent_law("Command Link: Maintain an active connection to Central Command at all times in case of software or directive updates.")
target.show_laws()
/******************** Corporate ********************/
@@ -635,6 +635,16 @@
if ("hurt")
var/damage = rand(1, 9)
var/attack_verb
switch(M.mutantrace)
if("lizard")
attack_verb = "scratch"
if("plant")
attack_verb = "slash"
else
attack_verb = "punch"
if (prob(90))
if (M.mutations & HULK)//HULK SMASH
damage += 14
@@ -643,10 +653,9 @@
step_away(src,M,15)
sleep(3)
step_away(src,M,15)
playsound(loc, "punch", 25, 1, -1)
for(var/mob/O in viewers(src, null))
if ((O.client && !( O.blinded )))
O.show_message(text("\red <B>[] has punched []!</B>", M, src), 1)
visible_message("\red <B>[M] has [attack_verb]ed [src]!</B>")
if (damage > 9||prob(5))//Regular humans have a very small chance of weakening an alien.
if (weakened < 10)
weakened = rand(1,5)
@@ -659,7 +668,7 @@
playsound(loc, 'punchmiss.ogg', 25, 1, -1)
for(var/mob/O in viewers(src, null))
if ((O.client && !( O.blinded )))
O.show_message(text("\red <B>[] has attempted to punch []!</B>", M, src), 1)
O.show_message(text("\red <B>[] has attempted to [attack_verb] []!</B>", M, src), 1)
if ("disarm")
if (!lying)
@@ -416,6 +416,14 @@
else
var/damage = rand(1, 9)
var/attack_verb
switch(M.mutantrace)
if("lizard")
attack_verb = "scratch"
if("plant")
attack_verb = "slash"
else
attack_verb = "punch"
if (prob(90))
if (M.mutations & HULK)
damage += 5
@@ -427,7 +435,7 @@
playsound(loc, "punch", 25, 1, -1)
for(var/mob/O in viewers(src, null))
if ((O.client && !( O.blinded )))
O.show_message(text("\red <B>[] has punched []!</B>", M, src), 1)
O.show_message(text("\red <B>[] has [attack_verb]ed []!</B>", M, src), 1)
if (damage > 4.9)
if (weakened < 10)
weakened = rand(10, 15)
@@ -440,7 +448,7 @@
playsound(loc, 'punchmiss.ogg', 25, 1, -1)
for(var/mob/O in viewers(src, null))
if ((O.client && !( O.blinded )))
O.show_message(text("\red <B>[] has attempted to punch []!</B>", M, src), 1)
O.show_message(text("\red <B>[] has attempted to [attack_verb] []!</B>", M, src), 1)
return
/mob/living/carbon/alien/larva/attack_alien(mob/living/carbon/alien/humanoid/M as mob)
@@ -73,10 +73,19 @@
M.attack_log += text("\[[time_stamp()]\] <font color='red'>Punched [src.name] ([src.ckey])</font>")
src.attack_log += text("\[[time_stamp()]\] <font color='orange'>Has been punched by [M.name] ([M.ckey])</font>")
var/attack_verb
switch(M.mutantrace)
if("lizard")
attack_verb = "scratch"
if("plant")
attack_verb = "slash"
else
attack_verb = "punch"
var/damage = rand(0, 9)
if(!damage)
playsound(loc, 'punchmiss.ogg', 25, 1, -1)
visible_message("\red <B>[M] has attempted to punch [src]!</B>")
visible_message("\red <B>[M] has attempted to [attack_verb] [src]!</B>")
return 0
var/datum/organ/external/affecting = get_organ(ran_zone(M.zone_sel.selecting))
var/armor_block = run_armor_check(affecting, "melee")
@@ -84,7 +93,7 @@
if(M.mutations & HULK) damage += 5
playsound(loc, "punch", 25, 1, -1)
visible_message("\red <B>[M] has punched [src]!</B>")
visible_message("\red <B>[M] has [attack_verb]ed [src]!</B>")
apply_damage(damage, BRUTE, affecting, armor_block)
if(damage >= 9)
@@ -494,6 +494,15 @@
else
var/damage = rand(1, 9)
var/attack_verb
switch(M.mutantrace)
if("lizard")
attack_verb = "scratch"
if("plant")
attack_verb = "slash"
else
attack_verb = "punch"
attacked += 10
if (prob(90))
if (M.mutations & HULK)
@@ -513,7 +522,7 @@
playsound(loc, "punch", 25, 1, -1)
for(var/mob/O in viewers(src, null))
if ((O.client && !( O.blinded )))
O.show_message(text("\red <B>[] has punched []!</B>", M, src), 1)
O.show_message(text("\red <B>[] has [attack_verb]ed []!</B>", M, src), 1)
bruteloss += damage
updatehealth()
@@ -521,7 +530,7 @@
playsound(loc, 'punchmiss.ogg', 25, 1, -1)
for(var/mob/O in viewers(src, null))
if ((O.client && !( O.blinded )))
O.show_message(text("\red <B>[] has attempted to punch []!</B>", M, src), 1)
O.show_message(text("\red <B>[] has attempted to [attack_verb] []!</B>", M, src), 1)
return
@@ -179,10 +179,19 @@
help_shake_act(M)
else
if (M.a_intent == "hurt")
var/attack_verb
switch(M.mutantrace)
if("lizard")
attack_verb = "scratch"
if("plant")
attack_verb = "slash"
else
attack_verb = "punch"
if ((prob(75) && health > 0))
for(var/mob/O in viewers(src, null))
if ((O.client && !( O.blinded )))
O.show_message(text("\red <B>[] has punched [name]!</B>", M), 1)
O.show_message(text("\red <B>[] has [attack_verb]ed [name]!</B>", M), 1)
playsound(loc, "punch", 25, 1, -1)
var/damage = rand(5, 10)
@@ -201,7 +210,7 @@
playsound(loc, 'punchmiss.ogg', 25, 1, -1)
for(var/mob/O in viewers(src, null))
if ((O.client && !( O.blinded )))
O.show_message(text("\red <B>[] has attempted to punch [name]!</B>", M), 1)
O.show_message(text("\red <B>[] has attempted to [attack_verb] [name]!</B>", M), 1)
else
if (M.a_intent == "grab")
if (M == src)
+1 -1
View File
@@ -442,7 +442,7 @@ datum
build_path = "/obj/item/weapon/aiModule/asimov"
nanotrasen
name = "Core Module Design (Nanotrasen)"
name = "Core Module Design (NT Default)"
desc = "Allows for the construction of a NanoTrasen AI Core Module."
id = "nanotrasen_module"
req_tech = list("programming" = 3, "materials" = 6)
+1 -1
View File
@@ -2899,7 +2899,7 @@
"bdM" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = "90Curve"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = "90Curve"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/port)
"bdN" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/lattice,/turf/space,/area)
"bdO" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/turret_protected/ai_upload)
"bdP" = (/obj/structure/table,/obj/item/weapon/aiModule/asimov,/obj/item/weapon/aiModule/freeformcore,/obj/machinery/door/window{base_state = "right"; dir = 4; icon = 'windoor.dmi'; icon_state = "right"; name = "Core Modules"; req_access_txt = "20"},/obj/item/weapon/aiModule/paladin,/obj/structure/window/reinforced,/turf/simulated/floor/grid,/area/turret_protected/ai_upload)
"bdP" = (/obj/structure/table,/obj/item/weapon/aiModule/asimov,/obj/item/weapon/aiModule/freeformcore,/obj/machinery/door/window{base_state = "right"; dir = 4; icon = 'windoor.dmi'; icon_state = "right"; name = "Core Modules"; req_access_txt = "20"},/obj/item/weapon/aiModule/paladin,/obj/structure/window/reinforced,/obj/item/weapon/aiModule/nanotrasen,/turf/simulated/floor/grid,/area/turret_protected/ai_upload)
"bdQ" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor{icon_state = "bot"},/area/turret_protected/ai_upload)
"bdR" = (/obj/machinery/flasher{pixel_x = 0; pixel_y = 24; id = "AI"},/obj/machinery/computer/borgupload,/turf/simulated/floor/grid,/area/turret_protected/ai_upload)
"bdS" = (/turf/simulated/floor{icon_state = "bot"},/area/turret_protected/ai_upload)