diff --git a/code/game/objects/items/weapons/capture_crystal.dm b/code/game/objects/items/weapons/capture_crystal.dm index 5c72d389e4..8b225d9298 100644 --- a/code/game/objects/items/weapons/capture_crystal.dm +++ b/code/game/objects/items/weapons/capture_crystal.dm @@ -251,6 +251,7 @@ if(!bound_mob) bound_mob = M bound_mob.capture_caught = TRUE + persist_storable = FALSE desc = "A glowing crystal in what appears to be some kind of steel housing." //Determines the capture chance! So you can't capture AI mobs if they're perfectly healthy and all that @@ -324,6 +325,7 @@ bound_mob = null owner = null active = FALSE + persist_storable = TRUE update_icon() /obj/item/capture_crystal/proc/owner_was_deleted() diff --git a/code/modules/client/stored_item.dm b/code/modules/client/stored_item.dm index 43424e7f9d..c64cea7507 100644 --- a/code/modules/client/stored_item.dm +++ b/code/modules/client/stored_item.dm @@ -71,9 +71,6 @@ if(busy_bank) to_chat(user, "\The [src] is already in use.") return - if(user.ckey in item_takers) - to_chat(user, "You have already taken something out of \the [src] this shift.") - return busy_bank = TRUE var/I = persist_item_savefile_load(user, "type") var/Iname = persist_item_savefile_load(user, "name") @@ -89,9 +86,13 @@ to_chat(user,"Your hands are full!") busy_bank = FALSE return + if(user.ckey in item_takers) + to_chat(user, "You have already taken something out of \the [src] this shift.") + busy_bank = FALSE + return choice = tgui_alert(user, "If you remove this item from the bank, it will be unable to be stored again. Do you still want to remove it?", "[src]", list("No", "Yes"), timeout = 10 SECONDS) icon_state = "item_bank_o" - if(!choice || choice == "Cancel" || !Adjacent(user) || inoperable() || panel_open) + if(!choice || choice == "No" || !Adjacent(user) || inoperable() || panel_open) busy_bank = FALSE icon_state = "item_bank" return @@ -100,6 +101,7 @@ icon_state = "item_bank" return var/obj/N = new I(get_turf(src)) + log_admin("[key_name_admin(user)] retrieved [N] from the item bank.") visible_message("\The [src] dispenses the [N] to \the [user].") user.put_in_hands(N) N.persist_storable = FALSE @@ -126,7 +128,12 @@ to_chat(user, "\The [src] is already in use.") return busy_bank = TRUE + var/I = persist_item_savefile_load(user, "type") if(!istool(O) && O.persist_storable) + if(ispath(I)) + to_chat(user, "You cannot store \the [O]. You already have something stored.") + busy_bank = FALSE + return user.visible_message("\The [user] begins storing \the [O] in \the [src].","You begin storing \the [O] in \the [src].") icon_state = "item_bank_o" if(!do_after(user, 10 SECONDS, src, exclusive = TASK_ALL_EXCLUSIVE) || inoperable()) @@ -210,3 +217,4 @@ persist_storable = FALSE /obj/item/weapon/gun/energy/sizegun/abductor persist_storable = FALSE +