Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/master' into upstream-merge-8-25
Browse files Browse the repository at this point in the history
  • Loading branch information
Doubleumc committed Sep 10, 2024
2 parents e6a81e0 + e98f466 commit f5a498f
Show file tree
Hide file tree
Showing 75 changed files with 491,797 additions and 491,555 deletions.
6 changes: 6 additions & 0 deletions code/__DEFINES/__game.dm
Original file line number Diff line number Diff line change
Expand Up @@ -559,3 +559,9 @@
#define PERF_TOGGLE_SHUTTLES (1<<3)
/// Disables loading Techwebs and additional Z-Levels
#define PERF_TOGGLE_TECHWEBS (1<<4)

/// Dropship Camos
#define DROPSHIP_CAMO_TAN "Tan"
#define DROPSHIP_CAMO_NAVY "Navy"
#define DROPSHIP_CAMO_URBAN "Urban"
#define DROPSHIP_CAMO_JUNGLE "Jungle"
2 changes: 1 addition & 1 deletion code/__DEFINES/guns.dm
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#define AMMO_BAND_COLOR_TRAINING "#FFFFFF"
// Uncommon
#define AMMO_BAND_COLOR_HOLOTARGETING "#276A74"
#define AMMO_BAND_COLOR_RUBBER "#556696"
#define AMMO_BAND_COLOR_RUBBER "#d8d9db"
#define AMMO_BAND_COLOR_HOLLOWPOINT "#BA5D00"
#define AMMO_BAND_COLOR_INCENDIARY "#9C2219"
#define AMMO_BAND_COLOR_IMPACT "#7866FF"
Expand Down
3 changes: 3 additions & 0 deletions code/_globalvars/global_lists.dm
Original file line number Diff line number Diff line change
Expand Up @@ -242,6 +242,9 @@ GLOBAL_REFERENCE_LIST_INDEXED(hair_styles_list, /datum/sprite_accessory/hair, na
GLOBAL_REFERENCE_LIST_INDEXED(facial_hair_styles_list, /datum/sprite_accessory/facial_hair, name) //stores /datum/sprite_accessory/facial_hair indexed by name
GLOBAL_REFERENCE_LIST_INDEXED(hair_gradient_list, /datum/sprite_accessory/hair_gradient, name)
GLOBAL_REFERENCE_LIST_INDEXED(yautja_hair_styles_list, /datum/sprite_accessory/yautja_hair, name)
//Dropship camos

GLOBAL_LIST_INIT(dropship_camos, list(DROPSHIP_CAMO_TAN, DROPSHIP_CAMO_NAVY, DROPSHIP_CAMO_URBAN, DROPSHIP_CAMO_JUNGLE))

//Backpacks
GLOBAL_LIST_INIT(backbaglist, list("Backpack", "Satchel"))
Expand Down
153 changes: 88 additions & 65 deletions code/datums/ammo/bullet/rifle.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@
//======
*/

//====== 10X24 Pulse Rifle
/datum/ammo/bullet/rifle
name = "rifle bullet"
name = "10x24 bullet"
headshot_state = HEADSHOT_OVERLAY_MEDIUM

damage = 40
penetration = ARMOR_PENETRATION_TIER_1
accurate_range = 16
Expand All @@ -16,10 +16,10 @@
shell_speed = AMMO_SPEED_TIER_6
effective_range_max = 7
damage_falloff = DAMAGE_FALLOFF_TIER_7
max_range = 24 //So S8 users don't have their bullets magically disappaer at 22 tiles (S8 can see 24 tiles)
max_range = 24

/datum/ammo/bullet/rifle/holo_target
name = "holo-targeting rifle bullet"
name = "holo-targeting 10x24 bullet"
damage = 30
/// inflicts this many holo stacks per bullet hit
var/holo_stacks = 10
Expand All @@ -32,14 +32,14 @@
. = ..()
hit_mob.AddComponent(/datum/component/bonus_damage_stack, holo_stacks, world.time, bonus_damage_cap_increase, stack_loss_multiplier)


/datum/ammo/bullet/rifle/holo_target/hunting
name = "holo-targeting hunting bullet"
name = "holo-targeting 10x24 bullet"
damage = 25
holo_stacks = 15

/datum/ammo/bullet/rifle/explosive
name = "explosive rifle bullet"

name = "explosive 10x24 bullet"
damage = 25
accurate_range = 22
accuracy = 0
Expand All @@ -56,15 +56,17 @@
if(T.density)
cell_explosion(T, 80, 40, EXPLOSION_FALLOFF_SHAPE_LINEAR, P.dir, P.weapon_cause_data)


/datum/ammo/bullet/rifle/ap
name = "armor-piercing rifle bullet"
name = "armor-piercing 10x24 bullet"

damage = 30
penetration = ARMOR_PENETRATION_TIER_8


// Basically AP but better. Focused at taking out armour temporarily
/datum/ammo/bullet/rifle/ap/toxin
name = "toxic rifle bullet"
name = "toxic 10x24 bullet"
var/acid_per_hit = 7
var/organic_damage_mult = 3

Expand All @@ -84,7 +86,7 @@


/datum/ammo/bullet/rifle/ap/penetrating
name = "wall-penetrating rifle bullet"
name = "wall-penetrating 10x24 bullet"
shrapnel_chance = 0

damage = 35
Expand All @@ -96,47 +98,93 @@
BULLET_TRAIT_ENTRY(/datum/element/bullet_trait_penetrating)
))

/datum/ammo/bullet/rifle/le
name = "armor-shredding rifle bullet"

/datum/ammo/bullet/rifle/le
name = "armor-shredding 10x24 bullet"
damage = 20
penetration = ARMOR_PENETRATION_TIER_4
pen_armor_punch = 5

/datum/ammo/bullet/rifle/heap
name = "high-explosive armor-piercing rifle bullet"

/datum/ammo/bullet/rifle/heap
name = "high-explosive armor-piercing 10x24 bullet"
headshot_state = HEADSHOT_OVERLAY_HEAVY
damage = 55//big damage, doesn't actually blow up because thats stupid.
penetration = ARMOR_PENETRATION_TIER_8
shrapnel_chance = SHRAPNEL_CHANCE_TIER_3

/datum/ammo/bullet/rifle/rubber
name = "rubber rifle bullet"
sound_override = 'sound/weapons/gun_c99.ogg'

damage = 0
/datum/ammo/bullet/rifle/rubber
name = "rubber 10x24 bullet"
damage = 5
stamina_damage = 15
shrapnel_chance = 0

/datum/ammo/bullet/rifle/incendiary
name = "incendiary rifle bullet"
name = "incendiary 10x24 bullet"
damage_type = BURN
shrapnel_chance = 0
flags_ammo_behavior = AMMO_BALLISTIC

damage = 30
shell_speed = AMMO_SPEED_TIER_4
accuracy = -HIT_ACCURACY_TIER_2
damage_falloff = DAMAGE_FALLOFF_TIER_10


/datum/ammo/bullet/rifle/incendiary/set_bullet_traits()
. = ..()
LAZYADD(traits_to_give, list(
BULLET_TRAIT_ENTRY(/datum/element/bullet_trait_incendiary)
))

/datum/ammo/bullet/rifle/m4ra
name = "A19 high velocity bullet"
//====== 10X28 Smartgun

/datum/ammo/bullet/rifle/heavy
name = "10x28 bullet"
headshot_state = HEADSHOT_OVERLAY_MEDIUM
damage = 55
penetration = ARMOR_PENETRATION_TIER_3
accuracy = HIT_ACCURACY_TIER_3
shell_speed = AMMO_SPEED_TIER_6
effective_range_max = 10
damage_falloff = DAMAGE_FALLOFF_TIER_9

/datum/ammo/bullet/rifle/heavy/ap
name = "armor-piercing 10x28 bullet"
headshot_state = HEADSHOT_OVERLAY_MEDIUM
damage = 40
penetration = ARMOR_PENETRATION_TIER_8

/datum/ammo/bullet/rifle/heavy/heap
headshot_state = HEADSHOT_OVERLAY_HEAVY
name = "high explosive armor-piercing 10x28 bullet"
headshot_state = HEADSHOT_OVERLAY_MEDIUM
damage = 70
penetration = ARMOR_PENETRATION_TIER_10
shrapnel_chance = SHRAPNEL_CHANCE_TIER_3

/datum/ammo/bullet/rifle/heavy/du
name = "depleted uranium 10x28 bullet"

damage = 60
accurate_range_min = 4
penetration = ARMOR_PENETRATION_TIER_5
scatter = -SCATTER_AMOUNT_TIER_8

/datum/ammo/bullet/rifle/heavy/du/set_bullet_traits()
. = ..()
LAZYADD(traits_to_give, list(
BULLET_TRAIT_ENTRY(/datum/element/bullet_trait_penetrating)
))

/datum/ammo/bullet/rifle/heavy/du/on_hit_mob(mob/target, obj/projectile/fired_proj)
target.AddComponent(/datum/component/toxic_buildup)

Check failure on line 181 in code/datums/ammo/bullet/rifle.dm

View workflow job for this annotation

GitHub Actions / Run Linters

failed to resolve path /datum/component/toxic_buildup
knockback(target, fired_proj, max_range = 2)

// Custom Specialist M4RA rounds

/datum/ammo/bullet/rifle/heavy/spec
name = "high velocity 10x28 bullet"
shrapnel_chance = 0
damage_falloff = 0
flags_ammo_behavior = AMMO_BALLISTIC
Expand All @@ -147,8 +195,8 @@
penetration= ARMOR_PENETRATION_TIER_7
shell_speed = AMMO_SPEED_TIER_6

/datum/ammo/bullet/rifle/m4ra/incendiary
name = "A19 high velocity incendiary bullet"
/datum/ammo/bullet/rifle/heavy/spec/incendiary
name = "high velocity incendiary 10x28 bullet"
flags_ammo_behavior = AMMO_BALLISTIC

damage = 40
Expand All @@ -157,14 +205,14 @@
penetration= ARMOR_PENETRATION_TIER_5
shell_speed = AMMO_SPEED_TIER_6

/datum/ammo/bullet/rifle/m4ra/incendiary/set_bullet_traits()
/datum/ammo/bullet/rifle/heavy/spec/incendiary/set_bullet_traits()
. = ..()
LAZYADD(traits_to_give, list(
BULLET_TRAIT_ENTRY(/datum/element/bullet_trait_incendiary)
))

/datum/ammo/bullet/rifle/m4ra/impact
name = "A19 high velocity impact bullet"
/datum/ammo/bullet/rifle/heavy/spec/impact
name = "high velocity impact 10x28 bullet"
flags_ammo_behavior = AMMO_BALLISTIC

damage = 40
Expand All @@ -173,10 +221,10 @@
penetration = ARMOR_PENETRATION_TIER_10
shell_speed = AMMO_SPEED_TIER_6

/datum/ammo/bullet/rifle/m4ra/impact/on_hit_mob(mob/M, obj/projectile/P)
/datum/ammo/bullet/rifle/heavy/spec/impact/on_hit_mob(mob/M, obj/projectile/P)
knockback(M, P, 32) // Can knockback basically at max range max range is 24 tiles...

/datum/ammo/bullet/rifle/m4ra/impact/knockback_effects(mob/living/living_mob, obj/projectile/fired_projectile)
/datum/ammo/bullet/rifle/heavy/spec/impact/knockback_effects(mob/living/living_mob, obj/projectile/fired_projectile)
if(iscarbonsizexeno(living_mob))
var/mob/living/carbon/xenomorph/target = living_mob
to_chat(target, SPAN_XENODANGER("You are shaken and slowed by the sudden impact!"))
Expand All @@ -191,45 +239,20 @@
to_chat(living_mob, SPAN_HIGHDANGER("The impact knocks you off-balance!"))
living_mob.apply_stamina_damage(fired_projectile.ammo.damage, fired_projectile.def_zone, ARMOR_BULLET)

//====== 10x31 Type 71

// PvE M4RA rounds - pens&does toxin to whomever gets hit by it
/datum/ammo/bullet/rifle/m4ra/du
name = "depleted uranium bullet"

damage = 60
penetration = ARMOR_PENETRATION_TIER_5
/datum/ammo/bullet/rifle/heavy/upp
name = "10x31 bullet"

/datum/ammo/bullet/rifle/m4ra/du/set_bullet_traits()
. = ..()
LAZYADD(traits_to_give, list(
BULLET_TRAIT_ENTRY(/datum/element/bullet_trait_penetrating)
))
/datum/ammo/bullet/rifle/heavy/ap/upp
name = "armor-piercing 10x31 bullet"

/datum/ammo/bullet/rifle/m4ra/du/on_hit_mob(mob/target, obj/projectile/fired_proj)
target.AddComponent(/datum/component/status_effect/toxic_buildup)
knockback(target, fired_proj, max_range = 2)
/datum/ammo/bullet/rifle/heavy/heap/upp
name = "high-explosive armor-piercing 10x31 bullet"

// Misc

/datum/ammo/bullet/rifle/mar40
name = "heavy rifle bullet"

damage = 55

/datum/ammo/bullet/rifle/type71
name = "heavy rifle bullet"

damage = 55
penetration = ARMOR_PENETRATION_TIER_3

/datum/ammo/bullet/rifle/type71/ap
name = "heavy armor-piercing rifle bullet"

damage = 40
penetration = ARMOR_PENETRATION_TIER_10

/datum/ammo/bullet/rifle/type71/heap
name = "heavy high-explosive armor-piercing rifle bullet"

headshot_state = HEADSHOT_OVERLAY_HEAVY
damage = 65
penetration = ARMOR_PENETRATION_TIER_10
name = "7.62x39mm rifle bullet"
damage = 45
penetration = ARMOR_PENETRATION_TIER_2
8 changes: 4 additions & 4 deletions code/datums/factions/upp.dm
Original file line number Diff line number Diff line change
Expand Up @@ -102,8 +102,8 @@

list("PRIMARY AMMUNITION", 0, null, null, null),
list("Type 64 Helical Magazine (7.62x19mm)", 5, /obj/item/ammo_magazine/smg/bizon, null, VENDOR_ITEM_REGULAR),
list("Type 71 AP Magazine (5.45x39mm)", 15, /obj/item/ammo_magazine/rifle/type71/ap, null, VENDOR_ITEM_REGULAR),
list("Type 71 Magazine (5.45x39mm)", 5, /obj/item/ammo_magazine/rifle/type71, null, VENDOR_ITEM_REGULAR),
list("Type 71 AP Magazine (10x31mm)", 15, /obj/item/ammo_magazine/rifle/type71/ap, null, VENDOR_ITEM_REGULAR),
list("Type 71 Magazine (10x31mm)", 5, /obj/item/ammo_magazine/rifle/type71, null, VENDOR_ITEM_REGULAR),

list("SIDEARMS", 0, null, null, null),
list("Type 73 Pistol", 25, /obj/item/weapon/gun/pistol/t73, null, VENDOR_ITEM_REGULAR),
Expand Down Expand Up @@ -141,8 +141,8 @@

list("PRIMARY AMMUNITION", -1, null, null),
list("Type 64 Helical Magazine (7.62x19mm)", 60, /obj/item/ammo_magazine/smg/bizon, VENDOR_ITEM_REGULAR),
list("Type 71 AP Magazine (5.45x39mm)", 60, /obj/item/ammo_magazine/rifle/type71/ap, VENDOR_ITEM_REGULAR),
list("Type 71 Magazine (5.45x39mm)", 60, /obj/item/ammo_magazine/rifle/type71, VENDOR_ITEM_REGULAR),
list("Type 71 AP Magazine (10x31mm)", 60, /obj/item/ammo_magazine/rifle/type71/ap, VENDOR_ITEM_REGULAR),
list("Type 71 Magazine (10x31mm)", 60, /obj/item/ammo_magazine/rifle/type71, VENDOR_ITEM_REGULAR),

list("SIDEARMS", -1, null, null),
list("Type 73 Pistol", 20, /obj/item/weapon/gun/pistol/t73, VENDOR_ITEM_REGULAR),
Expand Down
Loading

0 comments on commit f5a498f

Please sign in to comment.