diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index 48f1c88fc9..45c68486c1 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -636,13 +636,18 @@ /obj/item/weapon/melee/transforming/cleaving_saw/attack(mob/living/target, mob/living/carbon/human/user) if(!active || swiping || !target.density || get_turf(target) == get_turf(user)) + if(!active) + faction_bonus_force = 0 ..() + if(!active) + faction_bonus_force = initial(faction_bonus_force) else var/turf/user_turf = get_turf(user) var/dir_to_target = get_dir(user_turf, get_turf(target)) swiping = TRUE - for(var/i in 1 to 3) - var/turf/T = get_step(user_turf, turn(dir_to_target, 90 - (45 * i))) + var/static/list/cleaving_saw_cleave_angles = list(0, -90, 90) //so that the animation animates towards the target clicked and not towards a side target + for(var/i in cleaving_saw_cleave_angles) + var/turf/T = get_step(user_turf, turn(dir_to_target, i)) for(var/mob/living/L in T) if(user.Adjacent(L) && L.density) melee_attack_chain(user, L) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm index 192c91c98c..52fd1d42cd 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm @@ -45,7 +45,7 @@ Difficulty: Medium blood_volume = BLOOD_VOLUME_NORMAL medal_type = MEDAL_PREFIX var/obj/item/weapon/melee/transforming/cleaving_saw/miner/miner_saw - var/time_until_next_transform + var/time_until_next_transform = 0 var/dashing = FALSE var/dash_cooldown = 15 var/guidance = FALSE @@ -81,7 +81,7 @@ Difficulty: Medium miner_saw = new(src) /mob/living/simple_animal/hostile/megafauna/blood_drunk_miner/adjustHealth(amount, updating_health = TRUE, forced = FALSE) - var/adjustment_amount = amount * 0.15 + var/adjustment_amount = amount * 0.1 if(world.time + adjustment_amount > next_move) changeNext_move(adjustment_amount) //attacking it interrupts it attacking, but only briefly . = ..() @@ -151,7 +151,7 @@ Difficulty: Medium transform_weapon() /mob/living/simple_animal/hostile/megafauna/blood_drunk_miner/proc/shoot_ka() - if(next_move <= world.time && ranged_cooldown <= world.time && get_dist(src, target) <= MINER_DASH_RANGE && !Adjacent(target)) + if(ranged_cooldown <= world.time && get_dist(src, target) <= MINER_DASH_RANGE && !Adjacent(target)) ranged_cooldown = world.time + ranged_cooldown_time visible_message("[src] fires the proto-kinetic accelerator!") face_atom(target) @@ -236,7 +236,7 @@ Difficulty: Medium /obj/effect/temp_visual/dir_setting/miner_death icon_state = "miner_death" - duration = 10 + duration = 15 /obj/effect/temp_visual/dir_setting/miner_death/Initialize(mapload, set_dir) . = ..() @@ -250,9 +250,9 @@ Difficulty: Medium final_dir = pick(NORTH, SOUTH) //So you fall on your side rather than your face or ass animate(src, transform = M, pixel_y = -6, dir = final_dir, time = 2, easing = EASE_IN|EASE_OUT) - sleep(2) - animate(src, color = list("#A7A19E", "#A7A19E", "#A7A19E", list(0, 0, 0)), time = 8, easing = EASE_IN, flags = ANIMATION_PARALLEL) - sleep(2) + sleep(5) + animate(src, color = list("#A7A19E", "#A7A19E", "#A7A19E", list(0, 0, 0)), time = 10, easing = EASE_IN, flags = ANIMATION_PARALLEL) + sleep(4) animate(src, alpha = 0, time = 6, easing = EASE_OUT, flags = ANIMATION_PARALLEL) /obj/item/device/gps/internal/miner