[TM] Verb Queue - Port of TG SSverb subsystem (#19863)

* Some verbs queue up now

* Damn you 515

* Screw you Topic

* Update client_procs.dm

* Fixes for unit testing

* Update MC.dm

* verb

* Update callback.dm

* Tweaks

* Linters might not have liked that,

* More tweaks, and fix

* Update verb_manager.dm
This commit is contained in:
Vi3trice
2023-01-29 15:05:38 +01:00
committed by GitHub
parent 47f71ccde1
commit caee0ec975
19 changed files with 328 additions and 5 deletions
+8
View File
@@ -104,6 +104,14 @@
if(istype(A, /obj/effect/temp_visual/point) || istype(A, /atom/movable/emissive_blocker))
return FALSE
DEFAULT_QUEUE_OR_CALL_VERB(VERB_CALLBACK(src, PROC_REF(run_pointed), A))
/// possibly delayed verb that finishes the pointing process starting in [/mob/verb/pointed()].
/// either called immediately or in the tick after pointed() was called, as per the [DEFAULT_QUEUE_OR_CALL_VERB()] macro
/mob/proc/run_pointed(atom/A)
if(client && !(A in view(client.view, src)))
return FALSE
changeNext_move(CLICK_CD_POINT)
if(A.loc in src) // Object is inside a container on the mob. It's not part of the verb's list since it's not in view and requires middle clicking.
point_at(A)