Merge pull request #4206 from Citadel-Station-13/upstream-merge-33215
[MIRROR] Integrated circuit fixes
This commit is contained in:
@@ -196,10 +196,6 @@
|
||||
for(var/I in assembly_components)
|
||||
var/obj/item/integrated_circuit/IC = I
|
||||
IC.external_examine(user)
|
||||
if(istype(IC, /obj/item/integrated_circuit/output/screen))
|
||||
var/obj/item/integrated_circuit/output/screen/S
|
||||
if(S.stuff_to_display)
|
||||
to_chat(user, "There's a little screen labeled '[S]', which displays '[S.stuff_to_display]'.")
|
||||
if(opened)
|
||||
interact(user)
|
||||
|
||||
|
||||
@@ -302,15 +302,15 @@
|
||||
var/max_items = 10
|
||||
|
||||
/obj/item/integrated_circuit/manipulation/grabber/do_work()
|
||||
var/turf/T = get_turf(src)
|
||||
var/atom/movable/acting_object = get_object()
|
||||
var/turf/T = get_turf(acting_object)
|
||||
var/obj/item/AM = get_pin_data_as_type(IC_INPUT, 1, /obj/item)
|
||||
if(AM)
|
||||
var/turf/P = get_turf(AM)
|
||||
var/mode = get_pin_data(IC_INPUT, 2)
|
||||
|
||||
if(mode == 1)
|
||||
if(P.Adjacent(T))
|
||||
if((contents.len < max_items) && AM && (AM.w_class <= max_w_class))
|
||||
if(AM.Adjacent(acting_object) && isturf(AM.loc))
|
||||
if((contents.len < max_items) && (!max_w_class || AM.w_class <= max_w_class))
|
||||
AM.forceMove(src)
|
||||
if(mode == 0)
|
||||
if(contents.len)
|
||||
@@ -372,11 +372,14 @@
|
||||
var/target_y_rel = round(get_pin_data(IC_INPUT, 2))
|
||||
var/obj/item/A = get_pin_data_as_type(IC_INPUT, 3, /obj/item)
|
||||
|
||||
if(!A || A.anchored || (A.w_class > max_w_class))
|
||||
if(!A || A.anchored || A.throwing)
|
||||
return
|
||||
|
||||
if(max_w_class && (A.w_class > max_w_class))
|
||||
return
|
||||
|
||||
var/atom/movable/acting_object = get_object()
|
||||
if(!A.Adjacent(acting_object) && !(A in acting_object.GetAllContents()))
|
||||
if(!(A.Adjacent(acting_object) && isturf(A.loc)) && !(A in acting_object.GetAllContents()))
|
||||
return
|
||||
|
||||
var/turf/T = get_turf(acting_object)
|
||||
|
||||
@@ -17,7 +17,11 @@
|
||||
stuff_to_display = null
|
||||
|
||||
/obj/item/integrated_circuit/output/screen/any_examine(mob/user)
|
||||
to_chat(user, "There is a little screen labeled '[name]', which displays [!isnull(stuff_to_display) ? "'[stuff_to_display]'" : "nothing"].")
|
||||
var/shown_label = ""
|
||||
if(displayed_name && displayed_name != name)
|
||||
shown_label = " labeled '[displayed_name]'"
|
||||
|
||||
to_chat(user, "There is \a [src][shown_label], which displays [!isnull(stuff_to_display) ? "'[stuff_to_display]'" : "nothing"].")
|
||||
|
||||
/obj/item/integrated_circuit/output/screen/do_work()
|
||||
var/datum/integrated_io/I = inputs[1]
|
||||
|
||||
Reference in New Issue
Block a user