Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

M47A2 Offensive Handgun #6734

Closed
wants to merge 15 commits into from
Closed
Show file tree
Hide file tree
Changes from 2 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
3 changes: 2 additions & 1 deletion code/__DEFINES/guns.dm
Original file line number Diff line number Diff line change
Expand Up @@ -47,12 +47,13 @@
#define AUTOFIRE_SUCCESS (1<<1)

///Base CO special weapons options
#define CO_GUNS list(CO_GUN_MATEBA, CO_GUN_MATEBA_SPECIAL, CO_GUN_DEAGLE)
#define CO_GUNS list(CO_GUN_MATEBA, CO_GUN_MATEBA_SPECIAL, CO_GUN_M47, CO_GUN_DEAGLE)

///Council CO special weapons options
#define COUNCIL_CO_GUNS list(CO_GUN_MATEBA_COUNCIL, CO_GUN_DEAGLE_COUNCIL)

#define CO_GUN_MATEBA "Mateba"
#define CO_GUN_M47 "M47 Handgun"
#define CO_GUN_MATEBA_SPECIAL "Mateba Special"
#define CO_GUN_DEAGLE "Desert Eagle"
#define CO_GUN_MATEBA_COUNCIL "Colonel's Mateba"
Expand Down
20 changes: 20 additions & 0 deletions code/datums/ammo/bullet/pistol.dm
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,26 @@
penetration = ARMOR_PENETRATION_TIER_3
shrapnel_chance = SHRAPNEL_CHANCE_TIER_2

/datum/ammo/bullet/pistol/heavy/m47/apimpact
name = "heavy ap pistol bullet"
penetration = ARMOR_PENETRATION_TIER_1
debilitate = list(0,1.5,0,0,0,1,0,0)
flags_ammo_behavior = AMMO_BALLISTIC

/datum/ammo/bullet/pistol/m47/impact
name = "heavy impact pistol bullet"
penetration = ARMOR_PENETRATION_TIER_1
debilitate = list(0,1.5,0,0,0,1,0,0)
flags_ammo_behavior = AMMO_BALLISTIC

/datum/ammo/bullet/pistol/m47/hp
name = "heavy pistol hollowpoint"
damage = 70
penetration = ARMOR_PENETRATION_TIER_1
shrapnel_chance = SHRAPNEL_CHANCE_TIER_2

// 50 cal

/datum/ammo/bullet/pistol/heavy/super //Commander's variant
name = ".50 heavy pistol bullet"
damage = 60
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,10 @@ GLOBAL_LIST_INIT(cm_vending_gear_commanding_officer, list(
list("High Impact AP Mateba Speedloader (.454)", 20, /obj/item/ammo_magazine/revolver/mateba/highimpact/ap, null, VENDOR_ITEM_REGULAR),
list("High Impact Desert Eagle Magazine (.50)", 15, /obj/item/ammo_magazine/pistol/heavy/super/highimpact, null, VENDOR_ITEM_RECOMMENDED),
list("High Impact AP Desert Eagle Magazine (.50)", 20, /obj/item/ammo_magazine/pistol/heavy/super/highimpact/ap, null, VENDOR_ITEM_REGULAR),

list("M47A2 Magazine", 10, /obj/item/ammo_magazine/pistol/m47, null, VENDOR_ITEM_REGULAR),
list("M47A2 HP Magazine", 15, /obj/item/ammo_magazine/pistol/m47/hp, null, VENDOR_ITEM_REGULAR),
list("M47A2 High Impact Magazine", 15, /obj/item/ammo_magazine/pistol/m47/impact, null, VENDOR_ITEM_REGULAR),
list("M47A2 AP High Impact Magazine", 15, /obj/item/ammo_magazine/pistol/m47/apimpact, null, VENDOR_ITEM_REGULAR),
list("SHOTGUN AMMUNITION", 0, null, null, null),
list("Buckshot Shells", 20, /obj/item/ammo_magazine/shotgun/buckshot, null, VENDOR_ITEM_REGULAR),
list("Shotgun Slugs", 20, /obj/item/ammo_magazine/shotgun/slugs, null, VENDOR_ITEM_REGULAR),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ GLOBAL_LIST_INIT(cm_vending_gear_intelligence_officer, list(
list("M44 Marksman Speed Loader (.44)", 10, /obj/item/ammo_magazine/revolver/marksman, null, VENDOR_ITEM_REGULAR),
list("M4A3 HP Magazine", 5, /obj/item/ammo_magazine/pistol/hp, null, VENDOR_ITEM_REGULAR),
list("M4A3 AP Magazine", 5, /obj/item/ammo_magazine/pistol/ap, null, VENDOR_ITEM_REGULAR),
list("M47A2 Magazine", 5, /obj/item/ammo_magazine/pistol/m47, null, VENDOR_ITEM_REGULAR),
list("M47A2 HP Magazine", 10, /obj/item/ammo_magazine/pistol/m47/hp, null, VENDOR_ITEM_REGULAR),
list("VP78 Magazine", 5, /obj/item/ammo_magazine/pistol/vp78, null, VENDOR_ITEM_REGULAR),
list("SU-6 Smartpistol Magazine (.45)", 10, /obj/item/ammo_magazine/pistol/smart, null, VENDOR_ITEM_REGULAR),

Expand Down
3 changes: 3 additions & 0 deletions code/game/machinery/vending/vendor_types/requisitions.dm
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
list("RESTRICTED FIREARMS", -1, null, null),
list("VP78 Pistol", floor(scale * 4), /obj/item/storage/box/guncase/vp78, VENDOR_ITEM_REGULAR),
list("SU-6 Smart Pistol", floor(scale * 3), /obj/item/storage/box/guncase/smartpistol, VENDOR_ITEM_REGULAR),
list("M47A2 Offensive Handgun", floor(scale * 2), /obj/item/storage/box/guncase/m47a2, VENDOR_ITEM_REGULAR),
list("MOU-53 Shotgun", floor(scale * 2), /obj/item/storage/box/guncase/mou53, VENDOR_ITEM_REGULAR),
list("XM88 Heavy Rifle", floor(scale * 3), /obj/item/storage/box/guncase/xm88, VENDOR_ITEM_REGULAR),
list("M41AE2 Heavy Pulse Rifle", 2.5, /obj/item/storage/box/guncase/lmg, VENDOR_ITEM_REGULAR),
Expand Down Expand Up @@ -239,6 +240,8 @@
list("RESTRICTED FIREARM AMMUNITION", -1, null, null),
list("VP78 Magazine", 11, /obj/item/ammo_magazine/pistol/vp78, VENDOR_ITEM_REGULAR),
list("SU-6 Smartpistol Magazine (.45)", 13, /obj/item/ammo_magazine/pistol/smart, VENDOR_ITEM_REGULAR),
list("M47A2 Magazine", 13, /obj/item/ammo_magazine/pistol/m47, VENDOR_ITEM_REGULAR),
list("M47A2 HP Magazine", floor(scale * 2), /obj/item/ammo_magazine/pistol/m47/hp, VENDOR_ITEM_REGULAR),
list("M240 Incinerator Tank", floor(scale * 3), /obj/item/ammo_magazine/flamer_tank, VENDOR_ITEM_REGULAR),
list("M41AE2 Box Magazine (10x24mm)", floor(scale * 3), /obj/item/ammo_magazine/rifle/lmg, VENDOR_ITEM_REGULAR),
list("M41A MK1 Magazine (10x24mm)", 4.5, /obj/item/ammo_magazine/rifle/m41aMK1, VENDOR_ITEM_REGULAR),
Expand Down
25 changes: 25 additions & 0 deletions code/game/objects/items/storage/belt.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1134,6 +1134,31 @@
new /obj/item/ammo_magazine/pistol(src)
new /obj/item/ammo_magazine/pistol(src)



/obj/item/storage/belt/gun/m4a3/m47/co/fill_preset_inventory()
handle_item_insertion(new /obj/item/weapon/gun/pistol/m47())
new /obj/item/ammo_magazine/pistol/m47/impact(src)
new /obj/item/ammo_magazine/pistol/m47/impact(src)
new /obj/item/ammo_magazine/pistol/m47/apimpact(src)
new /obj/item/ammo_magazine/pistol/m47/apimpact(src)
new /obj/item/ammo_magazine/pistol/m47/hp(src)
new /obj/item/ammo_magazine/pistol/m47/hp(src)

/obj/item/storage/belt/gun/m4a3/m47/intel/fill_preset_inventory()
handle_item_insertion(new /obj/item/weapon/gun/pistol/m47())
new /obj/item/ammo_magazine/pistol/m47(src)
new /obj/item/ammo_magazine/pistol/m47(src)
new /obj/item/ammo_magazine/pistol/m47(src)
new /obj/item/ammo_magazine/pistol/m47(src)
new /obj/item/ammo_magazine/pistol/m47(src)
new /obj/item/ammo_magazine/pistol/m47(src)

/obj/item/storage/belt/gun/m4a3/m47/foreconco/fill_preset_inventory()
handle_item_insertion(new /obj/item/weapon/gun/pistol/m47())
new /obj/item/ammo_magazine/pistol/m47/impact(src)
new /obj/item/ammo_magazine/pistol/m47/hp(src)

/obj/item/storage/belt/gun/m4a3/mod88/fill_preset_inventory()
handle_item_insertion(new /obj/item/weapon/gun/pistol/mod88())
for(var/i = 1 to storage_slots - 1)
Expand Down
2 changes: 1 addition & 1 deletion code/modules/clothing/glasses/hud.dm
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@
name = "\improper SensorMate HUD"
desc = "A much older heads-up display that displays the last known biometric data from suit sensors of any given individual."
icon_state = "sensorhud"
deactive_state = "sensorhud_d"
deactive_state = "sensorhaud_d"
flags_armor_protection = 0
toggleable = TRUE
hud_type = MOB_HUD_MEDICAL_ADVANCED
Expand Down
9 changes: 9 additions & 0 deletions code/modules/cm_marines/equipment/guncases.dm
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,15 @@
new /obj/item/storage/belt/gun/smartpistol/full_nogun(src)
new /obj/item/weapon/gun/pistol/smart(src)

//-----------
/obj/item/storage/box/guncase/m47a2
name = "\improper M47A2 pistol case"
desc = "A gun case containing the lucrative M47A2 Offensive Handgun."
can_hold = list()
storage_slots = 1

/obj/item/storage/box/guncase/m47a2/fill_preset_inventory()
new /obj/item/storage/belt/gun/m4a3/m47/intel(src)
//------------
/obj/item/storage/box/guncase/mou53
name = "\improper MOU53 shotgun case"
Expand Down
13 changes: 7 additions & 6 deletions code/modules/gear_presets/survivors/lv_522/forcon_survivors.dm
Original file line number Diff line number Diff line change
Expand Up @@ -65,11 +65,16 @@
/datum/equipment_preset/survivor/forecon/proc/add_forecon_weapon_pistol(mob/living/carbon/human/new_human)
var/random_pistol = rand(1,5)
switch(random_pistol)
if(1 , 2)
if(1)
new_human.equip_to_slot_or_del(new /obj/item/storage/belt/gun/m4a3(new_human), WEAR_WAIST)
new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/m1911(new_human), WEAR_IN_BELT)
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m1911(new_human), WEAR_IN_BELT)
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m1911(new_human), WEAR_IN_BELT)
if (2)
new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/m47(new_human), WEAR_WAIST)
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m47(new_human), WEAR_IN_BELT)
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m47(new_human), WEAR_IN_BELT)
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m47(new_human), WEAR_IN_BELT)
if(3 , 4)
new_human.equip_to_slot_or_del(new /obj/item/storage/large_holster/m39, WEAR_WAIST)
new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/m39(new_human), WEAR_IN_BELT)
Expand Down Expand Up @@ -265,11 +270,7 @@
new_human.equip_to_slot_or_del(uniform, WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/windbreaker/windbreaker_green(new_human), WEAR_JACKET)
..()
new_human.equip_to_slot_or_del(new /obj/item/storage/belt/gun/mateba/cmateba(new_human), WEAR_WAIST)
new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/revolver/mateba/cmateba(new_human), WEAR_R_HAND)
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/revolver/mateba(new_human), WEAR_IN_BELT)
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/revolver/mateba(new_human), WEAR_IN_BELT)
new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/revolver/mateba(new_human), WEAR_IN_BELT)
new_human.equip_to_slot_or_del(new /obj/item/storage/belt/gun/m4a3/m47/foreconco(new_human), WEAR_WAIST)
new_human.equip_to_slot_or_del(new /obj/item/device/binoculars/range/designator(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/clothing/mask/cigarette/cigar(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/tool/lighter/zippo/gold(new_human), WEAR_IN_BACK)
Expand Down
7 changes: 3 additions & 4 deletions code/modules/gear_presets/uscm.dm
Original file line number Diff line number Diff line change
Expand Up @@ -242,6 +242,7 @@

new_human.equip_to_slot_or_del(new back_item(new_human), WEAR_BACK)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/intel(new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/storage/belt/gun/m4a3/m47/intel(new_human), WEAR_WAIST)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(new_human), WEAR_FEET)

/datum/equipment_preset/uscm/intel/load_status(mob/living/carbon/human/new_human)
Expand All @@ -256,12 +257,10 @@
utility_under = list(/obj/item/clothing/under/marine/officer/intel)

/datum/equipment_preset/uscm/intel/full/load_gear(mob/living/carbon/human/new_human)

var/obj/item/clothing/under/marine/officer/intel/U = new(new_human)
new_human.equip_to_slot_or_del(U, WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/intel (new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/intel(new_human), WEAR_L_EAR)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/storage/belt/gun/m4a3/vp78(new_human), WEAR_WAIST)
new_human.equip_to_slot_or_del(new /obj/item/storage/belt/gun/m4a3/m47/intel(new_human), WEAR_WAIST)
new_human.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/rto/intel(new_human), WEAR_HEAD)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/marine/medium/rto/intel(src), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/yellow(src), WEAR_HANDS)
Expand Down
2 changes: 2 additions & 0 deletions code/modules/gear_presets/uscm_ship.dm
Original file line number Diff line number Diff line change
Expand Up @@ -445,6 +445,8 @@
if(CO_GUN_MATEBA)
sidearmpath = /obj/item/storage/belt/gun/mateba/cmateba/full
kit = /obj/item/storage/mateba_case/captain
if(CO_GUN_M47)
sidearmpath = /obj/item/storage/belt/gun/m4a3/m47/co/
if(CO_GUN_MATEBA_SPECIAL)
sidearmpath = /obj/item/storage/belt/gun/mateba/cmateba/special
if(CO_GUN_MATEBA_COUNCIL)
Expand Down
2 changes: 2 additions & 0 deletions code/modules/gear_presets/wo.dm
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@
if(CO_GUN_MATEBA)
sidearmpath = /obj/item/storage/belt/gun/mateba/cmateba/full
kit = /obj/item/storage/mateba_case/captain
if(CO_GUN_M47)
sidearmpath = /obj/item/storage/belt/gun/m4a3/m47/co/
if(CO_GUN_MATEBA_SPECIAL)
sidearmpath = /obj/item/storage/belt/gun/mateba/cmateba/special
if(CO_GUN_MATEBA_COUNCIL)
Expand Down
6 changes: 4 additions & 2 deletions code/modules/projectiles/gun.dm
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@
var/empty_sound = 'sound/weapons/smg_empty_alarm.ogg'
//We don't want these for guns that don't have them.
var/reload_sound = null
var/reload_volume = 25
var/cocked_sound = null
///world.time value, to prevent COCK COCK COCK COCK
var/cock_cooldown = 0
Expand Down Expand Up @@ -860,10 +861,11 @@ User can be passed as null, (a gun reloading itself for instance), so we need to
cock_gun(user)
user.visible_message(SPAN_NOTICE("[user] loads [magazine] into [src]!"),
SPAN_NOTICE("You load [magazine] into [src]!"), null, 3, CHAT_TYPE_COMBAT_ACTION)
if(reload_sound)
if((reload_sound && reload_volume))
zc-byte-boxer marked this conversation as resolved.
Show resolved Hide resolved
playsound(user, reload_sound, reload_volume, 1, 5 )
else
playsound(user, reload_sound, 25, 1, 5)


//Drop out the magazine. Keep the ammo type for next time so we don't need to replace it every time.
//This can be passed with a null user, so we need to check for that as well.
/obj/item/weapon/gun/proc/unload(mob/user, reload_override = 0, drop_override = 0, loc_override = 0) //Override for reloading mags after shooting, so it doesn't interrupt burst. Drop is for dropping the magazine on the ground.
Expand Down
36 changes: 36 additions & 0 deletions code/modules/projectiles/guns/pistols.dm
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,42 @@
/obj/item/weapon/gun/pistol/m1911/socom/equipped
starting_attachment_types = list(/obj/item/attachable/suppressor, /obj/item/attachable/lasersight, /obj/item/attachable/reflex)

// A version of the M1911 for COs and FORECON.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Forecom quite literally already spawns with a m1911


/obj/item/weapon/gun/pistol/m47
name = "\improper M47A2 offensive handgun"
desc = "It's hard to keep a classic down. While Armat's M80A3, an update on the 1911 failed to make it into standard adoption during the Marine '70s revitalization, a variant of their handgun was picked up by FORECON and specialized units within the USMC. 14 rounds of .45, extended barrel, and integrated night sights - more than enough features to justify its designation as an 'Offensive Handgun.'"
icon = 'icons/obj/items/weapons/guns/guns_by_faction/uscm.dmi'
icon_state = "m47"
item_state = "m4a3"
fire_sound = 'sound/weapons/gun_m47.ogg'
firesound_volume = 80
reload_sound = 'sound/weapons/reload_m47.ogg'
reload_volume = 70
unload_sound = 'sound/weapons/unload_m47.ogg'
fire_rattle = 'sound/weapons/gun_m47.ogg'
cocked_sound = 'sound/weapons/cocking_m47.ogg'
empty_sound = null
flags_gun_features = GUN_CAN_POINTBLANK|GUN_ONE_HAND_WIELDED|GUN_AUTO_EJECTOR|GUN_AMMO_COUNTER
current_mag = /obj/item/ammo_magazine/pistol/m47


/obj/item/weapon/gun/pistol/m47/set_gun_attachment_offsets()
attachable_offset = list("muzzle_x" = 26, "muzzle_y" = 20,"rail_x" = 12, "rail_y" = 22, "under_x" = 21, "under_y" = 17, "stock_x" = 21, "stock_y" = 17)


/obj/item/weapon/gun/pistol/m47/set_gun_config_values()
..()
set_burst_delay(FIRE_DELAY_TIER_7)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_6
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_8
burst_scatter_mult = SCATTER_AMOUNT_TIER_6
scatter_unwielded = SCATTER_AMOUNT_TIER_6
recoil = RECOIL_AMOUNT_TIER_4
recoil_unwielded = RECOIL_AMOUNT_TIER_3
damage_mult = BASE_BULLET_DAMAGE_MULT + BULLET_DAMAGE_MULT_TIER_4

//-------------------------------------------------------
//Beretta 92FS, the gun McClane carries around in Die Hard. Very similar to the service pistol, all around.

Expand Down
28 changes: 28 additions & 0 deletions code/modules/projectiles/magazines/pistols.dm
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,34 @@
max_rounds = 7
gun_type = /obj/item/weapon/gun/pistol/m1911

//-------------------------------------------------------
//M47

/obj/item/ammo_magazine/pistol/m47
name = "\improper M47A2 Magazine"
default_ammo = /datum/ammo/bullet/pistol/heavy
caliber = ".45"
icon_state = "m47"
max_rounds = 14
gun_type = /obj/item/weapon/gun/pistol/m47

/obj/item/ammo_magazine/pistol/m47/hp
name = "\improper M47A2 Hollowpoint Magazine"
desc = "A pistol magazine. This one contains hollowpoint bullets, which have noticeably higher stopping power on unarmored targets, and noticeably less on armored targets."
default_ammo = /datum/ammo/bullet/pistol/m47/hp
ammo_band_color = AMMO_BAND_COLOR_HOLLOWPOINT

/obj/item/ammo_magazine/pistol/m47/apimpact
name = "\improper M47 Armor-Piercing Impact Magazine"
desc = "A pistol magazine. This one contains armor-piercing bullets, which have noticeably higher stopping power on well-armored targets, and noticeably less on unarmored or lightly-armored targets."
default_ammo = /datum/ammo/bullet/pistol/heavy/m47/apimpact
ammo_band_color = AMMO_BAND_COLOR_AP

/obj/item/ammo_magazine/pistol/m47/impact
name = "\improper M47 High Impact Magazine"
desc = "A pistol magazine. This one contains armor-piercing bullets, which have noticeably higher stopping power on well-armored targets, and noticeably less on unarmored or lightly-armored targets."
default_ammo = /datum/ammo/bullet/pistol/m47/impact
ammo_band_color = AMMO_BAND_COLOR_HIGH_IMPACT

//-------------------------------------------------------
//88M4 based off VP70
Expand Down
Binary file modified icons/obj/items/clothing/belts.dmi
Binary file not shown.
Binary file modified icons/obj/items/weapons/guns/ammo_by_faction/uscm.dmi
Binary file not shown.
Binary file modified icons/obj/items/weapons/guns/guns_by_faction/uscm.dmi
Binary file not shown.
Binary file added sound/weapons/cocking_m47.ogg
Binary file not shown.
Binary file added sound/weapons/gun_m47.ogg
Binary file not shown.
Binary file added sound/weapons/reload_m47.ogg
Binary file not shown.
Binary file added sound/weapons/unload_m47.ogg
Binary file not shown.
Loading