Bump code cleanup (#27608)

This commit is contained in:
DamianX
2020-08-26 00:08:29 +02:00
committed by GitHub
parent 99ad40c534
commit bef81d7aae
8 changed files with 22 additions and 61 deletions

View File

@@ -209,15 +209,6 @@ atom/movable/GotoAirflowDest(n)
if(od) if(od)
setDensity(FALSE) setDensity(FALSE)
/atom/movable/to_bump(atom/Obstacle)
if(airflow_speed > 0 && airflow_dest)
airflow_hit(Obstacle)
else
airflow_speed = 0
airflow_time = 0
. = ..()
sound_override = 0
/atom/movable/proc/airflow_hit(atom/A) /atom/movable/proc/airflow_hit(atom/A)
airflow_speed = 0 airflow_speed = 0
airflow_dest = null airflow_dest = null

View File

@@ -128,16 +128,6 @@
plane = ABOVE_TURF_PLANE plane = ABOVE_TURF_PLANE
var/spawnable = null var/spawnable = null
/obj/effect/gateway/Bumped(mob/M as mob|obj)
spawn(0)
return
return
/obj/effect/gateway/Crossed(AM as mob|obj)
spawn(0)
return
return
/obj/effect/gateway/active /obj/effect/gateway/active
luminosity=5 luminosity=5
light_color = LIGHT_COLOR_RED light_color = LIGHT_COLOR_RED

View File

@@ -105,23 +105,6 @@ var/global/list/narsie_list = list()
to_chat(M, "<span class='danger'>You feel your sanity crumble away in an instant as you gaze upon [src.name]...</span>") to_chat(M, "<span class='danger'>You feel your sanity crumble away in an instant as you gaze upon [src.name]...</span>")
M.apply_effect(3, STUN) M.apply_effect(3, STUN)
/obj/machinery/singularity/narsie/large/to_bump(atom/A)
if(!narnar)
return
if(isturf(A))
narsiewall(A)
else if(istype(A, /obj/structure/cult))
qdel(A)
/obj/machinery/singularity/narsie/large/Bumped(atom/A)
if(!narnar)
return
if(isturf(A))
narsiewall(A)
else if(istype(A, /obj/structure/cult))
qdel(A)
/obj/machinery/singularity/narsie/move(var/force_move = 0) /obj/machinery/singularity/narsie/move(var/force_move = 0)
if(!move_self) if(!move_self)
return 0 return 0
@@ -176,14 +159,6 @@ var/global/list/narsie_list = list()
T.icon_state = "cult-narsie" T.icon_state = "cult-narsie"
T.luminosity = 1 T.luminosity = 1
/obj/machinery/singularity/narsie/proc/narsiewall(var/turf/T)
T.desc = "An opening has been made on that wall, but who can say if what you seek truly lies on the other side?"
T.icon = 'icons/turf/walls.dmi'
T.icon_state = "cult-narsie"
T.opacity = 0
T.setDensity(FALSE)
luminosity = 1
/obj/machinery/singularity/narsie/large/consume(const/atom/A) //Has its own consume proc because it doesn't need energy and I don't want BoHs to explode it. --NEO /obj/machinery/singularity/narsie/large/consume(const/atom/A) //Has its own consume proc because it doesn't need energy and I don't want BoHs to explode it. --NEO
//NEW BEHAVIOUR //NEW BEHAVIOUR
if(narsie_behaviour == "CultStation13") if(narsie_behaviour == "CultStation13")

View File

@@ -177,7 +177,9 @@ var/global/list/ghdel_profiling = list()
/atom/proc/on_reagent_change() /atom/proc/on_reagent_change()
return return
/atom/proc/Bumped(AM as mob|obj) // This proc is intended to be called by `to_bump` whenever a movable
// object bumps into this atom.
/atom/proc/Bumped(atom/movable/AM)
return return
/atom/proc/setDensity(var/density) /atom/proc/setDensity(var/density)
@@ -830,8 +832,6 @@ its easier to just keep the beam vertical.
else else
return TRUE return TRUE
/atom/proc/to_bump()
return
/atom/proc/get_last_player_touched() //returns a reference to the mob of the ckey that last touched the atom /atom/proc/get_last_player_touched() //returns a reference to the mob of the ckey that last touched the atom
for(var/client/C in clients) for(var/client/C in clients)

View File

@@ -381,13 +381,23 @@
/atom/movable/Crossed(atom/movable/AM) /atom/movable/Crossed(atom/movable/AM)
return return
/atom/movable/to_bump(atom/Obstacle) // Always override this proc instead of BYOND-provided Bump().
if(src.throwing) // This is a workaround for some dumb BYOND behavior:
src.throw_impact(Obstacle) // The `Obstacle` argument passed to Bump() is the first dense object
src.throwing = 0 // in the turf's `contents`. The argument we provide to this proc
// is instead the actual object that's blocking movement.
if (Obstacle) /atom/movable/proc/to_bump(atom/Obstacle)
Obstacle.Bumped(src) if(airflow_speed > 0 && airflow_dest)
airflow_hit(Obstacle)
else
airflow_speed = 0
airflow_time = 0
if(src.throwing)
src.throw_impact(Obstacle)
src.throwing = 0
if(Obstacle)
Obstacle.Bumped(src)
sound_override = 0
// harderforce is for things like lighting overlays which should only be moved in EXTREMELY specific sitations. // harderforce is for things like lighting overlays which should only be moved in EXTREMELY specific sitations.
/atom/movable/proc/forceMove(atom/destination,var/no_tp=0, var/harderforce = FALSE, glide_size_override = 0) /atom/movable/proc/forceMove(atom/destination,var/no_tp=0, var/harderforce = FALSE, glide_size_override = 0)

View File

@@ -1,8 +1,3 @@
/obj/item/weapon /obj/item/weapon
name = "weapon" name = "weapon"
icon = 'icons/obj/weapons.dmi' icon = 'icons/obj/weapons.dmi'
/obj/item/weapon/to_bump(mob/M as mob)
spawn(0)
..()
return

View File

@@ -193,7 +193,7 @@
for(var/mob/living/L in loc) for(var/mob/living/L in loc)
movement_touch_check(L) movement_touch_check(L)
/mob/living/simple_animal/hostile/retaliate/cockatrice/Bump(mob/living/L) /mob/living/simple_animal/hostile/retaliate/cockatrice/to_bump(mob/living/L)
spawn() spawn()
movement_touch_check(L) movement_touch_check(L)

View File

@@ -867,7 +867,7 @@ var/list/laser_tag_vests = list(/obj/item/clothing/suit/tag/redtag, /obj/item/cl
damage = 0 damage = 0
fire_sound = 'sound/weapons/railgun_highpower.ogg' fire_sound = 'sound/weapons/railgun_highpower.ogg'
/obj/item/projectile/beam/combustion/Bump(atom/A) /obj/item/projectile/beam/combustion/to_bump(atom/A)
if(!A) if(!A)
return return
..() ..()