[MIRROR] Nukies Update 7: Hats (Also massive uplink standardization, weapon kits and ammo changes) [MDB IGNORE] (#22937)

* Nukies Update 7: Hats (Also massive uplink standardization, weapon kits and ammo changes)

* Update nukeops.dm

* Update clownops.dm

* Modular fixes

---------

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
This commit is contained in:
SkyratBot
2023-08-08 18:38:40 +02:00
committed by GitHub
parent 763d9cf4f3
commit 7c68b51b6c
49 changed files with 1208 additions and 860 deletions

View File

@@ -4698,7 +4698,7 @@
/turf/open/floor/iron/textured, /turf/open/floor/iron/textured,
/area/awaymission/black_mesa/hecu_zone_atrium) /area/awaymission/black_mesa/hecu_zone_atrium)
"ciB" = ( "ciB" = (
/obj/item/ammo_casing/a556/weak, /obj/item/ammo_casing/a277/weak,
/turf/open/floor/iron/textured, /turf/open/floor/iron/textured,
/area/awaymission/black_mesa/black_ops_entrance) /area/awaymission/black_mesa/black_ops_entrance)
"ciK" = ( "ciK" = (
@@ -5592,8 +5592,8 @@
/turf/open/floor/iron/smooth_large, /turf/open/floor/iron/smooth_large,
/area/awaymission/black_mesa/high_security_surgery) /area/awaymission/black_mesa/high_security_surgery)
"dPS" = ( "dPS" = (
/obj/item/ammo_casing/a556/weak, /obj/item/ammo_casing/a277/weak,
/obj/item/ammo_casing/a556/weak, /obj/item/ammo_casing/a277/weak,
/turf/open/floor/iron/textured, /turf/open/floor/iron/textured,
/area/awaymission/black_mesa/black_ops_entrance) /area/awaymission/black_mesa/black_ops_entrance)
"dQa" = ( "dQa" = (

View File

@@ -27,7 +27,7 @@
/area/centcom/basketball) /area/centcom/basketball)
"cz" = ( "cz" = (
/obj/structure/rack, /obj/structure/rack,
/obj/item/gun/ballistic/automatic/sniper_rifle, /obj/item/gun/ballistic/rifle/sniper_rifle,
/turf/open/floor/iron/dark, /turf/open/floor/iron/dark,
/area/centcom/basketball) /area/centcom/basketball)
"dr" = ( "dr" = (

View File

@@ -2088,28 +2088,28 @@
/obj/item/ammo_box/a40mm{ /obj/item/ammo_box/a40mm{
icon_state = "40mm-4" icon_state = "40mm-4"
}, },
/obj/item/ammo_box/magazine/m556{ /obj/item/ammo_box/magazine/m223{
icon_state = "5.56m-30"; icon_state = "5.56m-30";
pixel_x = 2; pixel_x = 2;
pixel_y = 4 pixel_y = 4
}, },
/obj/item/ammo_box/magazine/m556{ /obj/item/ammo_box/magazine/m223{
icon_state = "5.56m-30"; icon_state = "5.56m-30";
pixel_x = 2; pixel_x = 2;
pixel_y = 4 pixel_y = 4
}, },
/obj/item/ammo_box/magazine/m556{ /obj/item/ammo_box/magazine/m223{
icon_state = "5.56m-30" icon_state = "5.56m-30"
}, },
/obj/item/ammo_box/magazine/m556{ /obj/item/ammo_box/magazine/m223{
icon_state = "5.56m-30" icon_state = "5.56m-30"
}, },
/obj/item/ammo_box/magazine/m556{ /obj/item/ammo_box/magazine/m223{
icon_state = "5.56m-30"; icon_state = "5.56m-30";
pixel_x = -2; pixel_x = -2;
pixel_y = -4 pixel_y = -4
}, },
/obj/item/ammo_box/magazine/m556{ /obj/item/ammo_box/magazine/m223{
icon_state = "5.56m-30"; icon_state = "5.56m-30";
pixel_x = -2; pixel_x = -2;
pixel_y = -4 pixel_y = -4
@@ -2475,7 +2475,7 @@
layer = 2.9 layer = 2.9
}, },
/obj/item/storage/belt/military, /obj/item/storage/belt/military,
/obj/item/ammo_box/magazine/mm712x82, /obj/item/ammo_box/magazine/m7mm,
/obj/item/gun/ballistic/automatic/l6_saw, /obj/item/gun/ballistic/automatic/l6_saw,
/turf/open/floor/pod/light, /turf/open/floor/pod/light,
/area/shuttle/sbc_starfury) /area/shuttle/sbc_starfury)

View File

@@ -11,7 +11,7 @@
// Caliber defines: (current count stands at 24) // Caliber defines: (current count stands at 24)
/// The caliber used by the [L6 SAW][/obj/item/gun/ballistic/automatic/l6_saw]. /// The caliber used by the [L6 SAW][/obj/item/gun/ballistic/automatic/l6_saw].
#define CALIBER_712X82MM "mm71282" #define CALIBER_A7MM "a7mm"
/// The caliber used by the [security auto-rifle][/obj/item/gun/ballistic/automatic/wt550]. /// The caliber used by the [security auto-rifle][/obj/item/gun/ballistic/automatic/wt550].
#define CALIBER_46X30MM "4.6x30mm" #define CALIBER_46X30MM "4.6x30mm"
/// The caliber used by the Nanotrasen Saber SMG, PP-95 SMG and Type U3 Uzi. Also used as the default caliber for pistols but only the stechkin APS machine pistol doesn't override it. /// The caliber used by the Nanotrasen Saber SMG, PP-95 SMG and Type U3 Uzi. Also used as the default caliber for pistols but only the stechkin APS machine pistol doesn't override it.
@@ -33,7 +33,7 @@
/// The caliber used by [one revolver variant][/obj/item/gun/ballistic/revolver/nagant]. /// The caliber used by [one revolver variant][/obj/item/gun/ballistic/revolver/nagant].
#define CALIBER_N762 "n762" #define CALIBER_N762 "n762"
/// The caliber used by the the M-90gl Carbine, and NT-ARG 'Boarder'. /// The caliber used by the the M-90gl Carbine, and NT-ARG 'Boarder'.
#define CALIBER_A556 "a556" #define CALIBER_A223 "a223"
/// The caliber used by bolt action rifles. /// The caliber used by bolt action rifles.
#define CALIBER_A762 "a762" #define CALIBER_A762 "a762"
/// The caliber used by shotguns. /// The caliber used by shotguns.

View File

@@ -27,3 +27,5 @@
/// Caliber used by the giant anti materiel rifle in guncargo /// Caliber used by the giant anti materiel rifle in guncargo
#define CALIBER_60STRELA ".60 Strela" #define CALIBER_60STRELA ".60 Strela"
#define CALIBER_A277 "a277"

View File

@@ -173,3 +173,62 @@
/obj/item/storage/backpack/duffelbag/engineering, /obj/item/storage/backpack/duffelbag/engineering,
/obj/item/storage/backpack/duffelbag/clown, /obj/item/storage/backpack/duffelbag/clown,
) )
/obj/effect/spawner/random/clothing/funny_hats
name = "random hat spawner"
icon_state = "hat"
desc = "This is the update that ruined Spacestation 13 forever. I can't believe what the TG Coders have done. \
They've added fucking HATS! HATS!!! In MY competitive-roleplay-action-click-shooter-stabber-against-two-sides-to-detonate-the-payload game? \
This isn't what I signed up for and why I supported this game! My game is chugging with every update to this stupid project and \
I can't fucking stand it anymore. And instead of fixing the bugs or getting rid of the exploits, they just keep adding more \
fucking hats so that the dumbasses that keep feeding into the coders bullshit will eat it up and ignore the glaring problems with it. \
They've stopped caring. We've not had a REAL update in almost 5 years of development! Just removals! It's been all downhill since cloning and stuns were removed. \
And frankly, I don't know what to do. There isn't any other competitive-roleplay-action-click-shooter-stabber-against-two-sides-to-detonate-the-payload game \
out there that isn't trying to get my donator money just so I can have a single sprite added to the game and autoequipped to my character. \
Next thing you know, the coders are going to have us PAY for these goddamn pixels on our character! Imagine having to pay for extra pixels! \
I'm fucking DONE WITH THIS GAME! I'M THROUGH WITH THIS SHIT! FUCK THE CODERS! I JUST WANT TO PLAY MY COMPETITIVE-ROLEPLAY-ACTION-\
CLICK-SHOOTER-STABBER-AGAINST-TWO-SIDES-TO-DETONATE-THE-PAYLOAD GAME THAT ISN'T DRAGGED DOWN BY HORRIBLE ADMINS THAT BAN ME WHEN I SAY \
CERTAIN WORDS THAT I AM ENTITLED TO SAY ON THE INTERNET! I'M THROUGH WITH THIS! I'M GOING TO GO PLAY A PURE, GENUINE GAME. WITH NO FUCKING HATS!"
loot = list(
/obj/item/clothing/head/costume/powdered_wig,
/obj/item/clothing/head/costume/cueball,
/obj/item/clothing/head/costume/snowman,
/obj/item/clothing/head/costume/witchwig,
/obj/item/clothing/head/costume/maidheadband,
/obj/item/clothing/head/costume/chicken,
/obj/item/clothing/head/costume/griffin,
/obj/item/clothing/head/costume/xenos,
/obj/item/clothing/head/costume/lobsterhat,
/obj/item/clothing/head/costume/cardborg,
/obj/item/clothing/head/costume/football_helmet,
/obj/item/clothing/head/costume/tv_head/fov_less,
/obj/item/clothing/head/costume/tmc,
/obj/item/clothing/head/costume/deckers,
/obj/item/clothing/head/costume/yuri,
/obj/item/clothing/head/costume/allies,
/obj/item/clothing/head/frenchberet,
/obj/item/clothing/head/costume/crown,
/obj/item/clothing/head/fedora,
/obj/item/clothing/head/beanie/red,
/obj/item/clothing/head/beanie/darkblue,
/obj/item/clothing/head/rasta,
/obj/item/clothing/head/costume/constable,
/obj/item/clothing/head/bio_hood/plague,
/obj/item/clothing/head/costume/nursehat,
/obj/item/clothing/head/hats/bowler,
/obj/item/clothing/head/costume/bearpelt,
/obj/item/clothing/head/flatcap,
/obj/item/clothing/head/cowboy,
/obj/item/clothing/head/costume/rice_hat,
/obj/item/clothing/head/costume/pharaoh,
/obj/item/clothing/head/costume/delinquent,
/obj/item/clothing/head/costume/jackbros,
/obj/item/clothing/head/costume/ushanka,
/obj/item/clothing/head/costume/nightcap/blue,
/obj/item/clothing/head/costume/nightcap/red,
/obj/item/clothing/head/mothcap,
/obj/item/clothing/head/cone,
/obj/item/clothing/head/collectable/petehat,
/obj/item/clothing/head/collectable/wizard,
/obj/item/clothing/head/wizard/marisa/fake,
)

View File

@@ -714,23 +714,6 @@
icon_state = "duffel-syndieammo" icon_state = "duffel-syndieammo"
inhand_icon_state = "duffel-syndieammo" inhand_icon_state = "duffel-syndieammo"
/obj/item/storage/backpack/duffelbag/syndie/ammo/shotgun
desc = "A large duffel bag, packed to the brim with Bulldog shotgun magazines."
/obj/item/storage/backpack/duffelbag/syndie/ammo/shotgun/PopulateContents()
for(var/i in 1 to 6)
new /obj/item/ammo_box/magazine/m12g(src)
new /obj/item/ammo_box/magazine/m12g/slug(src)
new /obj/item/ammo_box/magazine/m12g/slug(src)
new /obj/item/ammo_box/magazine/m12g/dragon(src)
/obj/item/storage/backpack/duffelbag/syndie/ammo/smg
desc = "A large duffel bag, packed to the brim with C-20r magazines."
/obj/item/storage/backpack/duffelbag/syndie/ammo/smg/PopulateContents()
for(var/i in 1 to 9)
new /obj/item/ammo_box/magazine/smgm45(src)
/obj/item/storage/backpack/duffelbag/syndie/ammo/mech /obj/item/storage/backpack/duffelbag/syndie/ammo/mech
desc = "A large duffel bag, packed to the brim with various exosuit ammo." desc = "A large duffel bag, packed to the brim with various exosuit ammo."
@@ -755,24 +738,6 @@
new /obj/item/mecha_ammo/missiles_srm(src) new /obj/item/mecha_ammo/missiles_srm(src)
new /obj/item/mecha_ammo/missiles_srm(src) new /obj/item/mecha_ammo/missiles_srm(src)
/obj/item/storage/backpack/duffelbag/syndie/c20rbundle
desc = "A large duffel bag containing a C-20r, some magazines, and a cheap looking suppressor."
/obj/item/storage/backpack/duffelbag/syndie/c20rbundle/PopulateContents()
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/ammo_box/magazine/smgm45(src)
new /obj/item/gun/ballistic/automatic/c20r(src)
new /obj/item/suppressor(src)
/obj/item/storage/backpack/duffelbag/syndie/bulldogbundle
desc = "A large duffel bag containing a Bulldog, some drums, and a pair of thermal imaging glasses."
/obj/item/storage/backpack/duffelbag/syndie/bulldogbundle/PopulateContents()
new /obj/item/gun/ballistic/shotgun/bulldog(src)
new /obj/item/ammo_box/magazine/m12g(src)
new /obj/item/ammo_box/magazine/m12g(src)
new /obj/item/clothing/glasses/thermal/syndi(src)
/obj/item/storage/backpack/duffelbag/syndie/med/medicalbundle /obj/item/storage/backpack/duffelbag/syndie/med/medicalbundle
desc = "A large duffel bag containing a medical equipment, a Donksoft LMG, a big jumbo box of riot darts, and a magboot MODsuit module." desc = "A large duffel bag containing a medical equipment, a Donksoft LMG, a big jumbo box of riot darts, and a magboot MODsuit module."

View File

@@ -643,11 +643,10 @@
/obj/item/storage/belt/grenade/full/PopulateContents() /obj/item/storage/belt/grenade/full/PopulateContents()
generate_items_inside(list( generate_items_inside(list(
/obj/item/grenade/chem_grenade/facid = 1,
/obj/item/grenade/chem_grenade/incendiary = 2, /obj/item/grenade/chem_grenade/incendiary = 2,
/obj/item/grenade/empgrenade = 2, /obj/item/grenade/empgrenade = 2,
/obj/item/grenade/frag = 10, /obj/item/grenade/frag = 10,
/obj/item/grenade/flashbang = 1, /obj/item/grenade/flashbang = 2,
/obj/item/grenade/gluon = 4, /obj/item/grenade/gluon = 4,
/obj/item/grenade/smokebomb = 4, /obj/item/grenade/smokebomb = 4,
/obj/item/grenade/syndieminibomb = 2, /obj/item/grenade/syndieminibomb = 2,

View File

@@ -60,7 +60,7 @@
user.visible_message(span_suicide("[user] looks overwhelmed with paperwork! It looks like [user.p_theyre()] trying to commit suicide!")) user.visible_message(span_suicide("[user] looks overwhelmed with paperwork! It looks like [user.p_theyre()] trying to commit suicide!"))
return OXYLOSS return OXYLOSS
/obj/item/storage/briefcase/sniperbundle /obj/item/storage/briefcase/sniper
desc = "Its label reads \"genuine hardened Captain leather\", but suspiciously has no other tags or branding. Smells like L'Air du Temps." desc = "Its label reads \"genuine hardened Captain leather\", but suspiciously has no other tags or branding. Smells like L'Air du Temps."
force = 10 force = 10
@@ -69,6 +69,6 @@
new /obj/item/gun/ballistic/rifle/sniper_rifle/syndicate(src) new /obj/item/gun/ballistic/rifle/sniper_rifle/syndicate(src)
new /obj/item/clothing/neck/tie/red/hitman(src) new /obj/item/clothing/neck/tie/red/hitman(src)
new /obj/item/clothing/under/syndicate/sniper(src) new /obj/item/clothing/under/syndicate/sniper(src)
new /obj/item/ammo_box/magazine/sniper_rounds(src)
new /obj/item/ammo_box/magazine/sniper_rounds(src)
new /obj/item/ammo_box/magazine/sniper_rounds/disruptor(src) new /obj/item/ammo_box/magazine/sniper_rounds/disruptor(src)
new /obj/item/ammo_box/magazine/sniper_rounds/disruptor(src)
new /obj/item/suppressor(src)

View File

@@ -315,24 +315,136 @@
name = "old toolbox" name = "old toolbox"
custom_materials = list(/datum/material/hauntium = SMALL_MATERIAL_AMOUNT*5) custom_materials = list(/datum/material/hauntium = SMALL_MATERIAL_AMOUNT*5)
/obj/item/storage/toolbox/mosincase /obj/item/storage/toolbox/guncase
name = "ancient gun case" name = "gun case"
desc = "A weapon's case. Has the symbol of the Third Soviet Union stamped on the side." desc = "A weapon's case. Has a blood-red 'S' stamped on the cover."
icon = 'icons/obj/storage/case.dmi' icon = 'icons/obj/storage/case.dmi'
icon_state = "mosin_case" icon_state = "infiltrator_case"
lefthand_file = 'icons/mob/inhands/equipment/toolbox_lefthand.dmi' lefthand_file = 'icons/mob/inhands/equipment/toolbox_lefthand.dmi'
righthand_file = 'icons/mob/inhands/equipment/toolbox_righthand.dmi' righthand_file = 'icons/mob/inhands/equipment/toolbox_righthand.dmi'
inhand_icon_state = "mosin_case" inhand_icon_state = "infiltrator_case"
has_latches = FALSE has_latches = FALSE
var/weapon_to_spawn = /obj/item/gun/ballistic/automatic/pistol
var/extra_to_spawn = /obj/item/ammo_box/magazine/m9mm
/obj/item/storage/toolbox/mosincase/Initialize(mapload) /obj/item/storage/toolbox/guncase/Initialize(mapload)
. = ..() . = ..()
atom_storage.max_specific_storage = WEIGHT_CLASS_BULKY atom_storage.max_specific_storage = WEIGHT_CLASS_BULKY
atom_storage.max_total_storage = 7 //enough to hold ONE mosin and the ammo boxes atom_storage.max_total_storage = 7 //enough to hold ONE bulky gun and the ammo boxes
atom_storage.max_slots = 4 atom_storage.max_slots = 4
/obj/item/storage/toolbox/mosincase/PopulateContents() /obj/item/storage/toolbox/guncase/PopulateContents()
new /obj/effect/spawner/random/mosin (src) new weapon_to_spawn (src)
for(var/i in 1 to 3) for(var/i in 1 to 3)
new /obj/effect/spawner/random/mosin/ammo (src) new extra_to_spawn (src)
/obj/item/storage/toolbox/guncase/bulldog
name = "bulldog gun case"
weapon_to_spawn = /obj/item/gun/ballistic/shotgun/bulldog
extra_to_spawn = /obj/item/ammo_box/magazine/m12g
/obj/item/storage/toolbox/guncase/c20r
name = "c-20r gun case"
weapon_to_spawn = /obj/item/gun/ballistic/automatic/c20r
extra_to_spawn = /obj/item/ammo_box/magazine/smgm45
/obj/item/storage/toolbox/guncase/clandestine
name = "clandestine gun case"
weapon_to_spawn = /obj/item/gun/ballistic/automatic/pistol/clandestine
extra_to_spawn = /obj/item/ammo_box/magazine/m10mm
/obj/item/storage/toolbox/guncase/m90gl
name = "m-90gl gun case"
weapon_to_spawn = /obj/item/gun/ballistic/automatic/m90
extra_to_spawn = /obj/item/ammo_box/magazine/m223
/obj/item/storage/toolbox/guncase/m90gl/PopulateContents()
new weapon_to_spawn (src)
for(var/i in 1 to 2)
new extra_to_spawn (src)
new /obj/item/ammo_box/a40mm/rubber (src)
/obj/item/storage/toolbox/guncase/rocketlauncher
name = "rocket launcher gun case"
weapon_to_spawn = /obj/item/gun/ballistic/rocketlauncher
extra_to_spawn = /obj/item/ammo_box/rocket
/obj/item/storage/toolbox/guncase/rocketlauncher/PopulateContents()
new weapon_to_spawn (src)
new extra_to_spawn (src)
/obj/item/storage/toolbox/guncase/revolver
name = "revolver gun case"
weapon_to_spawn = /obj/item/gun/ballistic/revolver/syndicate
extra_to_spawn = /obj/item/ammo_box/a357
/obj/item/storage/toolbox/guncase/sword_and_board
name = "energy sword and shield weapon case"
weapon_to_spawn = /obj/item/melee/energy/sword
extra_to_spawn = /obj/item/shield/energy
/obj/item/storage/toolbox/guncase/sword_and_board/PopulateContents()
new weapon_to_spawn (src)
new extra_to_spawn (src)
new /obj/item/mod/module/hat_stabilizer (src)
new /obj/item/clothing/head/costume/knight (src)
/obj/item/storage/toolbox/guncase/cqc
name = "\improper CQC equipment case"
weapon_to_spawn = /obj/item/book/granter/martial/cqc
extra_to_spawn = /obj/item/storage/box/syndie_kit/imp_stealth
/obj/item/storage/toolbox/guncase/cqc/PopulateContents()
new weapon_to_spawn (src)
new extra_to_spawn (src)
new /obj/item/mod/module/hat_stabilizer (src)
new /obj/item/clothing/head/costume/snakeeater (src)
/obj/item/clothing/head/costume/snakeeater
name = "strange bandana"
desc = "A bandana. It seems to have a little carp embroidered on the inside, as well as the kanji '魚'."
icon_state = "snake_eater"
inhand_icon_state = null
/obj/item/clothing/head/costume/knight
name = "fake medieval helmet"
desc = "A classic metal helmet. Though, this one seems to be very obviously fake..."
icon = 'icons/obj/clothing/head/helmet.dmi'
worn_icon = 'icons/mob/clothing/head/helmet.dmi'
icon_state = "knight_green"
inhand_icon_state = "knight_helmet"
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDESNOUT
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
dog_fashion = null
/obj/item/storage/toolbox/guncase/doublesword
name = "double-energy sword weapon case"
weapon_to_spawn = /obj/item/dualsaber
extra_to_spawn = /obj/item/soap/syndie
/obj/item/storage/toolbox/guncase/doublesword/Initialize(mapload)
. = ..()
atom_storage.max_specific_storage = WEIGHT_CLASS_BULKY
atom_storage.max_total_storage = 10 //it'll hold enough
atom_storage.max_slots = 5
/obj/item/storage/toolbox/guncase/doublesword/PopulateContents()
new weapon_to_spawn (src)
new extra_to_spawn (src)
new /obj/item/mod/module/noslip (src)
new /obj/item/reagent_containers/hypospray/medipen/methamphetamine (src)
new /obj/item/clothing/under/rank/prisoner/nosensor (src)
/obj/item/storage/toolbox/guncase/soviet
name = "ancient gun case"
desc = "A weapon's case. Has the symbol of the Third Soviet Union stamped on the side."
icon_state = "mosin_case"
inhand_icon_state = "mosin_case"
weapon_to_spawn = /obj/effect/spawner/random/mosin
extra_to_spawn = /obj/effect/spawner/random/mosin/ammo
/obj/item/storage/toolbox/guncase/soviet/plastikov
name = "ancient surplus gun case"
desc = "A gun case. Has the symbol of the Third Soviet Union stamped on the side."
weapon_to_spawn = /obj/item/gun/ballistic/automatic/plastikov
extra_to_spawn = /obj/item/food/rationpack //sorry comrade, cannot get you more ammo, here, have lunch

View File

@@ -588,19 +588,30 @@
for(var/i in 1 to 3) for(var/i in 1 to 3)
new /obj/item/grenade/spawnergrenade/buzzkill(src) new /obj/item/grenade/spawnergrenade/buzzkill(src)
/obj/item/storage/box/syndie_kit/manhack_grenades/PopulateContents()
for(var/i in 1 to 3)
new /obj/item/grenade/spawnergrenade/manhacks(src)
/obj/item/storage/box/syndie_kit/sleepytime/PopulateContents() /obj/item/storage/box/syndie_kit/sleepytime/PopulateContents()
new /obj/item/clothing/under/syndicate/bloodred/sleepytime(src) new /obj/item/clothing/under/syndicate/bloodred/sleepytime(src)
new /obj/item/reagent_containers/cup/glass/mug/coco(src) new /obj/item/reagent_containers/cup/glass/mug/coco(src)
new /obj/item/toy/plush/carpplushie(src) new /obj/item/toy/plush/carpplushie(src)
new /obj/item/bedsheet/syndie(src) new /obj/item/bedsheet/syndie(src)
/obj/item/storage/box/syndie_kit/demoman/PopulateContents()
new /obj/item/gun/grenadelauncher(src)
new /obj/item/storage/belt/grenade/full(src)
if(prob(1))
new /obj/item/clothing/head/hats/hos/shako(src)
new /obj/item/mod/module/hat_stabilizer(src)
/// Surplus Ammo Box /// Surplus Ammo Box
/obj/item/storage/box/syndie_kit/surplus /obj/item/storage/box/syndie_kit/sniper_surplus
name = "surplus .50 BMG magazine box" name = "surplus .50 BMG magazine box"
desc = "A shoddy box full of surplus .50 BMG magazines. Not as strong, but good enough to keep lead in the air." desc = "A shoddy box full of surplus .50 BMG magazines. Not as strong, but good enough to keep lead in the air."
/obj/item/storage/box/syndie_kit/surplus/PopulateContents() /obj/item/storage/box/syndie_kit/sniper_surplus/PopulateContents()
for(var/i in 1 to 7) for(var/i in 1 to 7)
new /obj/item/ammo_box/magazine/sniper_rounds/surplus(src) new /obj/item/ammo_box/magazine/sniper_rounds/surplus(src)

View File

@@ -55,3 +55,18 @@
to_chat(user, span_warning("You need a crowbar to pry this open!")) to_chat(user, span_warning("You need a crowbar to pry this open!"))
return FALSE //Just stop. Do nothing. Don't turn into an invisible sprite. Don't open like a locker. return FALSE //Just stop. Do nothing. Don't turn into an invisible sprite. Don't open like a locker.
//The large crate has no non-attack interactions other than the crowbar, anyway. //The large crate has no non-attack interactions other than the crowbar, anyway.
/obj/structure/closet/crate/large/hats/PopulateContents()
..()
for (var/i in 1 to 5)
new /obj/effect/spawner/random/clothing/funny_hats(src)
for (var/i in 1 to 5)
new /obj/item/mod/module/hat_stabilizer(src)
if(prob(1))
var/our_contents = list()
for(var/obj/item/clothing/head/any_hat in contents)
our_contents[any_hat]++
if(our_contents)
var/obj/item/clothing/head/lucky_hat = pick(our_contents)
lucky_hat.AddComponent(/datum/component/unusual_effect, color = "#FFEA0030", include_particles = TRUE)
lucky_hat.name = "unusual [name]"

View File

@@ -224,7 +224,7 @@
/obj/item/clothing/mask/russian_balaclava, /obj/item/clothing/mask/russian_balaclava,
/obj/item/clothing/head/helmet/rus_ushanka, /obj/item/clothing/head/helmet/rus_ushanka,
/obj/item/clothing/suit/armor/vest/russian_coat, /obj/item/clothing/suit/armor/vest/russian_coat,
/obj/item/storage/toolbox/mosincase = 2, /obj/item/storage/toolbox/guncase/soviet = 2,
) )
/datum/supply_pack/imports/russian/fill(obj/structure/closet/crate/our_crate) /datum/supply_pack/imports/russian/fill(obj/structure/closet/crate/our_crate)

View File

@@ -229,7 +229,7 @@
/obj/item/clothing/under/rank/prisoner /obj/item/clothing/under/rank/prisoner
name = "prison jumpsuit" name = "prison jumpsuit"
desc = "It's standardised Nanotrasen prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position." desc = "Standardised Nanotrasen prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position."
icon_state = "jumpsuit" icon_state = "jumpsuit"
icon_preview = 'icons/obj/fluff/previews.dmi' icon_preview = 'icons/obj/fluff/previews.dmi'
icon_state_preview = "prisonsuit" icon_state_preview = "prisonsuit"
@@ -244,9 +244,14 @@
sensor_mode = SENSOR_COORDS sensor_mode = SENSOR_COORDS
random_sensor = FALSE random_sensor = FALSE
/obj/item/clothing/under/rank/prisoner/nosensor
desc = "Standardised Nanotrasen prisoner-wear. Its suit sensors are stuck in the \"OFF\" position."
has_sensor = NO_SENSORS
sensor_mode = SENSOR_OFF
/obj/item/clothing/under/rank/prisoner/skirt /obj/item/clothing/under/rank/prisoner/skirt
name = "prison jumpskirt" name = "prison jumpskirt"
desc = "It's standardised Nanotrasen prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position." desc = "Standardised Nanotrasen prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position."
icon_state = "jumpskirt" icon_state = "jumpskirt"
icon_preview = 'icons/obj/fluff/previews.dmi' icon_preview = 'icons/obj/fluff/previews.dmi'
icon_state_preview = "prisonskirt" icon_state_preview = "prisonskirt"

View File

@@ -136,7 +136,7 @@ GLOBAL_VAR_INIT(fscpassword, generate_password())
rapid_melee = 1 rapid_melee = 1
retreat_distance = 2 retreat_distance = 2
minimum_distance = 4 minimum_distance = 4
casingtype = /obj/item/ammo_casing/a556/weak casingtype = /obj/item/ammo_casing/a223/weak
projectilesound = 'sound/weapons/gun/smg/shot.ogg' projectilesound = 'sound/weapons/gun/smg/shot.ogg'
loot = list(/obj/effect/mob_spawn/corpse/human/nanotrasenassaultsoldier) loot = list(/obj/effect/mob_spawn/corpse/human/nanotrasenassaultsoldier)
mob_spawner = /obj/effect/mob_spawn/corpse/human/nanotrasenassaultsoldier mob_spawner = /obj/effect/mob_spawn/corpse/human/nanotrasenassaultsoldier

View File

@@ -1,33 +1,33 @@
// 7.12x82mm (SAW) // 7mm (SAW)
/obj/item/ammo_casing/mm712x82 /obj/item/ammo_casing/m7mm
name = "7.12x82mm bullet casing" name = "7mm bullet casing"
desc = "A 7.12x82mm bullet casing." desc = "A 7mm bullet casing."
icon_state = "762-casing" icon_state = "762-casing"
caliber = CALIBER_712X82MM caliber = CALIBER_A7MM
projectile_type = /obj/projectile/bullet/mm712x82 projectile_type = /obj/projectile/bullet/a7mm
/obj/item/ammo_casing/mm712x82/ap /obj/item/ammo_casing/m7mm/ap
name = "7.12x82mm armor-piercing bullet casing" name = "7mm armor-piercing bullet casing"
desc = "A 7.12x82mm bullet casing designed with a hardened-tipped core to help penetrate armored targets." desc = "A 7mm bullet casing designed with a hardened-tipped core to help penetrate armored targets."
projectile_type = /obj/projectile/bullet/mm712x82/ap projectile_type = /obj/projectile/bullet/a7mm/ap
/obj/item/ammo_casing/mm712x82/hollow /obj/item/ammo_casing/m7mm/hollow
name = "7.12x82mm hollow-point bullet casing" name = "7mm hollow-point bullet casing"
desc = "A 7.12x82mm bullet casing designed to cause more damage to unarmored targets." desc = "A 7mm bullet casing designed to cause more damage to unarmored targets."
projectile_type = /obj/projectile/bullet/mm712x82/hp projectile_type = /obj/projectile/bullet/a7mm/hp
/obj/item/ammo_casing/mm712x82/incen /obj/item/ammo_casing/m7mm/incen
name = "7.12x82mm incendiary bullet casing" name = "7mm incendiary bullet casing"
desc = "A 7.12x82mm bullet casing designed with a chemical-filled capsule on the tip that when bursted, reacts with the atmosphere to produce a fireball, engulfing the target in flames." desc = "A 7mm bullet casing designed with a chemical-filled capsule on the tip that when bursted, reacts with the atmosphere to produce a fireball, engulfing the target in flames."
projectile_type = /obj/projectile/bullet/incendiary/mm712x82 projectile_type = /obj/projectile/bullet/incendiary/a7mm
/obj/item/ammo_casing/mm712x82/match /obj/item/ammo_casing/m7mm/match
name = "7.12x82mm match bullet casing" name = "7mm match bullet casing"
desc = "A 7.12x82mm bullet casing manufactured to unfailingly high standards, you could pull off some cool trickshots with this." desc = "A 7mm bullet casing manufactured to unfailingly high standards, you could pull off some cool trickshots with this."
projectile_type = /obj/projectile/bullet/mm712x82/match projectile_type = /obj/projectile/bullet/a7mm/match
/obj/item/ammo_casing/mm712x82/bouncy /obj/item/ammo_casing/m7mm/bouncy
name = "7.12x82mm rubber bullet casing" name = "7mm rubber bullet casing"
desc = "A 7.12x82mm rubber bullet casing manufactured to unfailingly disastrous standards, you could piss off a lot of people spraying this down a hallway." desc = "A 7mm rubber bullet casing manufactured to unfailingly disastrous standards, you could piss off a lot of people spraying this down a hallway."
projectile_type = /obj/projectile/bullet/mm712x82/bouncy projectile_type = /obj/projectile/bullet/a7mm/bouncy

View File

@@ -14,6 +14,14 @@
desc = "A .357 bullet casing, manufactured to exceedingly high standards." desc = "A .357 bullet casing, manufactured to exceedingly high standards."
projectile_type = /obj/projectile/bullet/a357/match projectile_type = /obj/projectile/bullet/a357/match
/obj/item/ammo_casing/a357/phasic
name = ".357 phasic bullet casing"
projectile_type = /obj/projectile/bullet/a357/phasic
/obj/item/ammo_casing/a357/heartseeker
name = ".357 heartseeker bullet casing"
projectile_type = /obj/projectile/bullet/a357/heartseeker
// 7.62x38mmR (Nagant Revolver) // 7.62x38mmR (Nagant Revolver)
/obj/item/ammo_casing/n762 /obj/item/ammo_casing/n762

View File

@@ -15,21 +15,21 @@
/obj/item/ammo_casing/a762/enchanted /obj/item/ammo_casing/a762/enchanted
projectile_type = /obj/projectile/bullet/a762/enchanted projectile_type = /obj/projectile/bullet/a762/enchanted
// 5.56mm (M-90gl Carbine) // .223 (M-90gl Carbine)
/obj/item/ammo_casing/a556 /obj/item/ammo_casing/a223
name = "5.56mm bullet casing" name = ".223 bullet casing"
desc = "A 5.56mm bullet casing." desc = "A .223 bullet casing."
caliber = CALIBER_A556 caliber = CALIBER_A223
projectile_type = /obj/projectile/bullet/a556 projectile_type = /obj/projectile/bullet/a223
/obj/item/ammo_casing/a556/phasic /obj/item/ammo_casing/a223/phasic
name = "5.56mm phasic bullet casing" name = ".223 phasic bullet casing"
desc = "A 5.56mm phasic bullet casing." desc = "A .223 phasic bullet casing."
projectile_type = /obj/projectile/bullet/a556/phasic projectile_type = /obj/projectile/bullet/a223/phasic
/obj/item/ammo_casing/a556/weak /obj/item/ammo_casing/a223/weak
projectile_type = /obj/projectile/bullet/a556/weak projectile_type = /obj/projectile/bullet/a223/weak
// 40mm (Grenade Launcher) // 40mm (Grenade Launcher)
@@ -39,3 +39,8 @@
caliber = CALIBER_40MM caliber = CALIBER_40MM
icon_state = "40mmHE" icon_state = "40mmHE"
projectile_type = /obj/projectile/bullet/a40mm projectile_type = /obj/projectile/bullet/a40mm
/obj/item/ammo_casing/a40mm/rubber
name = "40mm rubber shell"
desc = "A cased rubber slug. The big brother of the beanbag slug, this thing will knock someone out in one. Doesn't do so great against anyone in armor."
projectile_type = /obj/projectile/bullet/shotgun_beanbag/a40mm

View File

@@ -32,6 +32,11 @@
desc = "A .45 bullet casing." desc = "A .45 bullet casing."
projectile_type = /obj/projectile/bullet/c45/ap projectile_type = /obj/projectile/bullet/c45/ap
/obj/item/ammo_casing/c45/hp
name = ".45 hollow point bullet casing"
desc = "A .45 bullet casing."
projectile_type = /obj/projectile/bullet/c45/hp
/obj/item/ammo_casing/c45/inc /obj/item/ammo_casing/c45/inc
name = ".45 incendiary bullet casing" name = ".45 incendiary bullet casing"
desc = "A .45 bullet casing." desc = "A .45 bullet casing."

View File

@@ -6,11 +6,28 @@
max_ammo = 7 max_ammo = 7
multiple_sprites = AMMO_BOX_PER_BULLET multiple_sprites = AMMO_BOX_PER_BULLET
item_flags = NO_MAT_REDEMPTION item_flags = NO_MAT_REDEMPTION
ammo_band_icon = "+357_ammo_band"
ammo_band_color = null
/obj/item/ammo_box/a357/match /obj/item/ammo_box/a357/match
name = "speed loader (.357 Match)" name = "speed loader (.357 Match)"
desc = "Designed to quickly reload revolvers. These rounds are manufactured within extremely tight tolerances, making them easy to show off trickshots with." 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/a357/match ammo_type = /obj/item/ammo_casing/a357/match
ammo_band_color = "#77828a"
/obj/item/ammo_box/a357/phasic
name = "speed loader (.357 Phasic)"
desc = "Designed to quickly reload revolvers. Holds phasic ammo, also known as 'Ghost Lead', allowing it to pass through non-organic material."
ammo_type = /obj/item/ammo_casing/a357/phasic
ammo_band_color = "#693a6a"
/obj/item/ammo_box/a357/heartseeker
name = "speed loader (.357 Heartseeker)"
desc = "Designed to quickly reload revolvers. Holds heartseeker ammo, which veers into targets with exceptional precision using \
an unknown method. It apparently predicts movement using neural pulses in the brain, but that's less marketable. \
As seen in the hit NTFlik horror-space western film, Forget-Me-Not! Brought to you by Roseus Galactic!"
ammo_type = /obj/item/ammo_casing/a357/heartseeker
ammo_band_color = "#a91e1e"
/obj/item/ammo_box/c38 /obj/item/ammo_box/c38
name = "speed loader (.38)" name = "speed loader (.38)"
@@ -84,6 +101,20 @@
max_ammo = 4 max_ammo = 4
multiple_sprites = AMMO_BOX_PER_BULLET multiple_sprites = AMMO_BOX_PER_BULLET
/obj/item/ammo_box/a40mm/rubber
name = "ammo box (40mm rubber slug)"
ammo_type = /obj/item/ammo_casing/a40mm/rubber
/obj/item/ammo_box/rocket
name = "rocket bouquet (84mm HE)"
icon_state = "rocketbundle"
ammo_type = /obj/item/ammo_casing/rocket
max_ammo = 3
multiple_sprites = AMMO_BOX_PER_BULLET
/obj/item/ammo_box/rocket/can_load(mob/user)
return FALSE
/obj/item/ammo_box/a762 /obj/item/ammo_box/a762
name = "stripper clip (7.62mm)" name = "stripper clip (7.62mm)"
desc = "A stripper clip." desc = "A stripper clip."

View File

@@ -1,34 +1,34 @@
/obj/item/ammo_box/magazine/mm712x82 /obj/item/ammo_box/magazine/m7mm
name = "box magazine (7.12x82mm)" name = "box magazine (7mm)"
icon_state = "a762-50" icon_state = "a7mm-50"
ammo_type = /obj/item/ammo_casing/mm712x82 ammo_type = /obj/item/ammo_casing/m7mm
caliber = CALIBER_712X82MM caliber = CALIBER_A7MM
max_ammo = 50 max_ammo = 50
/obj/item/ammo_box/magazine/mm712x82/hollow /obj/item/ammo_box/magazine/m7mm/hollow
name = "box magazine (Hollow-Point 7.12x82mm)" name = "box magazine (Hollow-Point 7mm)"
ammo_type = /obj/item/ammo_casing/mm712x82/hollow ammo_type = /obj/item/ammo_casing/m7mm/hollow
/obj/item/ammo_box/magazine/mm712x82/ap /obj/item/ammo_box/magazine/m7mm/ap
name = "box magazine (Armor Penetrating 7.12x82mm)" name = "box magazine (Armor Penetrating 7mm)"
ammo_type = /obj/item/ammo_casing/mm712x82/ap ammo_type = /obj/item/ammo_casing/m7mm/ap
/obj/item/ammo_box/magazine/mm712x82/incen /obj/item/ammo_box/magazine/m7mm/incen
name = "box magazine (Incendiary 7.12x82mm)" name = "box magazine (Incendiary 7mm)"
ammo_type = /obj/item/ammo_casing/mm712x82/incen ammo_type = /obj/item/ammo_casing/m7mm/incen
/obj/item/ammo_box/magazine/mm712x82/match /obj/item/ammo_box/magazine/m7mm/match
name = "box magazine (Match 7.12x82mm)" name = "box magazine (Match 7mm)"
ammo_type = /obj/item/ammo_casing/mm712x82/match ammo_type = /obj/item/ammo_casing/m7mm/match
/obj/item/ammo_box/magazine/mm712x82/bouncy /obj/item/ammo_box/magazine/m7mm/bouncy
name = "box magazine (Rubber 7.12x82mm)" name = "box magazine (Rubber 7mm)"
ammo_type = /obj/item/ammo_casing/mm712x82/bouncy ammo_type = /obj/item/ammo_casing/m7mm/bouncy
/obj/item/ammo_box/magazine/mm712x82/bouncy/hicap /obj/item/ammo_box/magazine/m7mm/bouncy/hicap
name = "hi-cap box magazine (Rubber 7.12x82mm)" name = "hi-cap box magazine (Rubber 7mm)"
max_ammo = 150 max_ammo = 150
/obj/item/ammo_box/magazine/mm712x82/update_icon_state() /obj/item/ammo_box/magazine/m7mm/update_icon_state()
. = ..() . = ..()
icon_state = "a762-[min(round(ammo_count(), 10), 50)]" //Min is used to prevent high capacity magazines from attempting to get sprites with larger capacities icon_state = "a7mm-[min(round(ammo_count(), 10), 50)]" //Min is used to prevent high capacity magazines from attempting to get sprites with larger capacities

View File

@@ -10,14 +10,14 @@
. = ..() . = ..()
icon_state = "[base_icon_state]-[LAZYLEN(stored_ammo) ? "full" : "empty"]" icon_state = "[base_icon_state]-[LAZYLEN(stored_ammo) ? "full" : "empty"]"
/obj/item/ammo_box/magazine/m556 /obj/item/ammo_box/magazine/m223
name = "toploader magazine (5.56mm)" name = "toploader magazine (.223)"
icon_state = "5.56m" icon_state = ".223"
ammo_type = /obj/item/ammo_casing/a556 ammo_type = /obj/item/ammo_casing/a223
caliber = CALIBER_A556 caliber = CALIBER_A223
max_ammo = 30 max_ammo = 30
multiple_sprites = AMMO_BOX_FULL_EMPTY multiple_sprites = AMMO_BOX_FULL_EMPTY
/obj/item/ammo_box/magazine/m556/phasic /obj/item/ammo_box/magazine/m223/phasic
name = "toploader magazine (5.56mm Phasic)" name = "toploader magazine (.223 Phasic)"
ammo_type = /obj/item/ammo_casing/a556/phasic ammo_type = /obj/item/ammo_casing/a223/phasic

View File

@@ -90,6 +90,10 @@
name = "SMG magazine (Armour Piercing .45)" name = "SMG magazine (Armour Piercing .45)"
ammo_type = /obj/item/ammo_casing/c45/ap ammo_type = /obj/item/ammo_casing/c45/ap
/obj/item/ammo_box/magazine/smgm45/hp
name = "SMG magazine (Hollow Point .45)"
ammo_type = /obj/item/ammo_casing/c45/hp
/obj/item/ammo_box/magazine/smgm45/incen /obj/item/ammo_box/magazine/smgm45/incen
name = "SMG magazine (Incendiary .45)" name = "SMG magazine (Incendiary .45)"
ammo_type = /obj/item/ammo_casing/c45/inc ammo_type = /obj/item/ammo_casing/c45/inc

View File

@@ -44,8 +44,8 @@
/obj/item/ammo_box/magazine/toy/m762 /obj/item/ammo_box/magazine/toy/m762
name = "donksoft box magazine" name = "donksoft box magazine"
icon_state = "a762-toy" icon_state = "a7mm-toy"
base_icon_state = "a762" base_icon_state = "a7mm"
ammo_type = /obj/item/ammo_casing/foam_dart ammo_type = /obj/item/ammo_casing/foam_dart
max_ammo = 50 max_ammo = 50
@@ -54,5 +54,5 @@
icon_state = "[base_icon_state]-[round(ammo_count(), 10)]" icon_state = "[base_icon_state]-[round(ammo_count(), 10)]"
/obj/item/ammo_box/magazine/toy/m762/riot /obj/item/ammo_box/magazine/toy/m762/riot
icon_state = "a762-riot" icon_state = "a7mm-riot"
ammo_type = /obj/item/ammo_casing/foam_dart/riot ammo_type = /obj/item/ammo_casing/foam_dart/riot

View File

@@ -154,7 +154,7 @@
w_class = WEIGHT_CLASS_BULKY w_class = WEIGHT_CLASS_BULKY
inhand_icon_state = "m90" inhand_icon_state = "m90"
selector_switch_icon = TRUE selector_switch_icon = TRUE
accepted_magazine_type = /obj/item/ammo_box/magazine/m556 accepted_magazine_type = /obj/item/ammo_box/magazine/m223
can_suppress = FALSE can_suppress = FALSE
var/obj/item/gun/ballistic/revolver/grenadelauncher/underbarrel var/obj/item/gun/ballistic/revolver/grenadelauncher/underbarrel
burst_size = 3 burst_size = 3
@@ -229,7 +229,7 @@
icon_state = "arg" icon_state = "arg"
inhand_icon_state = "arg" inhand_icon_state = "arg"
slot_flags = 0 slot_flags = 0
accepted_magazine_type = /obj/item/ammo_box/magazine/m556 accepted_magazine_type = /obj/item/ammo_box/magazine/m223
can_suppress = FALSE can_suppress = FALSE
burst_size = 3 burst_size = 3
fire_delay = 1 fire_delay = 1
@@ -238,13 +238,13 @@
/obj/item/gun/ballistic/automatic/l6_saw /obj/item/gun/ballistic/automatic/l6_saw
name = "\improper L6 SAW" name = "\improper L6 SAW"
desc = "A heavily modified 7.12x82mm light machine gun, designated 'L6 SAW'. Has 'Aussec Armoury - 2531' engraved on the receiver below the designation." desc = "A heavily modified 7mm light machine gun, designated 'L6 SAW'. Has 'Aussec Armoury - 2531' engraved on the receiver below the designation."
icon_state = "l6" icon_state = "l6"
inhand_icon_state = "l6closedmag" inhand_icon_state = "l6closedmag"
base_icon_state = "l6" base_icon_state = "l6"
w_class = WEIGHT_CLASS_HUGE w_class = WEIGHT_CLASS_HUGE
slot_flags = 0 slot_flags = 0
accepted_magazine_type = /obj/item/ammo_box/magazine/mm712x82 accepted_magazine_type = /obj/item/ammo_box/magazine/m7mm
weapon_weight = WEAPON_HEAVY weapon_weight = WEAPON_HEAVY
burst_size = 1 burst_size = 1
actions_types = list() actions_types = list()

View File

@@ -24,21 +24,22 @@
/obj/projectile/bullet/syndicate_turret /obj/projectile/bullet/syndicate_turret
damage = 20 damage = 20
// 7.12x82mm (SAW) // 7mm (SAW)
/obj/projectile/bullet/mm712x82 /obj/projectile/bullet/a7mm
name = "7.12x82mm bullet" name = "7mm bullet"
damage = 30 damage = 30
armour_penetration = 5 armour_penetration = 5
wound_bonus = -50 wound_bonus = -50
wound_falloff_tile = 0 wound_falloff_tile = 0
/obj/projectile/bullet/mm712x82/ap /obj/projectile/bullet/a7mm/ap
name = "7.12x82mm armor-piercing bullet" name = "7mm armor-piercing bullet"
damage = 25
armour_penetration = 75 armour_penetration = 75
/obj/projectile/bullet/mm712x82/hp /obj/projectile/bullet/a7mm/hp
name = "7.12x82mm hollow-point bullet" name = "7mm hollow-point bullet"
damage = 50 damage = 50
sharpness = SHARP_EDGED sharpness = SHARP_EDGED
weak_against_armour = TRUE weak_against_armour = TRUE
@@ -46,20 +47,20 @@
bare_wound_bonus = 30 bare_wound_bonus = 30
wound_falloff_tile = -8 wound_falloff_tile = -8
/obj/projectile/bullet/incendiary/mm712x82 /obj/projectile/bullet/incendiary/a7mm
name = "7.12x82mm incendiary bullet" name = "7mm incendiary bullet"
damage = 15 damage = 15
fire_stacks = 3 fire_stacks = 3
/obj/projectile/bullet/mm712x82/match /obj/projectile/bullet/a7mm/match
name = "7.12x82mm match bullet" name = "7mm match bullet"
ricochets_max = 2 ricochets_max = 2
ricochet_chance = 60 ricochet_chance = 60
ricochet_auto_aim_range = 4 ricochet_auto_aim_range = 4
ricochet_incidence_leeway = 55 ricochet_incidence_leeway = 55
/obj/projectile/bullet/mm712x82/bouncy /obj/projectile/bullet/a7mm/bouncy
name = "7.12x82mm rubber bullet" name = "7mm rubber bullet"
damage = 20 damage = 20
ricochets_max = 40 ricochets_max = 40
ricochet_chance = 500 // will bounce off anything and everything, whether they like it or not ricochet_chance = 500 // will bounce off anything and everything, whether they like it or not

View File

@@ -109,6 +109,20 @@
damage = 60 damage = 60
wound_bonus = -30 wound_bonus = -30
/obj/projectile/bullet/a357/phasic
name = ".357 phasic bullet"
icon_state = "gaussphase"
damage = 35
armour_penetration = 100
projectile_phasing = PASSTABLE | PASSGLASS | PASSGRILLE | PASSCLOSEDTURF | PASSMACHINE | PASSSTRUCTURE | PASSDOORS
/obj/projectile/bullet/a357/heartseeker
name = ".357 heartseeker bullet"
icon_state = "gauss"
damage = 50
homing = TRUE
homing_turn_speed = 120
// admin only really, for ocelot memes // admin only really, for ocelot memes
/obj/projectile/bullet/a357/match /obj/projectile/bullet/a357/match
name = ".357 match bullet" name = ".357 match bullet"

View File

@@ -1,19 +1,19 @@
// 5.56mm (M-90gl Carbine) // .223 (M-90gl Carbine)
/obj/projectile/bullet/a556 /obj/projectile/bullet/a223
name = "5.56mm bullet" name = ".223 bullet"
damage = 35 damage = 35
armour_penetration = 30 armour_penetration = 30
wound_bonus = -40 wound_bonus = -40
/obj/projectile/bullet/a556/weak //centcom /obj/projectile/bullet/a223/weak //centcom
damage = 20 damage = 20
/obj/projectile/bullet/a556/phasic /obj/projectile/bullet/a223/phasic
name = "5.56mm phasic bullet" name = ".223 phasic bullet"
icon_state = "gaussphase" icon_state = "gaussphase"
damage = 20 damage = 30
armour_penetration = 70 armour_penetration = 100
projectile_phasing = PASSTABLE | PASSGLASS | PASSGRILLE | PASSCLOSEDTURF | PASSMACHINE | PASSSTRUCTURE | PASSDOORS projectile_phasing = PASSTABLE | PASSGLASS | PASSGRILLE | PASSCLOSEDTURF | PASSMACHINE | PASSSTRUCTURE | PASSDOORS
// 7.62 (Nagant Rifle) // 7.62 (Nagant Rifle)

View File

@@ -24,6 +24,14 @@
sharpness = NONE sharpness = NONE
embedding = null embedding = null
/obj/projectile/bullet/shotgun_beanbag/a40mm
name = "rubber slug"
icon_state = "cannonball"
damage = 20
stamina = 160 //BONK
wound_bonus = 30
weak_against_armour = TRUE
/obj/projectile/bullet/incendiary/shotgun /obj/projectile/bullet/incendiary/shotgun
name = "incendiary slug" name = "incendiary slug"
icon_state = "pellet" icon_state = "pellet"

View File

@@ -10,6 +10,11 @@
name = ".45 armor-piercing bullet" name = ".45 armor-piercing bullet"
armour_penetration = 50 armour_penetration = 50
/obj/projectile/bullet/c45/hp
name = ".45 hollow point bullet"
damage = 50
weak_against_armour = TRUE
/obj/projectile/bullet/incendiary/c45 /obj/projectile/bullet/incendiary/c45
name = ".45 incendiary bullet" name = ".45 incendiary bullet"
damage = 15 damage = 15

View File

@@ -26,13 +26,15 @@
var/random_crits_enabled = TRUE // Worst thing Valve ever added var/random_crits_enabled = TRUE // Worst thing Valve ever added
/obj/projectile/bullet/rocket/on_hit(atom/target, blocked = FALSE) /obj/projectile/bullet/rocket/on_hit(atom/target, blocked = FALSE)
var/random_crit_gib = FALSE
if(isliving(target) && prob(1) && random_crits_enabled) if(isliving(target) && prob(1) && random_crits_enabled)
var/mob/living/gibbed_dude = target var/mob/living/gibbed_dude = target
if(gibbed_dude.stat < HARD_CRIT) if(gibbed_dude.stat < HARD_CRIT)
gibbed_dude.say("Is that a fucking ro-", forced = "hit by rocket") gibbed_dude.say("Is that a fucking ro-", forced = "hit by rocket")
random_crit_gib = TRUE
..() ..()
do_boom(target) do_boom(target, random_crit_gib)
if(anti_armour_damage && ismecha(target)) if(anti_armour_damage && ismecha(target))
var/obj/vehicle/sealed/mecha/M = target var/obj/vehicle/sealed/mecha/M = target
M.take_damage(anti_armour_damage) M.take_damage(anti_armour_damage)
@@ -43,11 +45,15 @@
/** This proc allows us to customize the conditions necesary for the rocket to detonate, allowing for different explosions for living targets, turf targets, /** This proc allows us to customize the conditions necesary for the rocket to detonate, allowing for different explosions for living targets, turf targets,
among other potential differences. This granularity is helpful for things like the special rockets mechs use. */ among other potential differences. This granularity is helpful for things like the special rockets mechs use. */
/obj/projectile/bullet/rocket/proc/do_boom(atom/target) /obj/projectile/bullet/rocket/proc/do_boom(atom/target, random_crit_gib = FALSE)
if(!isliving(target)) //if the target isn't alive, so is a wall or something if(!isliving(target)) //if the target isn't alive, so is a wall or something
explosion(target, heavy_impact_range = 1, light_impact_range = 2, flame_range = 3, flash_range = 4, explosion_cause = src) explosion(target, heavy_impact_range = 1, light_impact_range = 2, flame_range = 3, flash_range = 4, explosion_cause = src)
else else
explosion(target, light_impact_range = 2, flame_range = 3, flash_range = 4, explosion_cause = src) explosion(target, light_impact_range = 2, flame_range = 3, flash_range = 4, explosion_cause = src)
if(random_crit_gib)
var/mob/living/gibbed_dude = target
new /obj/effect/temp_visual/crit(get_turf(gibbed_dude))
gibbed_dude.gib()
/// PM9 HEAP rocket - the anti-anything missile you always craved. /// PM9 HEAP rocket - the anti-anything missile you always craved.
/obj/projectile/bullet/rocket/heap /obj/projectile/bullet/rocket/heap

View File

@@ -178,6 +178,13 @@
amount_per_transfer_from_this = 50 amount_per_transfer_from_this = 50
list_reagents = list(/datum/reagent/medicine/stimulants = 50) list_reagents = list(/datum/reagent/medicine/stimulants = 50)
/obj/item/reagent_containers/hypospray/medipen/methamphetamine
name = "methamphetamine medipen"
volume = 24
amount_per_transfer_from_this = 24
desc = "Contains a relatively safe quantity of methamphetamine, along with mannitol to ensure that brain damage is kept at a minimum."
list_reagents = list(/datum/reagent/drug/methamphetamine = 10, /datum/reagent/medicine/mannitol = 14)
/obj/item/reagent_containers/hypospray/medipen/morphine /obj/item/reagent_containers/hypospray/medipen/morphine
name = "morphine medipen" name = "morphine medipen"
desc = "A rapid way to get you out of a tight situation and fast! You'll feel rather drowsy, though." desc = "A rapid way to get you out of a tight situation and fast! You'll feel rather drowsy, though."

View File

@@ -157,6 +157,9 @@
/obj/item/autosurgeon/syndicate/anti_stun /obj/item/autosurgeon/syndicate/anti_stun
starting_organ = /obj/item/organ/internal/cyberimp/brain/anti_stun starting_organ = /obj/item/organ/internal/cyberimp/brain/anti_stun
/obj/item/autosurgeon/syndicate/anti_drop
starting_organ = /obj/item/organ/internal/cyberimp/brain/anti_drop
/obj/item/autosurgeon/syndicate/reviver /obj/item/autosurgeon/syndicate/reviver
starting_organ = /obj/item/organ/internal/cyberimp/chest/reviver starting_organ = /obj/item/organ/internal/cyberimp/chest/reviver

View File

@@ -167,15 +167,9 @@
name = "boxed cybernetic implants" name = "boxed cybernetic implants"
desc = "A sleek, sturdy box." desc = "A sleek, sturdy box."
icon_state = "cyber_implants" icon_state = "cyber_implants"
var/list/boxed = list(
/obj/item/autosurgeon/syndicate/thermal_eyes,
/obj/item/autosurgeon/syndicate/xray_eyes,
/obj/item/autosurgeon/syndicate/anti_stun,
/obj/item/autosurgeon/syndicate/reviver)
var/amount = 5
/obj/item/storage/box/cyber_implants/PopulateContents() /obj/item/storage/box/cyber_implants/PopulateContents()
var/implant new /obj/item/autosurgeon/syndicate/xray_eyes(src)
while(contents.len <= amount) new /obj/item/autosurgeon/syndicate/anti_stun(src)
implant = pick(boxed) new /obj/item/autosurgeon/syndicate/reviver(src)
new implant(src) new /obj/item/autosurgeon/syndicate/anti_drop(src)

View File

@@ -58,5 +58,5 @@
progression_minimum = 30 MINUTES progression_minimum = 30 MINUTES
item = /obj/item/ammo_box/a357 item = /obj/item/ammo_box/a357
cost = 4 cost = 4
purchasable_from = ~UPLINK_CLOWN_OPS purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS) //nukies get their own version
illegal_tech = FALSE illegal_tech = FALSE

View File

@@ -0,0 +1,143 @@
// Clown Operative Stuff
// Maybe someday, someone will care to maintain this
/datum/uplink_item/weapon_kits/pie_cannon
name = "Banana Cream Pie Cannon"
desc = "A special pie cannon for a special clown, this gadget can hold up to 20 pies and automatically fabricates one every two seconds!"
cost = 10
item = /obj/item/pneumatic_cannon/pie/selfcharge
surplus = 0
purchasable_from = UPLINK_CLOWN_OPS
/datum/uplink_item/weapon_kits/bananashield
name = "Bananium Energy Shield"
desc = "A clown's most powerful defensive weapon, this personal shield provides near immunity to ranged energy attacks \
by bouncing them back at the ones who fired them. It can also be thrown to bounce off of people, slipping them, \
and returning to you even if you miss. WARNING: DO NOT ATTEMPT TO STAND ON SHIELD WHILE DEPLOYED, EVEN IF WEARING ANTI-SLIP SHOES."
item = /obj/item/shield/energy/bananium
cost = 16
surplus = 0
purchasable_from = UPLINK_CLOWN_OPS
/datum/uplink_item/weapon_kits/clownsword
name = "Bananium Energy Sword"
desc = "An energy sword that deals no damage, but will slip anyone it contacts, be it by melee attack, thrown \
impact, or just stepping on it. Beware friendly fire, as even anti-slip shoes will not protect against it."
item = /obj/item/melee/energy/sword/bananium
cost = 3
surplus = 0
purchasable_from = UPLINK_CLOWN_OPS
/datum/uplink_item/weapon_kits/clownoppin
name = "Ultra Hilarious Firing Pin"
desc = "A firing pin that, when inserted into a gun, makes that gun only useable by clowns and clumsy people and makes that gun honk whenever anyone tries to fire it."
cost = 1 //much cheaper for clown ops than for clowns
item = /obj/item/firing_pin/clown/ultra
purchasable_from = UPLINK_CLOWN_OPS
illegal_tech = FALSE
/datum/uplink_item/weapon_kits/clownopsuperpin
name = "Super Ultra Hilarious Firing Pin"
desc = "Like the ultra hilarious firing pin, except the gun you insert this pin into explodes when someone who isn't clumsy or a clown tries to fire it."
cost = 4 //much cheaper for clown ops than for clowns
item = /obj/item/firing_pin/clown/ultra/selfdestruct
purchasable_from = UPLINK_CLOWN_OPS
illegal_tech = FALSE
/datum/uplink_item/weapon_kits/foamsmg
name = "Toy Submachine Gun"
desc = "A fully-loaded Donksoft bullpup submachine gun that fires riot grade darts with a 20-round magazine."
item = /obj/item/gun/ballistic/automatic/c20r/toy
cost = 5
surplus = 0
purchasable_from = UPLINK_CLOWN_OPS
/datum/uplink_item/weapon_kits/foammachinegun
name = "Toy Machine Gun"
desc = "A fully-loaded Donksoft belt-fed machine gun. This weapon has a massive 50-round magazine of devastating \
riot grade darts, that can briefly incapacitate someone in just one volley."
item = /obj/item/gun/ballistic/automatic/l6_saw/toy
cost = 10
surplus = 0
purchasable_from = UPLINK_CLOWN_OPS
/datum/uplink_item/explosives/bombanana
name = "Bombanana"
desc = "A banana with an explosive taste! discard the peel quickly, as it will explode with the force of a Syndicate minibomb \
a few seconds after the banana is eaten."
item = /obj/item/food/grown/banana/bombanana
cost = 4 //it is a bit cheaper than a minibomb because you have to take off your helmet to eat it, which is how you arm it
surplus = 0
purchasable_from = UPLINK_CLOWN_OPS
/datum/uplink_item/explosives/clown_bomb_clownops
name = "Clown Bomb"
desc = "The Clown bomb is a hilarious device capable of massive pranks. It has an adjustable timer, \
with a minimum of %MIN_BOMB_TIMER seconds, and can be bolted to the floor with a wrench to prevent \
movement. The bomb is bulky and cannot be moved; upon ordering this item, a smaller beacon will be \
transported to you that will teleport the actual bomb to it upon activation. Note that this bomb can \
be defused, and some crew may attempt to do so."
item = /obj/item/sbeacondrop/clownbomb
cost = 15
surplus = 0
purchasable_from = UPLINK_CLOWN_OPS
/datum/uplink_item/explosives/clown_bomb_clownops/New()
. = ..()
desc = replacetext(desc, "%MIN_BOMB_TIMER", SYNDIEBOMB_MIN_TIMER_SECONDS)
/datum/uplink_item/explosives/tearstache
name = "Teachstache Grenade"
desc = "A teargas grenade that launches sticky moustaches onto the face of anyone not wearing a clown or mime mask. The moustaches will \
remain attached to the face of all targets for one minute, preventing the use of breath masks and other such devices."
item = /obj/item/grenade/chem_grenade/teargas/moustache
cost = 3
surplus = 0
purchasable_from = UPLINK_CLOWN_OPS
/datum/uplink_item/explosives/pinata
name = "Weapons Grade Pinata Kit"
desc = "A pinata filled with both candy and explosives as well as two belts to carry them on, crack it open and see what you get!"
item = /obj/item/storage/box/syndie_kit/pinata
purchasable_from = UPLINK_CLOWN_OPS
limited_stock = 1
cost = 12 //This is effectively the clown ops version of the grenadier belt where you should on average get 8 explosives if you use a weapon with exactly 10 force.
surplus = 0
/datum/uplink_item/reinforcement/clown_reinforcement
name = "Clown Reinforcements"
desc = "Call in an additional clown to share the fun, equipped with full starting gear, but no telecrystals."
item = /obj/item/antag_spawner/nuke_ops/clown
cost = 20
purchasable_from = UPLINK_CLOWN_OPS
restricted = TRUE
refundable = TRUE
/datum/uplink_item/mech/honker
name = "Dark H.O.N.K."
desc = "A clown combat mech equipped with bombanana peel and tearstache grenade launchers, as well as the ubiquitous HoNkER BlAsT 5000."
item = /obj/vehicle/sealed/mecha/honker/dark/loaded
cost = 80
purchasable_from = UPLINK_CLOWN_OPS
/* //SKYRAT REMOVAL START
/datum/uplink_item/stealthy_tools/combatbananashoes
name = "Combat Banana Shoes"
desc = "While making the wearer immune to most slipping attacks like regular combat clown shoes, these shoes \
can generate a large number of synthetic banana peels as the wearer walks, slipping up would-be pursuers. They also \
squeak significantly louder."
item = /obj/item/clothing/shoes/clown_shoes/banana_shoes/combat
cost = 6
surplus = 0
purchasable_from = UPLINK_CLOWN_OPS
*/ //SKYRAT REMOVAL END
/datum/uplink_item/badass/clownopclumsinessinjector //clowns can buy this too, but it's in the role-restricted items section for them
name = "Clumsiness Injector"
desc = "Inject yourself with this to become as clumsy as a clown... or inject someone ELSE with it to make THEM as clumsy as a clown. Useful for clown operatives who wish to reconnect with their former clownish nature or for clown operatives who wish to torment and play with their prey before killing them."
item = /obj/item/dnainjector/clumsymut
cost = 1
purchasable_from = UPLINK_CLOWN_OPS
illegal_tech = FALSE

View File

@@ -68,7 +68,7 @@
item = /obj/item/dualsaber item = /obj/item/dualsaber
cost = 16 cost = 16
purchasable_from = ~UPLINK_CLOWN_OPS purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS) //nukies get their own version
/datum/uplink_item/dangerous/doublesword/get_discount_value(discount_type) /datum/uplink_item/dangerous/doublesword/get_discount_value(discount_type)
switch(discount_type) switch(discount_type)
@@ -98,4 +98,4 @@
progression_minimum = 30 MINUTES progression_minimum = 30 MINUTES
cost = 13 cost = 13
surplus = 50 surplus = 50
purchasable_from = ~UPLINK_CLOWN_OPS purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS) //nukies get their own version

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

View File

@@ -446,11 +446,12 @@
desc = "A .244 Acia casing. Under the right conditions, it shimmers." // these shouldn't be appearing because LSG makes you throw your gun without working the bolt desc = "A .244 Acia casing. Under the right conditions, it shimmers." // these shouldn't be appearing because LSG makes you throw your gun without working the bolt
can_be_printed = FALSE can_be_printed = FALSE
/obj/item/ammo_casing/a556 /obj/item/ammo_casing/a277
name = ".277 Aestus casing" name = ".277 Aestus casing"
desc = "A .277 bullet casing." desc = "A .277 bullet casing."
caliber = CALIBER_A277
/obj/item/ammo_casing/a556/phasic /obj/item/ammo_casing/a277/phasic
name = ".277 Aestus phasic casing" name = ".277 Aestus phasic casing"
desc = "A .277 Aestus bullet casing.\ desc = "A .277 Aestus bullet casing.\
<br><br>\ <br><br>\
@@ -559,10 +560,10 @@
// The ones above are the casings for the ammo, whereas the ones below are the actual projectiles that give you feedback when you're shot // The ones above are the casings for the ammo, whereas the ones below are the actual projectiles that give you feedback when you're shot
/obj/projectile/bullet/a556 /obj/projectile/bullet/a277
name = ".277 Aestus bullet" name = ".277 Aestus bullet"
/obj/projectile/bullet/a556/phasic /obj/projectile/bullet/a277/phasic
name = ".277 PHASE bullet" name = ".277 PHASE bullet"
/obj/projectile/bullet/a762 /obj/projectile/bullet/a762

View File

@@ -219,7 +219,7 @@
minimum_distance = 5 minimum_distance = 5
icon_state = "blackops_ranged" icon_state = "blackops_ranged"
icon_living = "blackops_ranged" icon_living = "blackops_ranged"
casingtype = /obj/item/ammo_casing/a556/weak casingtype = /obj/item/ammo_casing/a277/weak
projectilesound = 'modular_skyrat/modules/gunsgalore/sound/guns/fire/m16_fire.ogg' projectilesound = 'modular_skyrat/modules/gunsgalore/sound/guns/fire/m16_fire.ogg'
attack_sound = 'sound/weapons/punch1.ogg' attack_sound = 'sound/weapons/punch1.ogg'
loot = list(/obj/effect/gibspawner/human, /obj/item/ammo_box/magazine/m16) loot = list(/obj/effect/gibspawner/human, /obj/item/ammo_box/magazine/m16)

View File

@@ -1,10 +1,10 @@
/obj/projectile/bullet/a556/weak /obj/projectile/bullet/a277/weak
name = "surplus .277 bullet" name = "surplus .277 bullet"
damage = 25 damage = 25
armour_penetration = 10 armour_penetration = 10
wound_bonus = -40 wound_bonus = -40
/obj/item/ammo_casing/a556/weak /obj/item/ammo_casing/a277/weak
name = ".277 surplus bullet casing" name = ".277 surplus bullet casing"
desc = "A .277 surplus bullet casing." desc = "A .277 surplus bullet casing."
projectile_type = /obj/projectile/bullet/a556/weak projectile_type = /obj/projectile/bullet/a277/weak

View File

@@ -28,8 +28,8 @@
desc = "A double-stack translucent polymer magazine for use with the XM-2537 rifles. Holds 30 rounds of .277 Aestus." desc = "A double-stack translucent polymer magazine for use with the XM-2537 rifles. Holds 30 rounds of .277 Aestus."
icon = 'modular_skyrat/modules/gunsgalore/icons/guns/gunsgalore_items.dmi' icon = 'modular_skyrat/modules/gunsgalore/icons/guns/gunsgalore_items.dmi'
icon_state = "m16e" icon_state = "m16e"
ammo_type = /obj/item/ammo_casing/a556 ammo_type = /obj/item/ammo_casing/a277
caliber = "a556" caliber = CALIBER_A277
max_ammo = 30 max_ammo = 30
multiple_sprites = AMMO_BOX_FULL_EMPTY multiple_sprites = AMMO_BOX_FULL_EMPTY
@@ -38,8 +38,8 @@
desc = "A double-stack solid magazine that looks rather dated. Holds 20 rounds of .277 Aestus." desc = "A double-stack solid magazine that looks rather dated. Holds 20 rounds of .277 Aestus."
icon = 'modular_skyrat/modules/gunsgalore/icons/guns/gunsgalore_items.dmi' icon = 'modular_skyrat/modules/gunsgalore/icons/guns/gunsgalore_items.dmi'
icon_state = "m16" icon_state = "m16"
ammo_type = /obj/item/ammo_casing/a556 ammo_type = /obj/item/ammo_casing/a277
caliber = "a556" caliber = CALIBER_A277
max_ammo = 20 max_ammo = 20
multiple_sprites = AMMO_BOX_FULL_EMPTY multiple_sprites = AMMO_BOX_FULL_EMPTY
@@ -73,7 +73,7 @@
desc = "A double-stack solid polymer drum made for use with the Amans Patriae rifle. Holds 50 rounds of .277 ammo." desc = "A double-stack solid polymer drum made for use with the Amans Patriae rifle. Holds 50 rounds of .277 ammo."
icon = 'modular_skyrat/modules/gunsgalore/icons/guns/gunsgalore_items.dmi' icon = 'modular_skyrat/modules/gunsgalore/icons/guns/gunsgalore_items.dmi'
icon_state = "m16" icon_state = "m16"
ammo_type = /obj/item/ammo_casing/a556 ammo_type = /obj/item/ammo_casing/a277
caliber = "a556" caliber = CALIBER_A277
max_ammo = 50 max_ammo = 50
multiple_sprites = AMMO_BOX_FULL_EMPTY multiple_sprites = AMMO_BOX_FULL_EMPTY

View File

@@ -73,16 +73,16 @@
* .277 Aestus * .277 Aestus
*/ */
/obj/item/ammo_casing/a556/rubber /obj/item/ammo_casing/a277/rubber
name = ".277 rubber bullet casing" name = ".277 rubber bullet casing"
desc = "A .277 rubber bullet casing.\ desc = "A .277 rubber bullet casing.\
<br><br>\ <br><br>\
<i>RUBBER: Less than lethal ammo. Deals both stamina damage and regular damage.</i>" <i>RUBBER: Less than lethal ammo. Deals both stamina damage and regular damage.</i>"
caliber = CALIBER_A556 caliber = CALIBER_A277
projectile_type = /obj/projectile/bullet/a556/rubber projectile_type = /obj/projectile/bullet/a277/rubber
harmful = FALSE harmful = FALSE
/obj/projectile/bullet/a556/rubber /obj/projectile/bullet/a277/rubber
name = ".277 rubber bullet" name = ".277 rubber bullet"
damage = 10 damage = 10
armour_penetration = 10 armour_penetration = 10
@@ -96,17 +96,17 @@
embedding = null embedding = null
wound_bonus = -50 wound_bonus = -50
/obj/item/ammo_casing/a556/ap /obj/item/ammo_casing/a277/ap
name = ".277 Aestus armor-piercing bullet casing" name = ".277 Aestus armor-piercing bullet casing"
desc = "A .277 armor-piercing bullet casing.\ desc = "A .277 armor-piercing bullet casing.\
<br><br>\ <br><br>\
<i>ARMOR PIERCING: Increased armor piercing capabilities. What did you expect?" <i>ARMOR PIERCING: Increased armor piercing capabilities. What did you expect?"
caliber = CALIBER_A556 caliber = CALIBER_A277
projectile_type = /obj/projectile/bullet/a556/ap projectile_type = /obj/projectile/bullet/a277/ap
advanced_print_req = TRUE advanced_print_req = TRUE
custom_materials = AMMO_MATS_AP custom_materials = AMMO_MATS_AP
/obj/projectile/bullet/a556/ap /obj/projectile/bullet/a277/ap
name = ".277 armor-piercing bullet" name = ".277 armor-piercing bullet"
armour_penetration = 60 armour_penetration = 60

View File

@@ -62,7 +62,7 @@
/obj/item/storage/toolbox/ammobox/full/l6_saw /obj/item/storage/toolbox/ammobox/full/l6_saw
name = "ammo box (L6 SAW)" name = "ammo box (L6 SAW)"
desc = "It contains a few magazines." desc = "It contains a few magazines."
ammo_type = /obj/item/ammo_box/magazine/mm712x82 ammo_type = /obj/item/ammo_box/magazine/m7mm
amount = 7 amount = 7
/obj/item/storage/toolbox/ammobox/full/makarov /obj/item/storage/toolbox/ammobox/full/makarov

View File

@@ -5344,6 +5344,7 @@
#include "code\modules\uplink\uplink_items\ammunition.dm" #include "code\modules\uplink\uplink_items\ammunition.dm"
#include "code\modules\uplink\uplink_items\badass.dm" #include "code\modules\uplink\uplink_items\badass.dm"
#include "code\modules\uplink\uplink_items\bundle.dm" #include "code\modules\uplink\uplink_items\bundle.dm"
#include "code\modules\uplink\uplink_items\clownops.dm"
#include "code\modules\uplink\uplink_items\dangerous.dm" #include "code\modules\uplink\uplink_items\dangerous.dm"
#include "code\modules\uplink\uplink_items\device_tools.dm" #include "code\modules\uplink\uplink_items\device_tools.dm"
#include "code\modules\uplink\uplink_items\explosive.dm" #include "code\modules\uplink\uplink_items\explosive.dm"

View File

@@ -0,0 +1,13 @@
#comment This repaths several ammo types to a new type with a different caliber.
/obj/item/ammo_box/magazine/mm712x82 : : /obj/item/ammo_box/magazine/m7mm
/obj/item/ammo_casing/mm712x82 : /obj/item/ammo_casing/m7mm{@OLD}
/obj/projectile/bullet/mm712x82 : /obj/projectile/bullet/a7mm{@OLD}
/obj/projectile/bullet/m223 : /obj/item/ammo_box/magazine/m223{@OLD}
/obj/item/ammo_casing/a556 : /obj/item/ammo_casing/a223{@OLD}
/obj/projectile/bullet/a556 : /obj/projectile/bullet/a223{@OLD}