[DNM][DNM][WIP] Projectile backend code port and update

Ports#54924,  #65061, #59804 from /tg.
adds auxiliary code from /tg to make code work.
This commit is contained in:
Solaris-Shade
2022-03-06 15:20:23 -05:00
parent 8b77ee159f
commit 2fdb70b2b9
84 changed files with 597 additions and 503 deletions
+6 -7
View File
@@ -344,18 +344,17 @@
var/created = FALSE //prevents creation of more then one locker if it has multiple hits
var/locker_suck = TRUE
/obj/item/projectile/magic/locker/prehit(atom/A)
/obj/item/projectile/magic/locker/prehit_pierce(atom/A)
. = ..()
if(ismob(A) && locker_suck)
var/mob/M = A
if(M.anti_magic_check())
if(M.anti_magic_check()) // no this doesn't check if ..() returned to phase through do I care no it's magic ain't gotta explain shit - Silly-Cons
M.visible_message("<span class='warning'>[src] vanishes on contact with [A]!</span>")
qdel(src)
return
return PROJECTILE_DELETE_WITHOUT_HITTING
if(M.anchored)
return ..()
return
M.forceMove(src)
return FALSE
return ..()
return PROJECTILE_PIERCE_PHASE
/obj/item/projectile/magic/locker/on_hit(target)
if(created)