mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 18:53:06 +00:00
Merge pull request #4644 from VOREStation/upstream-merge-5803
[MIRROR] Guns sounds refactor and improvements
This commit is contained in:
@@ -110,7 +110,7 @@
|
||||
/obj/item/ammo_casing/a9mm/practice
|
||||
desc = "A 9mm practice bullet casing."
|
||||
icon_state = "r-casing"
|
||||
projectile_type = /obj/item/projectile/bullet/pistol/practice
|
||||
projectile_type = /obj/item/projectile/bullet/practice
|
||||
|
||||
/*
|
||||
* .45
|
||||
@@ -130,7 +130,7 @@
|
||||
/obj/item/ammo_casing/a45/practice
|
||||
desc = "A .45 practice bullet casing."
|
||||
icon_state = "r-casing"
|
||||
projectile_type = /obj/item/projectile/bullet/pistol/practice
|
||||
projectile_type = /obj/item/projectile/bullet/practice
|
||||
matter = list(DEFAULT_WALL_MATERIAL = 60)
|
||||
|
||||
/obj/item/ammo_casing/a45/rubber
|
||||
@@ -202,7 +202,7 @@
|
||||
name = "shotgun shell"
|
||||
desc = "A practice shell."
|
||||
icon_state = "pshell"
|
||||
projectile_type = /obj/item/projectile/bullet/shotgun/practice
|
||||
projectile_type = /obj/item/projectile/bullet/practice
|
||||
matter = list(DEFAULT_WALL_MATERIAL = 90)
|
||||
|
||||
/obj/item/ammo_casing/a12g/beanbag
|
||||
@@ -260,7 +260,7 @@
|
||||
/obj/item/ammo_casing/a762/practice
|
||||
desc = "A 7.62mm practice bullet casing."
|
||||
icon_state = "rifle-casing" // Need to make an icon for these
|
||||
projectile_type = /obj/item/projectile/bullet/rifle/practice
|
||||
projectile_type = /obj/item/projectile/bullet/practice
|
||||
matter = list(DEFAULT_WALL_MATERIAL = 90)
|
||||
|
||||
/obj/item/ammo_casing/a762/blank
|
||||
@@ -306,7 +306,7 @@
|
||||
/obj/item/ammo_casing/a545/practice
|
||||
desc = "A 5.45mm practice bullet casing."
|
||||
icon_state = "rifle-casing" // Need to make an icon for these
|
||||
projectile_type = /obj/item/projectile/bullet/rifle/practice
|
||||
projectile_type = /obj/item/projectile/bullet/practice
|
||||
matter = list(DEFAULT_WALL_MATERIAL = 90)
|
||||
|
||||
/obj/item/ammo_casing/a545/blank
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
var/fire_delay = 6 //delay after shooting before the gun can be used again
|
||||
var/burst_delay = 2 //delay between shots, if firing in bursts
|
||||
var/move_delay = 1
|
||||
var/fire_sound = 'sound/weapons/Gunshot.ogg'
|
||||
var/fire_sound = null // This is handled by projectile.dm's fire_sound var now, but you can override the projectile's fire_sound with this one if you want to.
|
||||
var/fire_sound_text = "gunshot"
|
||||
var/fire_anim = null
|
||||
var/recoil = 0 //screen shake
|
||||
@@ -474,10 +474,7 @@
|
||||
|
||||
last_shot = world.time
|
||||
|
||||
if(silenced)
|
||||
playsound(src, fire_sound, 10, 1)
|
||||
else
|
||||
playsound(src, fire_sound, 50, 1)
|
||||
play_fire_sound()
|
||||
|
||||
if(muzzle_flash)
|
||||
set_light(muzzle_flash)
|
||||
@@ -673,7 +670,13 @@
|
||||
return launched
|
||||
|
||||
/obj/item/weapon/gun/proc/play_fire_sound(var/mob/user, var/obj/item/projectile/P)
|
||||
var/shot_sound = (istype(P) && P.fire_sound)? P.fire_sound : fire_sound
|
||||
var/shot_sound = fire_sound
|
||||
|
||||
if(!shot_sound && istype(P) && P.fire_sound) // If the gun didn't have a fire_sound, but the projectile exists, and has a sound...
|
||||
shot_sound = P.fire_sound
|
||||
if(!shot_sound) // If there's still no sound...
|
||||
return
|
||||
|
||||
if(silenced)
|
||||
playsound(user, shot_sound, 10, 1)
|
||||
else
|
||||
@@ -696,11 +699,7 @@
|
||||
var/obj/item/projectile/in_chamber = consume_next_projectile()
|
||||
if (istype(in_chamber))
|
||||
user.visible_message("<span class = 'warning'>[user] pulls the trigger.</span>")
|
||||
var/shot_sound = in_chamber.fire_sound? in_chamber.fire_sound : fire_sound
|
||||
if(silenced)
|
||||
playsound(user, shot_sound, 10, 1)
|
||||
else
|
||||
playsound(user, shot_sound, 50, 1)
|
||||
play_fire_sound()
|
||||
if(istype(in_chamber, /obj/item/projectile/beam/lastertag))
|
||||
user.show_message("<span class = 'warning'>You feel rather silly, trying to commit suicide with a toy.</span>")
|
||||
mouthshoot = 0
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
name = "energy gun"
|
||||
desc = "A basic energy-based gun."
|
||||
icon_state = "energy"
|
||||
fire_sound = 'sound/weapons/Taser.ogg'
|
||||
fire_sound_text = "laser blast"
|
||||
|
||||
var/obj/item/weapon/cell/power_supply //What type of power cell this uses
|
||||
@@ -28,7 +27,7 @@
|
||||
..()
|
||||
if(self_recharge)
|
||||
power_supply = new /obj/item/weapon/cell/device/weapon(src)
|
||||
START_PROCESSING(SSobj, src)
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
if(cell_type)
|
||||
power_supply = new cell_type(src)
|
||||
@@ -189,7 +188,7 @@
|
||||
if(power_supply == null)
|
||||
power_supply = new /obj/item/weapon/cell/device/weapon(src)
|
||||
self_recharge = 1
|
||||
START_PROCESSING(SSobj, src)
|
||||
START_PROCESSING(SSobj, src)
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/gun/energy/get_description_interaction()
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
desc = "A large, strange gauntlet."
|
||||
icon_state = "gravwhip"
|
||||
item_state = "gravwhip"
|
||||
fire_sound = 'sound/effects/zzzt.ogg'
|
||||
fire_sound_text = "laser blast"
|
||||
|
||||
fire_delay = 15
|
||||
|
||||
@@ -130,7 +130,6 @@
|
||||
icon_state = "sniper"
|
||||
item_state = "sniper"
|
||||
item_state_slots = list(slot_r_hand_str = "z8carbine", slot_l_hand_str = "z8carbine") //placeholder
|
||||
fire_sound = 'sound/weapons/gauss_shoot.ogg'
|
||||
origin_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 5, TECH_POWER = 4)
|
||||
projectile_type = /obj/item/projectile/beam/sniper
|
||||
slot_flags = SLOT_BACK
|
||||
@@ -157,7 +156,6 @@
|
||||
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_state = "eshotgun"
|
||||
item_state = "shotgun"
|
||||
fire_sound = 'sound/weapons/gauss_shoot.ogg'
|
||||
origin_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 4, TECH_POWER = 3)
|
||||
projectile_type = /obj/item/projectile/beam/sniper
|
||||
slot_flags = SLOT_BACK
|
||||
|
||||
@@ -22,7 +22,6 @@
|
||||
/obj/item/weapon/gun/energy/pulse_rifle/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/gauss_shoot.ogg'
|
||||
projectile_type=/obj/item/projectile/beam/pulse
|
||||
charge_cost = 120
|
||||
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
desc = "A gun that discharges high amounts of controlled radiation to slowly break a target into component elements."
|
||||
icon_state = "decloner"
|
||||
item_state = "decloner"
|
||||
fire_sound = 'sound/weapons/pulse3.ogg'
|
||||
origin_tech = list(TECH_COMBAT = 5, TECH_MATERIAL = 4, TECH_POWER = 3)
|
||||
projectile_type = /obj/item/projectile/energy/declone
|
||||
|
||||
@@ -39,7 +38,6 @@
|
||||
desc = "A tool that discharges controlled radiation which induces mutation in plant cells."
|
||||
icon_state = "floramut100"
|
||||
item_state = "floramut"
|
||||
fire_sound = 'sound/effects/stealthoff.ogg'
|
||||
projectile_type = /obj/item/projectile/energy/floramut
|
||||
origin_tech = list(TECH_MATERIAL = 2, TECH_BIO = 3, TECH_POWER = 3)
|
||||
modifystate = "floramut"
|
||||
@@ -112,13 +110,11 @@
|
||||
desc = "A custom-built weapon of some kind."
|
||||
icon_state = "xray"
|
||||
projectile_type = /obj/item/projectile/beam/mindflayer
|
||||
fire_sound = 'sound/weapons/Laser.ogg'
|
||||
|
||||
/obj/item/weapon/gun/energy/toxgun
|
||||
name = "phoron pistol"
|
||||
desc = "A specialized firearm designed to fire lethal bolts of phoron."
|
||||
icon_state = "toxgun"
|
||||
fire_sound = 'sound/effects/stealthoff.ogg'
|
||||
w_class = ITEMSIZE_NORMAL
|
||||
origin_tech = list(TECH_COMBAT = 5, TECH_PHORON = 4)
|
||||
projectile_type = /obj/item/projectile/energy/phoron
|
||||
@@ -131,7 +127,6 @@
|
||||
icon = 'icons/obj/gun.dmi'
|
||||
item_icons = null
|
||||
icon_state = "staffofchange"
|
||||
fire_sound = 'sound/weapons/emitter.ogg'
|
||||
flags = CONDUCT
|
||||
slot_flags = SLOT_BACK
|
||||
w_class = ITEMSIZE_LARGE
|
||||
@@ -187,7 +182,6 @@ obj/item/weapon/gun/energy/staff/focus
|
||||
icon_state = "dakkalaser"
|
||||
item_state = "dakkalaser"
|
||||
wielded_item_state = "dakkalaser-wielded"
|
||||
fire_sound = 'sound/weapons/Laser.ogg'
|
||||
w_class = ITEMSIZE_HUGE
|
||||
charge_cost = 24 // 100 shots, it's a spray and pray (to RNGesus) weapon.
|
||||
projectile_type = /obj/item/projectile/energy/blue_pellet
|
||||
@@ -211,7 +205,6 @@ obj/item/weapon/gun/energy/staff/focus
|
||||
icon_state = "mhdhowitzer"
|
||||
item_state = "mhdhowitzer"
|
||||
wielded_item_state = "mhdhowitzer-wielded"
|
||||
fire_sound = 'sound/weapons/emitter2.ogg'
|
||||
w_class = ITEMSIZE_HUGE
|
||||
|
||||
charge_cost = 10000 // Uses large cells, can at max have 3 shots.
|
||||
|
||||
@@ -36,7 +36,6 @@
|
||||
matter = list(DEFAULT_WALL_MATERIAL = 2000)
|
||||
slot_flags = SLOT_BELT | SLOT_HOLSTER
|
||||
silenced = 1
|
||||
fire_sound = 'sound/weapons/Genhit.ogg'
|
||||
projectile_type = /obj/item/projectile/energy/bolt
|
||||
charge_cost = 480
|
||||
cell_type = /obj/item/weapon/cell/device/weapon/recharge
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
/obj/item/weapon/gun/energy/temperature
|
||||
name = "temperature gun"
|
||||
icon_state = "freezegun"
|
||||
fire_sound = 'sound/weapons/pulse3.ogg'
|
||||
desc = "A gun that can add or remove heat from entities it hits. In other words, it can fire 'cold', and 'hot' beams."
|
||||
charge_cost = 240
|
||||
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 4, TECH_POWER = 3, TECH_MAGNET = 2)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
w_class = ITEMSIZE_LARGE
|
||||
force = 10
|
||||
|
||||
fire_sound = 'sound/weapons/empty.ogg'
|
||||
fire_sound = 'sound/weapons/grenade_launcher.ogg'
|
||||
fire_sound_text = "a metallic thunk"
|
||||
recoil = 0
|
||||
throw_distance = 7
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
flags = CONDUCT
|
||||
fire_sound_text = "a loud whoosh of moving air"
|
||||
fire_delay = 50
|
||||
fire_sound = 'sound/weapons/tablehit1.ogg'
|
||||
fire_sound = 'sound/weapons/grenade_launcher.ogg' // Formerly tablehit1.ogg but I like this better -Ace
|
||||
|
||||
var/fire_pressure // Used in fire checks/pressure checks.
|
||||
var/max_w_class = ITEMSIZE_NORMAL // Hopper intake size.
|
||||
|
||||
@@ -20,8 +20,6 @@
|
||||
var/power_cost = 950 // Cost per fire, should consume almost an entire basic cell.
|
||||
var/power_per_tick // Capacitor charge per process(). Updated based on capacitor rating.
|
||||
|
||||
fire_sound = 'sound/weapons/railgun.ogg'
|
||||
|
||||
/obj/item/weapon/gun/magnetic/New()
|
||||
START_PROCESSING(SSobj, src)
|
||||
if(capacitor)
|
||||
|
||||
@@ -102,7 +102,6 @@
|
||||
load_type = /obj/item/weapon/magnetic_ammo
|
||||
projectile_type = /obj/item/projectile/bullet/magnetic/flechette
|
||||
loaded = /obj/item/weapon/magnetic_ammo
|
||||
fire_sound = 'sound/weapons/rapidslice.ogg'
|
||||
empty_sound = 'sound/weapons/smg_empty_alarm.ogg'
|
||||
|
||||
firemodes = list(
|
||||
|
||||
@@ -121,10 +121,10 @@
|
||||
chargecost_lethal = 200
|
||||
|
||||
firemodes = list(
|
||||
new /datum/firemode(src, list(mode_name="stun", projectile_type=beammode, fire_sound='sound/weapons/Taser.ogg', charge_cost = chargecost)),
|
||||
new /datum/firemode(src, list(mode_name="lethal", projectile_type=beammode_lethal, fire_sound='sound/weapons/Laser.ogg', charge_cost = chargecost_lethal)),
|
||||
new /datum/firemode(src, list(mode_name="[burstmode] shot stun", projectile_type=beammode, fire_sound='sound/weapons/Taser.ogg', charge_cost = chargecost, burst = burstmode)),
|
||||
new /datum/firemode(src, list(mode_name="[burstmode] shot lethal", projectile_type=beammode_lethal, fire_sound='sound/weapons/Laser.ogg', charge_cost = chargecost_lethal, burst = burstmode)),
|
||||
new /datum/firemode(src, list(mode_name="stun", projectile_type=beammode, charge_cost = chargecost)),
|
||||
new /datum/firemode(src, list(mode_name="lethal", projectile_type=beammode_lethal, charge_cost = chargecost_lethal)),
|
||||
new /datum/firemode(src, list(mode_name="[burstmode] shot stun", projectile_type=beammode, charge_cost = chargecost, burst = burstmode)),
|
||||
new /datum/firemode(src, list(mode_name="[burstmode] shot lethal", projectile_type=beammode_lethal, charge_cost = chargecost_lethal, burst = burstmode)),
|
||||
)
|
||||
|
||||
/obj/item/weapon/gun/energy/modular/load_ammo(var/obj/item/C, mob/user)
|
||||
|
||||
@@ -46,7 +46,6 @@
|
||||
caliber = "10mm"
|
||||
origin_tech = list(TECH_COMBAT = 5, TECH_MATERIAL = 2, TECH_ILLEGAL = 8)
|
||||
slot_flags = SLOT_BELT|SLOT_BACK
|
||||
fire_sound = 'sound/weapons/Gunshot_light.ogg'
|
||||
load_method = MAGAZINE
|
||||
magazine_type = /obj/item/ammo_magazine/m10mm
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/m10mm)
|
||||
@@ -107,7 +106,6 @@
|
||||
origin_tech = list(TECH_COMBAT = 5, TECH_MATERIAL = 2)
|
||||
slot_flags = SLOT_BELT
|
||||
ammo_type = "/obj/item/ammo_casing/a9mmr"
|
||||
fire_sound = 'sound/weapons/Gunshot_light.ogg'
|
||||
load_method = MAGAZINE
|
||||
magazine_type = /obj/item/ammo_magazine/m9mmt/rubber
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/m9mmt)
|
||||
@@ -131,7 +129,6 @@
|
||||
force = 10
|
||||
caliber = "7.62mm"
|
||||
origin_tech = list(TECH_COMBAT = 8, TECH_MATERIAL = 3)
|
||||
fire_sound = 'sound/weapons/Gunshot.ogg'
|
||||
slot_flags = SLOT_BACK
|
||||
load_method = MAGAZINE
|
||||
magazine_type = /obj/item/ammo_magazine/m762
|
||||
@@ -204,7 +201,6 @@
|
||||
caliber = "5.45mm"
|
||||
origin_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 1, TECH_ILLEGAL = 2)
|
||||
slot_flags = SLOT_BACK
|
||||
fire_sound = 'sound/weapons/machinegun.ogg'
|
||||
load_method = MAGAZINE
|
||||
magazine_type = /obj/item/ammo_magazine/m545saw
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/m545saw, /obj/item/ammo_magazine/m545)
|
||||
@@ -337,7 +333,6 @@
|
||||
caliber = "9mm"
|
||||
origin_tech = list(TECH_COMBAT = 5, TECH_MATERIAL = 2)
|
||||
slot_flags = SLOT_BELT // ToDo: Belt sprite.
|
||||
fire_sound = 'sound/weapons/Gunshot_light.ogg'
|
||||
load_method = MAGAZINE
|
||||
magazine_type = /obj/item/ammo_magazine/m9mmp90
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/m9mmp90, /obj/item/ammo_magazine/m9mmt) // ToDo: New sprite for the different mag.
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
desc = "A reproduction of an almost ancient weapon design from the early 20th century. It's still popular among hunters and collectors due to its reliability. Uses 7.62mm rounds."
|
||||
item_state = "boltaction"
|
||||
icon_state = "boltaction"
|
||||
fire_sound = 'sound/weapons/rifleshot.ogg'
|
||||
fire_sound = 'sound/weapons/Gunshot_generic_rifle.ogg'
|
||||
max_shells = 5
|
||||
caliber = "7.62mm"
|
||||
origin_tech = list(TECH_COMBAT = 1)// Old as shit rifle doesn't have very good tech.
|
||||
@@ -29,7 +29,7 @@
|
||||
if(istype(A, /obj/item/weapon/surgical/circular_saw) || istype(A, /obj/item/weapon/melee/energy) || istype(A, /obj/item/weapon/pickaxe/plasmacutter) && w_class != ITEMSIZE_NORMAL)
|
||||
user << "<span class='notice'>You begin to shorten the barrel and stock of \the [src].</span>"
|
||||
if(loaded.len)
|
||||
afterattack(user, user) //will this work? //it will. we call it twice, for twice the FUN
|
||||
afterattack(user, user)
|
||||
playsound(user, fire_sound, 50, 1)
|
||||
user.visible_message("<span class='danger'>[src] goes off!</span>", "<span class='danger'>The rifle goes off in your face!</span>")
|
||||
return
|
||||
@@ -53,7 +53,6 @@
|
||||
desc = "A reproduction of an almost ancient weapon design from the 19th century. This one uses a lever-action to move new rounds into the chamber. Uses 7.62mm rounds."
|
||||
item_state = "leveraction"
|
||||
icon_state = "leveraction"
|
||||
fire_sound = 'sound/weapons/rifleshot.ogg'
|
||||
max_shells = 5
|
||||
caliber = "7.62mm"
|
||||
origin_tech = list(TECH_COMBAT = 1)// Old as shit rifle doesn't have very good tech.
|
||||
|
||||
@@ -132,8 +132,8 @@
|
||||
item_state = "deagle"
|
||||
force = 14.0
|
||||
caliber = ".44"
|
||||
fire_sound = 'sound/weapons/Gunshot_deagle.ogg'
|
||||
load_method = MAGAZINE
|
||||
fire_sound = 'sound/weapons/deagle.ogg'
|
||||
magazine_type = /obj/item/ammo_magazine/m44
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/m44)
|
||||
|
||||
@@ -154,33 +154,13 @@
|
||||
icon_state = "deaglecamo"
|
||||
item_state = "deagleg"
|
||||
|
||||
/*
|
||||
/obj/item/weapon/gun/projectile/fiveseven
|
||||
name = "\improper WT-AP57"
|
||||
desc = "This tacticool pistol made by Ward-Takahashi trades stopping power for armor piercing and a large capacity. Uses 5mm rounds."
|
||||
icon_state = "fnseven"
|
||||
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 2)
|
||||
caliber = "5mm"
|
||||
load_method = MAGAZINE
|
||||
fire_sound = 'sound/weapons/semiauto.ogg'
|
||||
magazine_type = /obj/item/ammo_magazine/c5mm
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/c5mm)
|
||||
|
||||
/obj/item/weapon/gun/projectile/fiveseven/update_icon()
|
||||
..()
|
||||
if(ammo_magazine)
|
||||
icon_state = "fnseven"
|
||||
else
|
||||
icon_state = "fnseven-empty"
|
||||
*/
|
||||
|
||||
/obj/item/weapon/gun/projectile/gyropistol // Does this even appear anywhere outside of admin abuse?
|
||||
name = "gyrojet pistol"
|
||||
desc = "Speak softly, and carry a big gun. Fires rare .75 caliber self-propelled exploding bolts--because fuck you and everything around you."
|
||||
icon_state = "gyropistol"
|
||||
max_shells = 8
|
||||
caliber = ".75"
|
||||
fire_sound = 'sound/weapons/rpg.ogg'
|
||||
fire_sound = 'sound/weapons/railgun.ogg'
|
||||
origin_tech = list(TECH_COMBAT = 3)
|
||||
ammo_type = "/obj/item/ammo_casing/a75"
|
||||
load_method = MAGAZINE
|
||||
@@ -331,7 +311,6 @@
|
||||
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 2)
|
||||
caliber = "9mm"
|
||||
load_method = MAGAZINE
|
||||
fire_sound = 'sound/weapons/gunshot3.ogg'
|
||||
magazine_type = /obj/item/ammo_magazine/m9mm
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/m9mm) // Can accept illegal large capacity magazines, or compact magazines.
|
||||
|
||||
|
||||
@@ -46,7 +46,6 @@
|
||||
icon_state = "detective"
|
||||
caliber = ".38"
|
||||
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2)
|
||||
fire_sound = 'sound/weapons/gunshot3.ogg'
|
||||
ammo_type = /obj/item/ammo_casing/a38
|
||||
|
||||
/obj/item/weapon/gun/projectile/revolver/detective/verb/rename_gun()
|
||||
@@ -73,7 +72,6 @@
|
||||
icon_state = "detective"
|
||||
caliber = ".45"
|
||||
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2)
|
||||
fire_sound = 'sound/weapons/gunshot_heavy.ogg'
|
||||
ammo_type = /obj/item/ammo_casing/a45/rubber
|
||||
max_shells = 7
|
||||
|
||||
@@ -125,7 +123,6 @@ obj/item/weapon/gun/projectile/revolver/detective45/verb/rename_gun()
|
||||
icon_state = "deckard-empty"
|
||||
caliber = ".38"
|
||||
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2)
|
||||
fire_sound = 'sound/weapons/gunshot3.ogg'
|
||||
ammo_type = /obj/item/ammo_casing/a38
|
||||
|
||||
/obj/item/weapon/gun/projectile/revolver/deckard/emp
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
caliber = "7.62mm"
|
||||
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2)
|
||||
slot_flags = SLOT_BACK
|
||||
fire_sound = 'sound/weapons/rifleshot.ogg'
|
||||
//fire_sound = 'sound/weapons/rifleshot.ogg'
|
||||
load_method = MAGAZINE // ToDo: Make it so MAGAZINE, SPEEDLOADER and SINGLE_CASING can all be used on the same gun.
|
||||
magazine_type = /obj/item/ammo_magazine/m762garand
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/m762garand)
|
||||
|
||||
@@ -84,7 +84,7 @@
|
||||
scoped_accuracy = 0
|
||||
// requires_two_hands = 1
|
||||
// one_handed_penalty = 60 // The weapon itself is heavy, and the long barrel makes it hard to hold steady with just one hand.
|
||||
fire_sound = 'sound/weapons/SVD_shot.ogg'
|
||||
fire_sound = 'sound/weapons/Gunshot_SVD.ogg' // Has a very unique sound.
|
||||
magazine_type = /obj/item/ammo_magazine/m762svd
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/m762svd)
|
||||
|
||||
|
||||
@@ -15,8 +15,8 @@
|
||||
icon = 'icons/obj/gun.dmi'
|
||||
icon_state = "spikethrower3"
|
||||
item_state = "spikethrower"
|
||||
fire_sound_text = "a strange noise"
|
||||
fire_sound = 'sound/weapons/bladeslice.ogg'
|
||||
fire_sound_text = "a strange noise"
|
||||
|
||||
/obj/item/weapon/gun/launcher/spikethrower/New()
|
||||
..()
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
var/tracer_type
|
||||
var/impact_type
|
||||
|
||||
var/fire_sound
|
||||
var/fire_sound = 'sound/weapons/Gunshot_old.ogg' // Can be overriden in gun.dm's fire_sound var. It can also be null but I don't know why you'd ever want to do that. -Ace
|
||||
|
||||
var/vacuum_traversal = 1 //Determines if the projectile can exist in vacuum, if false, the projectile will be deleted if it enters vacuum.
|
||||
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
/obj/item/projectile/beam/pulse
|
||||
name = "pulse"
|
||||
icon_state = "u_laser"
|
||||
fire_sound='sound/weapons/pulse.ogg'
|
||||
fire_sound='sound/weapons/gauss_shoot.ogg' // Needs a more meaty sound than what pulse.ogg currently is; this will be a placeholder for now.
|
||||
damage = 100 //Badmin toy, don't care
|
||||
armor_penetration = 100
|
||||
light_color = "#0066FF"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/obj/item/projectile/bullet
|
||||
name = "bullet"
|
||||
icon_state = "bullet"
|
||||
fire_sound = 'sound/weapons/gunshot/gunshot_strong.ogg'
|
||||
fire_sound = 'sound/weapons/Gunshot4.ogg'
|
||||
damage = 60
|
||||
damage_type = BRUTE
|
||||
nodamage = 0
|
||||
@@ -65,7 +65,7 @@
|
||||
/* short-casing projectiles, like the kind used in pistols or SMGs */
|
||||
|
||||
/obj/item/projectile/bullet/pistol // 9mm pistols and most SMGs. Sacrifice power for capacity.
|
||||
fire_sound = 'sound/weapons/gunshot/gunshot_pistol.ogg' // ToDo: Different shot sounds for different strength pistols. -Ace
|
||||
fire_sound = 'sound/weapons/gunshot2.ogg'
|
||||
damage = 20
|
||||
|
||||
/obj/item/projectile/bullet/pistol/ap
|
||||
@@ -77,7 +77,7 @@
|
||||
armor_penetration = -50
|
||||
|
||||
/obj/item/projectile/bullet/pistol/medium // .45 (and maybe .40 if it ever gets added) caliber security pistols. Balance between capacity and power.
|
||||
// fire_sound = 'sound/weapons/gunshot3.ogg' // ToDo: Different shot sounds for different strength pistols.
|
||||
fire_sound = 'sound/weapons/gunshot3.ogg' // Snappier sound.
|
||||
damage = 25
|
||||
|
||||
/obj/item/projectile/bullet/pistol/medium/ap
|
||||
@@ -89,11 +89,11 @@
|
||||
armor_penetration = -50
|
||||
|
||||
/obj/item/projectile/bullet/pistol/strong // .357 and .44 caliber stuff. High power pistols like the Mateba or Desert Eagle. Sacrifice capacity for power.
|
||||
fire_sound = 'sound/weapons/gunshot/gunshot_strong.ogg' // ToDo: Replace with something less ugly. I recommend weapons/gunshot3.ogg
|
||||
fire_sound = 'sound/weapons/gunshot4.ogg'
|
||||
damage = 60
|
||||
|
||||
/obj/item/projectile/bullet/pistol/rubber/strong // "Rubber" bullets for high power pistols.
|
||||
fire_sound = 'sound/weapons/gunshot/gunshot_strong.ogg' // ToDo: Same as above.
|
||||
fire_sound = 'sound/weapons/gunshot3.ogg' // Rubber shots have less powder, but these still have more punch than normal rubber shot.
|
||||
damage = 10
|
||||
agony = 60
|
||||
embed_chance = 0
|
||||
@@ -107,12 +107,13 @@
|
||||
embed_chance = 0
|
||||
sharp = 0
|
||||
check_armour = "melee"
|
||||
fire_sound ='sound/weapons/Gunshot_pathetic.ogg' // Rubber shots have less powder in the casing.
|
||||
|
||||
/* shotgun projectiles */
|
||||
|
||||
/obj/item/projectile/bullet/shotgun
|
||||
name = "slug"
|
||||
fire_sound = 'sound/weapons/gunshot/shotgun.ogg'
|
||||
fire_sound = 'sound/weapons/Gunshot_shotgun.ogg'
|
||||
damage = 50
|
||||
armor_penetration = 15
|
||||
|
||||
@@ -128,7 +129,7 @@
|
||||
//Overall less damage than slugs in exchange for more damage at very close range and more embedding
|
||||
/obj/item/projectile/bullet/pellet/shotgun
|
||||
name = "shrapnel"
|
||||
fire_sound = 'sound/weapons/gunshot/shotgun.ogg'
|
||||
fire_sound = 'sound/weapons/Gunshot_shotgun.ogg'
|
||||
damage = 13
|
||||
pellets = 6
|
||||
range_step = 1
|
||||
@@ -143,7 +144,7 @@
|
||||
//EMP shotgun 'slug', it's basically a beanbag that pops a tiny emp when it hits. //Not currently used
|
||||
/obj/item/projectile/bullet/shotgun/ion
|
||||
name = "ion slug"
|
||||
fire_sound = 'sound/weapons/Laser.ogg'
|
||||
fire_sound = 'sound/weapons/Laser.ogg' // Really? We got nothing better than this?
|
||||
damage = 15
|
||||
embed_chance = 0
|
||||
sharp = 0
|
||||
@@ -160,14 +161,18 @@
|
||||
/* "Rifle" rounds */
|
||||
|
||||
/obj/item/projectile/bullet/rifle
|
||||
fire_sound = 'sound/weapons/gunshot/gunshot3.ogg'
|
||||
fire_sound = 'sound/weapons/Gunshot_generic_rifle.ogg'
|
||||
armor_penetration = 15
|
||||
penetrating = 1
|
||||
|
||||
/obj/item/projectile/bullet/rifle/a762
|
||||
fire_sound = 'sound/weapons/gunshot/gunshot2.ogg'
|
||||
fire_sound = 'sound/weapons/Gunshot_heavy.ogg'
|
||||
damage = 35
|
||||
|
||||
/obj/item/projectile/bullet/rifle/a762/sniper // Hitscan specifically for sniper ammo; to be implimented at a later date, probably for the SVD. -Ace
|
||||
fire_sound = 'sound/weapons/Gunshot_sniper.ogg'
|
||||
hitscan = 1 //so the ammo isn't useless as a sniper weapon
|
||||
|
||||
/obj/item/projectile/bullet/rifle/a762/ap
|
||||
damage = 30
|
||||
armor_penetration = 50 // At 30 or more armor, this will do more damage than standard rounds.
|
||||
@@ -177,12 +182,13 @@
|
||||
armor_penetration = -50
|
||||
penetrating = 0
|
||||
|
||||
/obj/item/projectile/bullet/rifle/a762/hunter // Optimized for killing simple animals and not people, because Balance.
|
||||
/obj/item/projectile/bullet/rifle/a762/hunter // Optimized for killing simple animals and not people, because Balance(tm)
|
||||
damage = 20
|
||||
SA_bonus_damage = 50 // 70 total on animals.
|
||||
SA_vulnerability = SA_ANIMAL
|
||||
|
||||
/obj/item/projectile/bullet/rifle/a545
|
||||
fire_sound = 'sound/weapons/Gunshot_light.ogg'
|
||||
damage = 25
|
||||
|
||||
/obj/item/projectile/bullet/rifle/a545/ap
|
||||
@@ -199,8 +205,8 @@
|
||||
SA_bonus_damage = 35 // 50 total on animals.
|
||||
SA_vulnerability = SA_ANIMAL
|
||||
|
||||
/obj/item/projectile/bullet/rifle/a145
|
||||
fire_sound = 'sound/weapons/gunshot/sniper.ogg'
|
||||
/obj/item/projectile/bullet/rifle/a145 // 14.5<EFBFBD>114mm is bigger than a .50 BMG round.
|
||||
fire_sound = 'sound/weapons/Gunshot_cannon.ogg' // This is literally an anti-tank rifle caliber. It better sound like a fucking cannon.
|
||||
damage = 80
|
||||
stun = 3
|
||||
weaken = 3
|
||||
@@ -258,28 +264,15 @@
|
||||
damage = 15
|
||||
kill_count = 6
|
||||
|
||||
/obj/item/projectile/bullet/blank
|
||||
invisibility = 101
|
||||
damage = 1
|
||||
embed_chance = 0
|
||||
/* Practice rounds and blanks */
|
||||
|
||||
/* Practice */
|
||||
|
||||
/obj/item/projectile/bullet/pistol/practice
|
||||
/obj/item/projectile/bullet/practice
|
||||
damage = 5
|
||||
|
||||
/obj/item/projectile/bullet/rifle/practice
|
||||
damage = 5
|
||||
penetrating = 0
|
||||
|
||||
/obj/item/projectile/bullet/shotgun/practice
|
||||
name = "practice"
|
||||
damage = 5
|
||||
|
||||
/obj/item/projectile/bullet/pistol/cap
|
||||
/obj/item/projectile/bullet/pistol/cap // Just the primer, such as a cap gun.
|
||||
name = "cap"
|
||||
damage_type = HALLOSS
|
||||
fire_sound = null
|
||||
fire_sound = 'sound/effects/snap.ogg'
|
||||
damage = 0
|
||||
nodamage = 1
|
||||
embed_chance = 0
|
||||
@@ -288,5 +281,18 @@
|
||||
combustion = FALSE
|
||||
|
||||
/obj/item/projectile/bullet/pistol/cap/process()
|
||||
loc = null
|
||||
qdel(src)
|
||||
|
||||
/obj/item/projectile/bullet/blank
|
||||
name = "blank"
|
||||
damage_type = HALLOSS
|
||||
fire_sound = 'sound/weapons/Gunshot_generic_rifle.ogg' // Blanks still make loud noises.
|
||||
damage = 0
|
||||
nodamage = 1
|
||||
embed_chance = 0
|
||||
sharp = 0
|
||||
|
||||
/obj/item/projectile/bullet/blank/cap/process()
|
||||
loc = null
|
||||
qdel(src)
|
||||
@@ -10,7 +10,7 @@
|
||||
/obj/item/projectile/energy/flash
|
||||
name = "chemical shell"
|
||||
icon_state = "bullet"
|
||||
fire_sound = 'sound/weapons/gunshot/gunshot_pistol.ogg'
|
||||
fire_sound = 'sound/weapons/gunshot_pathetic.ogg'
|
||||
damage = 5
|
||||
kill_count = 15 //if the shell hasn't hit anything after travelling this far it just explodes.
|
||||
var/flash_range = 0
|
||||
@@ -48,7 +48,7 @@
|
||||
|
||||
//blinds people like the flash round, but can also be used for temporary illumination
|
||||
/obj/item/projectile/energy/flash/flare
|
||||
fire_sound = 'sound/weapons/gunshot/shotgun.ogg'
|
||||
fire_sound = 'sound/weapons/grenade_launcher.ogg'
|
||||
damage = 10
|
||||
flash_range = 1
|
||||
brightness = 15
|
||||
@@ -65,7 +65,7 @@
|
||||
/obj/item/projectile/energy/electrode
|
||||
name = "electrode"
|
||||
icon_state = "spark"
|
||||
fire_sound = 'sound/weapons/Gunshot.ogg'
|
||||
fire_sound = 'sound/weapons/Gunshot2.ogg'
|
||||
taser_effect = 1
|
||||
agony = 40
|
||||
light_range = 2
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
var/impact_sound = 'sound/effects/uncloak.ogg'
|
||||
var/crack_sound = 'sound/effects/teleport.ogg'
|
||||
fire_sound = 'sound/effects/zzzt.ogg'
|
||||
|
||||
var/target_distance = null // Shamelessly stolen from arcing projectiles.
|
||||
var/my_tracking_beam = null // Beam made by the launcher. Tracked here to destroy it in time with the impact.
|
||||
|
||||
@@ -261,7 +261,7 @@
|
||||
/obj/item/projectile/beam/tungsten
|
||||
name = "core of molten tungsten"
|
||||
icon_state = "energy"
|
||||
fire_sound = 'sound/weapons/emitter2.ogg'
|
||||
fire_sound = 'sound/weapons/gauss_shoot.ogg'
|
||||
pass_flags = PASSTABLE | PASSGRILLE
|
||||
damage = 70
|
||||
damage_type = BURN
|
||||
|
||||
Reference in New Issue
Block a user