From 28c8cd1d81d1043d76968741847fd06b8f602ba0 Mon Sep 17 00:00:00 2001 From: Chinsky Date: Tue, 2 Jun 2015 13:13:44 +0300 Subject: [PATCH 1/3] Fixes #9623 Also added a nullcheck for icons to prevent potential client crash. --- code/modules/client/preferences.dm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index fcbd8902638..e14884ec1bd 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -236,8 +236,9 @@ datum/preferences /datum/preferences/proc/ShowChoices(mob/user) if(!user || !user.client) return update_preview_icon() - user << browse_rsc(preview_icon_front, "previewicon.png") - user << browse_rsc(preview_icon_side, "previewicon2.png") + if(preview_icon_front && preview_icon_side) + user << browse_rsc(preview_icon_front, "previewicon.png") + user << browse_rsc(preview_icon_side, "previewicon2.png") var/dat = "
" if(path) @@ -1671,6 +1672,7 @@ datum/preferences var/status = organ_data[name] var/obj/item/organ/external/O = character.organs_by_name[name] if(O) + O.status = 0 if(status == "amputated") character.organs_by_name[O.limb_name] = null character.organs -= O From 87c32af3dc80591dd26ff6e0a9bc744a2596b16d Mon Sep 17 00:00:00 2001 From: Chinsky Date: Tue, 2 Jun 2015 14:00:39 +0300 Subject: [PATCH 2/3] Fixes #9545 --- code/game/machinery/computer3/laptop.dm | 30 +++++++++---------------- 1 file changed, 10 insertions(+), 20 deletions(-) diff --git a/code/game/machinery/computer3/laptop.dm b/code/game/machinery/computer3/laptop.dm index 484db524625..4d7c406dfac 100644 --- a/code/game/machinery/computer3/laptop.dm +++ b/code/game/machinery/computer3/laptop.dm @@ -55,19 +55,11 @@ qdel(src) return - if(!stored_computer.manipulating) - stored_computer.manipulating = 1 - stored_computer.loc = loc - stored_computer.stat &= ~MAINT - stored_computer.update_icon() - loc = null - usr << "You open \the [src]." - - spawn(5) - stored_computer.manipulating = 0 - qdel(src) - else - usr << "\red You are already opening the computer!" + stored_computer.loc = loc + stored_computer.stat &= ~MAINT + stored_computer.update_icon() + loc = stored_computer + usr << "You open \the [src]." AltClick() @@ -117,7 +109,6 @@ pixel_y = -3 show_keyboard = 0 - var/manipulating = 0 // To prevent disappearing bug var/obj/item/device/laptop/portable = null New(var/L, var/built = 0) @@ -157,12 +148,11 @@ portable=new portable.stored_computer = src - if(!manipulating) - portable.loc = loc - loc = portable - stat |= MAINT - if(user) - user << "You close \the [src]." + portable.loc = loc + loc = portable + stat |= MAINT + if(user) + user << "You close \the [src]." auto_use_power() if(stat&MAINT) From c873825a424648599ac6607e66e0ebf5bfdcf148 Mon Sep 17 00:00:00 2001 From: Chinsky Date: Tue, 2 Jun 2015 14:27:16 +0300 Subject: [PATCH 3/3] Fixes #6029 --- code/game/machinery/computer3/laptop.dm | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/code/game/machinery/computer3/laptop.dm b/code/game/machinery/computer3/laptop.dm index 4d7c406dfac..65864b0b700 100644 --- a/code/game/machinery/computer3/laptop.dm +++ b/code/game/machinery/computer3/laptop.dm @@ -74,12 +74,10 @@ if(stored_computer) stored_computer.eject_id() - /obj/machinery/computer3/laptop/verb/eject_id() set category = "Object" set name = "Eject ID Card" set src in oview(1) - var/obj/item/part/computer/cardslot/C = locate() in src.contents if(!C) @@ -96,7 +94,7 @@ return usr << "You remove [card] from the laptop." - C.remove(card) + C.remove(4) /obj/machinery/computer3/laptop