diff --git a/code/WorkInProgress/Ported/Abi79/uplinks.dm b/code/WorkInProgress/Ported/Abi79/uplinks.dm index b7672b120c..b6bcefe1f8 100644 --- a/code/WorkInProgress/Ported/Abi79/uplinks.dm +++ b/code/WorkInProgress/Ported/Abi79/uplinks.dm @@ -21,6 +21,8 @@ A list of items and costs is stored under the datum of every game mode, alongsid var/items // List of items var/list/ItemList // Parsed list of items var/uses // Numbers of crystals + // List of items not to shove in their hands. + var/list/NotInHand = list(/obj/machinery/singularity_beacon/syndicate) New() welcome = ticker.mode.uplink_welcome @@ -34,7 +36,7 @@ A list of items and costs is stored under the datum of every game mode, alongsid src.menu_message += "Tele-Crystals left: [src.uses]
" src.menu_message += "
" src.menu_message += "Request item:
" - src.menu_message += "Each item costs a number of tele-crystals as indicated by the number following their name.
" + src.menu_message += "Each item costs a number of tele-crystals as indicated by the number following their name.

" var/cost var/item @@ -158,7 +160,7 @@ A list of items and costs is stored under the datum of every game mode, alongsid var/path_obj = text2path(href_list["buy_item"]) var/mob/A = src.hostpda.loc var/item = new path_obj(get_turf(src.hostpda)) - if(ismob(A)) //&& !istype(item, /obj/spawner)) + if(ismob(A) && !(locate(item) in NotInHand)) //&& !istype(item, /obj/spawner)) if(!A.r_hand) item:loc = A A.r_hand = item @@ -167,6 +169,8 @@ A list of items and costs is stored under the datum of every game mode, alongsid item:loc = A A.l_hand = item item:layer = 20 + else + item:loc = get_turf(A) usr.update_clothing() // usr.client.onBought("[item:name]") When we have the stats again, uncomment. /* if(istype(item, /obj/spawner)) // Spawners need to have del called on them to avoid leaving a marker behind @@ -237,7 +241,7 @@ A list of items and costs is stored under the datum of every game mode, alongsid var/path_obj = text2path(href_list["buy_item"]) var/item = new path_obj(get_turf(src.loc)) var/mob/A = src.loc - if(ismob(A)) //&& !istype(item, /obj/spawner)) + if(ismob(A) && !(locate(item) in NotInHand)) //&& !istype(item, /obj/spawner)) if(!A.r_hand) item:loc = A A.r_hand = item @@ -246,6 +250,8 @@ A list of items and costs is stored under the datum of every game mode, alongsid item:loc = A A.l_hand = item item:layer = 20 + else + item:loc = get_turf(A) /* if(istype(item, /obj/spawner)) // Spawners need to have del called on them to avoid leaving a marker behind del item*/ // usr.client.onBought("[item:name]") When we have the stats again, uncomment. diff --git a/code/game/machinery/kitchen/gibber.dm b/code/game/machinery/kitchen/gibber.dm index fb144b3e56..9d4df00bd9 100644 --- a/code/game/machinery/kitchen/gibber.dm +++ b/code/game/machinery/kitchen/gibber.dm @@ -195,6 +195,6 @@ meatslab.loc = src.loc meatslab.throw_at(Tx,i,3) if (!Tx.density) - new /obj/effect/decal/cleanable/blood/gibs(Tx,i) + new /obj/effect/decal/cleanable/blood/gibs(Tx,i - iterator) src.operating = 0 update_icon() diff --git a/code/game/objects/items/weapons/surgery_tools.dm b/code/game/objects/items/weapons/surgery_tools.dm index 14838b1ef7..bedcbf3f3d 100644 --- a/code/game/objects/items/weapons/surgery_tools.dm +++ b/code/game/objects/items/weapons/surgery_tools.dm @@ -357,6 +357,9 @@ CIRCULAR SAW /obj/item/weapon/autopsy_scanner/verb/print_data() set src in view(usr, 1) + if(usr.stat == 2) + src << "No." + return var/scan_data = "" var/n = 1 diff --git a/icons/obj/storage.dmi b/icons/obj/storage.dmi index 5c668e9508..079a6c280a 100644 Binary files a/icons/obj/storage.dmi and b/icons/obj/storage.dmi differ