Updated Projectile code some more.
This commit is contained in:
@@ -234,15 +234,16 @@
|
||||
|
||||
/obj/item/projectile/kinetic/prehit_pierce(atom/target)
|
||||
. = ..()
|
||||
if(.)
|
||||
if(kinetic_gun)
|
||||
var/list/mods = kinetic_gun.get_modkits()
|
||||
for(var/obj/item/borg/upgrade/modkit/M in mods)
|
||||
M.projectile_prehit(src, target, kinetic_gun)
|
||||
if(!pressure_decrease_active && !lavaland_equipment_pressure_check(get_turf(target)))
|
||||
name = "weakened [name]"
|
||||
damage = damage * pressure_decrease
|
||||
pressure_decrease_active = TRUE
|
||||
if(. == PROJECTILE_PIERCE_PHASE)
|
||||
return
|
||||
if(kinetic_gun)
|
||||
var/list/mods = kinetic_gun.modkits
|
||||
for(var/obj/item/borg/upgrade/modkit/modkit in mods)
|
||||
modkit.projectile_prehit(src, target, kinetic_gun)
|
||||
if(!pressure_decrease_active && !lavaland_equipment_pressure_check(get_turf(target)))
|
||||
name = "weakened [name]"
|
||||
damage = damage * pressure_decrease
|
||||
pressure_decrease_active = TRUE
|
||||
|
||||
/obj/item/projectile/kinetic/on_range()
|
||||
strike_thing()
|
||||
|
||||
@@ -445,22 +445,22 @@
|
||||
continue
|
||||
O.take_damage(aoe_structure_damage * get_damage_coeff(O), BURN, "laser", FALSE)
|
||||
|
||||
/obj/item/projectile/beam/beam_rifle/proc/check_pierce(atom/A)
|
||||
/obj/item/projectile/beam/beam_rifle/prehit_pierce(atom/A)
|
||||
if(isclosedturf(A) && (wall_pierce < wall_pierce_amount))
|
||||
if(prob(wall_devastate))
|
||||
if(iswallturf(A))
|
||||
var/turf/closed/wall/W = A
|
||||
W.dismantle_wall(TRUE, TRUE)
|
||||
else
|
||||
target.ex_act(EXPLODE_HEAVY)
|
||||
A.ex_act(EXPLODE_HEAVY)
|
||||
++wall_pierce
|
||||
return PROJECTILE_PIERCE_PHASE // yeah this gun is a snowflakey piece of garbage - Silly-Cons
|
||||
if(isobj(A) && (structure_pierce < structure_pierce_amount))
|
||||
++structure_pierce
|
||||
var/obj/O = A
|
||||
O.take_damage((impact_structure_damage + aoe_structure_damage) * structure_bleed_coeff * get_damage_coeff(A), BURN, ENERGY, FALSE)
|
||||
O.take_damage((impact_structure_damage + aoe_structure_damage) * structure_bleed_coeff * get_damage_coeff(A), BURN, "energy", FALSE)
|
||||
return PROJECTILE_PIERCE_PHASE // ditto and this could be refactored to on_hit honestly - Silly-Cons
|
||||
return ..()
|
||||
return ..()
|
||||
|
||||
/obj/item/projectile/beam/beam_rifle/proc/get_damage_coeff(atom/target)
|
||||
if(istype(target, /obj/machinery/door))
|
||||
|
||||
Reference in New Issue
Block a user