Makes All Guns Contained Sprites (#8105)

This commit is contained in:
Geeves
2020-01-31 21:27:03 +02:00
committed by GitHub
parent ffff4d446c
commit d93a0030db
177 changed files with 351 additions and 236 deletions

View File

@@ -3,12 +3,11 @@
desc = "A complex single use recharging injector that spreads a complex neurological serum that makes animals docile and friendly. Somewhat."
w_class = 3
origin_tech = list(TECH_BIO = 5, TECH_MATERIAL = 2)
icon_state = "animal_tagger1"
item_icons = list(
slot_l_hand_str = 'icons/mob/items/lefthand_guns.dmi',
slot_r_hand_str = 'icons/mob/items/righthand_guns.dmi'
)
item_state = "gun"
// To-do track down where the hell this sprite went?
icon = 'icons/obj/guns/decloner.dmi'
icon_state = "decloner"
item_state = "decloner"
contained_sprite = TRUE
force = 0
var/loaded = 1
var/mode = "completely"

View File

@@ -131,14 +131,11 @@
/obj/item/toy/crossbow
name = "foam dart crossbow"
desc = "A weapon favored by many overactive children. Ages 8 and up."
icon = 'icons/obj/gun.dmi'
icon = 'icons/obj/guns/crossbow.dmi'
icon_state = "crossbow"
item_state = "crossbow"
drop_sound = 'sound/items/drop/gun.ogg'
item_icons = list(//ITEM_ICONS ARE DEPRECATED. USE CONTAINED SPRITES IN FUTURE
icon_l_hand = 'icons/mob/items/lefthand_guns.dmi',
icon_r_hand = 'icons/mob/items/righthand_guns.dmi'
)
contained_sprite = TRUE
w_class = ITEMSIZE_SMALL
attack_verb = list("attacked", "struck", "hit")
var/bullets = 5

View File

@@ -209,7 +209,7 @@
/obj/random/energy
name = "Random Energy Weapon"
desc = "This is a random security weapon."
icon = 'icons/obj/gun.dmi'
icon = 'icons/obj/guns/ecarbine.dmi'
icon_state = "energykill100"
problist = list(
/obj/item/gun/energy/rifle/laser = 2,
@@ -220,8 +220,8 @@
/obj/random/projectile
name = "Random Projectile Weapon"
desc = "This is a random security weapon."
icon = 'icons/obj/gun.dmi'
icon_state = "revolver"
icon = 'icons/obj/guns/cshotgun.dmi'
icon_state = "cshotgun"
problist = list(
/obj/item/gun/projectile/shotgun/pump = 3,
/obj/item/gun/projectile/automatic/wt550 = 2,
@@ -231,8 +231,8 @@
/obj/random/handgun
name = "Random Handgun"
desc = "This is a random security sidearm."
icon = 'icons/obj/gun.dmi'
icon_state = "secgundark"
icon = 'icons/obj/guns/secgun.dmi'
icon_state = "secgun"
problist = list(
/obj/item/gun/projectile/sec = 3,
/obj/item/gun/projectile/sec/wood = 1
@@ -650,7 +650,7 @@
/obj/random/energy_antag
name = "random energy weapon"
desc = "This is a random energy weapon."
icon = 'icons/obj/gun.dmi'
icon = 'icons/obj/guns/retro.dmi'
icon_state = "retro100"
spawnlist = list(
/obj/item/gun/energy/retro,
@@ -1307,8 +1307,8 @@
/obj/random/vault_weapon
name = "random vault weapon"
desc = "This is a random vault weapon."
icon = 'icons/obj/gun.dmi'
icon_state = "retro100"
icon = 'icons/obj/guns/caplaser.dmi'
icon_state = "caplaser"
spawnlist = list(
/obj/item/gun/custom_ka/frameA/prebuilt = 1,
/obj/item/gun/custom_ka/frameB/prebuilt = 0.5,

View File

@@ -48,7 +48,7 @@ mob/living/carbon/proc/handle_hallucinations()
halitem.layer = 50
switch(rand(1,6))
if(1) //revolver
halitem.icon = 'icons/obj/gun.dmi'
halitem.icon = 'icons/obj/guns/revolver.dmi'
halitem.icon_state = "revolver"
halitem.name = "Revolver"
if(2) //c4

View File

@@ -97,10 +97,6 @@
item_state = "circuitgun"
desc = "It's a case, for building medium-sized electronics with. This one resembles a gun, or some type of tool, \
if you're feeling optimistic."
item_icons = list(
slot_l_hand_str = 'icons/mob/items/lefthand_guns.dmi',
slot_r_hand_str = 'icons/mob/items/righthand_guns.dmi',
)
/obj/item/device/electronic_assembly/medium/radio
name = "type-f electronic mechanism"

View File

@@ -30,16 +30,13 @@
//Parent gun type. Guns are weapons that can be aimed at mobs and act over a distance
/obj/item/gun
name = "gun"
desc = "Its a gun. It's pretty terrible, though."
icon = 'icons/obj/gun.dmi'
var/gun_gui_icons = 'icons/obj/gun_gui.dmi'
item_icons = list(//DEPRECATED. USE CONTAINED SPRITES IN FUTURE
slot_l_hand_str = 'icons/mob/items/lefthand_guns.dmi',
slot_r_hand_str = 'icons/mob/items/righthand_guns.dmi'
)
icon_state = "detective"
item_state = "gun"
flags = CONDUCT
desc = "It's a gun. It's pretty terrible, though."
icon = 'icons/obj/guns/pistol.dmi'
var/gun_gui_icons = 'icons/obj/guns/gun_gui.dmi'
icon_state = "pistol"
item_state = "pistol"
contained_sprite = TRUE
flags = CONDUCT
slot_flags = SLOT_BELT|SLOT_HOLSTER
matter = list(DEFAULT_WALL_MATERIAL = 2000)
w_class = 3
@@ -121,7 +118,7 @@
underlays.Cut()
if(bayonet)
var/image/I
I = image(icon, "bayonet")
I = image(icon = 'icons/obj/guns/bayonet.dmi', "bayonet")
I.pixel_x = knife_x_offset
I.pixel_y = knife_y_offset
underlays += I

View File

@@ -10,7 +10,7 @@
var/spikes = 3
release_force = 30
slot_flags = SLOT_BELT|SLOT_BACK
icon = 'icons/obj/gun.dmi'
icon = 'icons/obj/guns/spikethrower.dmi'
icon_state = "spikethrower3"
item_state = "spikethrower"
fire_sound_text = "a strange noise"
@@ -67,7 +67,7 @@
name = "alien heavy cannon"
desc = "It's some kind of enormous alien weapon, as long as a man is tall."
icon = 'icons/obj/gun.dmi' //Actual on-sprite is handled by icon_override.
icon = 'icons/obj/guns/noisecannon.dmi'
icon_state = "noisecannon"
item_state = "noisecannon"
recoil = 1

View File

@@ -1,6 +1,7 @@
/obj/item/gun/bang
name = "some shitty-ass gun"
desc = "This is a gun. Neat!"
icon = 'icons/obj/guns/revolver.dmi'
icon_state = "revolver"
item_state = "revolver"
fire_sound = 'sound/misc/sadtrombone.ogg'

View File

@@ -1,7 +1,9 @@
/obj/item/gun/bang/colt
name = "vintage .45 pistol"
desc = "A cheap Martian knock-off of a Colt M1911. Uses .45 rounds."
icon = 'icons/obj/guns/colt.dmi'
icon_state = "colt"
item_state = "colt"
pixel_offset_x = 30
pixel_offset_y = 18
@@ -9,7 +11,9 @@
name = ".45 pistol"
desc = "A NanoTrasen designed sidearm, found among law enforcement and security forces. Uses .45 rounds."
description_fluff = "The NT Mk58 is a ballistic sidearm developed and produced by Nanotrasen. Bulky and heavy, the Mk58 is nonetheless used by security forces and law enforcement for its ease of use, low maintenance requirement, longevity, reliability - and most of all, extremely inexpensive price tag. A trademark of Nanotrasen security forces. It uses .45 rounds."
icon_state = "secguncomp"
icon = 'icons/obj/guns/secgun.dmi'
icon_state = "secgun"
item_state = "secgun"
pixel_offset_x = 28
pixel_offset_y = 14
@@ -20,51 +24,60 @@
desc = "A NanoTrasen designed sidearm, found among law enforcement and security forces. It has a wooden grip. Uses .45 rounds."
description_fluff = "The NT Mk58 is a ballistic sidearm developed and produced by Nanotrasen. Bulky and heavy, the Mk58 is nonetheless used by security forces and law enforcement for its ease of use, low maintenance requirement, longevity, reliability - and most of all, extremely inexpensive price tag. A trademark of Nanotrasen security forces. This one has a wooden grip. It uses .45 rounds."
name = "custom .45 Pistol"
icon_state = "secgundark"
icon = 'icons/obj/guns/secgun_wood.dmi'
icon_state = "secgunwood"
item_state = "secgunwood"
/obj/item/gun/bang/x9
name = "automatic .45 pistol"
desc = "The x9 tactical pistol is a lightweight fast firing handgun. Uses .45 rounds."
icon = 'icons/obj/guns/x9.dmi'
icon_state = "x9tactical"
item_state = "x9"
pixel_offset_x = 28
pixel_offset_y = 13
/obj/item/gun/bang/tanto
desc = "A Necropolis Industries Tanto .40, designed to compete with the NT Mk58. Uses 10mm rounds."
name = "10mm pistol"
icon = 'icons/obj/guns/c05r.dmi'
icon_state = "c05r"
item_state = "c05r"
pixel_offset_x = 31
pixel_offset_y = 14
/obj/item/gun/bang/silenced
name = "silenced pistol"
desc = "A small, quiet, easily concealable gun. Uses .45 rounds."
desc = "A small, quiet, easily concealable gun. Uses .45 rounds."
icon = 'icons/obj/guns/silenced_pistol.dmi'
icon_state = "silenced_pistol"
item_state = "silenced_pistol"
pixel_offset_x = -4
pixel_offset_y = 15
obj/item/gun/bang/deagle
name = ".50 magnum pistol"
desc = "A robust handgun that uses .50 AE ammo."
icon = 'icons/obj/guns/deagle.dmi'
icon_state = "deagle"
item_state = "deagle"
pixel_offset_x = -4
pixel_offset_y = 16
/obj/item/gun/bang/pistol
name = "9mm pistol"
desc = "500 years since its creation and the Stechkin automatic pistol is still a common sight throughout the Frontier."
icon = 'icons/obj/guns/pistol.dmi'
icon_state = "pistol"
item_state = null
item_state = "pistol"
pixel_offset_x = 26
pixel_offset_y = 14
/obj/item/gun/bang/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 = 'icons/obj/guns/zipgun.dmi'
icon_state = "zipgun"
item_state = "sawnshotgun"
item_state = "zipgun"
pixel_offset_x = 0
pixel_offset_y = 12
pixel_offset_y = 12

View File

@@ -1,3 +1,3 @@
/obj/item/gun/bang/revolver
name = "revolver"
desc = "The classic Necropolis Industries .357 revolver, for when you only want to shoot once."
desc = "The classic Necropolis Industries .357 revolver, for when you only want to shoot once."

View File

@@ -1,11 +1,15 @@
/obj/item/gun/energy
name = "energy gun"
desc = "A basic energy-based gun."
icon_state = "energy"
icon = 'icons/obj/guns/ecarbine.dmi'
icon_state = "energykill100"
item_state = "energykill100"
fire_sound = 'sound/weapons/Taser.ogg'
fire_sound_text = "laser blast"
update_icon_on_init = TRUE
var/has_item_ratio = TRUE // Does this gun use the ratio system to paint its item_states?
var/obj/item/cell/power_supply //What type of power cell this uses
var/charge_cost = 200 //How much energy is needed to fire.
var/max_shots = 10 //Determines the capacity of the weapon's power cell. Specifying a cell_type overrides this value.
@@ -67,10 +71,14 @@
addtimer(CALLBACK(src, .proc/try_recharge), recharge_time * 2 SECONDS, TIMER_UNIQUE)
/obj/item/gun/energy/consume_next_projectile()
if(!power_supply) return null
if(!ispath(projectile_type)) return null
if(!power_supply.checked_use(charge_cost)) return null
if (self_recharge) addtimer(CALLBACK(src, .proc/try_recharge), recharge_time * 2 SECONDS, TIMER_UNIQUE)
if(!power_supply)
return null
if(!ispath(projectile_type))
return null
if(!power_supply.checked_use(charge_cost))
return null
if(self_recharge)
addtimer(CALLBACK(src, .proc/try_recharge), recharge_time * 2 SECONDS, TIMER_UNIQUE)
return new projectile_type(src)
/obj/item/gun/energy/proc/get_external_power_supply()
@@ -102,6 +110,7 @@
..()
if(charge_meter && power_supply && power_supply.maxcharge)
var/ratio = power_supply.charge / power_supply.maxcharge
var/item_state_ratio = ""
//make sure that rounding down will not give us the empty state even if we have charge for a shot left.
if(power_supply.charge < charge_cost)
@@ -109,8 +118,13 @@
else
ratio = max(round(ratio, 0.25) * 100, 25)
if(has_item_ratio)
item_state_ratio = ratio
if(modifystate)
icon_state = "[modifystate][ratio]"
item_state = "[modifystate][item_state_ratio]"
else
icon_state = "[initial(icon_state)][ratio]"
update_held_icon()
item_state = "[initial(item_state)][item_state_ratio]"
update_held_icon()

View File

@@ -1,8 +1,10 @@
/obj/item/gun/energy/blaster
name = "blaster pistol"
desc = "A tiny energy pistol converted to fire off energy bolts rather than lasers beams."
icon = 'icons/obj/guns/blaster_pistol.dmi'
icon_state = "blaster_pistol"
item_state = "blaster_pistol"
has_item_ratio = FALSE
fire_sound = 'sound/weapons/Laser.ogg'
slot_flags = SLOT_BELT|SLOT_HOLSTER
w_class = 2
@@ -37,7 +39,9 @@
/obj/item/gun/energy/blaster/revolver
name = "blaster revolver"
desc = "A robust eight-shot blaster.."
icon = 'icons/obj/guns/blaster_revolver.dmi'
icon_state = "blaster_revolver"
item_state = "blaster_revolver"
fire_sound = 'sound/weapons/laserstrong.ogg'
projectile_type = /obj/item/projectile/energy/blaster
max_shots = 8
@@ -63,6 +67,7 @@
/obj/item/gun/energy/blaster/carbine
name = "blaster carbine"
desc = "A short-barreled blaster carbine meant for easy handling and comfort when in combat."
icon = 'icons/obj/guns/blaster_carbine.dmi'
icon_state = "blaster_carbine"
item_state = "blaster_carbine"
max_shots = 12
@@ -74,6 +79,7 @@
/obj/item/gun/energy/blaster/rifle
name = "bolt slinger"
desc = "A blaster rifle which seems to work by accelerating particles and flinging them out in destructive bolts."
icon = 'icons/obj/guns/blaster_rifle.dmi'
icon_state = "blaster_rifle"
item_state = "blaster_rifle"
max_shots = 20
@@ -109,4 +115,4 @@
if(wielded)
toggle_scope(2.0, usr)
else
to_chat(usr, "<span class='warning'>You can't look through the scope without stabilizing the rifle!</span>")
to_chat(usr, "<span class='warning'>You can't look through the scope without stabilizing the rifle!</span>")

View File

@@ -1,6 +1,7 @@
/obj/item/gun/energy/rifle/icelance
name = "icelance rifle"
desc = "A Tajaran made rifle, it houses a crank-chargable internal battery. It only holds three shots and each shot must be cranked manually."
icon = 'icons/obj/guns/icelance.dmi'
icon_state = "icelance"
item_state = "icelance"
fire_sound = 'sound/weapons/Laser.ogg'
@@ -56,4 +57,4 @@
item_state = "icelance-wielded"
else
item_state = initial(item_state)
update_held_icon()
update_held_icon()

View File

@@ -1,8 +1,10 @@
/obj/item/gun/energy/laser
name = "laser carbine"
desc = "An Hephaestus Industries G40E carbine, designed to kill with concentrated energy blasts."
icon = 'icons/obj/guns/laserrifle.dmi'
icon_state = "laserrifle"
item_state = "laserrifle"
has_item_ratio = FALSE // the back and suit slots have ratio sprites but the in-hands dont
fire_sound = 'sound/weapons/Laser.ogg'
slot_flags = SLOT_BELT|SLOT_BACK
accuracy = 1
@@ -32,8 +34,10 @@
obj/item/gun/energy/retro
name = "retro laser"
icon = 'icons/obj/guns/retro.dmi'
icon_state = "retro"
item_state = "retro"
has_item_ratio = FALSE
desc = "An older model of the basic lasergun. Nevertheless, it is still quite deadly and easy to maintain, making it a favorite amongst pirates and other outlaws."
fire_sound = 'sound/weapons/Laser.ogg'
slot_flags = SLOT_BELT
@@ -46,8 +50,10 @@ obj/item/gun/energy/retro
/obj/item/gun/energy/captain
name = "antique laser gun"
icon = 'icons/obj/guns/caplaser.dmi'
icon_state = "caplaser"
item_state = "caplaser"
has_item_ratio = FALSE
desc = "This is an antique laser gun. All craftsmanship is of the highest quality. The object menaces with spikes of energy."
force = 5
fire_sound = 'sound/weapons/Laser.ogg'
@@ -65,8 +71,9 @@ obj/item/gun/energy/retro
name = "laser cannon"
desc = "A nanotrasen designed laser cannon capable of acting as a powerful support weapon."
description_fluff = "The NT LC-4 is a laser cannon developed and produced by Nanotrasen. Produced and sold to organizations both in need of a highly powerful support weapon and can afford its high unit cost. In spite of the low capacity, it is a highly capable tool, cutting down fortifications and armored targets with ease."
icon = 'icons/obj/guns/lasercannon.dmi'
icon_state = "lasercannon"
item_state = null
item_state = "lasercannon"
fire_sound = 'sound/weapons/lasercannonfire.ogg'
origin_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3, TECH_POWER = 3)
slot_flags = SLOT_BELT|SLOT_BACK
@@ -93,8 +100,10 @@ obj/item/gun/energy/retro
name = "xray laser gun"
desc = "A Nanotrasen designed high-power laser sidearm capable of expelling concentrated xray blasts."
description_fluff = "The NT XG-1 is a laser sidearm developed and produced by Nanotrasen. A recent invention, used for specialist operations, it is presently being produced and sold in limited capacity over the galaxy. Designed for precision strikes, releasing concentrated xray blasts that are capable of hitting targets behind cover. It is compact with relatively high capacity to other sidearms."
icon = 'icons/obj/guns/xray.dmi'
icon_state = "xray"
item_state = "xray"
has_item_ratio = FALSE
fire_sound = 'sound/weapons/laser3.ogg'
origin_tech = list(TECH_COMBAT = 5, TECH_MATERIAL = 3, TECH_MAGNET = 2, TECH_ILLEGAL = 2)
projectile_type = /obj/item/projectile/beam/xray
@@ -116,8 +125,10 @@ obj/item/gun/energy/retro
/obj/item/gun/energy/sniperrifle
name = "marksman energy rifle"
desc = "The HI L.W.A.P. is an older design of Hephaestus Industries. A designated marksman rifle capable of shooting powerful ionized beams, this is a weapon to kill from a distance."
icon = 'icons/obj/guns/sniper.dmi'
icon_state = "sniper"
item_state = "psniper"
item_state = "sniper"
has_item_ratio = FALSE // same as the laserrifle
fire_sound = 'sound/weapons/marauder.ogg'
origin_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 5, TECH_POWER = 4)
projectile_type = /obj/item/projectile/beam/sniper
@@ -152,7 +163,8 @@ obj/item/gun/energy/retro
name = "quad-beam laser"
desc = "A Nanotrasen designed laser weapon, designed to split a single beam four times."
description_fluff = "The NT QB-2 is a laser weapon developed and produced by Nanotrasen. Designed to fill in the niche that ballistic shotguns do, but in the form of laser weaponry. It is equipped with a special crystal lens that splits a single laser beam into four."
icon_state = "oldenergykill"
icon = 'icons/obj/guns/ecarbine.dmi' // using this as placeholder until proper sprites are made
icon_state = "energykill"
item_state = "energykill"
fire_sound = 'sound/weapons/Laser.ogg'
slot_flags = SLOT_BELT|SLOT_BACK
@@ -178,6 +190,7 @@ obj/item/gun/energy/retro
/obj/item/gun/energy/lasertag
name = "laser tag gun"
item_state = "laser"
has_item_ratio = FALSE
desc = "Standard issue weapon of the Imperial Guard"
origin_tech = list(TECH_COMBAT = 1, TECH_MAGNET = 2)
self_recharge = 1
@@ -194,6 +207,7 @@ obj/item/gun/energy/retro
return ..()
/obj/item/gun/energy/lasertag/blue
icon = 'icons/obj/guns/bluetag.dmi'
icon_state = "bluetag"
item_state = "bluetag"
projectile_type = /obj/item/projectile/beam/lastertag/blue
@@ -204,6 +218,7 @@ obj/item/gun/energy/retro
turret_sprite_set = "blue"
/obj/item/gun/energy/lasertag/red
icon = 'icons/obj/guns/redtag.dmi'
icon_state = "redtag"
item_state = "redtag"
projectile_type = /obj/item/projectile/beam/lastertag/red
@@ -211,4 +226,4 @@ obj/item/gun/energy/retro
pin = /obj/item/device/firing_pin/tag/red
can_turret = 1
turret_is_lethal = 0
turret_sprite_set = "red"
turret_sprite_set = "red"

View File

@@ -1,7 +1,9 @@
/obj/item/gun/energy/lawgiver
name = "\improper Lawgiver Mk II"
icon = 'icons/obj/guns/lawgiver.dmi'
icon_state = "lawgiver"
item_state = "gun"
item_state = "lawgiver"
has_item_ratio = FALSE
origin_tech = list(TECH_COMBAT = 6, TECH_MAGNET = 5)
sel_mode = 1
var/mode_check = 1
@@ -218,4 +220,4 @@
if(mode_check != sel_mode)
var/datum/firemode/new_mode = firemodes[sel_mode]
new_mode.apply_to(src)
mode_check = sel_mode
mode_check = sel_mode

View File

@@ -3,12 +3,12 @@
/obj/item/gun/energy/staff
name = "staff of change"
desc = "An artefact that spits bolts of coruscating energy which cause the target's very form to reshape itself."
icon = 'icons/obj/gun.dmi'
item_icons = null
icon = 'icons/obj/guns/staffofchange.dmi'
icon_state = "staffofchange"
item_state = "staffofchange"
has_item_ratio = FALSE
fire_sound = 'sound/magic/Staff_Change.ogg'
flags = CONDUCT
flags = CONDUCT
slot_flags = SLOT_BACK
w_class = 4.0
max_shots = 1
@@ -102,7 +102,7 @@ obj/item/gun/energy/staff/animate/special_check(var/mob/living/user)
obj/item/gun/energy/staff/focus
name = "mental focus"
desc = "An artefact that channels the will of the user into destructive bolts of force. If you aren't careful with it, you might poke someone's brain out."
icon = 'icons/obj/wizard.dmi'
icon = 'icons/obj/guns/mental_focus.dmi'
icon_state = "focus"
item_state = "focus"
fire_sound = 'sound/magic/wand.ogg'
@@ -149,9 +149,8 @@ obj/item/gun/energy/staff/focus/attack_self(mob/living/user as mob)
icon = 'icons/obj/wands.dmi'
icon_state = "staffofchaos"
item_state = "staffofchaos"
contained_sprite = 1
fire_sound = 'sound/magic/Staff_Chaos.ogg'
flags = CONDUCT
flags = CONDUCT
w_class = 4.0
max_shots = 5
projectile_type = /obj/item/projectile/magic
@@ -182,10 +181,9 @@ obj/item/gun/energy/staff/focus/attack_self(mob/living/user as mob)
name = "wand of nothing"
desc = "A magic stick, this one don't do much however."
icon = 'icons/obj/wands.dmi'
item_icons = null
icon_state = "nothingwand"
item_state = "wand"
contained_sprite = 1
has_item_ratio = FALSE
fire_sound = 'sound/magic/wand.ogg'
slot_flags = SLOT_BELT
w_class = 3
@@ -220,7 +218,6 @@ obj/item/gun/energy/staff/focus/attack_self(mob/living/user as mob)
name = "wand of fire"
desc = "A wand that can fire destructive flames."
icon = 'icons/obj/wands.dmi'
contained_sprite = 1
icon_state = "firewand"
item_state = "firewand"
fire_sound = 'sound/magic/Fireball.ogg'
@@ -246,7 +243,6 @@ obj/item/gun/energy/staff/focus/attack_self(mob/living/user as mob)
name = "wand of polymorph"
desc = "A wand that will change the shape of the its victims."
icon = 'icons/obj/wands.dmi'
contained_sprite = 1
icon_state = "polywand"
item_state = "polywand"
fire_sound = 'sound/magic/Staff_Change.ogg'
@@ -272,7 +268,6 @@ obj/item/gun/energy/staff/focus/attack_self(mob/living/user as mob)
name = "wand of teleportation"
desc = "This wand will send your targets away, or closer, to yourself."
icon = 'icons/obj/wands.dmi'
contained_sprite = 1
icon_state = "telewand"
item_state = "telewand"
fire_sound = 'sound/magic/Wand_Teleport.ogg'
@@ -309,7 +304,6 @@ obj/item/gun/energy/staff/focus/attack_self(mob/living/user as mob)
name = "wand of force"
desc = "A more portable version of the mental focus, still deadly."
icon = 'icons/obj/wands.dmi'
contained_sprite = 1
icon_state = "deathwand"
item_state = "deathwand"
max_shots = 10
@@ -335,7 +329,6 @@ obj/item/gun/energy/staff/focus/attack_self(mob/living/user as mob)
name = "wand of animation"
desc = "This wand will create a legion of murderous toilets, for your own leisure."
icon = 'icons/obj/wands.dmi'
contained_sprite = 1
icon_state = "revivewand"
item_state = "revivewand"
max_shots = 10

View File

@@ -3,7 +3,6 @@
/obj/item/gun/energy/plasmacutter
name = "plasma cutter"
desc = "A mining tool capable of expelling concentrated plasma bursts. You could use it to cut limbs off of xenos! Or, you know, mine stuff."
contained_sprite = 1
charge_meter = 0
icon = 'icons/obj/mining_contained.dmi'
icon_state = "plasma"

View File

@@ -1,9 +1,10 @@
/obj/item/gun/energy/gun
name = "energy carbine"
desc = "A Nanotrasen designed energy-based carbine with two settings: Stun and kill."
description_fluff = "The NT EC-4 is an energy carbine developed and produced by Nanotrasen. Compact, light and durable, used by security forces and law enforcement for its ability to fire stun or lethal beams, depending on selection. It is widely sold and distributed across the galaxy."
icon_state = "energystun100"
item_state = null // so the human update icon uses the icon_state instead.
description_fluff = "The NT EC-4 is an energy carbine developed and produced by Nanotrasen. Compact, light and durable, used by security forces and law enforcement for its ability to fire stun or lethal beams, depending on selection. It is widely sold and distributed across the galaxy."
icon = 'icons/obj/guns/ecarbine.dmi'
icon_state = "energystun"
item_state = "energystun"
fire_sound = 'sound/weapons/Taser.ogg'
slot_flags = SLOT_BELT
accuracy = 1
@@ -34,7 +35,9 @@
/obj/item/gun/energy/gun/nuclear
name = "advanced energy gun"
desc = "An energy gun with an experimental miniaturized reactor."
icon = 'icons/obj/guns/nucgun.dmi'
icon_state = "nucgun"
item_state = "nucgun"
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 5, TECH_POWER = 3)
slot_flags = SLOT_BELT
force = 8 //looks heavier than a pistol
@@ -106,11 +109,7 @@
add_overlay("nucgun-stun")
if("lethal")
add_overlay("nucgun-kill")
/*
/obj/item/gun/energy/gun/nuclear/emp_act(severity)
..()
reliability -= round(15/severity)
*/
/obj/item/gun/energy/gun/nuclear/update_icon()
cut_overlays()
update_charge()
@@ -121,8 +120,9 @@
name = "energy pistol"
desc = "A Nanotrasen energy-based pistol gun with two settings: Stun and kill."
description_fluff = "The NT EP-3 is an energy sidearm developed and produced by Nanotrasen. Compact, light and durable, used by security forces and law enforcement for its ability to fire stun or lethal beams, depending on selection. It is widely sold and distributed across the galaxy."
icon_state = "epistolstun100"
item_state = null //so the human update icon uses the icon_state instead.
icon = 'icons/obj/guns/epistol.dmi'
icon_state = "epistolstun"
item_state = "epistolstun"
fire_sound = 'sound/weapons/Taser.ogg'
slot_flags = SLOT_BELT|SLOT_HOLSTER
max_shots = 7
@@ -145,9 +145,11 @@
/obj/item/gun/energy/pistol/hegemony
name = "hegemony energy pistol"
desc = "An upgraded variant of the standard energy pistol with two settings: Incapacitate and Smite"
desc = "An upgraded variant of the standard energy pistol with two settings: Incapacitate and Smite."
icon = 'icons/obj/guns/hegemony_pistol.dmi'
icon_state = "hegemony_pistol"
item_state = "hegemony_pistol"
has_item_ratio = FALSE
fire_sound = 'sound/weapons/Taser.ogg'
slot_flags = SLOT_BELT|SLOT_HOLSTER
max_shots = 10

View File

@@ -1,6 +1,7 @@
/obj/item/gun/energy/pulse
name = "pulse carbine"
desc = "A weapon that uses advanced pulse-based beam generation technology to emit powerful laser blasts. Because of its complexity and cost, it is rarely seen in use except by specialists."
icon = 'icons/obj/guns/pulse_carbine.dmi'
icon_state = "pulse_carbine"
item_state = "pulse_carbine"
slot_flags = SLOT_BELT
@@ -35,6 +36,7 @@
name = "pulse pistol"
desc = "A weapon that uses advanced pulse-based beam generation technology to emit powerful laser blasts. This one is a really compact model."
slot_flags = SLOT_BELT|SLOT_HOLSTER
icon = 'icons/obj/guns/pulse_pistol.dmi'
icon_state = "pulse_pistol"
item_state = "pulse_pistol"
max_shots = 5
max_shots = 5

View File

@@ -1,9 +1,10 @@
/obj/item/gun/energy/rifle
name = "energy rifle"
desc = "A Nanotrasen designed energy-based rifle with two settings: stun and kill."
desc = "A Nanotrasen designed energy-based rifle with two settings: Stun and Kill."
description_fluff = "The NT ER-2 is an energy rifle developed and produced by Nanotrasen. Widely produced and sold across the galaxy. Designed to both stun and kill with concentrated energy blasts of varying strengths based on the fire mode, focused through a crystal lens. Considered to be a dual-purpose rifle with prolonged combat capability."
icon_state = "eriflestun100"
item_state = "elaser" //placeholder for now
icon = 'icons/obj/guns/erifle.dmi'
icon_state = "eriflestun"
icon_state = "eriflestun"
fire_sound = 'sound/weapons/Taser.ogg'
slot_flags = SLOT_BACK
w_class = 4
@@ -38,9 +39,11 @@
/obj/item/gun/energy/rifle/laser
name = "laser rifle"
desc = "A Nanotrasen designed laser weapon, designed to kill with concentrated energy blasts."
description_fluff = "The NT LR-6 is a laser rifle developed and produced by Nanotrasen. Designed to kill with concentrated energy blasts focused through a crystal lens. It is considered to be the template of other standard laser weaponry."
description_fluff = "The NT LR-6 is a laser rifle developed and produced by Nanotrasen. Designed to kill with concentrated energy blasts focused through a crystal lens. It is considered to be the template of other standard laser weaponry."
icon = 'icons/obj/guns/laserrifle.dmi'
icon_state = "laserrifle"
item_state = "laserrifle"
has_item_ratio = FALSE // the back and suit slots have ratio sprites but the in-hands dont
fire_sound = 'sound/weapons/Laser.ogg'
max_shots = 15
origin_tech = list(TECH_COMBAT = 3, TECH_MAGNET = 2)
@@ -66,10 +69,11 @@
name = "laser cannon"
desc = "A nanotrasen designed laser cannon capable of acting as a powerful support weapon."
description_fluff = "The NT LC-4 is a laser cannon developed and produced by Nanotrasen. Produced and sold to organizations both in need of a highly powerful support weapon and can afford its high unit cost. In spite of the low capacity, it is a highly capable tool, cutting down fortifications and armored targets with ease."
icon = 'icons/obj/guns/lasercannon.dmi'
icon_state = "lasercannon"
item_state = "lasercannon"
has_item_ratio = TRUE
fire_sound = 'sound/weapons/lasercannonfire.ogg'
origin_tech = "combat=4;materials=3;powerstorage=3"
projectile_type = /obj/item/projectile/beam/heavylaser
origin_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 3, TECH_POWER = 3)
charge_cost = 400
@@ -89,6 +93,7 @@
name = "xray laser rifle"
desc = "A Nanotrasen designed high-power laser rifle capable of expelling concentrated xray blasts."
description_fluff = "The NT XR-1 is a laser firearm developed and produced by Nanotrasen. A recent innovation, used for specialist operations, it is presently being produced and sold in limited capacity over the galaxy. Designed for precision strikes, releasing concentrated xray blasts that are capable of hitting targets behind cover, all the while having a large ammo capacity."
icon = 'icons/obj/guns/xrifle.dmi'
icon_state = "xrifle"
item_state = "xrifle"
fire_sound = 'sound/weapons/laser3.ogg'
@@ -104,6 +109,7 @@
/obj/item/gun/energy/rifle/pulse
name = "pulse rifle"
desc = "A weapon that uses advanced pulse-based beam generation technology to emit powerful laser blasts. Because of its complexity and cost, it is rarely seen in use except by specialists."
icon = 'icons/obj/guns/pulse.dmi'
icon_state = "pulse"
item_state = "pulse"
fire_sound = 'sound/weapons/Laser.ogg'
@@ -127,8 +133,8 @@
/obj/item/gun/energy/rifle/pulse/destroyer
name = "pulse destroyer"
desc = "A heavy-duty, pulse-based energy weapon. Because of its complexity and cost, it is rarely seen in use except by specialists."
fire_sound='sound/weapons/pulse.ogg'
projectile_type=/obj/item/projectile/beam/pulse
fire_sound = 'sound/weapons/pulse.ogg'
projectile_type = /obj/item/projectile/beam/pulse
burst_delay = 5
burst = 3
max_shots = 30
@@ -141,10 +147,10 @@
/obj/item/gun/energy/rifle/laser/tachyon
name = "tachyon rifle"
desc = "A Vaurcan rifle that fires a beam of concentrated faster than light particles, capable of passing through most forms of matter."
contained_sprite = 1
icon = 'icons/obj/vaurca_items.dmi'
icon_state = "tachyonrifle"
item_state = "tachyonrifle"
has_item_ratio = FALSE
fire_sound = 'sound/weapons/laser3.ogg'
projectile_type = /obj/item/projectile/beam/tachyon
origin_tech = list(TECH_COMBAT = 5, TECH_MATERIAL = 3, TECH_MAGNET = 2, TECH_ILLEGAL = 2)
@@ -163,4 +169,4 @@
if(wielded)
toggle_scope(2.0, usr)
else
to_chat(usr, "<span class='warning'>You can't look through the scope without stabilizing the rifle!</span>")
to_chat(usr, "<span class='warning'>You can't look through the scope without stabilizing the rifle!</span>")

View File

@@ -1,6 +1,7 @@
/obj/item/gun/energy/rifle/ionrifle
name = "ion rifle"
desc = "The NT Mk70 EW Halicon is a man portable anti-armor weapon designed to disable mechanical threats, produced by NT. Has two settings: stun and kill"
desc = "The NT Mk70 EW Halicon is a man portable anti-armor weapon designed to disable mechanical threats, produced by NT. Has two settings: Stun and Lethal."
icon = 'icons/obj/guns/ionrifle.dmi'
icon_state = "ionriflestun100"
item_state = "ionriflestun100" // so the human update icon uses the icon_state instead.
modifystate = "ionriflestun"
@@ -10,11 +11,11 @@
w_class = 4
accuracy = 1
force = 10
flags = CONDUCT
flags = CONDUCT
slot_flags = SLOT_BACK
charge_cost = 300
max_shots = 10
secondary_projectile_type = /obj/item/projectile/ion
secondary_projectile_type = /obj/item/projectile/ion
secondary_fire_sound = 'sound/weapons/Laser.ogg'
can_turret = 1
can_switch_modes = 1
@@ -56,8 +57,10 @@
/obj/item/gun/energy/decloner
name = "biological demolecularisor"
desc = "A gun that discharges high amounts of controlled radiation to slowly break a target into component elements."
icon = 'icons/obj/guns/decloner.dmi'
icon_state = "decloner"
item_state = "decloner"
has_item_ratio = FALSE
fire_sound = 'sound/weapons/pulse3.ogg'
origin_tech = list(TECH_COMBAT = 5, TECH_MATERIAL = 4, TECH_POWER = 3)
max_shots = 10
@@ -66,8 +69,10 @@
/obj/item/gun/energy/floragun
name = "floral somatoray"
desc = "A tool that discharges controlled radiation which induces mutation in plant cells."
icon = 'icons/obj/guns/flora.dmi'
icon_state = "floramut100"
item_state = "floramut"
has_item_ratio = FALSE
fire_sound = 'sound/effects/stealthoff.ogg'
charge_cost = 100
max_shots = 10
@@ -94,8 +99,10 @@
/obj/item/gun/energy/meteorgun
name = "meteor gun"
desc = "For the love of god, make sure you're aiming this the right way!"
icon = 'icons/obj/guns/meteor_gun.dmi'
icon_state = "meteor_gun"
item_state = "c20r"
item_state = "meteor_gun"
has_item_ratio = FALSE
slot_flags = SLOT_BELT|SLOT_BACK
w_class = 4
max_shots = 10
@@ -110,6 +117,7 @@
name = "meteor pen"
desc = "The pen is mightier than the sword."
icon = 'icons/obj/bureaucracy.dmi'
contained_sprite = FALSE
icon_state = "pen"
item_state = "pen"
w_class = 1
@@ -120,7 +128,10 @@
/obj/item/gun/energy/mindflayer
name = "mind flayer"
desc = "A custom-built weapon of some kind."
icon = 'icons/obj/guns/xray.dmi'
icon_state = "xray"
item_state = "xray"
has_item_ratio = FALSE
projectile_type = /obj/item/projectile/beam/mindflayer
fire_sound = 'sound/weapons/Laser.ogg'
can_turret = 1
@@ -129,7 +140,10 @@
/obj/item/gun/energy/toxgun
name = "phoron pistol"
desc = "A specialized firearm designed to fire lethal bolts of phoron."
icon = 'icons/obj/guns/toxgun.dmi'
icon_state = "toxgun"
item_state = "toxgun"
has_item_ratio = FALSE
fire_sound = 'sound/effects/stealthoff.ogg'
w_class = 3.0
origin_tech = list(TECH_COMBAT = 5, TECH_PHORON = 4)
@@ -141,8 +155,10 @@
/obj/item/gun/energy/beegun
name = "\improper NanoTrasen Portable Apiary"
desc = "An experimental firearm that converts energy into bees, for purely botanical purposes."
icon = 'icons/obj/guns/gyrorifle.dmi'
icon_state = "gyrorifle"
item_state = "arifle"
item_state = "gyrorifle"
has_item_ratio = FALSE
charge_meter = 0
w_class = 4
fire_sound = 'sound/effects/Buzz2.ogg'
@@ -160,7 +176,10 @@
/obj/item/gun/energy/mousegun
name = "pest gun"
desc = "The NT \"Arodentia\" Pesti-Shock is a highly sophisticated and probably safe beamgun designed for rapid pest-control."
icon = 'icons/obj/guns/pestishock.dmi'
icon_state = "pestishock"
item_state = "pestishock"
has_item_ratio = FALSE
w_class = 3
fire_sound = 'sound/weapons/taser2.ogg'
force = 5
@@ -186,7 +205,10 @@
/obj/item/gun/energy/net
name = "net gun"
desc = "A gun designed to deploy energy nets to capture animals or unruly crew members."
icon = 'icons/obj/guns/netgun.dmi'
icon_state = "netgun"
item_state = "netgun"
has_item_ratio = FALSE
projectile_type = /obj/item/projectile/beam/energy_net
fire_sound = 'sound/weapons/plasma_cutter.ogg'
slot_flags = SLOT_HOLSTER | SLOT_BELT
@@ -214,8 +236,10 @@
/obj/item/gun/energy/vaurca/bfg
name = "BFG 9000"
desc = "'Bio-Force Gun'. Yeah, right."
icon = 'icons/obj/guns/bfg.dmi'
icon_state = "bfg"
item_state = "bfg"
has_item_ratio = FALSE
charge_meter = 0
w_class = 4
fire_sound = 'sound/magic/LightningShock.ogg'
@@ -234,8 +258,10 @@
/obj/item/gun/energy/vaurca/gatlinglaser
name = "gatling laser"
desc = "A highly sophisticated rapid fire laser weapon."
icon = 'icons/obj/guns/gatling.dmi'
icon_state = "gatling"
item_state = "gatling"
has_item_ratio = FALSE
fire_sound = 'sound/weapons/Laser.ogg'
origin_tech = list(TECH_COMBAT = 6, TECH_PHORON = 5, TECH_MATERIAL = 6)
charge_meter = 0
@@ -286,8 +312,10 @@
/obj/item/gun/energy/vaurca/blaster
name = "\improper Zo'ra Blaster"
desc = "An elegant weapon for a more civilized time."
icon = 'icons/obj/guns/blaster.dmi'
icon_state = "blaster"
item_state = "blaster"
has_item_ratio = FALSE
origin_tech = list(TECH_COMBAT = 2, TECH_PHORON = 4)
fire_sound = 'sound/weapons/Laser.ogg'
slot_flags = SLOT_BACK | SLOT_HOLSTER | SLOT_BELT
@@ -402,10 +430,10 @@
/obj/item/gun/energy/vaurca/thermaldrill
name = "thermal drill"
desc = "Pierce the heavens? Son, there won't <i>be</i> any heavens when you're through with it."
contained_sprite = 1
icon = 'icons/obj/vaurca_items.dmi'
icon_state = "thermaldrill"
item_state = "thermaldrill"
has_item_ratio = FALSE
origin_tech = list(TECH_COMBAT = 6, TECH_PHORON = 8)
fire_sound = 'sound/magic/lightningbolt.ogg'
slot_flags = SLOT_BACK
@@ -463,11 +491,11 @@
/obj/item/gun/energy/vaurca/mountedthermaldrill
name = "mounted thermal drill"
desc = "Pierce the heavens? Son, there won't <i>be</i> any heavens when you're through with it."
contained_sprite = 1
icon = 'icons/obj/vaurca_items.dmi'
icon_state = "thermaldrill"
item_state = "thermaldrill"
origin_tech = "combat=6;phorontech=8,"
has_item_ratio = FALSE
origin_tech = list(TECH_COMBAT = 6, TECH_PHORON = 8)
fire_sound = 'sound/magic/lightningbolt.ogg'
slot_flags = SLOT_BACK
w_class = 4
@@ -505,10 +533,10 @@
/obj/item/gun/energy/vaurca/tachyon
name = "tachyon carbine"
desc = "A Vaurcan carbine that fires a beam of concentrated faster than light particles, capable of passing through most forms of matter."
contained_sprite = 1
icon = 'icons/obj/vaurca_items.dmi'
icon_state = "tachyoncarbine"
item_state = "tachyoncarbine"
has_item_ratio = FALSE
fire_sound = 'sound/weapons/laser3.ogg'
projectile_type = /obj/item/projectile/beam/tachyon
origin_tech = list(TECH_COMBAT = 5, TECH_MATERIAL = 3, TECH_MAGNET = 2, TECH_ILLEGAL = 2)
@@ -520,9 +548,10 @@
/obj/item/gun/energy/tesla
name = "tesla gun"
desc = "A gun that shoots a projectile that bounces from living thing to living thing. Keep your distance from whatever you are shooting at."
icon = 'icons/obj/guns/tesla.dmi'
icon_state = "tesla"
item_state = "tesla"
icon = 'icons/obj/gun.dmi'
has_item_ratio = FALSE
charge_meter = 0
w_class = 4
fire_sound = 'sound/magic/LightningShock.ogg'
@@ -545,9 +574,10 @@
/obj/item/gun/energy/gravity_gun
name = "gravity gun"
desc = "This nifty gun disables the gravity in the area you shoot at. Use with caution."
icon = 'icons/obj/guns/gravity_gun.dmi'
icon_state = "gravity_gun"
item_state = "gravity_gun"
icon = 'icons/obj/gun.dmi'
has_item_ratio = FALSE
charge_meter = 0
w_class = 4
fire_sound = 'sound/magic/Repulse.ogg'
@@ -558,4 +588,4 @@
sel_mode = 1
fire_delay = 20
accuracy = 40
muzzle_flash = 10
muzzle_flash = 10

View File

@@ -1,8 +1,9 @@
/obj/item/gun/energy/taser
name = "taser gun"
desc = "The NT Mk30 NL is a small, low capacity gun used for non-lethal takedowns."
icon = 'icons/obj/guns/taser.dmi'
icon_state = "taser"
item_state = null //so the human update icon uses the icon_state instead.
item_state = "taser"
fire_sound = 'sound/weapons/Taser.ogg'
max_shots = 5
accuracy = 1 // More of a buff to secborgs and mounted taser users.
@@ -20,9 +21,11 @@
/obj/item/gun/energy/stunrevolver
name = "stun revolver"
desc = "A Hephaestus designed high-tech revolver that fires rechargable stun bolts."
description_fluff = "The ST-30 is a highly advanced sidearm produced by Hephaestus Industries. It is designed for self-defense in a less-than-lethal manner. While the weapon design itself is not groundbreaking, it fires high velocity energy bolts with rechargable cartridges, possessing unusual high stopping power. "
description_fluff = "The ST-30 is a highly advanced sidearm produced by Hephaestus Industries. It is designed for self-defense in a less-than-lethal manner. While the weapon design itself is not groundbreaking, it fires high velocity energy bolts with rechargable cartridges, possessing unusual high stopping power."
icon = 'icons/obj/guns/stunrevolver.dmi'
icon_state = "stunrevolver"
item_state = "stunrevolver"
has_item_ratio = FALSE
fire_sound = 'sound/weapons/gunshot/gunshot1.ogg'
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_POWER = 2)
projectile_type = /obj/item/projectile/energy/electrode
@@ -32,9 +35,11 @@
/obj/item/gun/energy/crossbow
name = "mini energy-crossbow"
desc = "A weapon favored by many mercenary stealth specialists."
icon = 'icons/obj/guns/crossbow.dmi'
icon_state = "crossbow"
w_class = 2.0
item_state = "crossbow"
has_item_ratio = FALSE
w_class = 2.0
origin_tech = list(TECH_COMBAT = 2, TECH_MAGNET = 2, TECH_ILLEGAL = 5)
matter = list(DEFAULT_WALL_MATERIAL = 2000)
slot_flags = SLOT_BELT
@@ -63,5 +68,4 @@
icon_state = "crossbowlarge"
item_state = "crossbow"
matter = list(DEFAULT_WALL_MATERIAL = 200000)
projectile_type = /obj/item/projectile/energy/bolt/large
projectile_type = /obj/item/projectile/energy/bolt/large

View File

@@ -1,7 +1,9 @@
/obj/item/gun/energy/temperature
name = "freeze ray"
icon = 'icons/obj/guns/freezegun.dmi'
icon_state = "freezegun"
item_state = "freezegun"
has_item_ratio = FALSE
fire_sound = 'sound/weapons/pulse3.ogg'
desc = "A gun that changes temperatures. It has a small label on the side, 'More extreme temperatures will cost more charge!'"
var/temperature = T20C
@@ -19,69 +21,8 @@
needspin = FALSE
/*
/obj/item/gun/energy/temperature/New()
..()
START_PROCESSING(SSprocessing, src)
/obj/item/gun/energy/temperature/Destroy()
STOP_PROCESSING(SSprocessing, src)
..()
/obj/item/gun/energy/temperature/attack_self(mob/living/user as mob)
user.set_machine(src)
var/temp_text = ""
if(temperature > (T0C - 50))
temp_text = "<FONT color=black>[temperature] ([round(temperature-T0C)]&deg;C) ([round(temperature*1.8-459.67)]&deg;F)</FONT>"
else
temp_text = "<FONT color=blue>[temperature] ([round(temperature-T0C)]&deg;C) ([round(temperature*1.8-459.67)]&deg;F)</FONT>"
var/dat = {"<B>Freeze Gun Configuration: </B><BR>
Current output temperature: [temp_text]<BR>
Target output temperature: <A href='?src=\ref[src];temp=-100'>-</A> <A href='?src=\ref[src];temp=-10'>-</A> <A href='?src=\ref[src];temp=-1'>-</A> [current_temperature] <A href='?src=\ref[src];temp=1'>+</A> <A href='?src=\ref[src];temp=10'>+</A> <A href='?src=\ref[src];temp=100'>+</A><BR>
"}
user << browse(dat, "window=freezegun;size=450x300;can_resize=1;can_close=1;can_minimize=1")
onclose(user, "window=freezegun", src)
*/
/obj/item/gun/energy/temperature/Topic(href, href_list)
if (..())
return 1
usr.set_machine(src)
src.add_fingerprint(usr)
/*
if(href_list["temp"])
var/amount = text2num(href_list["temp"])
if(amount > 0)
src.current_temperature = min(500, src.current_temperature+amount)
else
src.current_temperature = max(0, src.current_temperature+amount)
if (istype(src.loc, /mob))
attack_self(src.loc)
src.add_fingerprint(usr)
return
/obj/item/gun/energy/temperature/process()
switch(temperature)
if(0 to 100) charge_cost = 1000
if(100 to 250) charge_cost = 500
if(251 to 300) charge_cost = 100
if(301 to 400) charge_cost = 500
if(401 to 500) charge_cost = 1000
if(current_temperature != temperature)
var/difference = abs(current_temperature - temperature)
if(difference >= 10)
if(current_temperature < temperature)
temperature -= 10
else
temperature += 10
else
temperature = current_temperature
*/
src.add_fingerprint(usr)

View File

@@ -52,8 +52,8 @@
/obj/item/gun/launcher/crossbow
name = "powered crossbow"
desc = "A 2457AD twist on an old classic. Pick up that can."
icon = 'icons/obj/weapons.dmi'
icon_state = "crossbow"
icon = 'icons/obj/guns/crossbow.dmi'
icon_state = "powered_crossbow"
item_state = "crossbow-solid"
fire_sound = 'sound/weapons/crossbow.ogg'
fire_sound_text = "a solid thunk"
@@ -295,9 +295,9 @@
/obj/item/gun/launcher/crossbow/RFD
name = "Rapid-Fabrication-Device Crossbow"
desc = "A hacked together RFD turns an innocent tool into the penultimate destruction tool. Flashforges bolts using matter units when the string is drawn back."
icon = 'icons/obj/weapons.dmi'
icon = 'icons/obj/guns/rxb.dmi'
icon_state = "rxb"
item_state = "rfd"
item_state = "rxb"
slot_flags = null
draw_time = 10
var/stored_matter = 0

View File

@@ -1,8 +1,9 @@
/obj/item/gun/launcher/grenade
name = "grenade launcher"
desc = "A bulky pump-action grenade launcher. Holds up to 6 grenades in a revolving magazine."
icon_state = "riotgun"
item_state = "riotgun"
icon = 'icons/obj/guns/grenade_launcher.dmi'
icon_state = "grenadelauncher"
item_state = "grenadelauncher"
w_class = 4
force = 10

View File

@@ -1,6 +1,7 @@
/obj/item/gun/launcher/harpoon
name = "harpoon gun"
desc = "A harpoon cannon adapted into a portable firearm. Perfect for hunting space whales."
icon = 'icons/obj/guns/harpoon.dmi'
icon_state = "harpoon"
item_state = "harpoon"
release_force = 25

View File

@@ -1,11 +1,12 @@
/obj/item/gun/launcher/pneumatic
name = "pneumatic cannon"
desc = "A large gas-powered cannon."
icon = 'icons/obj/guns/pneumatic.dmi'
icon_state = "pneumatic"
item_state = "pneumatic"
slot_flags = SLOT_BELT
w_class = 5.0
flags = CONDUCT
flags = CONDUCT
fire_sound_text = "a loud whoosh of moving air"
fire_delay = 50
fire_sound = 'sound/weapons/tablehit1.ogg'

View File

@@ -1,6 +1,7 @@
/obj/item/gun/launcher/rocket
name = "rocket launcher"
desc = "MAGGOT."
icon = 'icons/obj/guns/rocket.dmi'
icon_state = "rocket"
item_state = "rocket"
w_class = 4.0

View File

@@ -64,6 +64,7 @@
/obj/item/gun/launcher/syringe
name = "syringe gun"
desc = "A spring loaded rifle designed to fit syringes, designed to incapacitate unruly patients from a distance."
icon = 'icons/obj/guns/syringegun.dmi'
icon_state = "syringegun"
item_state = "syringegun"
w_class = 3
@@ -136,6 +137,7 @@
/obj/item/gun/launcher/syringe/rapid
name = "syringe gun revolver"
desc = "A modification of the syringe gun design, using a rotating cylinder to store up to five syringes. The spring still needs to be drawn between shots."
icon = 'icons/obj/guns/syringegun.dmi'
icon_state = "rapidsyringegun"
item_state = "rapidsyringegun"
max_darts = 5
max_darts = 5

View File

@@ -6,7 +6,6 @@
/obj/item/gun/projectile
name = "gun"
desc = "A gun that fires bullets."
icon_state = "revolver"
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2)
w_class = 3
matter = list(DEFAULT_WALL_MATERIAL = 1000)

View File

@@ -1,7 +1,9 @@
/obj/item/gun/projectile/automatic
name = "prototype SMG"
desc = "A protoype lightweight, fast firing gun. Uses 9mm rounds."
icon_state = "saber" //ugly
icon = 'icons/obj/guns/saber.dmi'
icon_state = "saber" //ugly //yup
item_state = "saber"
w_class = 3
load_method = SPEEDLOADER //yup. until someone sprites a magazine for it.
max_shells = 22
@@ -25,6 +27,7 @@
/obj/item/gun/projectile/automatic/mini_uzi
name = ".45 machine pistol"
desc = "A lightweight, fast firing gun. For when you want someone dead. Uses .45 rounds."
icon = 'icons/obj/guns/mini-uzi.dmi'
icon_state = "mini-uzi"
item_state = "mini-uzi"
w_class = 3
@@ -43,6 +46,7 @@
/obj/item/gun/projectile/automatic/c20r
name = "submachine gun"
desc = "The C-20r is a lightweight and rapid firing SMG, for when you REALLY need someone dead. Uses 10mm rounds. Has a 'Scarborough Arms - Per falcis, per pravitas' buttstamp."
icon = 'icons/obj/guns/c20r.dmi'
icon_state = "c20r"
item_state = "c20r"
w_class = 3
@@ -68,6 +72,7 @@
/obj/item/gun/projectile/automatic/wt550
name = "machine pistol"
desc = "The NI 550 Saber is a cheap self-defense weapon, mass-produced by Necropolis Industries for paramilitary and private use. Uses 9mm rounds."
icon = 'icons/obj/guns/wt550.dmi'
icon_state = "wt550"
item_state = "wt550"
w_class = 3
@@ -93,8 +98,9 @@
/obj/item/gun/projectile/automatic/rifle
name = "automatic rifle"
desc = "A weapon firing an intermediate caliber round, or larger."
icon = 'icons/obj/guns/arifle.dmi'
icon_state = "arifle"
item_state = null
item_state = "arifle"
w_class = 4
force = 10
caliber = "a762"
@@ -142,6 +148,7 @@
/obj/item/gun/projectile/automatic/rifle/sol
name = "battle rifle"
desc = "A powerful battle rifle, the M469 is a highly accurate skirmishing firearm of Necropolis make which is chambered in 7.62."
icon = 'icons/obj/guns/battlerifle.dmi'
icon_state = "battlerifle"
item_state = "battlerifle"
origin_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 3, TECH_ILLEGAL = 2)
@@ -169,8 +176,9 @@
/obj/item/gun/projectile/automatic/rifle/z8
name = "bullpup assault carbine"
desc = "The Z8 Bulldog bullpup carbine, made by the now defunct Zendai Foundries. Uses armor piercing 5.56mm rounds. Makes you feel like a space marine when you hold it."
icon = 'icons/obj/guns/carbine.dmi'
icon_state = "carbine"
item_state = "z8carbine"
item_state = "carbine"
w_class = 4
force = 10
caliber = "a556"
@@ -229,9 +237,9 @@
else
icon_state = "carbine"
if(wielded)
item_state = "z8carbine-wielded"
item_state = "carbine-wielded"
else
item_state = "z8carbine"
item_state = "carbine"
update_held_icon()
return
@@ -245,6 +253,7 @@
/obj/item/gun/projectile/automatic/rifle/l6_saw
name = "light machine gun"
desc = "A rather traditionally made L6 SAW with a pleasantly lacquered wooden pistol grip. Has 'Aussec Armoury- 2431' engraved on the receiver"
icon = 'icons/obj/guns/l6.dmi'
icon_state = "l6closed100"
item_state = "l6closedmag"
w_class = 4
@@ -316,6 +325,7 @@
/obj/item/gun/projectile/automatic/tommygun
name = "vintage submachine gun"
desc = "A classic submachine gun. Uses .45 rounds."
icon = 'icons/obj/guns/tommygun.dmi'
icon_state = "tommygun"
item_state = "tommygun"
w_class = 3
@@ -336,6 +346,7 @@
/obj/item/gun/projectile/automatic/railgun
name = "railgun"
desc = "An advanced rifle that magnetically propels hyperdense rods at breakneck speeds to devastating effect."
icon = 'icons/obj/guns/railgun.dmi'
icon_state = "railgun"
item_state = "railgun"
w_class = 4
@@ -359,10 +370,9 @@
/obj/item/gun/projectile/automatic/terminator
name = "flechette rifle"
desc = "A fearsome Necropolis Industries designed rifle with unattached bayonet that fires lethal flechette rounds."
icon = 'icons/obj/terminator.dmi'
icon = 'icons/obj/guns/flechette.dmi'
icon_state = "flechetterifle"
item_state = "flechetterifle"
contained_sprite = 1
w_class = 5
force = 30
caliber = "flechette"
@@ -404,6 +414,7 @@
/obj/item/gun/projectile/automatic/rifle/shotgun
name = "assault shotgun"
desc = "A experimental, semi-automatic combat shotgun, designed for boarding operations and law enforcement agencies."
icon = 'icons/obj/guns/assaultshotgun.dmi'
icon_state = "assaultshotgun"
item_state = "assaultshotgun"
w_class = 4

View File

@@ -1,6 +1,7 @@
/obj/item/gun/projectile/cannon
name = "hand cannon"
desc = "An amalgamation of ancient and modern tajaran technology. This old naval cannon was turned into a portable firearm."
icon = 'icons/obj/guns/cannon.dmi'
icon_state = "cannon"
item_state = "cannon"
caliber = "cannon"
@@ -38,6 +39,7 @@
/obj/item/gun/projectile/nuke
name = "nuclear launcher"
desc = "A launcher weapon designated to fire miniaturized nuclear warheads."
icon = 'icons/obj/guns/blockbuster.dmi' // hoh
icon_state = "blockbuster"
item_state = "blockbuster"
caliber = "nuke"

View File

@@ -44,9 +44,9 @@
/obj/item/gun/projectile/dartgun
name = "dart gun"
desc = "A small gas-powered dartgun, capable of delivering chemical cocktails swiftly across short distances."
icon = 'icons/obj/guns/dartgun.dmi'
icon_state = "dartgun-empty"
icon_state = "dartgun-empty"
item_state = null
caliber = "dart"
fire_sound = 'sound/weapons/empty.ogg'
fire_sound_text = "a metallic click"
@@ -76,14 +76,18 @@
/obj/item/gun/projectile/dartgun/update_icon()
if(!ammo_magazine)
icon_state = "dartgun-empty"
item_state = icon_state
return 1
if(!ammo_magazine.stored_ammo || ammo_magazine.stored_ammo.len)
icon_state = "dartgun-0"
item_state = icon_state
else if(ammo_magazine.stored_ammo.len > 5)
icon_state = "dartgun-5"
item_state = icon_state
else
icon_state = "dartgun-[ammo_magazine.stored_ammo.len]"
item_state = icon_state
return 1
/obj/item/gun/projectile/dartgun/consume_next_projectile()
@@ -93,9 +97,6 @@
fill_dart(dart)
/obj/item/gun/projectile/dartgun/examine(mob/user)
//update_icon()
//if (!..(user, 2))
// return
..()
if (beakers.len)
to_chat(user, "<span class='notice'>[src] contains:</span>")
@@ -203,4 +204,4 @@
starting_chems = list("kelotane","bicaridine","dylovene")
/obj/item/gun/projectile/dartgun/vox/raider
starting_chems = list("space_drugs","stoxin","impedrezene")
starting_chems = list("space_drugs","stoxin","impedrezene")

View File

@@ -3,10 +3,9 @@
/obj/item/gun/projectile/shotgun/improvised //similar to the double barrel, but without the option to fire both barrels
name = "improvised shotgun"
desc = "An improvised pipe assembly that can fire shotgun shells."
icon = 'icons/obj/improvised.dmi'
icon = 'icons/obj/guns/ishotgun.dmi'
icon_state = "ishotgun"
item_state = "ishotgun"
contained_sprite = 1
max_shells = 2
w_class = 4.0
force = 5
@@ -65,9 +64,9 @@
/obj/item/gun/projectile/shotgun/improvised/sawn
name = "sawn-off improvised shotgun"
desc = "An improvised pipe assembly that can fire shotgun shells."
icon = 'icons/obj/guns/ishotgunsawn.dmi'
icon_state = "ishotgunsawn"
item_state = "ishotgunsawn"
contained_sprite = 1
slot_flags = SLOT_BELT|SLOT_HOLSTER
w_class = 3
force = 5
@@ -143,9 +142,9 @@
recoil = 2
accuracy = -1
fire_delay = 9
icon = 'icons/obj/improvised.dmi'
icon = 'icons/obj/guns/ipistol.dmi'
icon_state = "ipistol"
item_state = "gun"
item_state = "ipistol"
caliber = ".45"
allowed_magazines = list(/obj/item/ammo_magazine/c45m)
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2)
@@ -209,8 +208,9 @@
/obj/item/gun/projectile/automatic/improvised
name = "improvised machine pistol"
desc = "An improvised automatic handgun. Uses .45 rounds."
icon = 'icons/obj/improvised.dmi'
icon = 'icons/obj/guns/ismg.dmi'
icon_state = "ismg"
item_state = "ismg"
load_method = MAGAZINE
magazine_type = /obj/item/ammo_magazine/c45uzi
allowed_magazines = list(/obj/item/ammo_magazine/c45uzi)

View File

@@ -3,7 +3,9 @@
desc = "A cheap Martian knock-off of a Colt M1911. Uses .45 rounds."
magazine_type = /obj/item/ammo_magazine/c45m
allowed_magazines = list(/obj/item/ammo_magazine/c45m)
icon = 'icons/obj/guns/colt.dmi'
icon_state = "colt"
item_state = "colt"
caliber = ".45"
accuracy = 1
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2)
@@ -42,8 +44,9 @@
name = ".45 pistol"
desc = "A NanoTrasen designed sidearm, found among law enforcement and security forces. Uses .45 rounds."
description_fluff = "The NT Mk58 is a ballistic sidearm developed and produced by Nanotrasen. Bulky and heavy, the Mk58 is nonetheless used by security forces and law enforcement for its ease of use, low maintenance requirement, longevity, reliability - and most of all, extremely inexpensive price tag. A trademark of Nanotrasen security forces. It uses .45 rounds."
icon_state = "secguncomp"
item_state = "mk58standard"
icon = 'icons/obj/guns/secgun.dmi'
icon_state = "secgun"
item_state = "secgun"
magazine_type = /obj/item/ammo_magazine/c45m/rubber
allowed_magazines = list(/obj/item/ammo_magazine/c45m)
caliber = ".45"
@@ -54,10 +57,10 @@
/obj/item/gun/projectile/sec/update_icon()
..()
if(ammo_magazine && ammo_magazine.stored_ammo.len)
icon_state = "secguncomp"
if(ammo_magazine?.stored_ammo.len)
icon_state = "secgun"
else
icon_state = "secguncomp-e"
icon_state = "secgun-e"
/obj/item/gun/projectile/sec/lethal
magazine_type = /obj/item/ammo_magazine/c45m
@@ -70,20 +73,23 @@
desc = "A NanoTrasen designed sidearm, found among law enforcement and security forces. It has a wooden grip. Uses .45 rounds."
description_fluff = "The NT Mk58 is a ballistic sidearm developed and produced by Nanotrasen. Bulky and heavy, the Mk58 is nonetheless used by security forces and law enforcement for its ease of use, low maintenance requirement, longevity, reliability - and most of all, extremely inexpensive price tag. A trademark of Nanotrasen security forces. This one has a wooden grip. It uses .45 rounds."
name = "custom .45 Pistol"
icon_state = "secgundark"
item_state = "mk58custom"
icon = 'icons/obj/guns/secgun_wood.dmi'
icon_state = "secgunwood"
item_state = "secgunwood"
/obj/item/gun/projectile/sec/wood/update_icon()
..()
if(ammo_magazine && ammo_magazine.stored_ammo.len)
icon_state = "secgundark"
if(ammo_magazine?.stored_ammo.len)
icon_state = "secgunwood"
else
icon_state = "secgundark-e"
icon_state = "secgunwood-e"
/obj/item/gun/projectile/automatic/x9
name = "automatic .45 pistol"
desc = "The x9 tactical pistol is a lightweight fast firing handgun. Uses .45 rounds."
icon = 'icons/obj/guns/x9.dmi'
icon_state = "x9tactical"
item_state = "x9"
w_class = 3
accuracy = 1
load_method = MAGAZINE
@@ -101,7 +107,9 @@
/obj/item/gun/projectile/tanto
desc = "A Necropolis Industries Tanto .40, designed to compete with the NT Mk58. Uses 10mm rounds."
name = "10mm auto-pistol"
icon = 'icons/obj/guns/c05r.dmi'
icon_state = "c05r"
item_state = "c05r"
magazine_type = /obj/item/ammo_magazine/mc10mm
allowed_magazines = list(/obj/item/ammo_magazine/mc10mm)
caliber = "10mm"
@@ -126,8 +134,10 @@
/obj/item/gun/projectile/silenced
name = "silenced pistol"
desc = "A small, quiet, easily concealable gun. Uses .45 rounds."
desc = "A small, quiet, easily concealable gun. Uses .45 rounds."
icon = 'icons/obj/guns/silenced_pistol.dmi'
icon_state = "silenced_pistol"
item_state = "silenced_pistol"
fire_sound = 'sound/weapons/gunshot/gunshot_suppressed.ogg'
w_class = 3
accuracy = 1
@@ -152,7 +162,9 @@
/obj/item/gun/projectile/deagle
name = ".50 magnum pistol"
desc = "A robust handgun that uses .50 AE ammo."
icon = 'icons/obj/guns/deagle.dmi'
icon_state = "deagle"
item_state = "deagle"
force = 10
accuracy = 1
caliber = ".50"
@@ -172,7 +184,9 @@
/obj/item/gun/projectile/deagle/adhomai
name = "adhomian heavy pistol"
desc = "A bulk handgun used by republican commissars and high-ranking members of the Hadiist Party."
icon = 'icons/obj/guns/adhomian_heavy_pistol.dmi'
icon_state = "adhomian_heavy_pistol"
item_state = "adhomian_heavy_pistol"
description_fluff = "Given to Republican Commissars and high ranking Party members, the Nal'tor Model Pistol is notable for its large caliber. Unlike the Adar'Mazy pistol, only a \
single factory in Nal'tor is allowed to fabricate it, with its design being kept as a state secret. Because of its rarity and status, the Adhomai Heavy Pistol was a sought after \
war trophy by royalist and rebels forces."
@@ -180,7 +194,9 @@
/obj/item/gun/projectile/gyropistol
name = "gyrojet pistol"
desc = "A bulky pistol designed to fire self propelled rounds"
icon = 'icons/obj/guns/gyropistol.dmi'
icon_state = "gyropistol"
item_state = "gyropistol"
max_shells = 8
accuracy = 1
caliber = "75"
@@ -203,8 +219,9 @@
/obj/item/gun/projectile/pistol
name = "9mm pistol"
desc = "500 years since its creation and the Stechkin automatic pistol is still a common sight throughout the Frontier."
icon = 'icons/obj/guns/pistol.dmi'
icon_state = "pistol"
item_state = null
item_state = "pistol"
w_class = 2
accuracy = 1
caliber = "9mm"
@@ -266,15 +283,16 @@
/obj/item/silencer
name = "silencer"
desc = "A silencer"
icon = 'icons/obj/gun.dmi'
icon = 'icons/obj/guns/pistol.dmi'
icon_state = "silencer"
w_class = 2
/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 = 'icons/obj/guns/zipgun.dmi'
icon_state = "zipgun"
item_state = "sawnshotgun"
item_state = "zipgun"
handle_casings = CYCLE_CASINGS //player has to take the old casing out manually before reloading
load_method = SINGLE_CASING
max_shells = 1 //literally just a barrel
@@ -302,7 +320,9 @@
/obj/item/gun/projectile/leyon
name = "10mm pistol"
desc = "The Leyon LCC Everyman is a small pistol that holds five shots and is loaded with a stripper clip, popular for self-defense on Mars. Uses 10mm rounds."
icon = 'icons/obj/guns/leyon.dmi'
icon_state = "leyon"
item_state = "leyon"
caliber = "10mm"
w_class = 2
ammo_type = /obj/item/ammo_casing/c10mm
@@ -327,8 +347,9 @@
/obj/item/gun/projectile/pistol/sol
name = "service pistol"
desc = "A very old service pistol. Branded at the grip with the old emblem of the Sol Alliance, hand-made by Necropolis."
icon = 'icons/obj/guns/m8.dmi'
icon_state = "m8"
item_state = "pistol"
item_state = "m8"
can_silence = FALSE
/obj/item/gun/projectile/pistol/sol/update_icon()
@@ -341,8 +362,9 @@
/obj/item/gun/projectile/pistol/adhomai
name = "adhomian service pistol"
desc = "The Adar'Mazy pistol is an adhomian firearm commonly issued to People's Republic officers, government officials and low-ranking Party members."
icon = 'icons/obj/guns/adhomian_pistol.dmi'
icon_state = "adhomian_pistol"
item_state = "pistol"
item_state = "adhomian_pistol"
can_silence = FALSE
description_fluff = "A mass produced pistol issued to People's Republic officers, government officials and low-ranking Party members. Known for their simple, cheap and reliable \
design, this weapon is produced by nearly all weapon factories in the Republic. The Adar'Mazy is also found in the hands of Adhomai Liberation Army soldiers and commanders."
@@ -352,4 +374,4 @@
if(ammo_magazine)
icon_state = "adhomian_pistol"
else
icon_state = "adhomian_pistol-e"
icon_state = "adhomian_pistol-e"

View File

@@ -1,6 +1,7 @@
/obj/item/gun/projectile/plasma
name = "plasma shotgun"
desc = "A marvel of Elyran weapons technology which utilizes superheated plasma to pierce thick armor with gruesome results."
icon = 'icons/obj/guns/slammer.dmi'
icon_state = "slammer"
item_state = "slammer"
w_class = ITEMSIZE_LARGE
@@ -25,6 +26,7 @@
/obj/item/gun/projectile/plasma/bolter
name = "plasma bolter"
desc = "A miniaturized, less efficient version of the infamous plasma slammer. Sacrifices much of its power for a more compact frame."
icon = 'icons/obj/guns/bolter.dmi'
icon_state = "bolter"
item_state = "bolter"
w_class = ITEMSIZE_NORMAL

View File

@@ -1,6 +1,7 @@
/obj/item/gun/projectile/revolver
name = "revolver"
desc = "The revised Mark II Necropolis Industries revolver, chambering .357 rounds and utilizing a robust firing mechanism to deliver deadly rounds downrange. This is a monster of a hand cannon with a beautiful cedar grip and a transparent plastic cover so as to not splinter your hands while firing."
icon = 'icons/obj/guns/revolver.dmi'
icon_state = "revolver"
item_state = "revolver"
accuracy = 1
@@ -37,7 +38,9 @@
/obj/item/gun/projectile/revolver/mateba
name = "mateba"
desc = "The Mateba .454 Autorevolver, a very rare weapon typical of special ops teams and mercenary teams. It packs quite the punch."
icon = 'icons/obj/guns/mateba.dmi'
icon_state = "mateba"
item_state = "mateba"
max_shells = 7
accuracy = 2
caliber = "454"
@@ -48,7 +51,9 @@
/obj/item/gun/projectile/revolver/detective
name = "revolver"
desc = "A cheap Martian knock-off of a Smith & Wesson Model 10. Uses .38-Special rounds."
icon = 'icons/obj/guns/detective.dmi'
icon_state = "detective"
item_state = "detective"
max_shells = 6
accuracy = 1
caliber = "38"
@@ -80,7 +85,9 @@
desc = "A custom-built revolver, based off the semi-popular Detective Special model."
max_shells = 6
accuracy = 2
icon = 'icons/obj/guns/deckard.dmi'
icon_state = "deckard-empty"
item_state = "deckard"
caliber = "38"
ammo_type = /obj/item/ammo_casing/c38
fire_sound = 'sound/weapons/gunshot/gunshot_strong.ogg'
@@ -103,8 +110,9 @@
/obj/item/gun/projectile/revolver/derringer
name = "derringer"
desc = "A small pocket pistol, easily concealed. Uses .357 rounds."
icon = 'icons/obj/guns/derringer.dmi'
icon_state = "derringer"
item_state = "concealed"
item_state = "derringer"
accuracy = -1
w_class = 2
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2, TECH_ILLEGAL = 3)
@@ -116,8 +124,9 @@
/obj/item/gun/projectile/revolver/capgun
name = "cap gun"
desc = "Looks almost like the real thing! Ages 8 and up."
icon = 'icons/obj/guns/capgun.dmi'
icon_state = "capgun"
item_state = "revolver"
item_state = "capgun"
caliber = "caps"
origin_tech = list(TECH_COMBAT = 1, TECH_MATERIAL = 1)
handle_casings = CYCLE_CASINGS
@@ -129,14 +138,17 @@
if(!W.iswirecutter() || icon_state == "revolver")
return ..()
to_chat(user, "<span class='notice'>You snip off the toy markings off the [src].</span>")
icon = 'icons/obj/guns/revolver.dmi'
name = "revolver"
icon_state = "revolver"
item_state = "revolvers"
desc += " Someone snipped off the barrel's toy mark. How dastardly."
return 1
/obj/item/gun/projectile/revolver/lemat
name = "grapeshot revolver"
desc = "A six shot revolver with a secondary firing barrel loading shotgun shells. Uses .38-Special and 12g rounds depending on the barrel."
icon = 'icons/obj/guns/lemat.dmi'
icon_state = "lemat"
item_state = "lemat"
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2)
@@ -229,7 +241,9 @@
/obj/item/gun/projectile/revolver/adhomian
name = "adhomian service revolver"
desc = "The Royal Firearms Service Revolver is a simple and reliable design, favored by the nobility of the New Kingdom of Adhomai."
icon = 'icons/obj/guns/adhomian_revolver.dmi'
icon_state = "adhomian_revolver"
item_state = "adhomian_revolver"
caliber = "38"
max_shells = 7
load_method = SINGLE_CASING
@@ -238,4 +252,4 @@
description_fluff = "A simple and reliable double action revolver, favored by the nobility, officers and law enforcement. The design is known for having an outdated reloading \
mechanism, with the need to manually eject each of the used cartridges, and reload one cartridge at a time through a loading gate. However, their cheap manufacturing cost has \
allowed countless copies to flood the Kingdom's markets."
allowed countless copies to flood the Kingdom's markets."

View File

@@ -1,6 +1,7 @@
/obj/item/gun/projectile/shotgun/pump/rifle
name = "bolt action rifle"
desc = "A cheap ballistic rifle often found in the hands of crooks and frontiersmen. Uses 7.62mm rounds."
icon = 'icons/obj/guns/moistnugget.dmi'
icon_state = "moistnugget"
item_state = "moistnugget"
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2)
@@ -20,11 +21,12 @@
sawnoff_workmsg = "shorten the barrel and stock"
/obj/item/gun/projectile/shotgun/pump/rifle/saw_off(mob/user, obj/item/tool)
icon = 'icons/obj/guns/obrez.dmi'
icon_state = "obrez"
item_state = "obrez"
w_class = 3
recoil = 2
accuracy = -2
item_state = "obrez"
slot_flags &= ~SLOT_BACK
slot_flags |= (SLOT_BELT|SLOT_HOLSTER)
can_bayonet = FALSE
@@ -40,6 +42,7 @@
/obj/item/gun/projectile/shotgun/pump/rifle/obrez
name = "sawn-off bolt action rifle"
desc = "A shortened bolt action rifle, not really accurate. Uses 7.62mm rounds."
icon = 'icons/obj/guns/obrez.dmi'
icon_state = "obrez"
item_state = "obrez"
w_class = 3
@@ -52,6 +55,7 @@
/obj/item/gun/projectile/contender
name = "pocket rifle"
desc = "A perfect, pristine replica of an ancient one-shot hand-cannon. This one has been modified to work almost like a bolt-action. Uses 5.56mm rounds."
icon = 'icons/obj/guns/pockrifle.dmi'
icon_state = "pockrifle"
item_state = "pockrifle"
caliber = "a556"
@@ -116,8 +120,9 @@
/obj/item/gun/projectile/shotgun/pump/rifle/vintage
name = "vintage bolt action rifle"
desc = "An extremely old-looking rifle. Words you can't read are stamped on the gun. Doesn't look like it'll take any modern rounds."
icon = 'icons/obj/guns/springfield.dmi'
icon_state = "springfield"
icon_state = "springfield"
item_state = "springfield"
origin_tech = list(TECH_COMBAT = 1, TECH_MATERIAL = 3)
fire_sound = 'sound/weapons/gunshot/gunshot_rifle.ogg'
slot_flags = SLOT_BACK
@@ -223,7 +228,9 @@
slot_flags = 0
magazine_type = /obj/item/ammo_magazine/gauss
allowed_magazines = list(/obj/item/ammo_magazine/gauss)
icon = 'icons/obj/guns/gauss_thumper.dmi'
icon_state = "gauss_thumper"
item_state = "gauss_thumper"
caliber = "gauss"
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 2)
fire_sound = 'sound/weapons/railgun.ogg'
@@ -253,7 +260,7 @@
/obj/item/gun/energy/gauss/mounted/mech
name = "heavy gauss cannon"
desc = "An outdated and power hungry gauss cannon, modified to deliver high explosive rounds at high velocities."
icon = 'icons/obj/gun.dmi'
icon = 'icons/obj/guns/gauss_thumper.dmi'
icon_state = "gauss_thumper"
fire_sound = 'sound/weapons/railgun.ogg'
fire_delay = 30

View File

@@ -38,6 +38,7 @@
/obj/item/gun/projectile/shotgun/pump
name = "pump shotgun"
desc = "An ubiquitous unbranded shotgun. Useful for sweeping alleys."
icon = 'icons/obj/guns/shotgun.dmi'
icon_state = "shotgun"
item_state = "shotgun"
max_shells = 4
@@ -96,6 +97,7 @@
/obj/item/gun/projectile/shotgun/pump/combat
name = "combat shotgun"
desc = "Built for close quarters combat, the Hephaestus Industries KS-40 is widely regarded as a weapon of choice for repelling boarders."
icon = 'icons/obj/guns/cshotgun.dmi'
icon_state = "cshotgun"
item_state = "cshotgun"
origin_tech = list(TECH_COMBAT = 5, TECH_MATERIAL = 2)
@@ -106,6 +108,7 @@
/obj/item/gun/projectile/shotgun/pump/combat/sol
name = "naval shotgun"
desc = "A Malella-type 12-gauge breaching shotgun commonly found in the hands of the Sol Alliance. Made by Necropolis Industries."
icon = 'icons/obj/guns/malella.dmi'
icon_state = "malella"
item_state = "malella"
origin_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 3, TECH_ILLEGAL = 2)
@@ -114,6 +117,7 @@
/obj/item/gun/projectile/shotgun/doublebarrel
name = "double-barreled shotgun"
desc = "A true classic."
icon = 'icons/obj/guns/dshotgun.dmi'
icon_state = "dshotgun"
item_state = "dshotgun"
//SPEEDLOADER because rapid unloading.
@@ -123,7 +127,9 @@
max_shells = 2
w_class = 4
force = 10
flags = CONDUCT
flags = CONDUCT
is_wieldable = TRUE
var/has_wield_state = TRUE
slot_flags = SLOT_BACK
caliber = "shotgun"
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 1)
@@ -139,6 +145,14 @@
can_sawoff = TRUE
sawnoff_workmsg = "shorten the barrel"
/obj/item/gun/projectile/shotgun/doublebarrel/update_icon()
..()
if(wielded && has_wield_state)
item_state = "[icon_state]-wielded"
else
item_state = "[icon_state]"
update_held_icon()
/obj/item/gun/projectile/shotgun/doublebarrel/pellet
ammo_type = /obj/item/ammo_casing/shotgun/pellet
@@ -151,8 +165,10 @@
..(user, allow_dump=1)
/obj/item/gun/projectile/shotgun/doublebarrel/saw_off(mob/user, obj/item/tool)
icon = 'icons/obj/guns/sawnshotgun.dmi'
icon_state = "sawnshotgun"
item_state = "sawnshotgun"
is_wieldable = FALSE
w_class = 3
force = 5
slot_flags &= ~SLOT_BACK //you can't sling it on your back
@@ -164,8 +180,10 @@
/obj/item/gun/projectile/shotgun/doublebarrel/sawn
name = "sawn-off shotgun"
desc = "Omar's coming!"
icon = 'icons/obj/guns/sawnshotgun.dmi'
icon_state = "sawnshotgun"
item_state = "sawnshotgun"
is_wieldable = FALSE
slot_flags = SLOT_BELT|SLOT_HOLSTER
ammo_type = /obj/item/ammo_casing/shotgun/pellet
w_class = 3
@@ -174,7 +192,9 @@
/obj/item/gun/projectile/shotgun/foldable
name = "foldable shotgun"
desc = "A single-shot shotgun that can be folded for easy concealment."
icon = 'icons/obj/guns/overunder.dmi'
icon_state = "overunder"
item_state = "overunder"
slot_flags = SLOT_BELT
w_class = 3
ammo_type = /obj/item/ammo_casing/shotgun/pellet
@@ -191,7 +211,7 @@
item_state = icon_state
else
icon_state = "[initial(icon_state)]-d"
item_state = "shotgun"
item_state = "[initial(item_state)]-d"
update_held_icon()
/obj/item/gun/projectile/shotgun/foldable/proc/toggle_folded(mob/living/user)

View File

@@ -1,6 +1,7 @@
/obj/item/gun/projectile/heavysniper
name = "anti-materiel rifle"
desc = "A portable anti-armour rifle fitted with a scope, the PTR-7 is capable of punching through windows and non-reinforced walls with ease. Fires armor piercing 14.5mm shells."
icon = 'icons/obj/guns/heavysniper.dmi'
icon_state = "heavysniper"
item_state = "heavysniper"
w_class = 4
@@ -86,8 +87,9 @@
/obj/item/gun/projectile/heavysniper/tranq
name = "tranquilizer rifle"
desc = "A nonlethal modification to the PTR-7 anti-materiel rifle meant for sedation and capture of the most dangerous of game. Fires .50 cal PPS shells that deploy a torpor inducing drug payload."
icon = 'icons/obj/guns/tranqsniper.dmi'
icon_state = "tranqsniper"
item_state = "heavysniper"
item_state = "tranqsniper"
w_class = 4
force = 10
slot_flags = SLOT_BACK
@@ -112,14 +114,15 @@
else
icon_state = "tranqsniper"
if(wielded)
item_state = "heavysniper-wielded"
item_state = "tranqsniper-wielded"
else
item_state = "heavysniper"
item_state = "tranqsniper"
update_held_icon()
/obj/item/gun/projectile/dragunov
name = "antique sniper rifle"
desc = "An old semi-automatic marksman rifle. Uses 7.62mm rounds."
icon = 'icons/obj/guns/dragunov.dmi'
icon_state = "dragunov"
item_state = "dragunov"
w_class = 4
@@ -174,8 +177,9 @@
/obj/item/gun/projectile/automatic/rifle/w556
name = "scout rifle"
desc = "A lightweight Neyland 556mi 'Ranger' used within the Sol Navy and Nanotrasen Emergency Response Teams. Equipped with a scope and designed for medium to long range combat, with moderate stopping power. Chambered in 5.56 rounds."
icon = 'icons/obj/guns/w556.dmi'
icon_state = "w556rifle"
item_state = "heavysniper"
item_state = "w556rifle"
w_class = 4
force = 10
slot_flags = SLOT_BACK
@@ -211,7 +215,7 @@
/obj/item/gun/projectile/automatic/rifle/w556/update_icon()
if(wielded)
item_state = "heavysniper-wielded"
item_state = "w556rifle-wielded"
else
item_state = "heavysniper"
item_state = "w556rifle"
update_held_icon()

View File

@@ -186,9 +186,10 @@
/obj/item/reagent_containers/spray/chemsprayer
name = "chem sprayer"
desc = "A utility used to spray large amounts of reagent in a given area."
icon = 'icons/obj/gun.dmi'
icon = 'icons/obj/guns/chemsprayer.dmi'
icon_state = "chemsprayer"
item_state = "chemsprayer"
contained_sprite = TRUE
center_of_mass = list("x" = 16,"y" = 16)
throwforce = 3
w_class = 3.0
@@ -219,9 +220,10 @@
/obj/item/reagent_containers/spray/chemsprayer/xenobiology
name = "xenoblaster"
desc = "A child's plastic watergun repurposed for the use in pacifying slimes. Has an adjustable nozzle that controls precision as well as strength."
icon = 'icons/obj/gun.dmi'
icon = 'icons/obj/guns/xenoblaster.dmi'
icon_state = "xenoblaster"
item_state = "xenoblaster"
contained_sprite = TRUE
origin_tech = list(TECH_MATERIAL = 1, TECH_ENGINEERING = 1)
volume = 200
spray_size = 3

View File

@@ -0,0 +1,7 @@
author: Geeves
delete-after: True
changes:
- backend: "All the gun sprites have been moved into seperate files, this has no user-facing change, but will likely result in some sprites being missing. Please report missing sprites to Github."
- rscadd: "The double barrel shotgun can now be wielded."

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 KiB

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

After

Width:  |  Height:  |  Size: 147 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 150 KiB

After

Width:  |  Height:  |  Size: 147 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 664 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 693 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 655 B

BIN
icons/obj/guns/arifle.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
icons/obj/guns/bayonet.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 431 B

BIN
icons/obj/guns/bfg.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
icons/obj/guns/blaster.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 890 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 877 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 868 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 787 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

BIN
icons/obj/guns/bluetag.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 805 B

BIN
icons/obj/guns/bolter.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 960 B

BIN
icons/obj/guns/c05r.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 609 B

BIN
icons/obj/guns/c20r.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

BIN
icons/obj/guns/cannon.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
icons/obj/guns/capgun.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 704 B

BIN
icons/obj/guns/caplaser.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
icons/obj/guns/carbine.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1016 B

BIN
icons/obj/guns/colt.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 914 B

BIN
icons/obj/guns/crossbow.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

BIN
icons/obj/guns/cshotgun.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
icons/obj/guns/dartgun.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
icons/obj/guns/deagle.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 627 B

BIN
icons/obj/guns/deckard.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
icons/obj/guns/decloner.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 950 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 528 B

BIN
icons/obj/guns/dragunov.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
icons/obj/guns/dshotgun.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
icons/obj/guns/ecarbine.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
icons/obj/guns/energy.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

BIN
icons/obj/guns/epistol.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

BIN
icons/obj/guns/erifle.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

BIN
icons/obj/guns/flora.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

BIN
icons/obj/guns/gatling.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 994 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 742 B

View File

Before

Width:  |  Height:  |  Size: 385 B

After

Width:  |  Height:  |  Size: 385 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 674 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

BIN
icons/obj/guns/harpoon.dmi Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Some files were not shown because too many files have changed in this diff Show More