diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index 3fd02d43811..cec98e42b3e 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -431,15 +431,9 @@ if(istype(W, /obj/item/rupee)) to_chat(user, "Your ID smartly rejects the strange shard of glass. Who knew, apparently it's not ACTUALLY valuable!") return - else if(istype(W, /obj/item/holochip)) + else if(iscash(W)) insert_money(W, user) return - else if(istype(W, /obj/item/stack/spacecash)) - insert_money(W, user, TRUE) - return - else if(istype(W, /obj/item/coin)) - insert_money(W, user, TRUE) - return else if(istype(W, /obj/item/storage/bag/money)) var/obj/item/storage/bag/money/money_bag = W var/list/money_contained = money_bag.contents @@ -463,7 +457,11 @@ * user - The user inserting the item. * physical_currency - Boolean, whether this is a physical currency such as a coin and not a holochip. */ -/obj/item/card/id/proc/insert_money(obj/item/money, mob/user, physical_currency) +/obj/item/card/id/proc/insert_money(obj/item/money, mob/user) + var/physical_currency + if(istype(money, /obj/item/stack/spacecash) || istype(money, /obj/item/coin)) + physical_currency = TRUE + if(!registered_account) to_chat(user, "[src] doesn't have a linked account to deposit [money] into!") return diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index b9c5619e763..97c698b9973 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -1075,6 +1075,9 @@ GLOBAL_LIST_EMPTY(PDAs) var/obj/item/photo/P = C picture = P.picture to_chat(user, "You scan \the [C].") + // Check to see if we have an ID inside, and a valid input for money + else if(id && iscash(C)) + id.attackby(C, user) // If we do, try and put that attacking object in else return ..() diff --git a/code/modules/modular_computers/computers/item/computer.dm b/code/modules/modular_computers/computers/item/computer.dm index cc9051f04f0..8bfa86416da 100644 --- a/code/modules/modular_computers/computers/item/computer.dm +++ b/code/modules/modular_computers/computers/item/computer.dm @@ -548,6 +548,12 @@ to_chat(user, "You repair \the [src].") return + var/obj/item/computer_hardware/card_slot/card_slot = all_components[MC_CARD] + // Check to see if we have an ID inside, and a valid input for money + if(card_slot?.GetID() && iscash(W)) + var/obj/item/card/id/id = card_slot.GetID() + id.attackby(W, user) // If we do, try and put that attacking object in + return ..() // Used by processor to relay qdel() to machinery type.