mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-03 21:42:06 +00:00
Sprite fixes: Suppressed Sniper Rifles and Donksoft Pistols (#56754)
* Gives the sniper rifle a suppressor overlay so that it no longer shows up as missing a sprite, also fixes donksoft pistols by repathing them from pistols over repathing them from toy saber smgs. Creates a flag for checking if a gun needs a toy overlay, so it is handled in the parent.
This commit is contained in:
@@ -5841,7 +5841,7 @@
|
||||
/area/maintenance/starboard/fore)
|
||||
"asc" = (
|
||||
/obj/structure/table/wood,
|
||||
/obj/item/gun/ballistic/automatic/toy/pistol/unrestricted,
|
||||
/obj/item/gun/ballistic/automatic/pistol/toy,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 1
|
||||
},
|
||||
|
||||
@@ -73,6 +73,9 @@
|
||||
/// Flags for the pod_flags var on /obj/structure/closet/supplypod
|
||||
#define FIRST_SOUNDS (1<<0) // If it shouldn't play sounds the first time it lands, used for reverse mode
|
||||
|
||||
/// Flags for the gun_flags var for firearms
|
||||
#define TOY_FIREARM_OVERLAY (1<<0) // If update_overlay would add some indicator that the gun is a toy, like a plastic cap on a pistol
|
||||
|
||||
/// Flags for sharpness in obj/item
|
||||
#define SHARP_EDGED (1<<0)
|
||||
#define SHARP_POINTY (1<<1)
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
STR.set_holdable(list(
|
||||
/obj/item/gun/ballistic/automatic/pistol,
|
||||
/obj/item/gun/ballistic/revolver,
|
||||
/obj/item/gun/ballistic/automatic/toy/pistol,
|
||||
/obj/item/gun/energy/e_gun/mini,
|
||||
/obj/item/gun/energy/disabler,
|
||||
/obj/item/gun/energy/dueling
|
||||
@@ -49,7 +48,6 @@
|
||||
/obj/item/ammo_box/c38, // Revolver speedloaders.
|
||||
/obj/item/ammo_box/a357,
|
||||
/obj/item/ammo_box/a762,
|
||||
/obj/item/gun/ballistic/automatic/toy/pistol,
|
||||
/obj/item/ammo_box/magazine/toy/pistol,
|
||||
/obj/item/gun/energy/e_gun/mini,
|
||||
/obj/item/gun/energy/disabler,
|
||||
@@ -108,7 +106,6 @@
|
||||
/obj/item/ammo_box/c38,
|
||||
/obj/item/ammo_box/a357,
|
||||
/obj/item/ammo_box/a762,
|
||||
/obj/item/gun/ballistic/automatic/toy/pistol,
|
||||
/obj/item/ammo_box/magazine/toy/pistol,
|
||||
/obj/item/gun/energy/kinetic_accelerator/crossbow,
|
||||
/obj/item/gun/energy/e_gun/mini,
|
||||
|
||||
@@ -2176,8 +2176,8 @@
|
||||
desc = "Psst.. hey bud... remember those old foam force pistols that got discontinued for being too cool? Well I got two of those right here with your name on em. I'll even throw in a spare mag for each, waddya say?"
|
||||
contraband = TRUE
|
||||
cost = CARGO_CRATE_VALUE * 8
|
||||
contains = list(/obj/item/gun/ballistic/automatic/toy/pistol,
|
||||
/obj/item/gun/ballistic/automatic/toy/pistol,
|
||||
contains = list(/obj/item/gun/ballistic/automatic/pistol/toy,
|
||||
/obj/item/gun/ballistic/automatic/pistol/toy,
|
||||
/obj/item/ammo_box/magazine/toy/pistol,
|
||||
/obj/item/ammo_box/magazine/toy/pistol)
|
||||
crate_name = "foam force crate"
|
||||
|
||||
@@ -221,7 +221,7 @@
|
||||
for(var/i in 1 to 4)
|
||||
new /obj/item/clothing/mask/balaclava(src)
|
||||
new /obj/item/gun/ballistic/shotgun/toy(src)
|
||||
new /obj/item/gun/ballistic/automatic/toy/pistol/unrestricted(src)
|
||||
new /obj/item/gun/ballistic/automatic/pistol/toy(src)
|
||||
new /obj/item/gun/ballistic/automatic/toy/unrestricted(src)
|
||||
new /obj/item/gun/ballistic/automatic/l6_saw/toy/unrestricted(src)
|
||||
new /obj/item/ammo_box/foambox(src)
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
attack_verb_continuous = list("strikes", "hits", "bashes")
|
||||
attack_verb_simple = list("strike", "hit", "bash")
|
||||
|
||||
var/gun_flags = NONE
|
||||
var/fire_sound = 'sound/weapons/gun/pistol/shot.ogg'
|
||||
var/vary_fire_sound = TRUE
|
||||
var/fire_sound_volume = 50
|
||||
|
||||
@@ -153,6 +153,10 @@
|
||||
. += MA
|
||||
if(!chambered && empty_indicator) //this is duplicated in c20's update_overlayss due to a layering issue with the select fire icon.
|
||||
. += "[icon_state]_empty"
|
||||
|
||||
if(gun_flags & TOY_FIREARM_OVERLAY)
|
||||
. += "[icon_state]_toy"
|
||||
|
||||
if (magazine && !internal_magazine)
|
||||
if (special_mags)
|
||||
. += "[icon_state]_mag_[initial(magazine.icon_state)]"
|
||||
@@ -177,7 +181,6 @@
|
||||
if (capacity_number)
|
||||
. += "[icon_state]_mag_[capacity_number]"
|
||||
|
||||
|
||||
/obj/item/gun/ballistic/process_chamber(empty_chamber = TRUE, from_firing = TRUE, chamber_next_round = TRUE)
|
||||
if(!semi_auto && from_firing)
|
||||
return
|
||||
|
||||
@@ -339,6 +339,8 @@
|
||||
slot_flags = ITEM_SLOT_BACK
|
||||
actions_types = list()
|
||||
mag_display = TRUE
|
||||
suppressor_x_offset = 3
|
||||
suppressor_y_offset = 3
|
||||
|
||||
/obj/item/gun/ballistic/automatic/sniper_rifle/syndicate
|
||||
name = "syndicate sniper rifle"
|
||||
|
||||
@@ -12,40 +12,26 @@
|
||||
can_suppress = TRUE
|
||||
clumsy_check = FALSE
|
||||
item_flags = NONE
|
||||
gun_flags = TOY_FIREARM_OVERLAY
|
||||
casing_ejector = FALSE
|
||||
|
||||
/obj/item/gun/ballistic/automatic/toy/update_overlays()
|
||||
. = ..()
|
||||
. += "[icon_state]_toy"
|
||||
|
||||
/obj/item/gun/ballistic/automatic/toy/unrestricted
|
||||
pin = /obj/item/firing_pin
|
||||
|
||||
/obj/item/gun/ballistic/automatic/toy/pistol
|
||||
/obj/item/gun/ballistic/automatic/pistol/toy
|
||||
name = "foam force pistol"
|
||||
desc = "A small, easily concealable toy handgun. Ages 8 and up."
|
||||
icon_state = "pistol"
|
||||
bolt_type = BOLT_TYPE_LOCKING
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
mag_type = /obj/item/ammo_box/magazine/toy/pistol
|
||||
fire_sound = 'sound/items/syringeproj.ogg'
|
||||
burst_size = 1
|
||||
fire_delay = 0
|
||||
actions_types = list()
|
||||
gun_flags = TOY_FIREARM_OVERLAY
|
||||
|
||||
/obj/item/gun/ballistic/automatic/toy/pistol/riot
|
||||
/obj/item/gun/ballistic/automatic/pistol/toy/riot
|
||||
mag_type = /obj/item/ammo_box/magazine/toy/pistol/riot
|
||||
|
||||
/obj/item/gun/ballistic/automatic/toy/pistol/riot/Initialize()
|
||||
/obj/item/gun/ballistic/automatic/pistol/riot/Initialize()
|
||||
magazine = new /obj/item/ammo_box/magazine/toy/pistol/riot(src)
|
||||
return ..()
|
||||
|
||||
/obj/item/gun/ballistic/automatic/toy/pistol/unrestricted
|
||||
pin = /obj/item/firing_pin
|
||||
|
||||
/obj/item/gun/ballistic/automatic/toy/pistol/riot/unrestricted
|
||||
pin = /obj/item/firing_pin
|
||||
|
||||
/obj/item/gun/ballistic/shotgun/toy
|
||||
name = "foam force shotgun"
|
||||
desc = "A toy shotgun with wood furniture and a four-shell capacity underneath. Ages 8 and up."
|
||||
@@ -58,10 +44,7 @@
|
||||
casing_ejector = FALSE
|
||||
can_suppress = FALSE
|
||||
pb_knockback = 0
|
||||
|
||||
/obj/item/gun/ballistic/shotgun/toy/update_overlays()
|
||||
. = ..()
|
||||
. += "[icon_state]_toy"
|
||||
gun_flags = TOY_FIREARM_OVERLAY
|
||||
|
||||
/obj/item/gun/ballistic/shotgun/toy/process_chamber(empty_chamber = 0)
|
||||
..()
|
||||
@@ -92,6 +75,7 @@
|
||||
mag_type = /obj/item/ammo_box/magazine/toy/smgm45/riot
|
||||
casing_ejector = FALSE
|
||||
clumsy_check = FALSE
|
||||
gun_flags = TOY_FIREARM_OVERLAY
|
||||
|
||||
/obj/item/gun/ballistic/automatic/c20r/toy/unrestricted //Use this for actual toys
|
||||
pin = /obj/item/firing_pin
|
||||
@@ -100,10 +84,6 @@
|
||||
/obj/item/gun/ballistic/automatic/c20r/toy/unrestricted/riot
|
||||
mag_type = /obj/item/ammo_box/magazine/toy/smgm45/riot
|
||||
|
||||
/obj/item/gun/ballistic/automatic/c20r/toy/update_overlays()
|
||||
. = ..()
|
||||
. += "[icon_state]_toy"
|
||||
|
||||
/obj/item/gun/ballistic/automatic/l6_saw/toy //This is the syndicate variant with syndicate firing pin and riot darts.
|
||||
name = "donksoft LMG"
|
||||
desc = "A heavily modified toy light machine gun, designated 'L6 SAW'. Ages 8 and up."
|
||||
@@ -113,6 +93,7 @@
|
||||
mag_type = /obj/item/ammo_box/magazine/toy/m762/riot
|
||||
casing_ejector = FALSE
|
||||
clumsy_check = FALSE
|
||||
gun_flags = TOY_FIREARM_OVERLAY
|
||||
|
||||
/obj/item/gun/ballistic/automatic/l6_saw/toy/unrestricted //Use this for actual toys
|
||||
pin = /obj/item/firing_pin
|
||||
@@ -120,7 +101,3 @@
|
||||
|
||||
/obj/item/gun/ballistic/automatic/l6_saw/toy/unrestricted/riot
|
||||
mag_type = /obj/item/ammo_box/magazine/toy/m762/riot
|
||||
|
||||
/obj/item/gun/ballistic/automatic/l6_saw/toy/update_overlays()
|
||||
. = ..()
|
||||
. += "[icon_state]_toy"
|
||||
|
||||
@@ -550,7 +550,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item))
|
||||
name = "Toy Pistol with Riot Darts"
|
||||
desc = "An innocent-looking toy pistol designed to fire foam darts. Comes loaded with riot-grade \
|
||||
darts effective at incapacitating a target."
|
||||
item = /obj/item/gun/ballistic/automatic/toy/pistol/riot
|
||||
item = /obj/item/gun/ballistic/automatic/pistol/toy/riot
|
||||
cost = 2
|
||||
surplus = 10
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
vend_reply = "Come back for more!"
|
||||
circuit = /obj/item/circuitboard/machine/vending/syndicatedonksofttoyvendor
|
||||
products = list(/obj/item/gun/ballistic/automatic/toy/unrestricted = 10,
|
||||
/obj/item/gun/ballistic/automatic/toy/pistol/unrestricted = 10,
|
||||
/obj/item/gun/ballistic/automatic/pistol/toy = 10,
|
||||
/obj/item/gun/ballistic/shotgun/toy/unrestricted = 10,
|
||||
/obj/item/toy/sword = 10,
|
||||
/obj/item/ammo_box/foambox = 20,
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
circuit = /obj/item/circuitboard/machine/vending/donksofttoyvendor
|
||||
products = list(
|
||||
/obj/item/gun/ballistic/automatic/toy/unrestricted = 10,
|
||||
/obj/item/gun/ballistic/automatic/toy/pistol/unrestricted = 10,
|
||||
/obj/item/gun/ballistic/automatic/pistol/toy = 10,
|
||||
/obj/item/gun/ballistic/shotgun/toy/unrestricted = 10,
|
||||
/obj/item/toy/sword = 10,
|
||||
/obj/item/ammo_box/foambox = 20,
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 32 KiB |
Reference in New Issue
Block a user