From 4c1136b48fd7e589ed67f263410e274daf7458cb Mon Sep 17 00:00:00 2001 From: "giacomand@gmail.com" Date: Sat, 3 Nov 2012 12:35:22 +0000 Subject: [PATCH] -Fixed Issue 864 (Moving lights from your inventory to your hand causes lumiosity to be subtracted from your mob.) Item's attack_hand proc wasn't calling the item to be picked up if it was in your inventory, which meant that the lights couldn't update properly. By calling pickup, even if the mob was taking it from their own inventory, I was able to get the lights to update properly. I've tested all items that used /pickup and they all worked correctly, apart from tray which never worked correctly as I then tested it on the online servers. I'll create an issue report for that later. -The crew monitor will now detect mobs that are inside a content of an object, such as a locker. I also made it so that it only detected mobs on the same z level as the computer itself, so people on the away missions and what not will not be able to see the crew member's on the station. -Updated the changelog about my last commit, before this one. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4999 316c924e-a436-60f5-8080-3fe189b3f50e --- code/game/machinery/computer/crew.dm | 7 ++++--- code/game/objects/items.dm | 2 +- html/changelog.html | 3 ++- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/code/game/machinery/computer/crew.dm b/code/game/machinery/computer/crew.dm index 94e42afbc3d..9a403c95b25 100644 --- a/code/game/machinery/computer/crew.dm +++ b/code/game/machinery/computer/crew.dm @@ -69,7 +69,8 @@ var/list/logs = list() for(var/obj/item/clothing/under/C in src.tracked) var/log = "" - if((C) && (C.has_sensor) && (C.loc) && (C.loc.z == 1) && C.sensor_mode) + var/turf/pos = get_turf(C) + if((C) && (C.has_sensor) && (pos) && (pos.z == src.z) && C.sensor_mode) if(istype(C.loc, /mob/living/carbon/human)) var/mob/living/carbon/human/H = C.loc @@ -85,7 +86,7 @@ if(H.wear_id) log += "[H.wear_id.name]" else - log += "Unknown:" + log += "Unknown" switch(C.sensor_mode) if(1) @@ -94,7 +95,7 @@ log += "[life_status] [damage_report]Not Available" if(3) var/area/player_area = get_area(H) - log += "[life_status] [damage_report][player_area.name] ([H.x], [H.y])" + log += "[life_status] [damage_report][player_area.name] ([pos.x], [pos.y])" logs += log logs = sortList(logs) for(var/log in logs) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index f21f65cb8fc..1d1892601d2 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -115,9 +115,9 @@ else if(isliving(src.loc)) return - src.pickup(user) user.lastDblClick = world.time + 2 user.next_move = world.time + 2 + src.pickup(user) add_fingerprint(user) user.put_in_active_hand(src) return diff --git a/html/changelog.html b/html/changelog.html index 215f1d04253..be2963b6d20 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -61,7 +61,8 @@ should be listed in the changelog upon commit tho. Thanks. -->

03 November 2012

Giacom updated: