Armor defines (#20563)

Added armor defines
Converted raw strings use to defines
Added UT test to ensure people set the armor var correctly (to a list)

No player facing changes
This commit is contained in:
Fluffy
2025-03-09 21:37:46 +00:00
committed by GitHub
parent 660f3e90a1
commit c5dabb9cda
109 changed files with 1666 additions and 1578 deletions
@@ -348,9 +348,9 @@
natural_armor = list(
ballistic = ARMOR_BALLISTIC_MEDIUM,
melee = ARMOR_MELEE_MAJOR,
MELEE = ARMOR_MELEE_MAJOR,
bomb = null,
energy = ARMOR_ENERGY_RESISTANT
ENERGY = ARMOR_ENERGY_RESISTANT
)
mob_size = 20
@@ -428,10 +428,10 @@
natural_armor = list(
ballistic = ARMOR_BALLISTIC_MINOR,
laser = ARMOR_LASER_MINOR,
melee = ARMOR_MELEE_SMALL,
bomb = ARMOR_BOMB_PADDED,
energy = ARMOR_ENERGY_SMALL
LASER = ARMOR_LASER_MINOR,
MELEE = ARMOR_MELEE_SMALL,
BOMB = ARMOR_BOMB_PADDED,
ENERGY = ARMOR_ENERGY_SMALL
)
inherent_verbs = list(
@@ -356,7 +356,7 @@
)
natural_armor = list(
melee = ARMOR_MELEE_MEDIUM
MELEE = ARMOR_MELEE_MEDIUM
)
brute_mod = 0.4
@@ -90,12 +90,12 @@
if ((worn_suit.item_flags & ITEM_FLAG_THICK_MATERIAL))
prob_mult -= 0.7
else
prob_mult -= 0.01 * (min(LAZYACCESS(worn_suit.armor, "bio"), 70)) // Is it sealed? I can't get to 70% of your body.
prob_mult -= 0.01 * (min(LAZYACCESS(worn_suit.armor, BIO), 70)) // Is it sealed? I can't get to 70% of your body.
if(worn_helmet)
if ((worn_helmet.item_flags & ITEM_FLAG_THICK_MATERIAL))
prob_mult -= 0.3
else
prob_mult -= 0.01 *(min(LAZYACCESS(worn_helmet.armor, "bio"), 30))// Is your helmet sealed? I can't get to 30% of your body.
prob_mult -= 0.01 *(min(LAZYACCESS(worn_helmet.armor, BIO), 30))// Is your helmet sealed? I can't get to 30% of your body.
if( prob(sting_prob*prob_mult) && (M.stat == CONSCIOUS || (M.stat == UNCONSCIOUS && prob(25*prob_mult))) ) // Try to sting! If you're not moving, think about stinging.
M.apply_damage(min(strength*0.85,2)+mut, DAMAGE_BURN, damage_flags = DAMAGE_FLAG_SHARP) // Stinging. The more mutated I am, the harder I sting.
var/venom_strength = max(strength*0.2, (round(feral/10,1) * (max(round(strength/20,1), 1)))) + toxic // Bee venom based on how angry I am and how many there are of me!
@@ -288,9 +288,9 @@
meat_amount = 4
vehicle_version = /obj/vehicle/animal/climber
natural_armor = list(
melee = ARMOR_MELEE_MEDIUM,
bullet = ARMOR_BALLISTIC_MINOR,
bomb = ARMOR_BOMB_MINOR
MELEE = ARMOR_MELEE_MEDIUM,
BULLET = ARMOR_BALLISTIC_MINOR,
BOMB = ARMOR_BOMB_MINOR
)
/mob/living/simple_animal/climber/saddle
@@ -31,9 +31,9 @@
meat_amount = 20
vehicle_version = /obj/vehicle/animal/threshbeast
natural_armor = list(
melee = ARMOR_MELEE_MEDIUM,
bullet = ARMOR_BALLISTIC_MINOR,
bomb = ARMOR_BOMB_MINOR
MELEE = ARMOR_MELEE_MEDIUM,
BULLET = ARMOR_BALLISTIC_MINOR,
BOMB = ARMOR_BOMB_MINOR
)
resists_weather = TRUE
sample_data = list("Cellular biochemistry shows high metabolic capacity", "Tissue sample contains high muscle content", "Genetic biomarkers identified linked with passiveness and domestication")
@@ -81,10 +81,10 @@
meat_amount = 30
vehicle_version = /obj/vehicle/animal/hegeranzi
natural_armor = list( //big tough war beast, has some more armor particularly against bullets and melee
melee = ARMOR_MELEE_MAJOR,
bullet = ARMOR_BALLISTIC_MEDIUM,
laser = ARMOR_LASER_MINOR,
bomb = ARMOR_BOMB_MINOR
MELEE = ARMOR_MELEE_MAJOR,
BULLET = ARMOR_BALLISTIC_MEDIUM,
LASER = ARMOR_LASER_MINOR,
BOMB = ARMOR_BOMB_MINOR
)
resists_weather = TRUE
sample_data = list("Cellular biochemistry shows high metabolic capacity", "Tissue sample contains high muscle content", "Genetic biomarkers identified linked with domestication", "Intracellular keratin synthesis present")
@@ -189,7 +189,7 @@
var/list/armors = target.get_armors_by_zone(limb.limb_name, DAMAGE_BRUTE, DAMAGE_FLAG_SHARP)
for(var/armor in armors)
var/datum/component/armor/armor_datum = armor
inject_probability -= armor_datum.armor_values["melee"] * 1.8
inject_probability -= armor_datum.armor_values[MELEE] * 1.8
if(prob(inject_probability))
to_chat(target, SPAN_WARNING("You feel a tiny prick."))
target.reagents.add_reagent(poison_type, poison_per_bite)
@@ -54,7 +54,7 @@
name = "electrical discharge"
icon_state = "stun"
damage_type = DAMAGE_BURN
check_armor = "energy"
check_armor = ENERGY
damage = 5
muzzle_type = /obj/effect/projectile/muzzle/stun
@@ -23,7 +23,7 @@
melee_damage_lower = 10
melee_damage_upper = 15
natural_armor = list(
melee = ARMOR_MELEE_RESISTANT
MELEE = ARMOR_MELEE_RESISTANT
)
emote_see = list("skitters","oozes liquid from its mouth", "scratches at the ground", "clicks its claws")
@@ -46,7 +46,7 @@
melee_damage_upper = 10
blood_color = COLOR_RED
natural_armor = list(
laser = ARMOR_LASER_PISTOL
LASER = ARMOR_LASER_PISTOL
)
/mob/living/simple_animal/hostile/retaliate/beast/charbaby/on_attack_mob(var/mob/hit_mob)
@@ -365,7 +365,7 @@
icon_state = "ion"
damage = 0
agony = 20
check_armor = "energy"
check_armor = ENERGY
pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE
var/list/thoughts = list(
"You hear a cacophany of alien sounds.",