diff --git a/code/game/objects/stacks/glass.dm b/code/game/objects/stacks/glass.dm index ae3ebdcce2d..848ddb6b63b 100644 --- a/code/game/objects/stacks/glass.dm +++ b/code/game/objects/stacks/glass.dm @@ -27,10 +27,28 @@ SHARDS if(!(win.ini_dir in cardinal)) usr << "\red Can't let you do that." return 1 - var/obj/window/W = new /obj/window( usr.loc, reinf ) - if (directions.len) - W.dir = directions[1] - W.ini_dir = W.dir + var/dir_to_set = 2 + //yes, this could probably be done better but hey... it works... + for(var/obj/window/WT in usr.loc) + if (WT.dir == dir_to_set) + dir_to_set = 4 + for(var/obj/window/WT in usr.loc) + if (WT.dir == dir_to_set) + dir_to_set = 1 + for(var/obj/window/WT in usr.loc) + if (WT.dir == dir_to_set) + dir_to_set = 8 + for(var/obj/window/WT in usr.loc) + if (WT.dir == dir_to_set) + dir_to_set = 2 + var/obj/window/W + if(reinf) + W = new /obj/window/reinforced( usr.loc, reinf ) + W.state = 0 + else + W = new /obj/window/basic( usr.loc, reinf ) + W.dir = dir_to_set + W.ini_dir = W.dir W.anchored = 0 src.use(1) if("full (2 sheets)") @@ -39,7 +57,12 @@ SHARDS if (locate(/obj/window) in usr.loc) usr << "\red Can't let you do that." return 1 - var/obj/window/W = new /obj/window( usr.loc, reinf ) + var/obj/window/W + if(reinf) + W = new /obj/window/reinforced( usr.loc, reinf ) + W.state = 0 + else + W = new /obj/window/basic( usr.loc, reinf ) W.dir = SOUTHWEST W.ini_dir = SOUTHWEST W.anchored = 0 diff --git a/code/game/objects/window.dm b/code/game/objects/window.dm index 8416efe860d..a77a8f68b66 100644 --- a/code/game/objects/window.dm +++ b/code/game/objects/window.dm @@ -149,9 +149,6 @@ return /obj/window/attackby(obj/item/weapon/W as obj, mob/user as mob) - - - if (istype(W, /obj/item/weapon/screwdriver)) if(reinf && state >= 1) state = 3 - state @@ -197,7 +194,7 @@ /obj/window/verb/rotate() - set name = "Rotate Window" + set name = "Rotate Window Counter-Clockwise" set src in oview(1) if (src.anchored) @@ -213,6 +210,23 @@ src.ini_dir = src.dir return +/obj/window/verb/revrotate() + set name = "Rotate Window Clockwise" + set src in oview(1) + + if (src.anchored) + usr << "It is fastened to the floor; therefore, you can't rotate it!" + return 0 + + update_nearby_tiles(need_rebuild=1) //Compel updates before + + src.dir = turn(src.dir, 270) + + update_nearby_tiles(need_rebuild=1) + + src.ini_dir = src.dir + return + /obj/window/New(Loc,re=0) ..() diff --git a/code/modules/admin/verbs/mapping.dm b/code/modules/admin/verbs/mapping.dm index 74f065abf53..5961697a9d7 100644 --- a/code/modules/admin/verbs/mapping.dm +++ b/code/modules/admin/verbs/mapping.dm @@ -44,7 +44,7 @@ var/intercom_range_display_status = 0 camera_view() set category = "Mapping" - set name = "MAP Sec Camera Range Display" + set name = "Camera Range Display" if(camera_range_display_status) camera_range_display_status = 0 @@ -64,7 +64,7 @@ var/intercom_range_display_status = 0 sec_camera_report() set category = "Mapping" - set name = "MAP Sec Camera Report" + set name = "Camera Report" if(!master_controller) alert(usr,"Master_controller not found.","Sec Camera Report") @@ -93,7 +93,7 @@ var/intercom_range_display_status = 0 intercom_view() set category = "Mapping" - set name = "MAP Intercom Range Display" + set name = "Intercom Range Display" if(intercom_range_display_status) intercom_range_display_status = 0