From c36e6d57d4f65e13fd75e0231617c1eec6f43e65 Mon Sep 17 00:00:00 2001 From: "johnsonmt88@gmail.com" Date: Fri, 15 Jun 2012 02:16:59 +0000 Subject: [PATCH] Mining mechs, which currently only spawn in secret asteroid rooms, no longer have tracking beacons Changes to windoors. - Secure windoors now require 2 plasteel sheets instead of 4 rods - Windoors and secure windoors have reduced health. Added checks for proximity, canmove and death on: - Library scanner - Library computer - Library public computer - Bookcases (Fixes issue 564.) git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3824 316c924e-a436-60f5-8080-3fe189b3f50e --- code/game/machinery/doors/windowdoor.dm | 4 ++-- code/game/magic/library.dm | 17 +++++++++++++++++ code/game/mecha/working/ripley.dm | 3 ++- code/game/objects/windoor_assembly.dm | 8 ++++---- 4 files changed, 25 insertions(+), 7 deletions(-) diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm index 063fdba8d4..de6615a761 100644 --- a/code/game/machinery/doors/windowdoor.dm +++ b/code/game/machinery/doors/windowdoor.dm @@ -4,7 +4,7 @@ icon = 'windoor.dmi' icon_state = "left" var/base_state = "left" - var/health = 200.0 //If you change this, consiter changing ../door/window/brigdoor/ health at the bottom of this .dm file + var/health = 150.0 //If you change this, consiter changing ../door/window/brigdoor/ health at the bottom of this .dm file visible = 0.0 flags = ON_BORDER opacity = 0 @@ -231,7 +231,7 @@ base_state = "leftsecure" req_access = list(access_security) var/id = null - health = 500.0 //Stronger doors for prison (regular window door health is 200) + health = 300.0 //Stronger doors for prison (regular window door health is 200) /obj/machinery/door/window/northleft diff --git a/code/game/magic/library.dm b/code/game/magic/library.dm index aab27e8e67..036d4e54f4 100644 --- a/code/game/magic/library.dm +++ b/code/game/magic/library.dm @@ -97,6 +97,8 @@ if(contents.len) var/obj/item/weapon/book/choice = input("Which book would you like to remove from the shelf?") in contents as obj|null if(choice) + if(!usr.canmove || usr.stat || usr.restrained() || !in_range(loc, usr)) + return if(ishuman(user)) if(!user.get_active_hand()) user.put_in_hand(choice) @@ -367,6 +369,11 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f /obj/machinery/librarypubliccomp/Topic(href, href_list) + if(..()) + usr << browse(null, "window=publiclibrary") + onclose(usr, "publiclibrary") + return + if(href_list["settitle"]) var/newtitle = input("Enter a title to search for:") as text|null if(newtitle) @@ -545,6 +552,11 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f ..() /obj/machinery/librarycomp/Topic(href, href_list) + if(..()) + usr << browse(null, "window=library") + onclose(usr, "library") + return + if(href_list["switchscreen"]) switch(href_list["switchscreen"]) if("0") @@ -728,6 +740,11 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f onclose(user, "scanner") /obj/machinery/libraryscanner/Topic(href, href_list) + if(..()) + usr << browse(null, "window=scanner") + onclose(usr, "scanner") + return + if(href_list["scan"]) for(var/obj/item/weapon/book/B in contents) cache = B diff --git a/code/game/mecha/working/ripley.dm b/code/game/mecha/working/ripley.dm index 8e05d853b8..f6f60d7e50 100644 --- a/code/game/mecha/working/ripley.dm +++ b/code/game/mecha/working/ripley.dm @@ -46,7 +46,8 @@ name = "APLU \"Miner\"" /obj/mecha/working/ripley/mining/New() - ..() + //Do not use ..() here, doing so would spawn it with a tracking beacon allowing people to find secret mining asteroid rooms easily. + //Attach drill if(prob(25)) //Possible diamond drill... Feeling lucky? var/obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill/D = new /obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill diff --git a/code/game/objects/windoor_assembly.dm b/code/game/objects/windoor_assembly.dm index a7dd03fc2f..eae96ba5a8 100644 --- a/code/game/objects/windoor_assembly.dm +++ b/code/game/objects/windoor_assembly.dm @@ -107,9 +107,9 @@ obj/structure/windoor_assembly/Del() src.name = "Windoor Assembly" //Adding r-glass makes the assembly a secure windoor assembly. Step 2 (optional) complete. - else if(istype(W, /obj/item/stack/rods) && !secure) - var/obj/item/stack/rods/R = W - if(R.amount < 4) + else if(istype(W, /obj/item/stack/sheet/plasteel) && !secure) + var/obj/item/stack/sheet/plasteel/P = W + if(P.amount < 2) user << "\red You need more rods to do this." return user << "\blue You start to reinforce the windoor with rods." @@ -117,7 +117,7 @@ obj/structure/windoor_assembly/Del() if(do_after(user,40)) if(!src) return - R.use(4) + P.use(2) user << "\blue You reinforce the windoor." src.secure = "secure_" if(src.anchored)