mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-22 03:27:05 +01:00
Merge pull request #16579 from FlattestGuitar/armor-defines
Adds defines for damage flags
This commit is contained in:
@@ -21,7 +21,7 @@
|
||||
|
||||
///returns the damage value of the attack after processing the obj's various armor protections
|
||||
/obj/proc/run_obj_armor(damage_amount, damage_type, damage_flag = 0, attack_dir, armour_penetration = 0)
|
||||
if(damage_flag == "melee" && damage_amount < damage_deflection)
|
||||
if(damage_flag == MELEE && damage_amount < damage_deflection)
|
||||
return 0
|
||||
switch(damage_type)
|
||||
if(BRUTE)
|
||||
@@ -48,7 +48,7 @@
|
||||
|
||||
/obj/hitby(atom/movable/AM, skipcatch, hitpush, blocked, datum/thrownthing/throwingdatum)
|
||||
..()
|
||||
take_damage(AM.throwforce, BRUTE, "melee", 1, get_dir(src, AM))
|
||||
take_damage(AM.throwforce, BRUTE, MELEE, 1, get_dir(src, AM))
|
||||
|
||||
/obj/ex_act(severity)
|
||||
if(QDELETED(src))
|
||||
@@ -57,11 +57,11 @@
|
||||
return
|
||||
switch(severity)
|
||||
if(1)
|
||||
take_damage(INFINITY, BRUTE, "bomb", 0)
|
||||
take_damage(INFINITY, BRUTE, BOMB, 0)
|
||||
if(2)
|
||||
take_damage(rand(100, 250), BRUTE, "bomb", 0)
|
||||
take_damage(rand(100, 250), BRUTE, BOMB, 0)
|
||||
if(3)
|
||||
take_damage(rand(10, 90), BRUTE, "bomb", 0)
|
||||
take_damage(rand(10, 90), BRUTE, BOMB, 0)
|
||||
|
||||
/obj/bullet_act(obj/item/projectile/P)
|
||||
. = ..()
|
||||
@@ -83,7 +83,7 @@
|
||||
user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
|
||||
else
|
||||
playsound(src, 'sound/effects/bang.ogg', 50, 1)
|
||||
take_damage(hulk_damage(), BRUTE, "melee", 0, get_dir(src, user))
|
||||
take_damage(hulk_damage(), BRUTE, MELEE, 0, get_dir(src, user))
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
@@ -92,7 +92,7 @@
|
||||
var/turf/T = loc
|
||||
if((T.intact && level == 1) || T.transparent_floor) //the blob doesn't destroy thing below the floor
|
||||
return
|
||||
take_damage(400, BRUTE, "melee", 0, get_dir(src, B))
|
||||
take_damage(400, BRUTE, MELEE, 0, get_dir(src, B))
|
||||
|
||||
/obj/proc/attack_generic(mob/user, damage_amount = 0, damage_type = BRUTE, damage_flag = 0, sound_effect = 1, armor_penetration = 0) //used by attack_alien, attack_animal, and attack_slime
|
||||
user.do_attack_animation(src)
|
||||
@@ -100,7 +100,7 @@
|
||||
return take_damage(damage_amount, damage_type, damage_flag, sound_effect, get_dir(src, user), armor_penetration)
|
||||
|
||||
/obj/attack_alien(mob/living/carbon/alien/humanoid/user)
|
||||
if(attack_generic(user, 60, BRUTE, "melee", 0))
|
||||
if(attack_generic(user, 60, BRUTE, MELEE, 0))
|
||||
playsound(loc, 'sound/weapons/slash.ogg', 100, TRUE)
|
||||
|
||||
/obj/attack_animal(mob/living/simple_animal/M)
|
||||
@@ -112,9 +112,9 @@
|
||||
if(M.environment_smash)
|
||||
play_soundeffect = 0
|
||||
if(M.obj_damage)
|
||||
. = attack_generic(M, M.obj_damage, M.melee_damage_type, "melee", play_soundeffect, M.armour_penetration)
|
||||
. = attack_generic(M, M.obj_damage, M.melee_damage_type, MELEE, play_soundeffect, M.armour_penetration)
|
||||
else
|
||||
. = attack_generic(M, rand(M.melee_damage_lower,M.melee_damage_upper), M.melee_damage_type, "melee", play_soundeffect, M.armour_penetration)
|
||||
. = attack_generic(M, rand(M.melee_damage_lower,M.melee_damage_upper), M.melee_damage_type, MELEE, play_soundeffect, M.armour_penetration)
|
||||
if(. && !play_soundeffect)
|
||||
playsound(src, 'sound/effects/meteorimpact.ogg', 100, TRUE)
|
||||
|
||||
@@ -132,7 +132,7 @@
|
||||
/obj/attack_slime(mob/living/simple_animal/slime/user)
|
||||
if(!user.is_adult)
|
||||
return
|
||||
attack_generic(user, rand(10, 15), BRUTE, "melee", 1)
|
||||
attack_generic(user, rand(10, 15), BRUTE, MELEE, 1)
|
||||
|
||||
/obj/mech_melee_attack(obj/mecha/M)
|
||||
M.do_attack_animation(src)
|
||||
@@ -153,7 +153,7 @@
|
||||
else
|
||||
return 0
|
||||
M.visible_message("<span class='danger'>[M.name] hits [src]!</span>", "<span class='danger'>You hit [src]!</span>")
|
||||
return take_damage(M.force*3, mech_damtype, "melee", play_soundeffect, get_dir(src, M)) // multiplied by 3 so we can hit objs hard but not be overpowered against mobs.
|
||||
return take_damage(M.force*3, mech_damtype, MELEE, play_soundeffect, get_dir(src, M)) // multiplied by 3 so we can hit objs hard but not be overpowered against mobs.
|
||||
|
||||
/obj/singularity_act()
|
||||
ex_act(EXPLODE_DEVASTATE)
|
||||
@@ -183,7 +183,7 @@ GLOBAL_DATUM_INIT(acid_overlay, /mutable_appearance, mutable_appearance('icons/e
|
||||
if(!(resistance_flags & ACID_PROOF))
|
||||
if(prob(33))
|
||||
playsound(loc, 'sound/items/welder.ogg', 150, TRUE)
|
||||
take_damage(min(1 + round(sqrt(acid_level) * 0.3), 300), BURN, "acid", 0)
|
||||
take_damage(min(1 + round(sqrt(acid_level) * 0.3), 300), BURN, ACID, 0)
|
||||
|
||||
acid_level = max(acid_level - (5 + 3 * round(sqrt(acid_level))), 0)
|
||||
if(!acid_level)
|
||||
@@ -203,7 +203,7 @@ GLOBAL_DATUM_INIT(acid_overlay, /mutable_appearance, mutable_appearance('icons/e
|
||||
return
|
||||
..()
|
||||
if(exposed_temperature && !(resistance_flags & FIRE_PROOF))
|
||||
take_damage(clamp(0.02 * exposed_temperature, 0, 20), BURN, "fire", 0)
|
||||
take_damage(clamp(0.02 * exposed_temperature, 0, 20), BURN, FIRE, 0)
|
||||
if(!(resistance_flags & ON_FIRE) && (resistance_flags & FLAMMABLE) && !(resistance_flags & FIRE_PROOF))
|
||||
resistance_flags |= ON_FIRE
|
||||
SSfires.processing[src] = src
|
||||
@@ -253,9 +253,9 @@ GLOBAL_DATUM_INIT(acid_overlay, /mutable_appearance, mutable_appearance('icons/e
|
||||
|
||||
///what happens when the obj's integrity reaches zero.
|
||||
/obj/proc/obj_destruction(damage_flag)
|
||||
if(damage_flag == "acid")
|
||||
if(damage_flag == ACID)
|
||||
acid_melt()
|
||||
else if(damage_flag == "fire")
|
||||
else if(damage_flag == FIRE)
|
||||
burn()
|
||||
else
|
||||
deconstruct(FALSE)
|
||||
|
||||
Reference in New Issue
Block a user