mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-21 11:07:12 +01:00
Port TG pointing to inventory thought bubble, and expand valid pointing targets (#19072)
* Well that actually works * Update atoms_movable.dm * Now you can point at things inside of things.
This commit is contained in:
@@ -67,6 +67,8 @@
|
||||
if(istype(owner,/mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = owner
|
||||
H.update_hair()
|
||||
|
||||
owner.thought_bubble_image = initial(owner.thought_bubble_image)
|
||||
. = ..()
|
||||
|
||||
/obj/item/organ/internal/brain/insert(mob/living/target,special = 0)
|
||||
|
||||
@@ -251,15 +251,18 @@
|
||||
if(!..())
|
||||
return FALSE
|
||||
var/obj/item/hand_item = get_active_hand()
|
||||
var/pointed_object = "\the [A]"
|
||||
if(A.loc in src)
|
||||
pointed_object += " inside [A.loc]"
|
||||
if(istype(hand_item, /obj/item/gun) && A != hand_item)
|
||||
if(a_intent == INTENT_HELP || !ismob(A))
|
||||
visible_message("<b>[src]</b> points to [A] with [hand_item]")
|
||||
visible_message("<b>[src]</b> points to [pointed_object] with [hand_item]")
|
||||
return TRUE
|
||||
A.visible_message("<span class='danger'>[src] points [hand_item] at [A]!</span>",
|
||||
A.visible_message("<span class='danger'>[src] points [hand_item] at [pointed_object]!</span>",
|
||||
"<span class='userdanger'>[src] points [hand_item] at you!</span>")
|
||||
SEND_SOUND(A, sound('sound/weapons/targeton.ogg'))
|
||||
return TRUE
|
||||
visible_message("<b>[src]</b> points to [A]")
|
||||
visible_message("<b>[src]</b> points to [pointed_object]")
|
||||
return TRUE
|
||||
|
||||
/mob/living/verb/succumb()
|
||||
|
||||
@@ -609,33 +609,6 @@ GLOBAL_LIST_INIT(slot_equipment_priority, list( \
|
||||
var/list/result = A.examine(src)
|
||||
to_chat(src, result.Join("\n"))
|
||||
|
||||
//same as above
|
||||
//note: ghosts can point, this is intended
|
||||
//visible_message will handle invisibility properly
|
||||
//overriden here and in /mob/dead/observer for different point span classes and sanity checks
|
||||
/mob/verb/pointed(atom/A as mob|obj|turf in view())
|
||||
set name = "Point To"
|
||||
set category = "Object"
|
||||
|
||||
if(next_move >= world.time)
|
||||
return
|
||||
if(!isturf(loc) || istype(A, /obj/effect/temp_visual/point) || istype(A, /obj/effect/hallucination))
|
||||
return FALSE
|
||||
|
||||
var/tile = get_turf(A)
|
||||
if(!tile)
|
||||
return FALSE
|
||||
|
||||
changeNext_move(CLICK_CD_POINT)
|
||||
var/obj/P = new /obj/effect/temp_visual/point(tile)
|
||||
P.invisibility = invisibility
|
||||
if(get_turf(src) != tile)
|
||||
// Start off from the pointer and make it slide to the pointee
|
||||
P.pixel_x = (x - A.x) * 32
|
||||
P.pixel_y = (y - A.y) * 32
|
||||
animate(P, 0.5 SECONDS, pixel_x = A.pixel_x, pixel_y = A.pixel_y, easing = QUAD_EASING)
|
||||
return TRUE
|
||||
|
||||
/mob/proc/ret_grab(obj/effect/list_container/mobl/L as obj, flag)
|
||||
if((!( istype(l_hand, /obj/item/grab) ) && !( istype(r_hand, /obj/item/grab) )))
|
||||
if(!( L ))
|
||||
|
||||
Reference in New Issue
Block a user