Merge pull request #8745 from Cerebulon/gunspritesoct22

Complete gun sprite overhaul + additions
This commit is contained in:
Spookerton
2022-10-13 10:26:30 +01:00
committed by GitHub
23 changed files with 270 additions and 55 deletions
+5 -1
View File
@@ -27,6 +27,10 @@
name = "Pistol Magazine (.45)"
path = /obj/item/ammo_magazine/m45
/datum/uplink_item/item/ammo/c45mcompact
name = "Pistol Magazine (.45 Compact)"
path = /obj/item/ammo_magazine/m45/compact
/datum/uplink_item/item/ammo/c45map
name = "Pistol Magazine (.45 AP)"
path = /obj/item/ammo_magazine/m45/ap
@@ -130,4 +134,4 @@
/datum/uplink_item/item/ammo/cell
name = "weapon cell"
path = /obj/item/cell/device/weapon
path = /obj/item/cell/device/weapon
+6 -1
View File
@@ -138,7 +138,7 @@
name = "Combat Shotgun"
item_cost = 75
path = /obj/item/gun/projectile/shotgun/pump/combat
/datum/uplink_item/item/visible_weapons/semishotgun
name = "Semi-Automatic Shotgun"
item_cost = 100
@@ -154,6 +154,11 @@
item_cost = 30
path = /obj/item/gun/energy/gun/compact
/datum/uplink_item/item/visible_weapons/compact_45
name = "Compact .45 pistol"
item_cost = 40
path = /obj/item/gun/projectile/compact_45
/datum/uplink_item/item/visible_weapons/lasercannon
name = "Laser Cannon"
item_cost = 60
+72 -15
View File
@@ -26,11 +26,14 @@
prob(2);/obj/item/gun/energy/ionrifle,
prob(2);/obj/item/gun/energy/ionrifle/pistol,
prob(3);/obj/item/gun/energy/toxgun,
prob(3);/obj/item/gun/energy/taser,
prob(1);/obj/item/gun/energy/taser,
prob(1);/obj/item/gun/energy/taser/disabler,
prob(2);/obj/item/gun/energy/crossbow/largecrossbow,
prob(3);/obj/item/gun/energy/stunrevolver,
prob(2);/obj/item/gun/energy/stunrevolver/vintage,
prob(3);/obj/item/gun/energy/gun/compact)
prob(3);/obj/item/gun/energy/gun/compact,
prob(2);/obj/item/gun/energy/gun/pocket
)
/obj/random/energy/highend
name = "Random Energy Weapon"
@@ -48,7 +51,10 @@
prob(3);/obj/item/gun/energy/xray,
prob(1);/obj/item/gun/energy/sniperrifle,
prob(2);/obj/item/gun/energy/crossbow/largecrossbow,
prob(3);/obj/item/gun/energy/gun/compact)
prob(3);/obj/item/gun/energy/gun/compact,
prob(2);/obj/item/gun/energy/gun/pocket,
prob(1);/obj/item/gun/energy/monorifle,
prob(1);/obj/item/gun/energy/lasershotgun)
/obj/random/energy/sec
name = "Random Security Energy Weapon"
@@ -72,6 +78,8 @@
prob(2);/obj/item/gun/projectile/automatic/sts35,
prob(2);/obj/item/gun/projectile/automatic/z8,
prob(2);/obj/item/gun/projectile/automatic/combatsmg,
prob(2);/obj/item/gun/projectile/automatic/pearlshield,
prob(2);/obj/item/gun/projectile/automatic/p90,
prob(4);/obj/item/gun/projectile/colt,
prob(2);/obj/item/gun/projectile/deagle,
prob(1);/obj/item/gun/projectile/deagle/camo,
@@ -84,7 +92,8 @@
prob(3);/obj/item/gun/projectile/sec/wood,
prob(4);/obj/item/gun/projectile/p92x,
prob(3);/obj/item/gun/projectile/p92x/brown,
prob(4);/obj/item/gun/projectile/pistol,
prob(2);/obj/item/gun/projectile/pistol,
prob(2);/obj/item/gun/projectile/pistol/alt,
prob(5);/obj/item/gun/projectile/pirate,
prob(2);/obj/item/gun/projectile/revolver,
prob(4);/obj/item/gun/projectile/revolver/deckard,
@@ -92,12 +101,16 @@
prob(2);/obj/item/gun/projectile/revolver/judge,
prob(3);/obj/item/gun/projectile/revolver/lemat,
prob(2);/obj/item/gun/projectile/revolver/mateba,
prob(2);/obj/item/gun/projectile/revolver/webley,
prob(2);/obj/item/gun/projectile/revolver/webley/large,
prob(4);/obj/item/gun/projectile/shotgun/doublebarrel,
prob(3);/obj/item/gun/projectile/shotgun/doublebarrel/sawn,
prob(3);/obj/item/gun/projectile/shotgun/pump,
prob(2);/obj/item/gun/projectile/shotgun/pump/combat,
prob(4);/obj/item/gun/projectile/shotgun/pump/rifle,
prob(1);/obj/item/gun/projectile/shotgun/pump/rifle/antique,
prob(3);/obj/item/gun/projectile/shotgun/pump/rifle/lever,
prob(3);/obj/item/gun/projectile/shotgun/pump/rifle/lever/brushgun,
prob(2);/obj/item/gun/projectile/shotgun/semi,
prob(2);/obj/item/gun/projectile/silenced)
@@ -123,10 +136,19 @@
prob(1);/obj/item/gun/projectile/shotgun/pump/combat,
prob(1);/obj/item/gun/projectile/shotgun/semi)
/obj/random/sidearm
name = "Random Sidearm"
desc = "This is a random one-handed sidearm of any type."
icon_state = "gun"
/obj/random/sidearm/item_to_spawn()
return pick(prob(5);/obj/random/handgun,
prob(5);/obj/random/revolver,
prob(5);/obj/random/energy_pistol)
/obj/random/handgun
name = "Random Handgun"
desc = "This is a random sidearm."
icon = 'icons/obj/gun.dmi'
name = "Random Pistol"
desc = "This is a random semi-auto sidearm."
icon_state = "gun"
/obj/random/handgun/item_to_spawn()
@@ -136,10 +158,38 @@
prob(3);/obj/item/gun/projectile/p92x/brown,
prob(3);/obj/item/gun/projectile/colt,
prob(2);/obj/item/gun/projectile/luger,
prob(2);/obj/item/gun/energy/gun,
prob(2);/obj/item/gun/projectile/pistol,
prob(2);/obj/item/gun/projectile/pistol/alt,
prob(2);/obj/item/gun/projectile/luger/brown,
prob(1);/obj/item/gun/projectile/compact_45)
/obj/random/energy_pistol
name = "Random Energy Pistol"
desc = "This is a random energy sidearm."
icon_state = "gun_energy"
/obj/random/energy_pistol/item_to_spawn()
return pick(prob(2);/obj/item/gun/energy/gun,
prob(1);/obj/item/gun/energy/retro,
prob(1);/obj/item/gun/projectile/luger/brown)
prob(1);/obj/item/gun/energy/gun/compact,
prob(1);/obj/item/gun/energy/gun/pocket)
/obj/random/revolver
name = "Random Revolver"
desc = "This is a random revolver."
icon_state = "gun"
/obj/random/revolver/item_to_spawn()
return pick(prob(4);/obj/item/gun/projectile/revolver,
prob(4);/obj/item/gun/projectile/revolver/mateba,
prob(3);/obj/item/gun/projectile/revolver/detective,
prob(3);/obj/item/gun/projectile/revolver/detective45,
prob(3);/obj/item/gun/projectile/revolver/deckard,
prob(2);/obj/item/gun/projectile/revolver/judge,
prob(2);/obj/item/gun/projectile/revolver/lemat,
prob(2);/obj/item/gun/projectile/revolver/webley,
prob(1);/obj/item/gun/projectile/revolver/webley/auto,
prob(1);/obj/item/gun/projectile/revolver/webley/magnetic,
prob(1);/obj/item/gun/projectile/revolver/webley/large)
/obj/random/handgun/sec
name = "Random Security Handgun"
@@ -239,7 +289,6 @@
/obj/random/projectile/random
name = "Random Projectile Weapon"
desc = "This is a random projectile weapon."
icon = 'icons/obj/gun.dmi'
icon_state = "gun_2"
/obj/random/projectile/random/item_to_spawn()
@@ -283,6 +332,11 @@
/obj/item/gun/projectile/automatic/combatsmg,
/obj/item/ammo_magazine/m9mmt,
/obj/item/ammo_magazine/m9mmt
),
prob(2);list(
/obj/item/gun/projectile/automatic/pearlshield,
/obj/item/ammo_magazine/m9mmt,
/obj/item/ammo_magazine/m9mmt
)
)
@@ -291,8 +345,6 @@
desc = "Loot for PoIs."
icon_state = "gun_rifle"
//Concerns about the bullpup, but currently seems to be only a slightly stronger z8. But we shall see.
/obj/random/multiple/gun/projectile/rifle/item_to_spawn()
return pick(
prob(2);list(
@@ -365,9 +417,9 @@
/obj/item/ammo_magazine/m44
),
prob(1);list(
/obj/item/gun/projectile/deagle/camo,
/obj/item/ammo_magazine/m44,
/obj/item/ammo_magazine/m44
/obj/item/gun/projectile/compact_45,
/obj/item/ammo_magazine/m45/compact,
/obj/item/ammo_magazine/m45/compact
),
prob(1);list(
/obj/item/gun/projectile/deagle/gold,
@@ -465,6 +517,11 @@
/obj/item/gun/projectile/revolver/webley/auto,
/obj/item/ammo_magazine/s44,
/obj/item/ammo_magazine/s44
),
prob(1);list(
/obj/item/gun/projectile/revolver/webley/magnetic,
/obj/item/ammo_magazine/s44,
/obj/item/ammo_magazine/s44
)
)
+1 -1
View File
@@ -191,7 +191,7 @@ GLOBAL_LIST_INIT(generic_fishing_chance_list, list(FISHING_RARE = 5, FISHING_UNC
/obj/random/tool/powermaint = 5,
/obj/random/unidentified_medicine/combat_medicine = 1,
/obj/random/tool/alien = 1,
/obj/random/handgun = 1,
/obj/random/sidearm = 1,
/mob/living/simple_mob/animal/sif/hooligan_crab = 1
))
@@ -135,6 +135,11 @@
name = "magazine (.45 BB)"
ammo_type = /obj/item/ammo_casing/a45/bb
/obj/item/ammo_magazine/m45/compact
name = "compact pistol magazine (.45)"
matter = list(MAT_STEEL = 375) //metal costs are very roughly based around 1 .45 casing = 75 metal
max_ammo = 5
/obj/item/ammo_magazine/m45uzi
name = "stick magazine (.45)"
icon_state = "uzi45"
@@ -857,4 +862,4 @@
ammo_type = /obj/item/ammo_casing/cap
matter = list(MAT_STEEL = 600)
max_ammo = 7
multiple_sprites = 1
multiple_sprites = 1
@@ -172,7 +172,7 @@
flux in a nuclear reactor core. This incredible technology may help YOU achieve high excitation rates with small laser volumes!"
icon_state = "lasercannon"
item_state = null
wielded_item_state = "mhdhowitzer-wielded" //Placeholder
wielded_item_state = "laser" //Placeholder
origin_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3, TECH_POWER = 3)
slot_flags = SLOT_BELT|SLOT_BACK
projectile_type = /obj/item/projectile/beam/heavylaser/cannon
@@ -240,7 +240,6 @@
name = "antique mono-rifle"
desc = "An old laser rifle. This one can only fire once before requiring recharging."
description_fluff = "Modeled after ancient hunting rifles, this rifle was dubbed the 'Rainy Day Special' by some, due to its use as some barmens' fight-stopper of choice. One shot is all it takes, or so they say."
icon = 'icons/obj/energygun.dmi'
icon_state = "mono"
item_state = "shotgun"
origin_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 4, TECH_POWER = 3)
@@ -317,9 +316,8 @@
/obj/item/gun/energy/lasershotgun
name = "laser scattergun"
icon = 'icons/obj/energygun.dmi'
item_state = "laser"
icon_state = "scatter"
item_state = null
desc = "A strange Almachi weapon, utilizing a refracting prism to turn a single laser blast into a diverging cluster."
origin_tech = list(TECH_COMBAT = 3, TECH_MAGNET = 1, TECH_MATERIAL = 4)
projectile_type = /obj/item/projectile/scatter/laser
projectile_type = /obj/item/projectile/scatter/laser
@@ -21,12 +21,11 @@
self_recharge = 1
use_external_power = 1
/obj/item/gun/energy/gun/burst
name = "burst laser"
desc = "The Lawson Arms FM-2t is a versatile energy based weapon, capable of switching between stun or kill with a three round burst option for both settings."
description_fluff = "Lawson Arms is Hephaestus Industries main personal-energy-weapon branding, often sold alongside MarsTech projectile weapons to security and law enforcement agencies."
icon_state = "fm-2tstun100" //May resprite this to be more rifley
icon_state = "riflestun100"
item_state = null //so the human update icon uses the icon_state instead.
charge_cost = 100
force = 8
@@ -35,16 +34,16 @@
projectile_type = /obj/item/projectile/beam/stun/weak
origin_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 2, TECH_ILLEGAL = 3)
modifystate = "fm-2tstun"
modifystate = "riflestun"
// requires_two_hands = 1
// one_handed_penalty = 30
firemodes = list(
list(mode_name="stun", burst=1, projectile_type=/obj/item/projectile/beam/stun/weak, modifystate="fm-2tstun", charge_cost = 100),
list(mode_name="stun burst", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,0,0), dispersion=list(0.0, 0.2, 0.5), projectile_type=/obj/item/projectile/beam/stun/weak, modifystate="fm-2tstun"),
list(mode_name="lethal", burst=1, projectile_type=/obj/item/projectile/beam/burstlaser, modifystate="fm-2tkill", charge_cost = 200),
list(mode_name="lethal burst", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,0,0), dispersion=list(0.0, 0.2, 0.5), projectile_type=/obj/item/projectile/beam/burstlaser, modifystate="fm-2tkill"),
list(mode_name="stun", burst=1, projectile_type=/obj/item/projectile/beam/stun/weak, modifystate="riflestun", charge_cost = 100),
list(mode_name="stun burst", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,0,0), dispersion=list(0.0, 0.2, 0.5), projectile_type=/obj/item/projectile/beam/stun/weak, modifystate="riflestun"),
list(mode_name="lethal", burst=1, projectile_type=/obj/item/projectile/beam/burstlaser, modifystate="riflekill", charge_cost = 200),
list(mode_name="lethal burst", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,0,0), dispersion=list(0.0, 0.2, 0.5), projectile_type=/obj/item/projectile/beam/burstlaser, modifystate="riflekill"),
)
/obj/item/gun/energy/gun/nuclear
@@ -83,4 +82,19 @@
firemodes = list(
list(mode_name="stun", projectile_type=/obj/item/projectile/beam/stun/med, modifystate="PDWstun", charge_cost = 240),
list(mode_name="lethal", projectile_type=/obj/item/projectile/beam, modifystate="PDWkill", charge_cost = 480),
)
)
//What if we went smaller?
/obj/item/gun/energy/gun/pocket
name = "subcompact energy gun"
desc = "The LAEP90-S Perunika is a subcompact variant of the versatile Perun energy sidearm, for use by plainclothes security personnel with a desire for concealability."
description_fluff = "Lawson Arms is Hephaestus Industries main personal-energy-weapon branding, often sold alongside MarsTech projectile weapons to security and law enforcement agencies."
w_class = ITEMSIZE_SMALL
icon_state = "egunstun100"
item_state = "energystun"
modifystate = "egunstun"
firemodes = list(
list(mode_name="stun", projectile_type=/obj/item/projectile/beam/stun/med, modifystate="egunstun", charge_cost = 240),
list(mode_name="lethal", projectile_type=/obj/item/projectile/beam, modifystate="egunkill", charge_cost = 480),
)
+8 -1
View File
@@ -23,6 +23,13 @@
charge_cost = 400
recharge_time = 7 //Time it takes for shots to recharge (in ticks)
/obj/item/gun/energy/taser/disabler
name = "disabler"
desc = "The RayZar S500 Disabler is a high-powered derivative of the same Mk30 taser design used by NanoTrasen security, and is capable of overloading prosthetic energy cells. It's use is heavily regulated due to potential for long-term effects on the body."
icon_state = "disabler"
projectile_type = /obj/item/projectile/beam/stun/disabler
charge_cost = 480
/obj/item/gun/energy/taser/mounted/cyborg/swarm
name = "disabler"
desc = "An archaic device which attacks the target's nervous-system or control circuits."
@@ -110,4 +117,4 @@
icon_state = "snubstunrevolver"
item_state = "stunrevolver"
w_class = ITEMSIZE_SMALL
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_POWER = 2)
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_POWER = 2)
@@ -1,7 +1,7 @@
/obj/item/gun/projectile/automatic //This should never be spawned in, it is just here because of code necessities.
name = "daka SMG"
desc = "A small SMG. You really shouldn't be able to get this gun. Uses 9mm rounds."
icon_state = "c05r" //Used because it's not used anywhere else
icon_state = "smg" //Used because it's not used anywhere else
load_method = SPEEDLOADER
ammo_type = /obj/item/ammo_casing/a9mm
projectile_type = /obj/item/projectile/bullet/pistol
@@ -370,6 +370,27 @@
/obj/item/gun/projectile/automatic/p90/update_icon()
icon_state = "p90smg-[ammo_magazine ? round(ammo_magazine.stored_ammo.len, 6) : "empty"]"
/obj/item/gun/projectile/automatic/pearlshield
name = "\improper Tajaran PDW"
desc = "A century old Rhemazar military weapon adapted to use human-standard cartridges, the PCA-A9 Karik has been the standard submachine gun of the Pearlshield military since 2549. Uses 9mm rounds."
description_fluff = "Pearlshield Consolidated Armories are far from the most cutting edge firearm manufacturer, but the Tajarans long tradition of war is rivaled only by humanity, \
and the introduction of human technology to the Tajaran arms market has resulted in something of a revolution in finding new ways to kill each other at long distances with bullets. \
Usually made with mass-production in mind, PCA weapons combine an eye for design with a great desire to make people dead."
icon_state = "pdw"
item_state = "c20r"
w_class = ITEMSIZE_NORMAL
caliber = "9mm"
origin_tech = list(TECH_COMBAT = 5, TECH_MATERIAL = 2)
slot_flags = SLOT_BELT
load_method = MAGAZINE
magazine_type = /obj/item/ammo_magazine/m9mmt
allowed_magazines = list(/obj/item/ammo_magazine/m9mm, /obj/item/ammo_magazine/m9mmt)
firemodes = list(
list(mode_name="semiauto", burst=1, fire_delay=0),
list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=6, burst_accuracy=list(0,-15,-30), dispersion=list(0.0, 0.6, 0.6))
)
/obj/item/gun/projectile/automatic/tommygun
name = "\improper Tommy Gun"
desc = "This weapon was made famous by gangsters in the 20th century. Cybersun Industries is currently reproducing these for a target market of historic gun collectors and classy criminals. Uses .45 rounds."
@@ -452,4 +473,4 @@
if(ammo_magazine)
icon_state = "combatsmg"
else
icon_state = "combatsmg-empty"
icon_state = "combatsmg-empty"
@@ -17,6 +17,17 @@
action_sound = 'sound/weapons/riflebolt.ogg'
pump_animation = "boltaction-cycling"
//////Antique Variant//////
/obj/item/gun/projectile/shotgun/pump/rifle/antique
name = "antique bolt-action rifle"
desc = "A cheaply produced rifle dating from at least the late 21st century, if not before. Hand loaded. Uses 7.62mm rounds."
description_fluff = "These faux-wood plastic unbranded bolt-action rifles were mass produced in the millions to equip early Icarus Front supporters during staged revolutions in the 2090s,\
though the design had circulated on the internet for at least fifty years prior. Surviving examples are relatively common, but generally unreliable as weapons due to their advanced age."
icon_state = "surplus"
item_state = "boltaction_c"
load_method = SINGLE_CASING
max_shells = 7
////////Practice Rifle////////
/obj/item/gun/projectile/shotgun/pump/rifle/practice // For target practice
name = "practice bolt-action rifle"
@@ -76,6 +87,22 @@
/obj/item/gun/projectile/shotgun/pump/rifle/lever/vintage
name = "vintage repeater"
desc = "An iconic manually operated lever action rifle, offering adequate stopping power due to it's still powerful cartridge while at the same time having a rather respectable firing rate due to it's mechanism. It is very probable this is a replica instead of a museum piece, but rifles of this pattern still see usage as colonist guns in some far off regions. Uses 7.62mm rounds."
description_fluff = null
item_state = "levercarbine"
icon_state = "levercarbine"
pump_animation = "levercarbine-cycling"
/obj/item/gun/projectile/shotgun/pump/rifle/lever/brushgun
name = "brush gun"
desc = "The Hedberg-Hammarstrom Myrkvidhr is a high-caliber lever-action hunting rifle designed specifically for tackling the hardy and often armoured wildlife of Sif."
icon_state = "brushgun"
pump_animation = "brushgun-cycling"
max_shells = 8
ammo_type = /obj/item/ammo_casing/a44/rifle
caliber = ".44"
/obj/item/gun/projectile/shotgun/pump/rifle/lever/brushgun/Initialize()
if(prob(50))
icon_state = "trailgun"
pump_animation = "trailgun_cycling"
. = ..()
@@ -55,7 +55,7 @@
options["NT Mk. 58"] = "secguncomp"
options["NT Mk. 58 Custom"] = "secgundark"
options["MarsTech P11 Spur"] = "colt"
options["MarsTech P59 Massif"] = "fnseven"
options["MarsTech P59 Massif"] = "civil"
options["ProTek YC9"] = "usp"
options["ProTek Minx"] = "VP78"
options["Jindal T15 Chooha"] = "p08"
@@ -232,9 +232,22 @@
/obj/item/gun/projectile/pistol/update_icon()
..()
if(silenced)
icon_state = "pistol-silencer"
if(ammo_magazine)
icon_state = "[initial(icon_state)]-silencer"
else
icon_state = "[initial(icon_state)]-silencer-e"
else
icon_state = "pistol"
if(ammo_magazine)
icon_state = "[initial(icon_state)]"
else
icon_state = "[initial(icon_state)]-e"
/obj/item/gun/projectile/pistol/alt
name = "compact government pistol"
desc = "The Jindal PF. A compact, easily concealable gun, though it's only compatible with compact magazines. Uses 9mm rounds."
description_fluff = "The Jindal Arms PF was the company's first entry into the compact pistols market, and has served as the standard issue firearm \
of Tau Ceti government security forces since their consolidation in 2332."
icon_state = "compact"
/obj/item/silencer
name = "silencer"
@@ -246,7 +259,7 @@
/obj/item/gun/projectile/pirate
name = "zip gun"
desc = "Little more than a barrel, handle, and firing mechanism, cheap makeshift firearms like this one are not uncommon in frontier systems."
icon_state = "sawnshotgun"
icon_state = "zipgun"
item_state = "sawnshotgun"
handle_casings = CYCLE_CASINGS //player has to take the old casing out manually before reloading
load_method = SINGLE_CASING
@@ -339,4 +352,28 @@
icon_state = "p92x-brown"
/obj/item/gun/projectile/p92x/large
magazine_type = /obj/item/ammo_magazine/m9mm/large // Spawns with illegal magazines.
magazine_type = /obj/item/ammo_magazine/m9mm/large // Spawns with illegal magazines.
/obj/item/gun/projectile/compact_45
name = "compact .45 pistol"
desc = "A compact and easily concealable gun with surprising firepower, though it's only compatible with compact magazines. Uses .45 rounds."
description_fluff = "The MarsTech Ecureuil is the company's most popular compact .45 model. Perhaps best known as the official service pistol of the Free Relan Federation, despite a notoriously low magazine capacity."
icon_state = "ecureuil"
item_state = null
w_class = ITEMSIZE_SMALL
magazine_type = /obj/item/ammo_magazine/m45/compact
allowed_magazines = list(/obj/item/ammo_magazine/m45/compact)
projectile_type = /obj/item/projectile/bullet/pistol/medium
caliber = ".45"
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3)
load_method = MAGAZINE
/obj/item/gun/projectile/compact_45/update_icon()
..()
if(ammo_magazine)
icon_state = "[initial(icon_state)]"
else
icon_state = "[initial(icon_state)]-e"
/obj/item/gun/projectile/compact_45/tactical
icon_state = "tac_ecureuil"
@@ -42,7 +42,7 @@
name = "mateba"
desc = "This unique looking handgun is named after an Italian company famous for the original manufacture of these revolvers, and pasta kneading machines. Uses .357 rounds." // Yes I'm serious. -Spades
icon_state = "mateba"
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2)
/obj/item/gun/projectile/revolver/detective
name = "revolver"
@@ -71,6 +71,14 @@
to_chat(M, "You name the gun [input]. Say hello to your new friend.")
return 1
/obj/item/gun/projectile/revolver/gold
name = "trophy revolver"
desc = "A prestigious engraved version of the MarsTech R1 Snubnose, mass-produced for presentation to long-serving law enforcement personnel upon retirement. Uses .38-Special rounds."
icon_state = "detective_gold"
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 4)
caliber = ".38"
ammo_type = /obj/item/ammo_casing/a38
/obj/item/gun/projectile/revolver/detective45
name = ".45 revolver"
desc = "A basic revolver, popular among some law enforcement agencies for its simple, long-lasting construction, modified for .45 rounds and a seven-shot cylinder."
@@ -80,7 +88,6 @@
ammo_type = /obj/item/ammo_casing/a45/rubber
max_shells = 7
/obj/item/gun/projectile/revolver/detective45/verb/rename_gun()
set name = "Name Gun"
set category = "Object"
@@ -108,12 +115,14 @@
var/mob/M = usr
var/list/options = list()
options["MarsTech R1 Snubnose"] = "detective"
options["ProTek Cowboy"] = "GP100"
options["MarsTech Frontiersman Classic"] = "detective_peacemaker"
options["MarsTech Frontiersman Shadow"] = "detective_peacemaker_dark"
options["MarsTech Panther"] = "detective_panther"
options["Jindal Duke"] = "lemat_old"
options["ProTek Cowboy"] = "GP100"
options["Jindal Duke"] = "lombardi_police"
options["Jindal Viscount Snub"] = "detective_black"
options["H-H Sindri"] = "webley"
options["H-H Brokkr"] = "nagant"
options["Lombardi Buzzard"] = "detective_buzzard"
options["Lombardi Constable Deluxe 2502"] = "detective_constable"
var/choice = input(M,"Choose your sprite!","Resprite Gun") in options
@@ -151,8 +160,8 @@
/obj/item/gun/projectile/revolver/capgun
name = "cap gun"
desc = "Looks almost like the real thing! Ages 8 and up."
icon_state = "revolver"
item_state = "revolver"
icon_state = "detective_fitz"
item_state = "detective_fitz"
caliber = "caps"
origin_tech = list(TECH_COMBAT = 1, TECH_MATERIAL = 1)
handle_casings = CYCLE_CASINGS
@@ -176,7 +185,7 @@
// ToDo: Remove accuracy debuf in exchange for slightly injuring your hand every time you fire it.
/obj/item/gun/projectile/revolver/lemat
name = "Mako Revolver"
name = "Mako revolver"
desc = "The Bishamonten P100 Mako is a 9 shot revolver with a secondary firing barrel loading shotgun shells. For when you really need something dead. A rare yet deadly collector's item. Uses .38-Special and 12g rounds depending on the barrel."
description_fluff = "The Bishamonten Company operated from roughly 2150-2280 - the height of the first extrasolar colonisation boom - before filing for bankruptcy and selling off its assets to various companies that would go on to become todays TSCs. \
Focused on sleek futurist designs which have largely fallen out of fashion but remain popular with collectors and people hoping to make some quick thalers from replica weapons. \
@@ -269,8 +278,6 @@
else
. += "It has a secondary barrel that is empty."
//Ported from Bay
/obj/item/gun/projectile/revolver/webley
name = "patrol revolver"
desc = "A rugged top break revolver commonly issued to members of the SifGuard. Uses .44 magnum rounds."
@@ -288,6 +295,31 @@
name = "autorevolver"
icon_state = "mosley"
desc = "A shiny Fosbery Autococker automatic revolver, with black accents. Marketed as the 'Revolver for the Modern Era'. Uses .44 magnum rounds."
description_fluff = null
fire_delay = 5.7 //Autorevolver. Also synced with the animation
fire_anim = "mosley_fire"
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 2)
/obj/item/gun/projectile/revolver/webley/large
name = "heavy revolver"
desc = "A high-capacity magnum revolver, polished to a mirror shine. Uses .44 magnum rounds."
description_fluff = "The Hedberg-Hammarstrom Wyrm was designed as a SifGuard sidearm, but the prototype was rejected in favour of the lighter Althing. \
Introduced to the consumer market by popular demand a few years later, the Wyrm has been a hit with collectors ever since."
icon_state = "revolver_stainless"
max_shells = 8
/obj/item/gun/projectile/revolver/webley/magnetic
name = "Auditor revolver"
desc = "A high-powered revolver with a electromagnetically assisted firing mechanism for enhanced armor-piercing capability using standard ammunition. Uses .44 magnum rounds."
description_fluff = "The Lawson Arms LAM-2 Auditor is an experimental hybrid design using an electronic firing mechanism to propel standard ballistic ammunition at absurd velocities. \
Though prohibitively expensive to both obtain and maintain, the Auditor is a favourite with those particular gunmen with near unlimited budgets."
icon_state = "inspector"
projectile_type = /obj/item/projectile/bullet/pistol/strong/ap
origin_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3, TECH_MAGNET = 2)
/obj/item/gun/projectile/revolver/webley/magnetic/update_icon()
cut_overlays()
if(loaded.len==0)
add_overlay("inspector_off")
else
add_overlay("inspector_on")
@@ -90,7 +90,7 @@
/obj/item/gun/projectile/shotgun/doublebarrel
name = "double-barreled shotgun"
desc = "A truely classic weapon. No need to change what works. Uses 12g rounds."
desc = "A truly classic weapon. No need to change what works. Uses 12g rounds."
icon_state = "dshotgun"
item_state = "dshotgun"
//SPEEDLOADER because rapid unloading.
@@ -104,6 +104,7 @@
caliber = "12g"
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 1)
ammo_type = /obj/item/ammo_casing/a12g/beanbag
var/sawn_off = FALSE
burst_delay = 0
firemodes = list(
@@ -117,6 +118,7 @@
/obj/item/gun/projectile/shotgun/doublebarrel/flare
name = "signal shotgun"
desc = "A double-barreled shotgun meant to fire signal flash shells. Uses 12g rounds."
icon_state = "dshotgun_g"
ammo_type = /obj/item/ammo_casing/a12g/flash
/obj/item/gun/projectile/shotgun/doublebarrel/unload_ammo(user, allow_dump)
@@ -135,7 +137,9 @@
burst = burstsetting
return
if(do_after(user, 30)) //SHIT IS STEALTHY EYYYYY
icon_state = "sawnshotgun"
if(sawn_off)
return
icon_state = "[initial(icon_state)]-sawn"
item_state = "sawnshotgun"
w_class = ITEMSIZE_NORMAL
force = 5
@@ -144,18 +148,20 @@
name = "sawn-off shotgun"
desc = "Omar's coming!"
to_chat(user, "<span class='warning'>You shorten the barrel of \the [src]!</span>")
sawn_off = TRUE
else
..()
/obj/item/gun/projectile/shotgun/doublebarrel/sawn
name = "sawn-off shotgun"
desc = "Omar's coming!" // I'm not gonna add "Uses 12g rounds." to this one. I'll just let this reference go undisturbed.
icon_state = "sawnshotgun"
icon_state = "dshotgun-sawn"
item_state = "sawnshotgun"
slot_flags = SLOT_BELT|SLOT_HOLSTER
ammo_type = /obj/item/ammo_casing/a12g/pellet
w_class = ITEMSIZE_NORMAL
force = 5
sawn_off = TRUE
//Sjorgen Inertial Shotgun
/obj/item/gun/projectile/shotgun/semi
@@ -171,4 +177,3 @@
load_method = SINGLE_CASING
max_shells = 5
ammo_type = /obj/item/ammo_casing/a12g/beanbag
@@ -131,6 +131,9 @@
damage = 60
hud_state = "pistol_heavy"
/obj/item/projectile/bullet/pistol/strong/ap
armor_penetration = 15
/obj/item/projectile/bullet/pistol/rubber/strong // "Rubber" bullets for high power pistols.
fire_sound = 'sound/weapons/gunshot3.ogg' // Rubber shots have less powder, but these still have more punch than normal rubber shot.
damage = 10
+1 -1
View File
@@ -45,7 +45,7 @@
name = "xeno taser gun"
desc = "Straight out of NT's testing laboratories, this small gun is used to subdue non-humanoid xeno life forms. \
While marketed towards handling slimes, it may be useful for other creatures."
icon_state = "taserold"
icon_state = "taserblueold"
fire_sound = 'sound/weapons/taser2.ogg'
charge_cost = 120 // Twice as many shots.
projectile_type = /obj/item/projectile/beam/stun/xeno
Binary file not shown.

Before

Width:  |  Height:  |  Size: 133 KiB

After

Width:  |  Height:  |  Size: 135 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 91 KiB

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 626 B

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 47 KiB

@@ -14,7 +14,7 @@
"d" = (
/obj/effect/alien/weeds,
/obj/structure/bed/nest,
/obj/random/handgun,
/obj/random/sidearm,
/turf/simulated/mineral/floor/ignore_mapgen,
/area/submap/cave/vault5)
"e" = (