From f6371a8fcb2ed7c6145d4dd96f85690d41b3312f Mon Sep 17 00:00:00 2001 From: Aurorablade Date: Sun, 14 May 2017 02:34:25 -0400 Subject: [PATCH] well it compiles --- code/game/machinery/hologram.dm | 61 ++++++++++++++------------------- 1 file changed, 25 insertions(+), 36 deletions(-) diff --git a/code/game/machinery/hologram.dm b/code/game/machinery/hologram.dm index 404ec5dca76..067dc6a6340 100644 --- a/code/game/machinery/hologram.dm +++ b/code/game/machinery/hologram.dm @@ -95,20 +95,6 @@ var/list/holopads = list() default_deconstruction_crowbar(P) -/obj/machinery/hologram/holopad/attack_hand(var/mob/living/carbon/human/user) //Carn: hologram requests. - if(!istype(user)) - return - if(alert(user,"Would you like to request an AI's presence?",,"Yes","No") == "Yes") - if(last_request + 200 < world.time) //don't spam the AI with requests you jerk! - last_request = world.time - to_chat(user, "You request an AI's presence.") - var/area/area = get_area(src) - for(var/mob/living/silicon/ai/AI in living_mob_list) - if(!AI.client) continue - to_chat(AI, "Your presence is requested at \the [area].") - else - to_chat(user, "A request for AI presence was already sent recently.") - /obj/machinery/hologram/holopad/proc/CheckCallClose() for(var/I in holo_calls) var/datum/holocall/HC = I @@ -117,18 +103,13 @@ var/list/holopads = list() return TRUE return FALSE -/obj/machinery/hologram/holopad/Click(location,control,params) - if(!CheckCallClose()) - return ..() - -/obj/machinery/hologram/holopad/AltClick(mob/living/carbon/human/user) - if(!CheckCallClose()) - interact(user) - -/obj/machinery/hologram/holopad/interact(mob/living/carbon/human/user) //Carn: hologram requests. +/obj/machinery/hologram/holopad/attack_hand(mob/living/carbon/human/user) //Carn: hologram requests. if(!istype(user)) return + if(!CheckCallClose()) + return + if(outgoing_call || user.incapacitated() || !(stat & NOPOWER)) return @@ -272,8 +253,8 @@ var/list/holopads = list() if(!(pad_close.stat & NOPOWER) && !pad_close.masters[src]) pad_close.activate_holo(AI, 1) if(pad_close.masters[src]) - pad_close.hologram.forceMove(target_turf) - pad_close.hologram.dir = newdir//runtime + outgoing_call.hologram.forceMove(target_turf) + outgoing_call.hologram.dir = newdir//runtime clear_holo(master)//If not, we want to get rid of the hologram. @@ -408,22 +389,30 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/ return ..() /obj/effect/overlay/holo_pad_hologram/proc/face_atom(var/atom/A) - if( !hologram || !A || !hologram.x || !hologram.y || !A.x || !A.y ) return - var/dx = A.x - hologram.x - var/dy = A.y - hologram.y + if( !HC.hologram || !A || !HC.hologram.x || !HC.hologram.y || !A.x || !A.y ) return + var/dx = A.x - HC.hologram.x + var/dy = A.y - HC.hologram.y if(!dx && !dy) // Wall items are graphically shifted but on the floor - if(A.pixel_y > 16) hologram.dir = NORTH - else if(A.pixel_y < -16)hologram.dir = SOUTH - else if(A.pixel_x > 16) hologram.dir = EAST - else if(A.pixel_x < -16)hologram.dir = WEST + if(A.pixel_y > 16) + HC.hologram.dir = NORTH + else if(A.pixel_y < -16) + HC.hologram.dir = SOUTH + else if(A.pixel_x > 16) + HC.hologram.dir = EAST + else if(A.pixel_x < -16) + HC.hologram.dir = WEST return if(abs(dx) < abs(dy)) - if(dy > 0) hologram.dir = NORTH - else hologram.dir = SOUTH + if(dy > 0) + HC.hologram.dir = NORTH + else + HC.hologram.dir = SOUTH else - if(dx > 0) hologram.dir = EAST - else hologram.dir = WEST + if(dx > 0) + HC.hologram.dir = EAST + else + HC.hologram.dir = WEST /* * Other Stuff: Is this even used? */