Merge pull request #12173 from kevinz000/projectiles_2

Refactors projectile speed to pixels per second
This commit is contained in:
Lin
2020-05-24 21:21:41 +00:00
committed by GitHub
25 changed files with 178 additions and 99 deletions
@@ -75,7 +75,7 @@ Difficulty: Medium
/obj/item/projectile/kinetic/miner
damage = 40
speed = 0.9
pixels_per_second = TILES_TO_PIXELS(11.111)
icon_state = "ka_tracer"
range = MINER_DASH_RANGE
@@ -212,7 +212,7 @@ Difficulty: Very Hard
icon_state= "chronobolt"
damage = 25
armour_penetration = 100
speed = 2
pixels_per_second = TILES_TO_PIXELS(5)
eyeblur = 0
damage_type = BRUTE
pass_flags = PASSTABLE
@@ -71,7 +71,10 @@ Difficulty: Extremely Hard
/mob/living/simple_animal/hostile/megafauna/demonic_frost_miner/OpenFire()
check_enraged()
projectile_speed_multiplier = 1 - enraged * 0.25
if(enraged)
projectile_speed_multiplier = 1.33
else
projectile_speed_multiplier = 1
SetRecoveryTime(100, 100)
if(client)
@@ -109,7 +112,7 @@ Difficulty: Extremely Hard
icon_state = "ice_1"
damage = 20
armour_penetration = 100
speed = 10
pixels_per_second = TILES_TO_PIXELS(1)
homing_turn_speed = 30
damage_type = BURN
@@ -123,7 +126,7 @@ Difficulty: Extremely Hard
icon_state = "nuclear_particle"
damage = 5
armour_penetration = 100
speed = 4
pixels_per_second = TILES_TO_PIXELS(2.5)
damage_type = BRUTE
/obj/item/projectile/ice_blast
@@ -131,7 +134,7 @@ Difficulty: Extremely Hard
icon_state = "ice_2"
damage = 15
armour_penetration = 100
speed = 4
pixels_per_second = TILES_TO_PIXELS(2.5)
damage_type = BRUTE
/obj/item/projectile/ice_blast/on_hit(atom/target, blocked = FALSE)
@@ -185,7 +188,7 @@ Difficulty: Extremely Hard
if(!startloc || !endloc)
break
var/obj/item/projectile/ice_blast/P = new(startloc)
P.speed *= projectile_speed_multiplier
P.pixels_per_second *= projectile_speed_multiplier
P.preparePixelProjectile(endloc, startloc, null, angle + rand(-10, 10))
P.firer = firer
if(original)
@@ -201,7 +204,7 @@ Difficulty: Extremely Hard
if(!endloc)
break
var/obj/item/projectile/P = new /obj/item/projectile/snowball(startloc)
P.speed *= projectile_speed_multiplier
P.pixels_per_second *= projectile_speed_multiplier
P.preparePixelProjectile(endloc, startloc, null, rand(-spread, spread))
P.firer = src
if(target)
@@ -220,7 +223,7 @@ Difficulty: Extremely Hard
if(!endloc)
break
var/obj/item/projectile/P = new /obj/item/projectile/ice_blast(startloc)
P.speed *= projectile_speed_multiplier
P.pixels_per_second *= projectile_speed_multiplier
P.preparePixelProjectile(endloc, startloc, null, spread)
P.firer = src
if(target)
@@ -145,6 +145,7 @@
/mob/living/simple_animal/hostile/megafauna/proc/SetRecoveryTime(buffer_time)
recovery_time = world.time + buffer_time
ranged_cooldown = max(ranged_cooldown, world.time + buffer_time) // CITADEL BANDAID FIX FOR MEGAFAUNA NOT RESPECTING RECOVERY TIME.
/mob/living/simple_animal/hostile/megafauna/proc/grant_achievement(medaltype, scoretype, crusher_kill)
if(!medal_type || (flags_1 & ADMIN_SPAWNED_1)) //Don't award medals if the medal type isn't set
@@ -217,7 +217,7 @@
icon_state= "chronobolt"
damage = 15
armour_penetration = 60
speed = 2
pixels_per_second = TILES_TO_PIXELS(5)
eyeblur = 0
damage_type = BRUTE
pass_flags = PASSTABLE