POLARIS: Adds an animation thing, uses it on ventcrawls

This commit is contained in:
Arokha Sieyes
2018-03-15 23:50:14 -04:00
parent b87829e4f7
commit bb4d4634f9
2 changed files with 37 additions and 0 deletions

View File

@@ -144,6 +144,42 @@ note dizziness decrements automatically in the mob's Life() proc.
//reset the pixel offsets to zero
is_floating = 0
/atom/movable/proc/fade_towards(atom/A,var/time = 2)
set waitfor = FALSE
var/pixel_x_diff = 0
var/pixel_y_diff = 0
var/pixel_z_diff = 0
var/direction = get_dir(src, A)
if(direction & NORTH)
pixel_y_diff = 32
else if(direction & SOUTH)
pixel_y_diff = -32
if(direction & EAST)
pixel_x_diff = 32
else if(direction & WEST)
pixel_x_diff = -32
if(!direction) // On top of?
pixel_z_diff = -8
var/default_pixel_x = initial(pixel_x)
var/default_pixel_y = initial(pixel_y)
var/default_pixel_z = initial(pixel_z)
var/initial_alpha = alpha
var/mob/mob = src
if(istype(mob))
default_pixel_x = mob.default_pixel_x
default_pixel_y = mob.default_pixel_y
animate(src, alpha = 0, pixel_x = pixel_x + pixel_x_diff, pixel_y = pixel_y + pixel_y_diff, pixel_z = pixel_z + pixel_z_diff, time = time)
sleep(time+1) //So you can wait on this proc to finish if you want to time your next steps
pixel_x = default_pixel_x
pixel_y = default_pixel_y
pixel_z = default_pixel_z
alpha = initial_alpha
/atom/movable/proc/do_attack_animation(atom/A)
var/pixel_x_diff = 0

View File

@@ -154,6 +154,7 @@ var/list/ventcrawl_machinery = list(
if(HAZARD_HIGH_PRESSURE to INFINITY)
to_chat(src, "<span class='danger'>You feel a roaring wind pushing you away from the vent!</span>")
fade_towards(vent_found,45)
if(!do_after(src, 45, vent_found, 1, 1))
return
if(!can_ventcrawl())