Even More Magazine Miscellany - Pen Interactions, Stripes, Descriptions (#88930)

## About The Pull Request

![image](https://github.com/user-attachments/assets/dd4d2935-de64-4a23-8789-7ca17fe2d488)
The original purpose of this PR was to extend the previous Magazine
Miscellany PR by adding the ability to recolor magazine indicators if
they had a defined icon. This functionality is present by using a pen on
a magazine that has a defined ammo band icon state.

This PR also further standardizes magazines with different ammo types by
using a define to append their description and magazine color for AP
ammo, hollow-points, and incendiary ammo.

This PR also _also_ gives ammo indicator bands to the magazines for the
Stechkin APS and C-20r. And also gives descriptions to every magazine so
they're not using a placeholder that mentions error signs anymore. Each
description is roughly in the format of "caliber, suitable for gun". Not
sure if I should standardize magazine names to be "caliber and special
ammo type" - the only outlier I can think of right now for that would be
the 7mm ammo boxes for the L6.

## Why It's Good For The Game

Ammo stripes are neat, functionally, so changing the stripes on
magazines in case someone chooses to reload spent mags with autolathe
ammo is probably nice as a QoL thing. Descriptions that aren't
placeholders are pretty cool too.

## Changelog
🆑
add: Magazines with defined ammo bands can now have their color changed
with a pen, in case you're reloading spent magazines or speedloaders
with different ammunition and want to change magazine colors to be
appropriate.
qol: C-20r magazines and Stechkin APS magazines now have ammo band
support.
qol: Standardized some descriptions for AP, HP, and incendiary
magazines.
/🆑

---------

Co-authored-by: Hatterhat <Hatterhat@users.noreply.github.com>
This commit is contained in:
Hatterhat
2025-01-08 11:57:19 +11:00
committed by GitHub
co-authored by Hatterhat
parent 3c1c06d47f
commit 6f10dc6bd8
13 changed files with 123 additions and 78 deletions
+6
View File
@@ -435,6 +435,7 @@
#define COLOR_ICECREAM_CUSTOM "#f3f3f3"
#define COLOR_ICECREAM_CHERRY_CHOCOLATE "#800000"
// defines for .38 ammo type colors
#define COLOR_AMMO_TRACK "#bd0ed4"
#define COLOR_AMMO_MATCH "#ff0000a8"
#define COLOR_AMMO_RUBBER "#3d3181"
@@ -443,6 +444,11 @@
#define COLOR_AMMO_HOTSHOT "#ff7b00"
#define COLOR_AMMO_ICEBLOX "#0de3ff"
// defines for other ammo type colors (should this be merged with above?)
#define COLOR_AMMO_INCENDIARY "#f4001f"
#define COLOR_AMMO_ARMORPIERCE "#d9d9d9"
#define COLOR_AMMO_HOLLOWPOINT "#ff9900"
GLOBAL_LIST_INIT(cable_colors, list(
CABLE_COLOR_BLUE = CABLE_HEX_COLOR_BLUE,
CABLE_COLOR_CYAN = CABLE_HEX_COLOR_CYAN,
+21
View File
@@ -0,0 +1,21 @@
/// Appended to the description of magazines that spawn with old-fashioned incendiary ammo, which generally leave fire trails and give firestacks in return for less base damage.
#define MAGAZINE_DESC_INC "<br>Carries rounds which ignite targets and leave flaming trails, but inflict less damage."
/// Appended to the description of magazines that spawn with hollow-point ammo, which generally has higher base damage but is weak against armor.
#define MAGAZINE_DESC_HOLLOWPOINT "<br>Carries hollow-point rounds which are effective against unarmored targets, but suffer greatly against armor."
/// Appended to the description of magazines that spawn with armor-piercing ammo, which generally has less base damage but penetrates armor.
#define MAGAZINE_DESC_ARMORPIERCE "<br>Carries armor-piercing rounds which are effective against armored targets, but less effective against unarmored targets."
/// Defines a magazine to, visually, be for incendiary ammo by setting the ammo band color and appending a short blurb to the description.
#define MAGAZINE_TYPE_INCENDIARY \
ammo_band_color = COLOR_AMMO_INCENDIARY; \
desc = parent_type::desc + MAGAZINE_DESC_INC;
/// Defines a magazine to, visually, be for hollow-point ammo by setting the ammo band color and appending a short blurb to the description.
#define MAGAZINE_TYPE_HOLLOWPOINT \
ammo_band_color = COLOR_AMMO_HOLLOWPOINT; \
desc = parent_type::desc + MAGAZINE_DESC_HOLLOWPOINT;
/// Defines a magazine to, visually, be for armor-piercing ammo by setting the ammo band color and appending a short blurb to the description.
#define MAGAZINE_TYPE_ARMORPIERCE \
ammo_band_color = COLOR_AMMO_ARMORPIERCE; \
desc = parent_type::desc + MAGAZINE_DESC_ARMORPIERCE;
@@ -20,7 +20,7 @@
///type that the magazine will be searching for, rejects if not a subtype of
var/ammo_type = /obj/item/ammo_casing
/// wording used for individual units of ammo, e.g. cartridges (regular ammo), shells (shotgun shells)
var/casing_phrasing = "cartridge"
var/casing_phrasing = "round"
///maximum amount of ammo in the magazine
var/max_ammo = 7
///Controls how sprites are updated for the ammo box; see defines in combat.dm: AMMO_BOX_ONE_SPRITE; AMMO_BOX_PER_BULLET; AMMO_BOX_FULL_EMPTY
@@ -162,6 +162,17 @@
return TRUE
/obj/item/ammo_box/attackby(obj/item/tool, mob/user, params, silent = FALSE, replace_spent = 0)
if(IS_WRITING_UTENSIL(tool))
if(!ammo_band_icon)
balloon_alert(user, "no indicator support!")
return
var/new_color = input(user, "Set a new ammo band color, cancel to remove indicator", "Ammo Box Indicator Color", ammo_band_color) as color|null
ammo_band_color = new_color
balloon_alert(user, "indicator updated")
update_appearance()
return
var/num_loaded = 0
if(!can_load(user))
return
@@ -208,19 +219,15 @@
/obj/item/ammo_box/examine(mob/user)
. = ..()
var/shells_left = LAZYLEN(stored_ammo)
var/top_round = get_round()
if(!top_round)
return
. += "It has <b>[shells_left]</b> [casing_phrasing]\s remaining."
// this is kind of awkward phrasing, but it's the top/ready ammo in the box
// intended for people who have like three mislabeled magazines
. += span_notice("The [top_round] is ready in [src].")
/obj/item/ammo_box/update_desc(updates)
. = ..()
var/shells_left = LAZYLEN(stored_ammo)
desc = "[initial(desc)]<br>There [(shells_left == 1) ? "is" : "are"] <b>[shells_left]</b> [casing_phrasing]\s left!"
/obj/item/ammo_box/update_icon_state()
. = ..()
var/shells_left = LAZYLEN(stored_ammo)
@@ -1,5 +1,6 @@
/obj/item/ammo_box/magazine/m75
name = "specialized magazine (.75)"
desc = "A .75 gyrojet magazine, suitable for use in the Gyrojet pistol."
icon_state = "75"
ammo_type = /obj/item/ammo_casing/a75
caliber = CALIBER_75
+18 -7
View File
@@ -1,32 +1,43 @@
/obj/item/ammo_box/magazine/m7mm
name = "box magazine (7mm)"
icon_state = "a7mm-50"
desc = "A sizeable 7mm box magazine, suitable for the L6 SAW."
icon_state = "a7mm"
ammo_band_icon = "+a7mmab"
ammo_type = /obj/item/ammo_casing/m7mm
caliber = CALIBER_A7MM
max_ammo = 50
/obj/item/ammo_box/magazine/m7mm/hollow
name = "box magazine (Hollow-Point 7mm)"
name = "box magazine (7mm HP)"
MAGAZINE_TYPE_HOLLOWPOINT
ammo_type = /obj/item/ammo_casing/m7mm/hollow
/obj/item/ammo_box/magazine/m7mm/ap
name = "box magazine (Armor Penetrating 7mm)"
name = "box magazine (7mm AP)"
MAGAZINE_TYPE_ARMORPIERCE
ammo_type = /obj/item/ammo_casing/m7mm/ap
/obj/item/ammo_box/magazine/m7mm/incen
name = "box magazine (Incendiary 7mm)"
name = "box magazine (7mm Incendiary)"
MAGAZINE_TYPE_INCENDIARY
ammo_type = /obj/item/ammo_casing/m7mm/incen
/obj/item/ammo_box/magazine/m7mm/match
name = "box magazine (Match 7mm)"
name = "box magazine (7mm Match)"
ammo_band_color = COLOR_AMMO_MATCH
desc = parent_type::desc + "<br>Carries match-grade rounds, which are designed to ricochet off walls in an exceedingly stylish, but possibly user-unfriendly manner."
ammo_type = /obj/item/ammo_casing/m7mm/match
/obj/item/ammo_box/magazine/m7mm/bouncy
name = "box magazine (Rubber 7mm)"
name = "box magazine (7mm Rubber)"
ammo_band_color = COLOR_AMMO_MATCH // this doesn't seem attainable in game (probably a good thing) so i guess it can get away with a color reuse
desc = parent_type::desc + "<br>Carries lethal rubber rounds, which deal less damage and bounce off everything in an incredibly irresponsible, user-unfriendly manner."
ammo_type = /obj/item/ammo_casing/m7mm/bouncy
/obj/item/ammo_box/magazine/m7mm/bouncy/hicap
name = "hi-cap box magazine (Rubber 7mm)"
name = "hi-cap box magazine (7mm Rubber)"
desc = "A very concerningly sizeable 7mm box magazine, suitable for the L6 SAW.<br>\
Carries lethal rubber rounds, which deal less damage and bounce off everything in an incredibly irresponsible, user-unfriendly manner."
max_ammo = 150
/obj/item/ammo_box/magazine/m7mm/update_icon_state()
+16 -28
View File
@@ -1,6 +1,3 @@
#define FIRE_BULLETS " Carries rounds which ignite targets and leave flaming trails, but inflict less damage."
#define HP_BULLETS " Carries hollow-point rounds which are effective against unarmored targets, but suffer greatly against armor."
#define AP_BULLETS " Carries armor-piercing rounds which are effective against armored targets, but less effective against unarmored targets."
// Makarov (9mm) //
@@ -9,6 +6,8 @@
icon_state = "9x19p"
base_icon_state = "9x19p"
desc = "A 9mm handgun magazine, suitable for the Makarov pistol."
ammo_band_icon = "+9x19ab"
ammo_band_color = null
ammo_type = /obj/item/ammo_casing/c9mm
caliber = CALIBER_9MM
max_ammo = 12
@@ -17,23 +16,17 @@
/obj/item/ammo_box/magazine/m9mm/fire
name = "pistol magazine (9mm incendiary)"
icon_state = "9x19pI"
base_icon_state = "9x19pI"
desc = parent_type::desc + FIRE_BULLETS
MAGAZINE_TYPE_INCENDIARY
ammo_type = /obj/item/ammo_casing/c9mm/fire
/obj/item/ammo_box/magazine/m9mm/hp
name = "pistol magazine (9mm HP)"
icon_state = "9x19pH"
base_icon_state = "9x19pH"
desc = parent_type::desc + HP_BULLETS
MAGAZINE_TYPE_HOLLOWPOINT
ammo_type = /obj/item/ammo_casing/c9mm/hp
/obj/item/ammo_box/magazine/m9mm/ap
name = "pistol magazine (9mm AP)"
icon_state = "9x19pA"
base_icon_state = "9x19pA"
desc = parent_type::desc + AP_BULLETS
MAGAZINE_TYPE_ARMORPIERCE
ammo_type = /obj/item/ammo_casing/c9mm/ap
// Stechkin APS (9mm) //
@@ -43,6 +36,8 @@
desc = "A 9mm handgun magazine, suitable for the Stechkin APS machine pistol."
icon_state = "9mmaps-15"
base_icon_state = "9mmaps"
ammo_band_icon = "+9mmapsab"
ammo_band_color = null
ammo_type = /obj/item/ammo_casing/c9mm
caliber = CALIBER_9MM
max_ammo = 15
@@ -53,17 +48,17 @@
/obj/item/ammo_box/magazine/m9mm_aps/fire
name = "stechkin pistol magazine (9mm incendiary)"
desc = parent_type::desc + FIRE_BULLETS
MAGAZINE_TYPE_INCENDIARY
ammo_type = /obj/item/ammo_casing/c9mm/fire
/obj/item/ammo_box/magazine/m9mm_aps/hp
name = "stechkin pistol magazine (9mm HP)"
desc = parent_type::desc + HP_BULLETS
MAGAZINE_TYPE_HOLLOWPOINT
ammo_type = /obj/item/ammo_casing/c9mm/hp
/obj/item/ammo_box/magazine/m9mm_aps/ap
name = "stechkin pistol magazine (9mm AP)"
desc = parent_type::desc + AP_BULLETS
MAGAZINE_TYPE_ARMORPIERCE
ammo_type = /obj/item/ammo_casing/c9mm/ap
// Ansem (10mm) //
@@ -73,6 +68,9 @@
desc = "A 10mm handgun magazine, suitable for the Ansem pistol."
icon_state = "9x19p"
base_icon_state = "9x19p"
ammo_band_icon = "+9x19ab"
ammo_band_color = null
ammo_type = /obj/item/ammo_casing/c10mm
caliber = CALIBER_10MM
max_ammo = 8
@@ -81,23 +79,17 @@
/obj/item/ammo_box/magazine/m10mm/fire
name = "pistol magazine (10mm incendiary)"
icon_state = "9x19pI"
base_icon_state = "9x19pI"
desc = parent_type::desc + FIRE_BULLETS
MAGAZINE_TYPE_INCENDIARY
ammo_type = /obj/item/ammo_casing/c10mm/fire
/obj/item/ammo_box/magazine/m10mm/hp
name = "pistol magazine (10mm HP)"
icon_state = "9x19pH"
base_icon_state = "9x19pH"
desc = parent_type::desc + HP_BULLETS
MAGAZINE_TYPE_HOLLOWPOINT
ammo_type = /obj/item/ammo_casing/c10mm/hp
/obj/item/ammo_box/magazine/m10mm/ap
name = "pistol magazine (10mm AP)"
icon_state = "9x19pA"
base_icon_state = "9x19pA"
desc = parent_type::desc + AP_BULLETS
MAGAZINE_TYPE_ARMORPIERCE
ammo_type = /obj/item/ammo_casing/c10mm/ap
// Regal Condor (10mm) //
@@ -136,7 +128,3 @@
caliber = CALIBER_50AE
max_ammo = 7
multiple_sprites = AMMO_BOX_PER_BULLET
#undef FIRE_BULLETS
#undef HP_BULLETS
#undef AP_BULLETS
+11 -8
View File
@@ -8,7 +8,9 @@
/obj/item/ammo_box/magazine/m223
name = "toploader magazine (.223)"
desc = "A top-loading .223 magazine, suitable for the M-90gl carbine."
icon_state = ".223"
ammo_band_icon = "+.223ab"
ammo_type = /obj/item/ammo_casing/a223
caliber = CALIBER_A223
max_ammo = 30
@@ -16,13 +18,14 @@
/obj/item/ammo_box/magazine/m223/phasic
name = "toploader magazine (.223 Phasic)"
desc = parent_type::desc + "<br>Carries phasic rounds, which completely ignore armor and phase through cover, but not targets."
ammo_type = /obj/item/ammo_casing/a223/phasic
// .38 (Battle Rifle) //
/obj/item/ammo_box/magazine/m38
name = "battle rifle magazine (.38)"
desc = "A magazine for a BR-38 battle rifle."
desc = "A .38 magazine for a BR-38 battle rifle."
icon_state = "38mag"
base_icon_state = "38mag"
w_class = WEIGHT_CLASS_NORMAL
@@ -41,42 +44,42 @@
/obj/item/ammo_box/magazine/m38/trac
name = "battle rifle magazine (.38 TRAC)"
desc = "A magazine for a BR-38 battle rifle. TRAC bullets embed a tracking implant within the target's body and are entirely nonlethal."
desc = parent_type::desc + " TRAC bullets embed a tracking implant within the target's body and are entirely nonlethal."
ammo_type = /obj/item/ammo_casing/c38/trac
ammo_band_color = COLOR_AMMO_TRACK
/obj/item/ammo_box/magazine/m38/match
name = "battle rifle magazine (.38 Match)"
desc = "A magazine for a BR-38 battle rifle. These rounds are manufactured within extremely tight tolerances, making them easy to show off trickshots with."
desc = parent_type::desc + " These rounds are manufactured within extremely tight tolerances, making them easy to show off trickshots with."
ammo_type = /obj/item/ammo_casing/c38/match
ammo_band_color = COLOR_AMMO_MATCH
/obj/item/ammo_box/magazine/m38/match/bouncy
name = "battle rifle magazine (.38 Rubber)"
desc = "A magazine for a BR-38 battle rifle. These rounds are incredibly bouncy and MOSTLY nonlethal, making them great to show off trickshots with."
desc = parent_type::desc + " These rounds are incredibly bouncy and MOSTLY nonlethal, making them great to show off trickshots with."
ammo_type = /obj/item/ammo_casing/c38/match/bouncy
ammo_band_color = COLOR_AMMO_RUBBER
/obj/item/ammo_box/magazine/m38/true
name = "battle rifle magazine (.38 True Strike)"
desc = "A magazine for a BR-38 battle rifle. Bullets bounce towards new targets with surprising accuracy."
desc = parent_type::desc + " Bullets bounce towards new targets with surprising accuracy."
ammo_type = /obj/item/ammo_casing/c38/match/true
ammo_band_color = COLOR_AMMO_TRUESTRIKE
/obj/item/ammo_box/magazine/m38/dumdum
name = "battle rifle magazine (.38 DumDum)"
desc = "A magazine for a BR-38 battle rifle. These rounds expand on impact, allowing them to shred the target and cause massive bleeding. Very weak against armor and distant targets."
desc = parent_type::desc + " These rounds expand on impact, allowing them to shred the target and cause massive bleeding. Very weak against armor and distant targets."
ammo_type = /obj/item/ammo_casing/c38/dumdum
ammo_band_color = COLOR_AMMO_DUMDUM
/obj/item/ammo_box/magazine/m38/hotshot
name = "battle rifle magazine (.38 Hot Shot)"
desc = "A magazine for a BR-38 battle rifle. Hot Shot bullets contain an incendiary payload."
desc = parent_type::desc + " Hot Shot bullets contain an incendiary payload."
ammo_type = /obj/item/ammo_casing/c38/hotshot
ammo_band_color = COLOR_AMMO_HOTSHOT
/obj/item/ammo_box/magazine/m38/iceblox
name = "battle rifle magazine (.38 Iceblox)"
desc = "A magazine for a BR-38 battle rifle. Iceblox bullets contain a cryogenic payload."
desc = parent_type::desc + " Iceblox bullets contain a cryogenic payload."
ammo_type = /obj/item/ammo_casing/c38/iceblox
ammo_band_color = COLOR_AMMO_ICEBLOX
@@ -1,6 +1,6 @@
/obj/item/ammo_box/magazine/m12g
name = "shotgun magazine (12g buckshot slugs)"
desc = "A drum magazine."
desc = "A drum magazine of shotgun shells, suitable for the Bulldog combat shotgun."
icon_state = "m12gb"
base_icon_state = "m12gb"
ammo_type = /obj/item/ammo_casing/shotgun/buckshot
+26 -21
View File
@@ -1,7 +1,10 @@
/obj/item/ammo_box/magazine/wt550m9
name = "wt550 magazine (4.6x30mm)"
name = "\improper WT-550 magazine (4.6x30mm)"
desc = "A top-loading 4.6x30mm magazine, specifically for the WT-550 autorifle."
icon_state = "46x30mmt-20"
base_icon_state = "46x30mmt"
ammo_band_icon = "+46x30mmab"
ammo_band_color = null
ammo_type = /obj/item/ammo_casing/c46x30mm
caliber = CALIBER_46X30MM
max_ammo = 20
@@ -11,27 +14,19 @@
icon_state = "[base_icon_state]-[round(ammo_count(), 4)]"
/obj/item/ammo_box/magazine/wt550m9/wtap
name = "wt550 magazine (Armour Piercing 4.6x30mm)"
icon_state = "46x30mmtA-20"
base_icon_state = "46x30mmtA"
name = "\improper WT-550 magazine (4.6x30mm AP)"
MAGAZINE_TYPE_ARMORPIERCE
ammo_type = /obj/item/ammo_casing/c46x30mm/ap
/obj/item/ammo_box/magazine/wt550m9/wtap/update_icon_state()
. = ..()
icon_state = "[base_icon_state]-[round(ammo_count(), 4)]"
/obj/item/ammo_box/magazine/wt550m9/wtic
name = "wt550 magazine (Incendiary 4.6x30mm)"
icon_state = "46x30mmtI-20"
base_icon_state = "46x30mmtI"
name = "\improper WT-550 magazine (4.6x30mm incendiary)"
MAGAZINE_TYPE_INCENDIARY
ammo_type = /obj/item/ammo_casing/c46x30mm/inc
/obj/item/ammo_box/magazine/wt550m9/wtic/update_icon_state()
. = ..()
icon_state = "[base_icon_state]-[round(ammo_count(), 4)]"
/obj/item/ammo_box/magazine/smartgun
name = "Abielle magazine (.160 Smart)"
desc = "A deep .160 Smart magazine, suitable for the Abielle smart-SMG."
icon_state = "smartgun"
base_icon_state = "smartgun"
ammo_type = /obj/item/ammo_casing/c160smart
@@ -41,7 +36,8 @@
max_ammo = 50
/obj/item/ammo_box/magazine/uzim9mm
name = "uzi magazine (9mm)"
name = "\improper Uzi magazine (9mm)"
desc = "A long 9mm magazine, suitable for the Uzi SMG."
icon_state = "uzi9mm-32"
base_icon_state = "uzi9mm"
ammo_type = /obj/item/ammo_casing/c9mm
@@ -53,7 +49,8 @@
icon_state = "[base_icon_state]-[round(ammo_count(), 4)]"
/obj/item/ammo_box/magazine/smgm9mm
name = "SMG magazine (9mm)"
name = "\improper SMG magazine (9mm)"
desc = "A sleek 9mm magazine, suitable for the Nanotrasen Saber SMG."
icon_state = "smg9mm"
base_icon_state = "smg9mm"
ammo_type = /obj/item/ammo_casing/c9mm
@@ -65,17 +62,22 @@
icon_state = "[base_icon_state]-[LAZYLEN(stored_ammo) ? "full" : "empty"]"
/obj/item/ammo_box/magazine/smgm9mm/ap
name = "SMG magazine (Armour Piercing 9mm)"
name = "SMG magazine (9mm AP)"
MAGAZINE_TYPE_ARMORPIERCE
ammo_type = /obj/item/ammo_casing/c9mm/ap
/obj/item/ammo_box/magazine/smgm9mm/fire
name = "SMG Magazine (Incendiary 9mm)"
name = "SMG magazine (9mm incendiary)"
MAGAZINE_TYPE_INCENDIARY
ammo_type = /obj/item/ammo_casing/c9mm/fire
/obj/item/ammo_box/magazine/smgm45
name = "SMG magazine (.45)"
desc = "A long .45 magazine, suitable for the C-20r SMG."
icon_state = "c20r45"
base_icon_state = "c20r45"
ammo_band_icon = "+c20rab"
ammo_band_color = null
ammo_type = /obj/item/ammo_casing/c45
caliber = CALIBER_45
max_ammo = 24
@@ -85,15 +87,18 @@
icon_state = "[base_icon_state]-[round(ammo_count(), 2)]"
/obj/item/ammo_box/magazine/smgm45/ap
name = "SMG magazine (Armour Piercing .45)"
name = "SMG magazine (.45 AP)"
MAGAZINE_TYPE_ARMORPIERCE
ammo_type = /obj/item/ammo_casing/c45/ap
/obj/item/ammo_box/magazine/smgm45/hp
name = "SMG magazine (Hollow Point .45)"
name = "SMG magazine (.45 HP)"
MAGAZINE_TYPE_HOLLOWPOINT
ammo_type = /obj/item/ammo_casing/c45/hp
/obj/item/ammo_box/magazine/smgm45/incen
name = "SMG magazine (Incendiary .45)"
name = "SMG magazine (.45 incendiary)"
MAGAZINE_TYPE_INCENDIARY
ammo_type = /obj/item/ammo_casing/c45/inc
/obj/item/ammo_box/magazine/tommygunm45
@@ -1,5 +1,6 @@
/obj/item/ammo_box/magazine/sniper_rounds
name = "anti-materiel sniper rounds (.50 BMG)"
desc = "A .50 BMG box magazine suitable for anti-materiel sniper rifles."
icon_state = ".50mag"
base_icon_state = ".50mag"
ammo_type = /obj/item/ammo_casing/p50
@@ -12,31 +13,32 @@
/obj/item/ammo_box/magazine/sniper_rounds/surplus
name = "anti-materiel sniper rounds (.50 BMG Surplus)"
desc = parent_type::desc + " Improper storage means they don't punch through armor, dismember, or stun like fresh ammo, but they're still very good at killing people."
icon_state = "surplus"
base_icon_state = "surplus"
ammo_type = /obj/item/ammo_casing/p50/surplus
/obj/item/ammo_box/magazine/sniper_rounds/disruptor
name = "anti-materiel sniper rounds (.50 BMG Bzzt)"
desc = "Disruptor sniper rounds. A special blend of soporific chemicals \
and a electromagnetic payload to cause anything to come to a grinding halt."
desc = parent_type::desc + " Loaded with disruptor sniper rounds, filled with a special blend of soporific chemicals \
and a electromagnetic payload to cause anything hit to come to a grinding halt."
base_icon_state = "disruptor"
ammo_type = /obj/item/ammo_casing/p50/disruptor
/obj/item/ammo_box/magazine/sniper_rounds/incendiary
name = "anti-materiel sniper rounds (.50 BMG incendiary)"
desc = "Incediary sniper rounds. Causes a massive combustion at the site of impact."
desc = parent_type::desc + " Loaded with incendiary sniper rounds, which cause massive combustion at the site of impact."
base_icon_state = "incendiary"
ammo_type = /obj/item/ammo_casing/p50/incendiary
/obj/item/ammo_box/magazine/sniper_rounds/penetrator
name = "anti-materiel sniper rounds (.50 BMG penetrator)"
desc = "An extremely powerful round capable of passing straight through cover and anyone unfortunate enough to be behind it."
desc = parent_type::desc + " Loaded with extremely powerful penetrator rounds, capable of passing straight through cover and anyone unfortunate enough to be behind it."
base_icon_state = "penetrator"
ammo_type = /obj/item/ammo_casing/p50/penetrator
/obj/item/ammo_box/magazine/sniper_rounds/marksman
name = "anti-materiel sniper rounds (.50 BMG marksman)"
desc = "An extremely fast sniper round able to pretty much instantly shoot through something."
desc = parent_type::desc + " Loaded with extremely fast marksman rounds, able to pretty much instantly hit their targets."
base_icon_state = "marksman"
ammo_type = /obj/item/ammo_casing/p50/marksman
@@ -67,7 +67,7 @@
desc = "Recalled by Nanotrasen due to public backlash around heat distribution resulting in unintended discombobulation. \
This outcry was fabricated through various Syndicate-backed misinformation operations to force Nanotrasen to abandon \
its ballistics weapon program, cornering them into the energy weapons market. Most often found today in the hands of pirates, \
underfunded security personnel, cargo technicians, theoritical physicists and gang bangers out on the rim. \
underfunded security personnel, cargo technicians, theoretical physicists, and gang bangers out on the rim. \
Light-weight and fully automatic. Uses 4.6x30mm rounds."
icon_state = "wt550"
w_class = WEIGHT_CLASS_BULKY
Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

+1
View File
@@ -133,6 +133,7 @@
#include "code\__DEFINES\living.dm"
#include "code\__DEFINES\logging.dm"
#include "code\__DEFINES\machines.dm"
#include "code\__DEFINES\magazines.dm"
#include "code\__DEFINES\magic.dm"
#include "code\__DEFINES\map_exporter.dm"
#include "code\__DEFINES\map_switch.dm"