diff --git a/code/datums/components/storage/concrete/pockets.dm b/code/datums/components/storage/concrete/pockets.dm
index 20e1a0a4e2..1e3fff8a17 100644
--- a/code/datums/components/storage/concrete/pockets.dm
+++ b/code/datums/components/storage/concrete/pockets.dm
@@ -57,7 +57,7 @@
/obj/item/reagent_containers/hypospray/medipen, /obj/item/reagent_containers/dropper,
/obj/item/implanter, /obj/item/screwdriver, /obj/item/weldingtool/mini,
/obj/item/firing_pin, /obj/item/gun/ballistic/automatic/pistol, /obj/item/gun/ballistic/automatic/magrifle/pistol,
- /obj/item/toy/plush/snakeplushie, /obj/item/gun/energy/e_gun/mini
+ /obj/item/toy/plush/snakeplushie, /obj/item/gun/energy/e_gun/mini, /obj/item/gun/ballistic/derringer
))
/datum/component/storage/concrete/pockets/shoes/clown/Initialize()
diff --git a/code/game/objects/items/storage/fancy.dm b/code/game/objects/items/storage/fancy.dm
index e73097bf18..f68084d63a 100644
--- a/code/game/objects/items/storage/fancy.dm
+++ b/code/game/objects/items/storage/fancy.dm
@@ -367,7 +367,7 @@
/obj/item/storage/fancy/cigarettes/derringer/AltClick(mob/living/carbon/user)
if(!istype(user) || !user.canUseTopic(src, BE_CLOSE, ismonkey(user)))
return
- var/obj/item/W = (locate(/obj/item/ammo_casing/a357) in contents) || (locate(/obj/item/clothing/mask/cigarette) in contents) || locate(/obj/item/ammo_casing/g4570) //Easy access smokes and bullets
+ var/obj/item/W = (locate(/obj/item/ammo_casing/a357) in contents) || (locate(/obj/item/clothing/mask/cigarette) in contents) ||(locate(/obj/item/gun/ballistic/derringer) in contents) || (locate(/obj/item/ammo_casing/c38) in contents) || locate(/obj/item/ammo_casing/g4570) in contents//Easy access smokes and bullets
if(W && contents.len > 0)
SEND_SIGNAL(src, COMSIG_TRY_STORAGE_TAKE, W, user)
user.put_in_hands(W)
@@ -382,6 +382,7 @@
new /obj/item/ammo_casing/a357(src)
new /obj/item/ammo_casing/a357(src)
new /obj/item/ammo_casing/a357(src)
+ new /obj/item/ammo_casing/a357(src)
new /obj/item/clothing/mask/cigarette/syndicate(src)
//For traitors with luck/class
@@ -404,6 +405,7 @@
new /obj/item/ammo_casing/g4570(src)
new /obj/item/ammo_casing/g4570(src)
new /obj/item/ammo_casing/g4570(src)
+ new /obj/item/ammo_casing/g4570(src)
new /obj/item/clothing/mask/cigarette/xeno(src)
//For Cargomen, looking for a good deal on arms, with no quarrels as to where they're from.
@@ -419,6 +421,7 @@
new /obj/item/ammo_casing/c38/lethal(src)
new /obj/item/ammo_casing/c38/lethal(src)
new /obj/item/ammo_casing/c38/lethal(src)
+ new /obj/item/ammo_casing/c38/lethal(src)
new /obj/item/clothing/mask/cigarette/shadyjims (src)
/////////////
//CIGAR BOX//
diff --git a/code/modules/cargo/packs/armory.dm b/code/modules/cargo/packs/armory.dm
index ed3f274f47..de3e657386 100644
--- a/code/modules/cargo/packs/armory.dm
+++ b/code/modules/cargo/packs/armory.dm
@@ -240,7 +240,6 @@
desc = "Hey kid.. c'mere. Boss says we need to offload these, to any buyer, no questions asked. You pay us, we give you three of these guns, no strings attached. Locks are to ensure they get to PAYING customers."
cost = 2000
contraband = TRUE
- can_private_buy = TRUE
contains = list(/obj/item/storage/fancy/cigarettes/derringer/smuggled,
/obj/item/storage/fancy/cigarettes/derringer/smuggled,
/obj/item/storage/fancy/cigarettes/derringer/smuggled,
diff --git a/code/modules/projectiles/boxes_magazines/ammo_boxes.dm b/code/modules/projectiles/boxes_magazines/ammo_boxes.dm
index 70058801f8..1f1cc10459 100644
--- a/code/modules/projectiles/boxes_magazines/ammo_boxes.dm
+++ b/code/modules/projectiles/boxes_magazines/ammo_boxes.dm
@@ -60,6 +60,13 @@
desc = "Designed to quickly reload revolvers. These rounds are manufactured within extremely tight tolerances, making them easy to show off trickshots with."
ammo_type = /obj/item/ammo_casing/c38/match
+/obj/item/ammo_box/g4570
+ name = "ammo box (.45-70 GOVT)"
+ desc = "Brought to you at great expense,this box contains 10 more .45-70 GOVT bullets."
+ ammo_type = /obj/item/ammo_casing/g4570
+ icon_state = "45box"
+ max_ammo = 10
+
/obj/item/ammo_box/c9mm
name = "ammo box (9mm)"
icon_state = "9mmbox"
diff --git a/code/modules/projectiles/boxes_magazines/internal/derringer.dm b/code/modules/projectiles/boxes_magazines/internal/derringer.dm
index cc86549793..dad8386178 100644
--- a/code/modules/projectiles/boxes_magazines/internal/derringer.dm
+++ b/code/modules/projectiles/boxes_magazines/internal/derringer.dm
@@ -3,28 +3,17 @@
ammo_type = /obj/item/ammo_casing/c38
caliber = "38"
max_ammo = 2
- multiload = FALSE
-
-/obj/item/ammo_box/magazine/internal/derringer/ammo_count(countempties = 1)
- if (!countempties)
- var/boolets = 0
- for(var/obj/item/ammo_casing/bullet in stored_ammo)
- if(bullet.BB)
- boolets++
- return boolets
- else
- return ..()
/obj/item/ammo_box/magazine/internal/derringer/a357
name = "\improper derringer muzzle"
ammo_type = /obj/item/ammo_casing/a357
caliber = "357"
max_ammo = 2
- multiload = FALSE
+ multiload = 0
/obj/item/ammo_box/magazine/internal/derringer/g4570
name = "\improper derringer muzzle"
ammo_type = /obj/item/ammo_casing/g4570
caliber = "45-70g"
max_ammo = 2
- multiload = FALSE
+ multiload = 0
diff --git a/code/modules/projectiles/guns/ballistic/derringer.dm b/code/modules/projectiles/guns/ballistic/derringer.dm
index a88a11b416..47213f17df 100644
--- a/code/modules/projectiles/guns/ballistic/derringer.dm
+++ b/code/modules/projectiles/guns/ballistic/derringer.dm
@@ -3,16 +3,14 @@
desc = "A easily concealable derringer. Uses .38 ammo"
icon = 'icons/obj/guns/projectile.dmi'
icon_state = "derringer"
+ flags_1 = CONDUCT_1
mag_type = /obj/item/ammo_box/magazine/internal/derringer
+ fire_delay = 5
obj_flags = UNIQUE_RENAME
fire_sound = 'sound/weapons/revolvershot.ogg'
casing_ejector = FALSE
w_class = WEIGHT_CLASS_TINY
-/obj/item/gun/ballistic/derringer/Initialize()
- ..()
- transform *= 0.8 //Spriter too lazy to make icons smaller than default revolvers, local coder hacks in solution.
-
/obj/item/gun/ballistic/derringer/get_ammo(countchambered = FALSE, countempties = TRUE)
var/boolets = 0 //legacy var name maturity
if (chambered && countchambered)
@@ -27,7 +25,7 @@
return
var/num_loaded = magazine.attackby(A, user, params, 1)
if(num_loaded)
- to_chat(user, "You load [num_loaded] shell\s into \the [src].")
+ to_chat(user, "You load [num_loaded] bullet\s into \the [src].")
playsound(user, 'sound/weapons/bulletinsert.ogg', 60, 1)
A.update_icon()
update_icon()
diff --git a/code/modules/uplink/uplink_items/uplink_ammo.dm b/code/modules/uplink/uplink_items/uplink_ammo.dm
index 853f6111b2..2ab6c6f490 100644
--- a/code/modules/uplink/uplink_items/uplink_ammo.dm
+++ b/code/modules/uplink/uplink_items/uplink_ammo.dm
@@ -7,6 +7,13 @@
// Ammunition
+/datum/uplink_item/ammo/derringer
+ name = "Ammo Box - .45-70 GOVT"
+ desc = "Contains 10 additional .45-70 GOVT rounds. Caliber is exceedingly rare, and thus, comes at a premium."
+ item = /obj/item/ammo_box/g4570
+ cost = 5
+ include_modes = list(/datum/game_mode/nuclear)
+
/datum/uplink_item/ammo/pistol
name = "10mm Handgun Magazine"
desc = "An additional 8-round 10mm magazine; compatible with the Stechkin Pistol. These rounds \
diff --git a/code/modules/uplink/uplink_items/uplink_stealth.dm b/code/modules/uplink/uplink_items/uplink_stealth.dm
index 673f2ab6ee..63d70b9141 100644
--- a/code/modules/uplink/uplink_items/uplink_stealth.dm
+++ b/code/modules/uplink/uplink_items/uplink_stealth.dm
@@ -49,7 +49,7 @@
name = "Compact Derringer"
desc = "An easily concealable handgun capable of firing .357 rounds. Comes in an inconspicuious packet of cigarettes with additional munitions."
item = /obj/item/storage/fancy/cigarettes/derringer
- cost = 8
+ cost = 6
surplus = 30
/datum/uplink_item/stealthy_weapons/derringerpack/purchase(mob/user, datum/component/uplink/U)
@@ -57,7 +57,7 @@
item = /obj/item/storage/fancy/cigarettes/derringer/gold
..()
-/datum/uplink_item/stalthy_weapons/derringerpack_nukie
+/datum/uplink_item/stealthy_weapons/derringerpack_nukie
name = "Antique Derringer"
desc = "An easy to conceal, yet extremely deadly handgun, capable of firing .45-70 Govt rounds. Comes in a unique pack of cigarettes with additional munitions."
item = /obj/item/storage/fancy/cigarettes/derringer/midworld