mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-27 14:07:51 +01:00
Adds muzzle flashes for guns depending on the ammo (#13322)
* Muzzle flashes added for guns * Use an muzzle flash effect now. * Unused var * sillenced guns have a lower alpha muzzleflash effect
This commit is contained in:
@@ -19,6 +19,15 @@
|
||||
var/click_cooldown_override = 0 //Override this to make your gun have a faster fire rate, in tenths of a second. 4 is the default gun cooldown.
|
||||
var/harmful = TRUE //pacifism check for boolet, set to FALSE if bullet is non-lethal
|
||||
|
||||
/// What type of muzzle flash effect will be shown. If null then no effect and flash of light will be shown
|
||||
var/muzzle_flash_effect = /obj/effect/temp_visual/target_angled/muzzle_flash
|
||||
/// What color the flash has. If null then the flash won't cause lighting
|
||||
var/muzzle_flash_color = LIGHT_COLOR_TUNGSTEN
|
||||
/// What range the muzzle flash has
|
||||
var/muzzle_flash_range = MUZZLE_FLASH_RANGE_WEAK
|
||||
/// How strong the flash is
|
||||
var/muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_WEAK
|
||||
|
||||
/obj/item/ammo_casing/New()
|
||||
..()
|
||||
if(projectile_type)
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
desc = "A .357 bullet casing."
|
||||
caliber = "357"
|
||||
projectile_type = /obj/item/projectile/bullet
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_STRONG
|
||||
|
||||
/obj/item/ammo_casing/rubber9mm
|
||||
desc = "A 9mm rubber bullet casing."
|
||||
@@ -14,6 +16,8 @@
|
||||
icon_state = "762-casing"
|
||||
caliber = "a762"
|
||||
projectile_type = /obj/item/projectile/bullet
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_STRONG
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_STRONG
|
||||
|
||||
/obj/item/ammo_casing/a762/enchanted
|
||||
projectile_type = /obj/item/projectile/bullet/weakbullet3
|
||||
@@ -22,15 +26,20 @@
|
||||
desc = "A .50AE bullet casing."
|
||||
caliber = ".50"
|
||||
projectile_type = /obj/item/projectile/bullet
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_STRONG
|
||||
|
||||
/obj/item/ammo_casing/c38
|
||||
desc = "A .38 bullet casing."
|
||||
caliber = "38"
|
||||
icon_state = "r-casing"
|
||||
projectile_type = /obj/item/projectile/bullet/weakbullet2
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
|
||||
/obj/item/ammo_casing/c38/invisible
|
||||
projectile_type = /obj/item/projectile/bullet/weakbullet2/invisible
|
||||
muzzle_flash_effect = null // invisible eh
|
||||
|
||||
/obj/item/ammo_casing/c38/invisible/fake
|
||||
projectile_type = /obj/item/projectile/bullet/weakbullet2/invisible/fake
|
||||
@@ -39,12 +48,15 @@
|
||||
desc = "A 10mm bullet casing."
|
||||
caliber = "10mm"
|
||||
projectile_type = /obj/item/projectile/bullet/midbullet3
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
|
||||
/obj/item/ammo_casing/c10mm/ap
|
||||
projectile_type = /obj/item/projectile/bullet/midbullet3/ap
|
||||
|
||||
/obj/item/ammo_casing/c10mm/fire
|
||||
projectile_type = /obj/item/projectile/bullet/midbullet3/fire
|
||||
muzzle_flash_color = LIGHT_COLOR_FIRE
|
||||
|
||||
/obj/item/ammo_casing/c10mm/hp
|
||||
projectile_type = /obj/item/projectile/bullet/midbullet3/hp
|
||||
@@ -53,62 +65,60 @@
|
||||
desc = "A 9mm bullet casing."
|
||||
caliber = "9mm"
|
||||
projectile_type = /obj/item/projectile/bullet/weakbullet3
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_WEAK
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
|
||||
/obj/item/ammo_casing/c9mmap
|
||||
desc = "A 9mm bullet casing."
|
||||
caliber = "9mm"
|
||||
/obj/item/ammo_casing/c9mm/ap
|
||||
projectile_type = /obj/item/projectile/bullet/armourpiercing
|
||||
|
||||
/obj/item/ammo_casing/c9mmtox
|
||||
desc = "A 9mm bullet casing."
|
||||
caliber = "9mm"
|
||||
/obj/item/ammo_casing/c9mm/tox
|
||||
projectile_type = /obj/item/projectile/bullet/toxinbullet
|
||||
|
||||
/obj/item/ammo_casing/c9mminc
|
||||
desc = "A 9mm bullet casing."
|
||||
caliber = "9mm"
|
||||
/obj/item/ammo_casing/c9mm/inc
|
||||
projectile_type = /obj/item/projectile/bullet/incendiary/firebullet
|
||||
muzzle_flash_color = LIGHT_COLOR_FIRE
|
||||
|
||||
/obj/item/ammo_casing/c46x30mm
|
||||
desc = "A 4.6x30mm bullet casing."
|
||||
caliber = "4.6x30mm"
|
||||
projectile_type = /obj/item/projectile/bullet/weakbullet3
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_WEAK
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
|
||||
/obj/item/ammo_casing/c46x30mmap
|
||||
desc = "A 4.6x30mm bullet casing."
|
||||
caliber = "4.6x30mm"
|
||||
/obj/item/ammo_casing/c46x30mm/ap
|
||||
projectile_type = /obj/item/projectile/bullet/armourpiercing
|
||||
|
||||
/obj/item/ammo_casing/c46x30mmtox
|
||||
desc = "A 4.6x30mm bullet casing."
|
||||
caliber = "4.6x30mm"
|
||||
/obj/item/ammo_casing/c46x30mm/tox
|
||||
projectile_type = /obj/item/projectile/bullet/toxinbullet
|
||||
|
||||
/obj/item/ammo_casing/c46x30mminc
|
||||
desc = "A 4.6x30mm bullet casing."
|
||||
caliber = "4.6x30mm"
|
||||
/obj/item/ammo_casing/c46x30mm/inc
|
||||
projectile_type = /obj/item/projectile/bullet/incendiary/firebullet
|
||||
muzzle_flash_color = LIGHT_COLOR_FIRE
|
||||
|
||||
/obj/item/ammo_casing/rubber45
|
||||
desc = "A .45 rubber bullet casing."
|
||||
caliber = ".45"
|
||||
icon_state = "r-casing"
|
||||
projectile_type = /obj/item/projectile/bullet/midbullet_r
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
|
||||
/obj/item/ammo_casing/c45
|
||||
desc = "A .45 bullet casing."
|
||||
caliber = ".45"
|
||||
projectile_type = /obj/item/projectile/bullet/midbullet
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
|
||||
/obj/item/ammo_casing/c45nostamina
|
||||
desc = "A .45 bullet casing."
|
||||
caliber = ".45"
|
||||
/obj/item/ammo_casing/c45/nostamina
|
||||
projectile_type = /obj/item/projectile/bullet/midbullet3
|
||||
|
||||
/obj/item/ammo_casing/n762
|
||||
desc = "A 7.62x38mmR bullet casing."
|
||||
caliber = "n762"
|
||||
projectile_type = /obj/item/projectile/bullet
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_STRONG
|
||||
|
||||
/obj/item/ammo_casing/caseless/magspear
|
||||
name = "magnetic spear"
|
||||
@@ -118,6 +128,7 @@
|
||||
icon_state = "magspear"
|
||||
throwforce = 15 //still deadly when thrown
|
||||
throw_speed = 3
|
||||
muzzle_flash_color = null
|
||||
|
||||
/obj/item/ammo_casing/shotgun
|
||||
name = "shotgun slug"
|
||||
@@ -127,6 +138,8 @@
|
||||
drop_sound = 'sound/weapons/gun_interactions/shotgun_fall.ogg'
|
||||
projectile_type = /obj/item/projectile/bullet
|
||||
materials = list(MAT_METAL=4000)
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_STRONG
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_STRONG
|
||||
|
||||
|
||||
/obj/item/ammo_casing/shotgun/buckshot
|
||||
@@ -153,6 +166,8 @@
|
||||
icon_state = "bshell"
|
||||
projectile_type = /obj/item/projectile/bullet/weakbullet
|
||||
materials = list(MAT_METAL=250)
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
|
||||
|
||||
/obj/item/ammo_casing/shotgun/improvised
|
||||
@@ -163,6 +178,8 @@
|
||||
materials = list(MAT_METAL=250)
|
||||
pellets = 10
|
||||
variance = 25
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
|
||||
|
||||
/obj/item/ammo_casing/shotgun/improvised/overload
|
||||
@@ -174,6 +191,8 @@
|
||||
materials = list(MAT_METAL=250)
|
||||
pellets = 4
|
||||
variance = 40
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_STRONG
|
||||
|
||||
|
||||
/obj/item/ammo_casing/shotgun/stunslug
|
||||
@@ -182,6 +201,9 @@
|
||||
icon_state = "stunshell"
|
||||
projectile_type = /obj/item/projectile/bullet/stunshot
|
||||
materials = list(MAT_METAL=250)
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
muzzle_flash_color = "#FFFF00"
|
||||
|
||||
|
||||
/obj/item/ammo_casing/shotgun/meteorshot
|
||||
@@ -203,12 +225,14 @@
|
||||
would have difficulty with."
|
||||
icon_state = "pshell"
|
||||
projectile_type = /obj/item/projectile/beam/pulse/shot
|
||||
muzzle_flash_color = LIGHT_COLOR_DARKBLUE
|
||||
|
||||
/obj/item/ammo_casing/shotgun/incendiary
|
||||
name = "incendiary slug"
|
||||
desc = "An incendiary-coated shotgun slug."
|
||||
icon_state = "ishell"
|
||||
projectile_type = /obj/item/projectile/bullet/incendiary/shell
|
||||
muzzle_flash_color = LIGHT_COLOR_FIRE
|
||||
|
||||
/obj/item/ammo_casing/shotgun/frag12
|
||||
name = "FRAG-12 slug"
|
||||
@@ -223,6 +247,7 @@
|
||||
projectile_type = /obj/item/projectile/bullet/incendiary/shell/dragonsbreath
|
||||
pellets = 4
|
||||
variance = 35
|
||||
muzzle_flash_color = LIGHT_COLOR_FIRE
|
||||
|
||||
/obj/item/ammo_casing/shotgun/ion
|
||||
name = "ion shell"
|
||||
@@ -232,12 +257,18 @@
|
||||
projectile_type = /obj/item/projectile/ion/weak
|
||||
pellets = 4
|
||||
variance = 35
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
muzzle_flash_color = LIGHT_COLOR_LIGHTBLUE
|
||||
|
||||
/obj/item/ammo_casing/shotgun/laserslug
|
||||
name = "laser slug"
|
||||
desc = "An advanced shotgun shell that uses a micro laser to replicate the effects of a laser weapon in a ballistic package."
|
||||
icon_state = "lshell"
|
||||
projectile_type = /obj/item/projectile/beam/laser
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
muzzle_flash_color = LIGHT_COLOR_DARKRED
|
||||
|
||||
/obj/item/ammo_casing/shotgun/techshell
|
||||
name = "unloaded technological shell"
|
||||
@@ -251,6 +282,8 @@
|
||||
icon_state = "cshell"
|
||||
container_type = OPENCONTAINER
|
||||
projectile_type = /obj/item/projectile/bullet/dart
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
|
||||
/obj/item/ammo_casing/shotgun/dart/New()
|
||||
..()
|
||||
@@ -275,18 +308,24 @@
|
||||
desc = "A tranquilizer round used to subdue individuals utilizing stimulants."
|
||||
icon_state = "nshell"
|
||||
projectile_type = /obj/item/projectile/bullet/dart/syringe/tranquilizer
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
materials = list(MAT_METAL=250)
|
||||
|
||||
/obj/item/ammo_casing/a556
|
||||
desc = "A 5.56mm bullet casing."
|
||||
caliber = "a556"
|
||||
projectile_type = /obj/item/projectile/bullet/heavybullet
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
|
||||
/obj/item/ammo_casing/shotgun/fakebeanbag
|
||||
name = "beanbag shell"
|
||||
desc = "A weak beanbag shell."
|
||||
icon_state = "bshell"
|
||||
projectile_type = /obj/item/projectile/bullet/weakbullet/booze
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
|
||||
/obj/item/ammo_casing/rocket
|
||||
name = "rocket shell"
|
||||
@@ -294,6 +333,8 @@
|
||||
icon_state = "rocketshell"
|
||||
projectile_type = /obj/item/missile
|
||||
caliber = "rocket"
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_STRONG
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_STRONG
|
||||
|
||||
/obj/item/ammo_casing/caseless
|
||||
desc = "A caseless bullet casing."
|
||||
@@ -309,6 +350,8 @@
|
||||
desc = "A .75 bullet casing."
|
||||
caliber = "75"
|
||||
projectile_type = /obj/item/projectile/bullet/gyro
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_STRONG
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_STRONG
|
||||
|
||||
/obj/item/ammo_casing/a40mm
|
||||
name = "40mm HE shell"
|
||||
@@ -316,11 +359,14 @@
|
||||
caliber = "40mm"
|
||||
icon_state = "40mmHE"
|
||||
projectile_type = /obj/item/projectile/bullet/a40mm
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
|
||||
/obj/item/ammo_casing/caseless/foam_dart
|
||||
name = "foam dart"
|
||||
desc = "It's nerf or nothing! Ages 8 and up."
|
||||
projectile_type = /obj/item/projectile/bullet/reusable/foam_dart
|
||||
muzzle_flash_effect = null
|
||||
caliber = "foam_force"
|
||||
icon = 'icons/obj/guns/toy.dmi'
|
||||
icon_state = "foamdart"
|
||||
@@ -403,6 +449,7 @@
|
||||
name = "assassination shell"
|
||||
desc = "A specialist shrapnel shell that has been laced with a silencing toxin."
|
||||
projectile_type = /obj/item/projectile/bullet/pellet/assassination
|
||||
muzzle_flash_effect = null
|
||||
icon_state = "gshell"
|
||||
pellets = 6
|
||||
variance = 25
|
||||
@@ -411,9 +458,15 @@
|
||||
desc = "A cap for children toys."
|
||||
caliber = "cap"
|
||||
projectile_type = /obj/item/projectile/bullet/cap
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
|
||||
/obj/item/ammo_casing/laser
|
||||
desc = "An experimental laser casing."
|
||||
caliber = "laser"
|
||||
projectile_type = /obj/item/projectile/beam/laser
|
||||
muzzle_flash_effect = /obj/effect/temp_visual/target_angled/muzzle_flash/energy
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_WEAK
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
muzzle_flash_color = LIGHT_COLOR_DARKRED
|
||||
icon_state = "lasercasing"
|
||||
|
||||
@@ -6,9 +6,11 @@
|
||||
var/e_cost = 100 //The amount of energy a cell needs to expend to create this shot.
|
||||
var/select_name = "energy"
|
||||
fire_sound = 'sound/weapons/laser.ogg'
|
||||
muzzle_flash_effect = /obj/effect/temp_visual/target_angled/muzzle_flash/energy
|
||||
|
||||
/obj/item/ammo_casing/energy/laser
|
||||
projectile_type = /obj/item/projectile/beam/laser
|
||||
muzzle_flash_color = LIGHT_COLOR_DARKRED
|
||||
select_name = "kill"
|
||||
|
||||
/obj/item/ammo_casing/energy/laser/cyborg //to balance cyborg energy cost seperately
|
||||
@@ -16,6 +18,7 @@
|
||||
|
||||
/obj/item/ammo_casing/energy/lasergun
|
||||
projectile_type = /obj/item/projectile/beam/laser
|
||||
muzzle_flash_color = LIGHT_COLOR_DARKRED
|
||||
e_cost = 83
|
||||
select_name = "kill"
|
||||
|
||||
@@ -40,6 +43,7 @@
|
||||
|
||||
/obj/item/ammo_casing/energy/laser/pulse
|
||||
projectile_type = /obj/item/projectile/beam/pulse
|
||||
muzzle_flash_color = LIGHT_COLOR_DARKBLUE
|
||||
e_cost = 200
|
||||
select_name = "DESTROY"
|
||||
fire_sound = 'sound/weapons/pulse.ogg'
|
||||
@@ -52,6 +56,7 @@
|
||||
|
||||
/obj/item/ammo_casing/energy/laser/bluetag
|
||||
projectile_type = /obj/item/projectile/beam/lasertag/bluetag
|
||||
muzzle_flash_color = LIGHT_COLOR_BLUE
|
||||
select_name = "bluetag"
|
||||
harmful = FALSE
|
||||
|
||||
@@ -62,6 +67,7 @@
|
||||
|
||||
/obj/item/ammo_casing/energy/xray
|
||||
projectile_type = /obj/item/projectile/beam/xray
|
||||
muzzle_flash_color = LIGHT_COLOR_GREEN
|
||||
e_cost = 100
|
||||
fire_sound = 'sound/weapons/laser3.ogg'
|
||||
|
||||
@@ -92,6 +98,7 @@
|
||||
|
||||
/obj/item/ammo_casing/energy/electrode
|
||||
projectile_type = /obj/item/projectile/energy/electrode
|
||||
muzzle_flash_color = "#FFFF00"
|
||||
select_name = "stun"
|
||||
fire_sound = 'sound/weapons/taser.ogg'
|
||||
e_cost = 200
|
||||
@@ -107,11 +114,13 @@
|
||||
|
||||
/obj/item/ammo_casing/energy/ion
|
||||
projectile_type = /obj/item/projectile/ion
|
||||
muzzle_flash_color = LIGHT_COLOR_LIGHTBLUE
|
||||
select_name = "ion"
|
||||
fire_sound = 'sound/weapons/ionrifle.ogg'
|
||||
|
||||
/obj/item/ammo_casing/energy/declone
|
||||
projectile_type = /obj/item/projectile/energy/declone
|
||||
muzzle_flash_color = LIGHT_COLOR_GREEN
|
||||
select_name = "declone"
|
||||
fire_sound = 'sound/weapons/pulse3.ogg'
|
||||
|
||||
@@ -122,6 +131,7 @@
|
||||
|
||||
/obj/item/ammo_casing/energy/flora
|
||||
fire_sound = 'sound/effects/stealthoff.ogg'
|
||||
muzzle_flash_color = LIGHT_COLOR_GREEN
|
||||
harmful = FALSE
|
||||
|
||||
/obj/item/ammo_casing/energy/flora/yield
|
||||
@@ -146,10 +156,13 @@
|
||||
|
||||
/obj/item/ammo_casing/energy/meteor
|
||||
projectile_type = /obj/item/projectile/meteor
|
||||
muzzle_flash_effect = /obj/effect/temp_visual/target_angled/muzzle_flash
|
||||
muzzle_flash_color = null
|
||||
select_name = "goddamn meteor"
|
||||
|
||||
/obj/item/ammo_casing/energy/disabler
|
||||
projectile_type = /obj/item/projectile/beam/disabler
|
||||
muzzle_flash_color = LIGHT_COLOR_LIGHTBLUE
|
||||
select_name = "disable"
|
||||
e_cost = 50
|
||||
fire_sound = 'sound/weapons/taser2.ogg'
|
||||
@@ -160,6 +173,7 @@
|
||||
|
||||
/obj/item/ammo_casing/energy/plasma
|
||||
projectile_type = /obj/item/projectile/plasma
|
||||
muzzle_flash_color = LIGHT_COLOR_PURPLE
|
||||
select_name = "plasma burst"
|
||||
fire_sound = 'sound/weapons/plasma_cutter.ogg'
|
||||
delay = 15
|
||||
@@ -172,6 +186,7 @@
|
||||
|
||||
/obj/item/ammo_casing/energy/wormhole
|
||||
projectile_type = /obj/item/projectile/beam/wormhole
|
||||
muzzle_flash_color = "#33CCFF"
|
||||
e_cost = 0
|
||||
fire_sound = 'sound/weapons/pulse3.ogg'
|
||||
var/obj/item/gun/energy/wormhole_projector/gun = null
|
||||
@@ -183,10 +198,13 @@
|
||||
|
||||
/obj/item/ammo_casing/energy/wormhole/orange
|
||||
projectile_type = /obj/item/projectile/beam/wormhole/orange
|
||||
muzzle_flash_color = "#FF6600"
|
||||
select_name = "orange"
|
||||
|
||||
/obj/item/ammo_casing/energy/bolt
|
||||
projectile_type = /obj/item/projectile/energy/bolt
|
||||
muzzle_flash_color = null
|
||||
muzzle_flash_effect = /obj/effect/temp_visual/target_angled/muzzle_flash
|
||||
select_name = "bolt"
|
||||
e_cost = 500
|
||||
fire_sound = 'sound/weapons/genhit.ogg'
|
||||
@@ -203,17 +221,21 @@
|
||||
|
||||
/obj/item/ammo_casing/energy/instakill
|
||||
projectile_type = /obj/item/projectile/beam/instakill
|
||||
muzzle_flash_color = LIGHT_COLOR_PURPLE
|
||||
e_cost = 0
|
||||
select_name = "DESTROY"
|
||||
|
||||
/obj/item/ammo_casing/energy/instakill/blue
|
||||
projectile_type = /obj/item/projectile/beam/instakill/blue
|
||||
muzzle_flash_color = LIGHT_COLOR_DARKBLUE
|
||||
|
||||
/obj/item/ammo_casing/energy/instakill/red
|
||||
projectile_type = /obj/item/projectile/beam/instakill/red
|
||||
muzzle_flash_color = LIGHT_COLOR_DARKRED
|
||||
|
||||
/obj/item/ammo_casing/energy/plasma
|
||||
projectile_type = /obj/item/projectile/plasma
|
||||
muzzle_flash_color = LIGHT_COLOR_PURPLE
|
||||
select_name = "plasma burst"
|
||||
fire_sound = 'sound/weapons/pulse.ogg'
|
||||
|
||||
@@ -224,26 +246,31 @@
|
||||
fire_sound = 'sound/magic/lightningbolt.ogg'
|
||||
e_cost = 200
|
||||
select_name = "lightning beam"
|
||||
muzzle_flash_color = LIGHT_COLOR_FADEDPURPLE
|
||||
projectile_type = /obj/item/projectile/energy/shock_revolver
|
||||
|
||||
/obj/item/ammo_casing/energy/toxplasma
|
||||
projectile_type = /obj/item/projectile/energy/toxplasma
|
||||
muzzle_flash_color = LIGHT_COLOR_FADEDPURPLE
|
||||
fire_sound = 'sound/weapons/taser2.ogg'
|
||||
select_name = "plasma dart"
|
||||
|
||||
/obj/item/ammo_casing/energy/clown
|
||||
projectile_type = /obj/item/projectile/clown
|
||||
muzzle_flash_effect = null
|
||||
fire_sound = 'sound/weapons/gunshots/gunshot_smg.ogg'
|
||||
select_name = "clown"
|
||||
|
||||
/obj/item/ammo_casing/energy/sniper
|
||||
projectile_type = /obj/item/projectile/beam/sniper
|
||||
muzzle_flash_color = LIGHT_COLOR_PINK
|
||||
fire_sound = 'sound/weapons/marauder.ogg'
|
||||
delay = 50
|
||||
select_name = "snipe"
|
||||
|
||||
/obj/item/ammo_casing/energy/teleport
|
||||
projectile_type = /obj/item/projectile/energy/teleport
|
||||
muzzle_flash_color = LIGHT_COLOR_LIGHTBLUE
|
||||
fire_sound = 'sound/weapons/wave.ogg'
|
||||
e_cost = 250
|
||||
select_name = "teleport beam"
|
||||
@@ -258,6 +285,7 @@
|
||||
|
||||
/obj/item/ammo_casing/energy/mimic
|
||||
projectile_type = /obj/item/projectile/mimic
|
||||
muzzle_flash_effect = null
|
||||
fire_sound = 'sound/weapons/bite.ogg'
|
||||
select_name = "gun mimic"
|
||||
var/mimic_type
|
||||
|
||||
@@ -271,15 +271,15 @@
|
||||
|
||||
/obj/item/ammo_box/magazine/wt550m9/wtap
|
||||
name = "wt550 magazine (Armour Piercing 4.6x30mm)"
|
||||
ammo_type = /obj/item/ammo_casing/c46x30mmap
|
||||
ammo_type = /obj/item/ammo_casing/c46x30mm/ap
|
||||
|
||||
/obj/item/ammo_box/magazine/wt550m9/wttx
|
||||
name = "wt550 magazine (Toxin Tipped 4.6x30mm)"
|
||||
ammo_type = /obj/item/ammo_casing/c46x30mmtox
|
||||
ammo_type = /obj/item/ammo_casing/c46x30mm/tox
|
||||
|
||||
/obj/item/ammo_box/magazine/wt550m9/wtic
|
||||
name = "wt550 magazine (Incendiary 4.6x30mm)"
|
||||
ammo_type = /obj/item/ammo_casing/c46x30mminc
|
||||
ammo_type = /obj/item/ammo_casing/c46x30mm/inc
|
||||
|
||||
/obj/item/ammo_box/magazine/uzim9mm
|
||||
name = "uzi magazine (9mm)"
|
||||
@@ -302,17 +302,17 @@
|
||||
|
||||
/obj/item/ammo_box/magazine/smgm9mm/ap
|
||||
name = "SMG magazine (Armour Piercing 9mm)"
|
||||
ammo_type = /obj/item/ammo_casing/c9mmap
|
||||
ammo_type = /obj/item/ammo_casing/c9mm/ap
|
||||
materials = list(MAT_METAL = 3000)
|
||||
|
||||
/obj/item/ammo_box/magazine/smgm9mm/toxin
|
||||
name = "SMG magazine (Toxin Tipped 9mm)"
|
||||
ammo_type = /obj/item/ammo_casing/c9mmtox
|
||||
ammo_type = /obj/item/ammo_casing/c9mm/tox
|
||||
materials = list(MAT_METAL = 3000)
|
||||
|
||||
/obj/item/ammo_box/magazine/smgm9mm/fire
|
||||
name = "SMG Magazine (Incendiary 9mm)"
|
||||
ammo_type = /obj/item/ammo_casing/c9mminc
|
||||
ammo_type = /obj/item/ammo_casing/c9mm/inc
|
||||
materials = list(MAT_METAL = 3000)
|
||||
|
||||
/obj/item/ammo_box/magazine/smgm9mm/update_icon()
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
name = "magic casing"
|
||||
desc = "I didn't even know magic needed ammo..."
|
||||
projectile_type = /obj/item/projectile/magic
|
||||
muzzle_flash_color = COLOR_BLUE_GRAY
|
||||
muzzle_flash_effect = /obj/effect/temp_visual/target_angled/muzzle_flash/magic
|
||||
|
||||
/obj/item/ammo_casing/magic/change
|
||||
projectile_type = /obj/item/projectile/magic/change
|
||||
@@ -40,13 +42,14 @@
|
||||
projectile_type = pick(typesof(/obj/item/projectile/magic))
|
||||
..()
|
||||
|
||||
/obj/item/ammo_casing/forcebolt
|
||||
/obj/item/ammo_casing/magic/forcebolt
|
||||
projectile_type = /obj/item/projectile/forcebolt
|
||||
|
||||
/obj/item/ammo_casing/syringegun
|
||||
name = "syringe gun spring"
|
||||
desc = "A high-power spring that throws syringes."
|
||||
projectile_type = null
|
||||
muzzle_flash_effect = null
|
||||
|
||||
/obj/item/ammo_casing/energy/c3dbullet
|
||||
projectile_type = /obj/item/projectile/bullet/midbullet3
|
||||
|
||||
@@ -109,20 +109,33 @@
|
||||
to_chat(user, "<span class='danger'>*click*</span>")
|
||||
playsound(user, 'sound/weapons/empty.ogg', 100, 1)
|
||||
|
||||
/obj/item/gun/proc/shoot_live_shot(mob/living/user as mob|obj, pointblank = 0, mob/pbtarget = null, message = 1)
|
||||
/obj/item/gun/proc/shoot_live_shot(mob/living/user, atom/target, pointblank = FALSE, message = TRUE)
|
||||
if(recoil)
|
||||
shake_camera(user, recoil + 1, recoil)
|
||||
|
||||
var/muzzle_range = chambered.muzzle_flash_range
|
||||
var/muzzle_strength = chambered.muzzle_flash_strength
|
||||
var/muzzle_flash_time = 0.2 SECONDS
|
||||
if(suppressed)
|
||||
playsound(user, fire_sound, 10, 1)
|
||||
muzzle_range *= 0.5
|
||||
muzzle_strength *= 0.2
|
||||
muzzle_flash_time *= 0.5
|
||||
else
|
||||
playsound(user, fire_sound, 50, 1)
|
||||
if(!message)
|
||||
return
|
||||
if(pointblank)
|
||||
user.visible_message("<span class='danger'>[user] fires [src] point blank at [pbtarget]!</span>", "<span class='danger'>You fire [src] point blank at [pbtarget]!</span>", "<span class='italics'>You hear \a [fire_sound_text]!</span>")
|
||||
if(message)
|
||||
if(pointblank)
|
||||
user.visible_message("<span class='danger'>[user] fires [src] point blank at [target]!</span>", "<span class='danger'>You fire [src] point blank at [target]!</span>", "<span class='italics'>You hear \a [fire_sound_text]!</span>")
|
||||
else
|
||||
user.visible_message("<span class='danger'>[user] fires [src]!</span>", "<span class='danger'>You fire [src]!</span>", "You hear \a [fire_sound_text]!")
|
||||
if(chambered.muzzle_flash_effect)
|
||||
var/obj/effect/temp_visual/target_angled/muzzle_flash/effect = new chambered.muzzle_flash_effect(get_turf(src), target, muzzle_flash_time)
|
||||
effect.alpha = min(255, muzzle_strength * 255)
|
||||
if(chambered.muzzle_flash_color)
|
||||
effect.color = chambered.muzzle_flash_color
|
||||
effect.set_light(muzzle_range, muzzle_strength, chambered.muzzle_flash_color)
|
||||
else
|
||||
user.visible_message("<span class='danger'>[user] fires [src]!</span>", "<span class='danger'>You fire [src]!</span>", "You hear \a [fire_sound_text]!")
|
||||
effect.color = LIGHT_COLOR_TUNGSTEN
|
||||
|
||||
/obj/item/gun/emp_act(severity)
|
||||
for(var/obj/O in contents)
|
||||
@@ -228,9 +241,9 @@
|
||||
break
|
||||
else
|
||||
if(get_dist(user, target) <= 1) //Making sure whether the target is in vicinity for the pointblank shot
|
||||
shoot_live_shot(user, 1, target, message)
|
||||
shoot_live_shot(user, target, TRUE, message)
|
||||
else
|
||||
shoot_live_shot(user, 0, target, message)
|
||||
shoot_live_shot(user, target, FALSE, message)
|
||||
else
|
||||
shoot_with_empty_chamber(user)
|
||||
break
|
||||
@@ -250,9 +263,9 @@
|
||||
return
|
||||
else
|
||||
if(get_dist(user, target) <= 1) //Making sure whether the target is in vicinity for the pointblank shot
|
||||
shoot_live_shot(user, 1, target, message)
|
||||
shoot_live_shot(user, target, TRUE, message)
|
||||
else
|
||||
shoot_live_shot(user, 0, target, message)
|
||||
shoot_live_shot(user, target, FALSE, message)
|
||||
else
|
||||
shoot_with_empty_chamber(user)
|
||||
return
|
||||
|
||||
@@ -49,6 +49,7 @@
|
||||
name = "alloy spike"
|
||||
desc = "A broadhead spike made out of a weird silvery metal."
|
||||
projectile_type = /obj/item/projectile/bullet/spike
|
||||
muzzle_flash_effect = null
|
||||
throwforce = 5
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
caliber = "spike"
|
||||
|
||||
@@ -88,7 +88,7 @@
|
||||
if(!holds_charge)
|
||||
empty()
|
||||
|
||||
/obj/item/gun/energy/kinetic_accelerator/shoot_live_shot()
|
||||
/obj/item/gun/energy/kinetic_accelerator/shoot_live_shot(mob/living/user, atom/target, pointblank = FALSE, message = TRUE)
|
||||
. = ..()
|
||||
attempt_reload()
|
||||
|
||||
@@ -173,6 +173,7 @@
|
||||
//Casing
|
||||
/obj/item/ammo_casing/energy/kinetic
|
||||
projectile_type = /obj/item/projectile/kinetic
|
||||
muzzle_flash_color = null
|
||||
select_name = "kinetic"
|
||||
e_cost = 500
|
||||
fire_sound = 'sound/weapons/kenetic_accel.ogg' // fine spelling there chap
|
||||
|
||||
@@ -132,7 +132,7 @@
|
||||
if(!suppressed)
|
||||
playsound(loc, 'sound/weapons/kenetic_reload.ogg', 60, 1)
|
||||
user.visible_message("<span class='suicide'>[user] cocks the [name] and pretends to blow [user.p_their()] brains out! It looks like [user.p_theyre()] trying to commit suicide!</b></span>")
|
||||
shoot_live_shot()
|
||||
shoot_live_shot(user, user, FALSE, FALSE)
|
||||
return OXYLOSS
|
||||
|
||||
// Plasma Cutters //
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
icon = 'icons/obj/wizard.dmi'
|
||||
icon_state = "focus"
|
||||
item_state = "focus"
|
||||
ammo_type = list(/obj/item/ammo_casing/forcebolt)
|
||||
ammo_type = /obj/item/ammo_casing/magic/forcebolt
|
||||
|
||||
/obj/item/gun/magic/staff/spellblade
|
||||
name = "spellblade"
|
||||
|
||||
@@ -78,6 +78,7 @@
|
||||
icon_state = "arrow"
|
||||
force = 10
|
||||
projectile_type = /obj/item/projectile/bullet/reusable/arrow
|
||||
muzzle_flash_effect = null
|
||||
caliber = "arrow"
|
||||
|
||||
//quiver
|
||||
|
||||
@@ -142,6 +142,8 @@
|
||||
icon_state = "762-casing"
|
||||
caliber = "mm55645"
|
||||
projectile_type = /obj/item/projectile/bullet/saw
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_STRONG
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_STRONG
|
||||
|
||||
/obj/item/ammo_casing/mm556x45/bleeding
|
||||
desc = "A 556x45mm bullet casing with specialized inner-casing, that when it makes contact with a target, release tiny shrapnel to induce internal bleeding."
|
||||
@@ -159,3 +161,4 @@
|
||||
/obj/item/ammo_casing/mm556x45/incen
|
||||
desc = "A 556x45mm bullet casing designed with a chemical-filled capsule on the tip that when bursted, reacts with the atmosphere to produce a fireball, engulfing the target in flames. "
|
||||
projectile_type = /obj/item/projectile/bullet/saw/incen
|
||||
muzzle_flash_color = LIGHT_COLOR_FIRE
|
||||
|
||||
@@ -260,7 +260,7 @@
|
||||
..()
|
||||
guns_left = 0
|
||||
|
||||
/obj/item/gun/projectile/shotgun/boltaction/enchanted/shoot_live_shot(mob/living/user as mob|obj, pointblank = 0, mob/pbtarget = null, message = 1)
|
||||
/obj/item/gun/projectile/shotgun/boltaction/enchanted/shoot_live_shot(mob/living/user, atom/target, pointblank = FALSE, message = TRUE)
|
||||
..()
|
||||
if(guns_left)
|
||||
var/obj/item/gun/projectile/shotgun/boltaction/enchanted/GUN = new
|
||||
@@ -278,7 +278,7 @@
|
||||
|
||||
/obj/item/gun/projectile/shotgun/automatic
|
||||
|
||||
/obj/item/gun/projectile/shotgun/automatic/shoot_live_shot(mob/living/user as mob|obj)
|
||||
/obj/item/gun/projectile/shotgun/automatic/shoot_live_shot(mob/living/user, atom/target, pointblank = FALSE, message = TRUE)
|
||||
..()
|
||||
pump(user)
|
||||
|
||||
|
||||
@@ -78,6 +78,8 @@
|
||||
desc = "A .50 bullet casing."
|
||||
caliber = ".50"
|
||||
projectile_type = /obj/item/projectile/bullet/sniper
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_STRONG
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_STRONG
|
||||
icon_state = ".50"
|
||||
|
||||
/obj/item/projectile/bullet/sniper
|
||||
@@ -192,6 +194,8 @@
|
||||
desc = "A .50 caliber compact round casing."
|
||||
caliber = ".50"
|
||||
projectile_type = /obj/item/projectile/bullet/sniper/compact
|
||||
muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL
|
||||
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
|
||||
icon_state = ".50"
|
||||
|
||||
/obj/item/projectile/bullet/sniper/compact //Can't dismember, and can't break things; just deals massive damage.
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
impact_effect_type = /obj/effect/temp_visual/impact_effect/red_laser
|
||||
is_reflectable = TRUE
|
||||
light_range = 2
|
||||
light_color = LIGHT_COLOR_RED
|
||||
light_color = LIGHT_COLOR_DARKRED
|
||||
ricochets_max = 50 //Honk!
|
||||
ricochet_chance = 80
|
||||
|
||||
@@ -109,11 +109,12 @@
|
||||
icon_state = "laser"
|
||||
suit_types = list(/obj/item/clothing/suit/bluetag)
|
||||
impact_effect_type = /obj/effect/temp_visual/impact_effect/red_laser
|
||||
light_color = LIGHT_COLOR_RED
|
||||
light_color = LIGHT_COLOR_DARKRED
|
||||
|
||||
/obj/item/projectile/beam/lasertag/bluetag
|
||||
icon_state = "bluelaser"
|
||||
suit_types = list(/obj/item/clothing/suit/redtag)
|
||||
light_color = LIGHT_COLOR_BLUE
|
||||
|
||||
/obj/item/projectile/beam/sniper
|
||||
name = "sniper beam"
|
||||
@@ -161,7 +162,7 @@
|
||||
/obj/item/projectile/beam/instakill/red
|
||||
icon_state = "red_laser"
|
||||
impact_effect_type = /obj/effect/temp_visual/impact_effect/red_laser
|
||||
light_color = LIGHT_COLOR_RED
|
||||
light_color = LIGHT_COLOR_DARKRED
|
||||
|
||||
/obj/item/projectile/beam/instakill/on_hit(atom/target)
|
||||
. = ..()
|
||||
|
||||
Reference in New Issue
Block a user