Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 3 additions & 6 deletions code/__DEFINES/combat.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1320,12 +1320,9 @@ GLOBAL_LIST_INIT(main_body_parts, list(
#define PUNCH_DAMAGE_LOW 1
#define PUNCH_DAMAGE_MAX 10
#define PUNCH_DAMAGE_AVERAGE FLOOR((PUNCH_DAMAGE_LOW + PUNCH_DAMAGE_MAX) * 0.5, 1)
#define IRON_FIST_PUNCH_DAMAGE_LOW 6
#define IRON_FIST_PUNCH_DAMAGE_MAX 12
#define IRON_FIST_PUNCH_DAMAGE_AVERAGE FLOOR((IRON_FIST_PUNCH_DAMAGE_LOW + IRON_FIST_PUNCH_DAMAGE_MAX) * 0.5, 1)
#define STEEL_FIST_PUNCH_DAMAGE_LOW 10
#define STEEL_FIST_PUNCH_DAMAGE_MAX 16
#define STEEL_FIST_PUNCH_DAMAGE_AVERAGE FLOOR((STEEL_FIST_PUNCH_DAMAGE_LOW + STEEL_FIST_PUNCH_DAMAGE_MAX) * 0.5, 1)
#define IRON_FIST_PUNCH_DAMAGE 2
#define STEEL_FIST_PUNCH_DAMAGE 7
#define METAL_FIST_DAMAGE_MIN 8 // So super mutants don't benefit as much

//weapon class defines for standardized stats
#define WEAPON_CLASS_TINY list(\
Expand Down
1 change: 0 additions & 1 deletion code/__DEFINES/traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -255,7 +255,6 @@
#define TRAIT_PLAY_DEAD "play_dead" // gives 10u ghoul powder every *deathgasp
#define TRAIT_NO_PROCESS_FOOD "no-process-food" // You don't get benefits from nutriment, nor nutrition from reagent consumables
#define TRAIT_NICE_SHOT "nice_shot" //hnnnnnnnggggg..... you're pretty good...
#define TRAIT_PERFECT_ATTACKER "perfect_attacker"
#define TRAIT_BUFFOUT_BUFF "buffout_buff"
#define TRAIT_UNARMED_WEAPON "unarmed_weapon"
/// Prevents usage of manipulation appendages (picking, holding or using items, manipulating storage).
Expand Down
2 changes: 0 additions & 2 deletions code/_globalvars/traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -132,9 +132,7 @@ GLOBAL_LIST_INIT(traits_by_type, list(
"TRAIT_EMPATH" = TRAIT_EMPATH,
"TRAIT_FRIENDLY" = TRAIT_FRIENDLY,
"TRAIT_NICE_SHOT" = TRAIT_NICE_SHOT,
"TRAIT_PERFECT_ATTACKER" = TRAIT_PERFECT_ATTACKER,
"TRAIT_BUFFOUT_BUFF" = TRAIT_BUFFOUT_BUFF,
"TRAIT_UNARMED_WEAPON" = TRAIT_UNARMED_WEAPON,
"TRAIT_CANNIBAL" = TRAIT_LONGPORKLOVER,
"TRAIT_SPEED" = TRAIT_SPEED,
"TRAIT_SUPER_SPEED" = TRAIT_SUPER_SPEED,
Expand Down
4 changes: 2 additions & 2 deletions code/datums/components/tackle.dm
Original file line number Diff line number Diff line change
Expand Up @@ -246,9 +246,9 @@

var/tackle_damage = PUNCH_DAMAGE_AVERAGE
if(HAS_TRAIT(user, TRAIT_IRONFIST))
tackle_damage = IRON_FIST_PUNCH_DAMAGE_AVERAGE
tackle_damage = IRON_FIST_PUNCH_DAMAGE + 3 // Yes, this is a magic number. No, I don't think it's that big a deal here. Change it if you want.
else if(HAS_TRAIT(user, TRAIT_STEELFIST))
tackle_damage = STEEL_FIST_PUNCH_DAMAGE_AVERAGE
tackle_damage = STEEL_FIST_PUNCH_DAMAGE + 3
var/damage_mod = 1

switch(roll)
Expand Down
11 changes: 1 addition & 10 deletions code/datums/martial.dm
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@

/datum/martial_art/proc/basic_hit(mob/living/carbon/human/A,mob/living/carbon/human/D)

var/damage = rand(A.dna.species.punchdamagelow, A.dna.species.punchdamagehigh)
var/damage = A.dna.species.punchdamage

var/atk_verb = A.dna.species.attack_verb
if(D.lying)
Expand Down Expand Up @@ -69,15 +69,6 @@

add_logs(A, D, "punched")

if((D.stat != DEAD) && damage >= A.dna.species.punchstunthreshold)
D.visible_message(span_danger("[A] has knocked [D] down!!"), \
span_userdanger("[A] has knocked [D] down!"))
D.apply_effect(40, EFFECT_KNOCKDOWN, armor_block)
D.forcesay(GLOB.hit_appends)
else if(D.lying)
D.forcesay(GLOB.hit_appends)
return 1

/datum/martial_art/proc/teach(mob/living/carbon/human/H,make_temporary=0)
if(!istype(H) || !H.mind)
return FALSE
Expand Down
2 changes: 1 addition & 1 deletion code/datums/martial/_martial.dm
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@

/datum/martial_art/proc/damage_roll(mob/living/carbon/human/A, mob/living/carbon/human/D)
//Here we roll for our damage to be added into the damage var in the various attack procs. This is changed depending on whether we are in combat mode, lying down, or if our target is in combat mode.
var/damage = rand(A.dna.species.punchdamagelow, A.dna.species.punchdamagehigh)
var/damage = A.dna.species.punchdamage + A.calc_unarmed_dam_mod_from_special()

Check failure on line 47 in code/datums/martial/_martial.dm

View workflow job for this annotation

GitHub Actions / Run Linters

undefined proc: "calc_unarmed_dam_mod_from_special" on /mob/living/carbon/human
//if(SEND_SIGNAL(D, COMSIG_COMBAT_MODE_CHECK, COMBAT_MODE_INACTIVE))
// damage *= 1.2
if(!CHECK_MOBILITY(A, MOBILITY_STAND))
Expand Down
7 changes: 0 additions & 7 deletions code/datums/martial/boxing.dm
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,6 @@

var/atk_verb = pick("left hook","right hook","straight punch")
var/extra_damage = damage_roll(A,D)
if(extra_damage == A.dna.species.punchdamagelow)
playsound(D.loc, A.dna.species.miss_sound, 25, 1, -1)
D.visible_message(span_warning("[A] has attempted to [atk_verb] [D]!"), \
span_userdanger("[A] has attempted to [atk_verb] [D]!"), null, COMBAT_MESSAGE_RANGE)
log_combat(A, D, "attempted to hit", atk_verb)
return TRUE

var/obj/item/bodypart/affecting = D.get_bodypart(ran_zone(A.zone_selected))
var/armor_block = D.run_armor_check(affecting, "melee")

Expand Down
22 changes: 5 additions & 17 deletions code/datums/martial/cqc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -166,27 +166,15 @@
add_to_streak("D",D)
var/obj/item/I = null
var/damage = damage_roll(A,D)
var/stunthreshold = A.dna.species.punchstunthreshold
if(check_streak(A,D))
return TRUE
if(CHECK_MOBILITY(D, MOBILITY_MOVE) || !restraining)
A.do_attack_animation(D, ATTACK_EFFECT_PUNCH)
if(damage >= stunthreshold)
I = D.get_active_held_item()
D.visible_message(span_warning("[A] strikes [D]'s jaw with their hand!"), \
span_userdanger("[A] strikes your jaw, disorienting you!"))
playsound(get_turf(D), 'sound/weapons/cqchit1.ogg', 50, 1, -1)
D.drop_all_held_items()
D.Jitter(2)
D.Dizzy(damage)
D.apply_damage(damage*2 + 20, STAMINA)
D.apply_damage(damage*0.5, BRUTE)
else
D.visible_message(span_danger("[A] strikes [D] in the chest!"), \
span_userdanger("[A] strikes you in the chest!"))
playsound(D, 'sound/weapons/cqchit1.ogg', 25, 1, -1)
D.apply_damage(damage + 15, STAMINA)
D.apply_damage(damage*0.5, BRUTE)
D.visible_message(span_danger("[A] strikes [D] in the chest!"), \
span_userdanger("[A] strikes you in the chest!"))
playsound(D, 'sound/weapons/cqchit1.ogg', 25, 1, -1)
D.apply_damage(damage + 15, STAMINA)
D.apply_damage(damage*0.5, BRUTE)
log_combat(A, D, "disarmed (CQC)", "[I ? " grabbing \the [I]" : ""]")
if(restraining && A.pulling == D)
log_combat(A, D, "knocked out (Chokehold)(CQC)")
Expand Down
5 changes: 0 additions & 5 deletions code/datums/martial/krav_maga.dm
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,6 @@
var/obj/item/bodypart/affecting = D.get_bodypart(ran_zone(A.zone_selected))
var/armor_block = D.run_armor_check(affecting, "melee")
var/damage = damage_roll(A,D)
var/stunthreshold = A.dna.species.punchstunthreshold
if(CHECK_MOBILITY(D, MOBILITY_STAND))
D.visible_message(span_danger("[A] reprimands [D]!"), \
span_userdanger("You're slapped by [A]!"), span_hear("You hear a sickening sound of flesh hitting flesh!"), COMBAT_MESSAGE_RANGE, A)
Expand All @@ -184,10 +183,6 @@
playsound(D, 'sound/effects/hit_punch.ogg', 50, TRUE, -1)
D.apply_damage(damage*2 + 20, STAMINA, affecting, armor_block)
log_combat(A, D, "stomped nonlethally")
if(damage >= stunthreshold)
D.visible_message(span_warning("[D] sputters and recoils in pain!"), span_userdanger("You recoil in pain as you are jabbed in a nerve!"))
D.drop_all_held_items()

return TRUE

//Krav Maga Gloves
Expand Down
21 changes: 5 additions & 16 deletions code/datums/martial/rising_bass.dm
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,6 @@

/datum/martial_art/the_rising_bass/proc/shoulderFlip(mob/living/carbon/human/A, mob/living/carbon/human/D)
var/damage = damage_roll(A,D)
var/stunthreshold = A.dna.species.punchstunthreshold
var/turf/H = get_step(A, get_dir(D,A))
var/L = checkfordensity(H,D) ? H : A.loc
A.do_attack_animation(D, ATTACK_EFFECT_PUNCH)
Expand All @@ -112,8 +111,6 @@
D.emote("scream")
D.apply_damage(damage + 10, BRUTE, BODY_ZONE_CHEST)
D.apply_damage(damage + 10, BRUTE, BODY_ZONE_HEAD)
if(damage >= stunthreshold)
D.Sleeping(60)
D.DefaultCombatKnockdown(300, override_hardstun = 1, override_stamdmg = 50)
D.forceMove(L)
log_combat(A, D, "shoulder flipped (Rising Bass)")
Expand Down Expand Up @@ -169,20 +166,12 @@
if(check_streak(A,D))
return TRUE
var/damage = damage_roll(A,D)
var/stunthreshold = A.dna.species.punchstunthreshold
A.do_attack_animation(D, ATTACK_EFFECT_PUNCH)
if(CHECK_MOBILITY(D, MOBILITY_STAND) && damage >= stunthreshold)
D.visible_message(span_danger("[A] trips [D]!"), \
span_userdanger("You're tripped by [A]!"), span_hear("You hear something thump against the floor!"), COMBAT_MESSAGE_RANGE, A)
to_chat(A, span_danger("You trip [D]!"))
D.DefaultCombatKnockdown(10, override_hardstun = 0.01, override_stamdmg = damage)
D.Dizzy(damage)
else
D.visible_message(span_danger("[A] jabs [D] in the stomach!"), \
span_userdanger("You're jabbed in the stomach by [A]!"), span_hear("You hear a sickening sound of flesh hitting flesh!"), COMBAT_MESSAGE_RANGE, A)
to_chat(A, span_danger("You jab [D] in the stomach!"))
D.apply_damage(damage*2 + 10, STAMINA)
D.disgust = min(damage, 20)
D.visible_message(span_danger("[A] jabs [D] in the stomach!"), \
span_userdanger("You're jabbed in the stomach by [A]!"), span_hear("You hear a sickening sound of flesh hitting flesh!"), COMBAT_MESSAGE_RANGE, A)
to_chat(A, span_danger("You jab [D] in the stomach!"))
D.apply_damage(damage*2 + 10, STAMINA)
D.disgust = min(damage, 20)
playsound(D, 'sound/weapons/punchmiss.ogg', 25, 1, -1)
return TRUE

Expand Down
24 changes: 7 additions & 17 deletions code/datums/traits/good.dm
Original file line number Diff line number Diff line change
Expand Up @@ -602,23 +602,22 @@ GLOBAL_LIST_INIT(bone_dancer_recipes, list(

/datum/quirk/iron_fist/on_spawn()
var/mob/living/carbon/human/H = quirk_holder
H.dna.species.punchdamagelow = IRON_FIST_PUNCH_DAMAGE_LOW
H.dna.species.punchdamagehigh = IRON_FIST_PUNCH_DAMAGE_MAX
/*
H.dna.species.punchdamage = max(H.dna.species.punchdamage, METAL_FIST_DAMAGE_MIN)
H.dna.species.punchdamage += IRON_FIST_PUNCH_DAMAGE

/datum/quirk/steel_fist
name = "Fists of Steel"
desc = "You have MASSIVE fists of kung-fury! Increases unarmed damage even MORE."
value = 2
desc = "You have MASSIVE fists of kung-fury! Increases unarmed damage even more."
value = 4
mob_trait = TRAIT_STEELFIST
gain_text = span_notice("Your fists feel MASSIVELY furious!")
lose_text = span_danger("Your fists feel calm again, what a relief.")
locked = TRUE

/datum/quirk/steel_fist/on_spawn()
var/mob/living/carbon/human/H = quirk_holder
H.dna.species.punchdamagelow = STEEL_FIST_PUNCH_DAMAGE_LOW
H.dna.species.punchdamagehigh = STEEL_FIST_PUNCH_DAMAGE_MAX
*/
H.dna.species.punchdamage = max(H.dna.species.punchdamage, METAL_FIST_DAMAGE_MIN)
H.dna.species.punchdamage += STEEL_FIST_PUNCH_DAMAGE

/datum/quirk/light_step
name = "Glass Walker"
Expand Down Expand Up @@ -1008,15 +1007,6 @@ GLOBAL_LIST_INIT(bone_dancer_recipes, list(
gain_text = span_notice("They are already dead.")
lose_text = span_danger("Your fists no longer feel so powerful.")
locked = FALSE

/datum/quirk/surestrike
name = "Sure Strike"
desc = "Your technique for punching has been perfected! Your punches always do MAX damage!"
value = 4
mob_trait = TRAIT_PERFECT_ATTACKER
gain_text = span_notice("They are already dead.")
lose_text = span_danger("Your fists no longer feel so powerful.")
locked = FALSE
*/

/datum/quirk/quietstep
Expand Down
3 changes: 1 addition & 2 deletions code/datums/traits/negative.dm
Original file line number Diff line number Diff line change
Expand Up @@ -812,8 +812,7 @@ Edit: TK~ This is the dumbest fucking shit I've ever seen in my life. This isn

/datum/quirk/noodle_fist/on_spawn()
var/mob/living/carbon/human/H = quirk_holder
H.dna.species.punchdamagelow = 0
H.dna.species.punchdamagehigh = 0
H.dna.species.punchdamage = 0

/datum/quirk/gentle
name = "Melee - Gentle"
Expand Down
96 changes: 93 additions & 3 deletions code/game/objects/items/loadout_beacons.dm
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
#define LOADOUT_CAT_LAWMAN "Law Weapons"
#define LOADOUT_CAT_MELEE_ONE "One Handed Melee"
#define LOADOUT_CAT_MELEE_TWO "Two Handed Melee"
#define LOADOUT_CAT_UNARMED "Unarmed Weapons"
#define LOADOUT_CAT_PISTOL "Pistols"
#define LOADOUT_CAT_REVOLVER "Revolvers"
#define LOADOUT_CAT_LONGGUN "Long Guns"
Expand All @@ -32,8 +33,8 @@
#define LOADOUT_CAT_SINISTER "Sinister Tools"
#define LOADOUT_CAT_OTHER "Other Things"

#define LOADOUT_ROOT_ENTRIES list(LOADOUT_CAT_MELEE_ONE, LOADOUT_CAT_MELEE_TWO, LOADOUT_CAT_PISTOL, LOADOUT_CAT_REVOLVER, LOADOUT_CAT_LONGGUN, LOADOUT_CAT_HOBO, LOADOUT_CAT_MISC, LOADOUT_CAT_BOW, LOADOUT_CAT_ENERGY, LOADOUT_CAT_NULLROD, LOADOUT_CAT_SHIELD, LOADOUT_FLAG_TOOL_WASTER, LOADOUT_CAT_MUSKET)
#define LOADOUT_ALL_ENTRIES list(LOADOUT_CAT_PREMIUM, LOADOUT_CAT_LAWMAN, LOADOUT_CAT_MELEE_ONE, LOADOUT_CAT_MELEE_TWO, LOADOUT_CAT_PISTOL, LOADOUT_CAT_REVOLVER, LOADOUT_CAT_LONGGUN, LOADOUT_CAT_HOBO, LOADOUT_CAT_MISC, LOADOUT_CAT_BOW, LOADOUT_CAT_ENERGY, LOADOUT_CAT_NULLROD, LOADOUT_CAT_SHIELD, LOADOUT_CAT_WORKER, LOADOUT_CAT_ADVENTURE, LOADOUT_CAT_MEDICAL, LOADOUT_CAT_SINISTER, LOADOUT_CAT_OTHER, LOADOUT_CAT_MUSKET)
#define LOADOUT_ROOT_ENTRIES list(LOADOUT_CAT_MELEE_ONE, LOADOUT_CAT_MELEE_TWO, LOADOUT_CAT_UNARMED, LOADOUT_CAT_PISTOL, LOADOUT_CAT_REVOLVER, LOADOUT_CAT_LONGGUN, LOADOUT_CAT_HOBO, LOADOUT_CAT_MISC, LOADOUT_CAT_BOW, LOADOUT_CAT_ENERGY, LOADOUT_CAT_NULLROD, LOADOUT_CAT_SHIELD, LOADOUT_FLAG_TOOL_WASTER, LOADOUT_CAT_MUSKET)
#define LOADOUT_ALL_ENTRIES list(LOADOUT_CAT_PREMIUM, LOADOUT_CAT_LAWMAN, LOADOUT_CAT_MELEE_ONE, LOADOUT_CAT_MELEE_TWO, LOADOUT_CAT_UNARMED, LOADOUT_CAT_PISTOL, LOADOUT_CAT_REVOLVER, LOADOUT_CAT_LONGGUN, LOADOUT_CAT_HOBO, LOADOUT_CAT_MISC, LOADOUT_CAT_BOW, LOADOUT_CAT_ENERGY, LOADOUT_CAT_NULLROD, LOADOUT_CAT_SHIELD, LOADOUT_CAT_WORKER, LOADOUT_CAT_ADVENTURE, LOADOUT_CAT_MEDICAL, LOADOUT_CAT_SINISTER, LOADOUT_CAT_OTHER, LOADOUT_CAT_MUSKET)

GLOBAL_LIST_EMPTY(loadout_datums)
GLOBAL_LIST_EMPTY(loadout_boxes)
Expand Down Expand Up @@ -780,6 +781,53 @@ GLOBAL_LIST_EMPTY(loadout_boxes)
/obj/item/storage/box/gun/melee/brass/PopulateContents()
new /obj/item/melee/unarmed/brass(src)

/obj/item/storage/box/gun/melee/spiked

name = "spiked knuckles case"

/obj/item/storage/box/gun/melee/spiked/PopulateContents()
new /obj/item/melee/unarmed/brass/spiked(src)

/obj/item/storage/box/gun/melee/sappers

name = "sappers case"

/obj/item/storage/box/gun/melee/sappers/PopulateContents()
new /obj/item/melee/unarmed/sappers(src)

/obj/item/storage/box/gun/melee/dualsappers
name = "dual sappers case"

/obj/item/storage/box/gun/melee/dualsappers/PopulateContents()
new /obj/item/melee/unarmed/sappers/dual(src)

/obj/item/storage/box/gun/melee/punchdagger

name = "punch dagger case"

/obj/item/storage/box/gun/melee/punchdagger/PopulateContents()
new /obj/item/melee/unarmed/punchdagger(src)

/obj/item/storage/box/gun/melee/lacerator

name = "lacerator case"

/obj/item/storage/box/gun/melee/lacerator/PopulateContents()
new /obj/item/melee/unarmed/lacerator(src)

/obj/item/storage/box/gun/melee/dualmaceglove

name = "mace gloves case"

/obj/item/storage/box/gun/melee/dualmaceglove/PopulateContents()
new /obj/item/melee/unarmed/maceglove/dual(src)

/obj/item/storage/box/gun/melee/tigerclaw
name = "tiger claw case"

/obj/item/storage/box/gun/melee/tigerclaw/PopulateContents()
new /obj/item/melee/unarmed/tigerclaw/dual(src)

/obj/item/storage/box/gun/melee/fryingpan //because YES
name = "frying pan case" //a deadly weapon, keep it in its case

Expand Down Expand Up @@ -1852,9 +1900,51 @@ GLOBAL_LIST_EMPTY(loadout_boxes)
/datum/loadout_box/brass
entry_tag = "Brass Knuckles"
entry_flags = LOADOUT_FLAG_WASTER | LOADOUT_FLAG_TRIBAL | LOADOUT_FLAG_LAWMAN
entry_class = LOADOUT_CAT_MISC
entry_class = LOADOUT_CAT_UNARMED
spawn_thing = /obj/item/storage/box/gun/melee/brass

/datum/loadout_box/spiked
entry_tag = "Spiked Knuckles"
entry_flags = LOADOUT_FLAG_WASTER
entry_class = LOADOUT_CAT_UNARMED
spawn_thing = /obj/item/storage/box/gun/melee/spiked

/datum/loadout_box/sappers
entry_tag = "Sappers"
entry_flags = LOADOUT_FLAG_WASTER | LOADOUT_FLAG_LAWMAN
entry_class = LOADOUT_CAT_UNARMED
spawn_thing = /obj/item/storage/box/gun/melee/sappers

/datum/loadout_box/dualsappers
entry_tag = "Dual Sappers"
entry_flags = LOADOUT_FLAG_LAWMAN
entry_class = LOADOUT_CAT_UNARMED
spawn_thing = /obj/item/storage/box/gun/melee/dualsappers

/datum/loadout_box/punchdagger
entry_tag = "Punch Dagger"
entry_flags = LOADOUT_FLAG_WASTER | LOADOUT_FLAG_TRIBAL
entry_class = LOADOUT_CAT_UNARMED
spawn_thing = /obj/item/storage/box/gun/melee/punchdagger

/datum/loadout_box/lacerator
entry_tag = "Lacerator"
entry_flags = LOADOUT_FLAG_WASTER | LOADOUT_FLAG_TRIBAL
entry_class = LOADOUT_CAT_UNARMED
spawn_thing = /obj/item/storage/box/gun/melee/lacerator

/datum/loadout_box/dualmaceglove
entry_tag = "Dual Mace Gloves"
entry_flags = LOADOUT_FLAG_WASTER
entry_class = LOADOUT_CAT_UNARMED
spawn_thing = /obj/item/storage/box/gun/melee/dualmaceglove

/datum/loadout_box/dualtigerclaw
entry_tag = "Dual Tiger Claws"
entry_flags = LOADOUT_FLAG_LAWMAN | LOADOUT_FLAG_PREMIUM
entry_class = LOADOUT_CAT_UNARMED
spawn_thing = /obj/item/storage/box/gun/melee/tigerclaw

/datum/loadout_box/fryingpan
entry_tag = "Frying Pan"
entry_flags = LOADOUT_FLAG_WASTER | LOADOUT_FLAG_TRIBAL
Expand Down
Loading
Loading