SSthrowing (#19421)

Ported SSThrowing from TG, to handle throwings.
Updated movement system to the latest iteration, made it a datum as per
latest iteration.
Updated pass/hit handling of atoms, introduced pass_flag_self to
determine what atoms allow to pass.
Moved procs and defines around to make them more organized.
This commit is contained in:
Fluffy
2024-06-18 19:32:06 +00:00
committed by GitHub
parent 56a7300903
commit 92c3ec6caf
96 changed files with 1125 additions and 496 deletions
+3 -3
View File
@@ -74,17 +74,17 @@
return last_increment
/obj/item/reagent_containers/throw_impact(atom/hit_atom, var/speed)
/obj/item/reagent_containers/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum)
. = ..()
if(ismob(loc))
return
if(fragile && (speed >= fragile))
if(fragile && (throwingdatum.speed >= fragile))
shatter()
if(atom_flags && ATOM_FLAG_NO_REACT)
return
if(!reagents)
return
reagents.apply_force(speed)
reagents.apply_force(throwingdatum.speed)
/obj/item/reagent_containers/proc/shatter(var/obj/item/W, var/mob/user)
if(reagents?.total_volume)