diff --git a/code/game/machinery/teleporter.dm b/code/game/machinery/teleporter.dm index 916c7450212..71666c051aa 100644 --- a/code/game/machinery/teleporter.dm +++ b/code/game/machinery/teleporter.dm @@ -13,7 +13,7 @@ ..() return - +/* /obj/machinery/computer/teleporter/attackby(I as obj, mob/living/user as mob) if(istype(I, /obj/item/weapon/card/data/)) var/obj/item/weapon/card/data/C = I @@ -59,6 +59,42 @@ ..() return +*/ + +/obj/machinery/computer/teleporter/attackby(I as obj, mob/living/user as mob) + if(istype(I, /obj/item/weapon/card/data/)) + var/obj/item/weapon/card/data/C = I + if(stat & (NOPOWER|BROKEN) & (C.function != "teleporter")) + src.attack_hand() + + var/obj/L = null + + for(var/obj/effect/landmark/sloc in landmarks_list) + if(sloc.name != C.data) continue + if(locate(/mob/living) in sloc.loc) continue + L = sloc + break + + if(!L) + L = locate("landmark*[C.data]") // use old stype + + + if(istype(L, /obj/effect/landmark/) && istype(L.loc, /turf)) + src.locked = L + one_time_use = 1 + + usr << "You insert the coordinates into the machine." + usr << "A message flashes across the screen reminding the traveller that the nuclear authentication disk is to remain on the station at all times." + user.drop_item() + del(I) + + for(var/mob/O in hearers(src, null)) + O.show_message("\blue Locked In", 2) + src.add_fingerprint(usr) + else + ..() + + return /obj/machinery/computer/teleporter/attack_paw() src.attack_hand() diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index 7b72a5597bf..3d49a3b3828 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -681,8 +681,8 @@ type = /obj/item/stack/sheet/mineral/plasma if("uranium") type = /obj/item/stack/sheet/mineral/uranium - /*if("bananium") - type = /obj/item/stack/sheet/mineral/clown Sorry, but no more clown mechs, even if you do manage to get to the clown planet.*/ + if("bananium") + type = /obj/item/stack/sheet/mineral/clown else return 0 var/result = 0 @@ -740,9 +740,9 @@ if(src.resources["diamond"] >= 2000) var/obj/item/stack/sheet/mineral/diamond/G = new /obj/item/stack/sheet/mineral/diamond(src.loc) G.amount = round(src.resources["diamond"] / G.perunit) - /*if(src.resources["bananium"] >= 2000) + if(src.resources["bananium"] >= 2000) var/obj/item/stack/sheet/mineral/clown/G = new /obj/item/stack/sheet/mineral/clown(src.loc) - G.amount = round(src.resources["bananium"] / G.perunit) Sorry, but no bananium allowed*/ + G.amount = round(src.resources["bananium"] / G.perunit) del(src) return 1 else @@ -766,8 +766,8 @@ material = "metal" if(/obj/item/stack/sheet/glass) material = "glass" - /*if(/obj/item/stack/sheet/mineral/clown) - material = "bananium"*/ + if(/obj/item/stack/sheet/mineral/clown) + material = "bananium" if(/obj/item/stack/sheet/mineral/uranium) material = "uranium" else