mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-13 11:43:31 +00:00
Blueshield updates. New shotgun.
Semiauto revolver shotgun for Blueshield and Warden. Sprites are placeholder. Blueshield spawn gear boxes for weapon choice now.
This commit is contained in:
39
code/game/objects/items/gunbox_yw.dm
Normal file
39
code/game/objects/items/gunbox_yw.dm
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
/obj/item/gunbox/blueshield
|
||||||
|
name = "blueshield mainarm box"
|
||||||
|
desc = "A secure box containing a blueshield main weapon."
|
||||||
|
|
||||||
|
//Primary gun: Either shotgun or SMG
|
||||||
|
|
||||||
|
/obj/item/gunbox/blueshield/attack_self(mob/living/user)
|
||||||
|
var/list/options = list()
|
||||||
|
options["Jackhammer Revolver Shotgun (12 Gauge)"] = list(/obj/item/weapon/gun/projectile/revolvershotgun, /obj/item/ammo_magazine/m12gdrumjack, /obj/item/ammo_magazine/m12gdrumjack, /obj/item/ammo_magazine/m12gdrumjack/beanbag)
|
||||||
|
options["P90 SMG (Top-Mount 9mm)"] = list(/obj/item/weapon/gun/projectile/automatic/p90/blueshield, /obj/item/ammo_magazine/m9mmt/rubber, /obj/item/ammo_magazine/m9mmt/, /obj/item/ammo_magazine/m9mmt/)
|
||||||
|
options["X01 Energy Gun (Weapon Cell)"] = list(/obj/item/weapon/gun/energy/x01, /obj/item/weapon/cell/device/weapon, /obj/item/weapon/cell/device/weapon)
|
||||||
|
var/choice = input(user,"Would you prefer a Jackhammer shotgun, a P90 SMG or an X01 Energy Gun?") as null|anything in options
|
||||||
|
if(src && choice)
|
||||||
|
var/list/things_to_spawn = options[choice]
|
||||||
|
for(var/new_type in things_to_spawn) // Spawn all the things, the gun and the ammo.
|
||||||
|
var/atom/movable/AM = new new_type(get_turf(src))
|
||||||
|
if(istype(AM, /obj/item/weapon/gun))
|
||||||
|
to_chat(user, "You have chosen \the [AM].")
|
||||||
|
qdel(src)
|
||||||
|
|
||||||
|
/obj/item/gunbox/blueshield/secondary
|
||||||
|
name = "blueshield sidearm box"
|
||||||
|
desc = "A secure box containing a blueshield sidearm."
|
||||||
|
|
||||||
|
//Sidearm: Egun, or a .44 with rubber and lethal mag
|
||||||
|
|
||||||
|
/obj/item/gunbox/blueshield/secondary/attack_self(mob/living/user)
|
||||||
|
var/list/options = list()
|
||||||
|
// options["NSFW Variable Pistol(Microbattery)"] = list(/obj/item/weapon/storage/secure/briefcase/nsfw_pack_hos) It's broken, and I can't fix it because the snowflake keeps metastasizing.
|
||||||
|
options["E-Gun (Weapon Cell)"] = list(/obj/item/weapon/gun/energy/gun, /obj/item/weapon/cell/device/weapon, /obj/item/weapon/cell/device/weapon)
|
||||||
|
options["Consul Revolver (.44)"] = list(/obj/item/weapon/gun/projectile/revolver/consul, /obj/item/ammo_magazine/s44, /obj/item/ammo_magazine/s44, /obj/item/ammo_magazine/s44/rubber)
|
||||||
|
var/choice = input(user,"Would you prefer an e-gun or a revolver?") as null|anything in options
|
||||||
|
if(src && choice)
|
||||||
|
var/list/things_to_spawn = options[choice]
|
||||||
|
for(var/new_type in things_to_spawn) // Spawn all the things, the gun and the ammo.
|
||||||
|
var/atom/movable/AM = new new_type(get_turf(src))
|
||||||
|
if(istype(AM, /obj/item/weapon/gun))
|
||||||
|
to_chat(user, "You have chosen \the [AM].")
|
||||||
|
qdel(src)
|
||||||
@@ -135,7 +135,7 @@
|
|||||||
item_state_slots = list(slot_r_hand_str = "syringe_kit", slot_l_hand_str = "syringe_kit")
|
item_state_slots = list(slot_r_hand_str = "syringe_kit", slot_l_hand_str = "syringe_kit")
|
||||||
starts_with = list(/obj/item/ammo_casing/a12g/beanbag = 8)
|
starts_with = list(/obj/item/ammo_casing/a12g/beanbag = 8)
|
||||||
|
|
||||||
/obj/item/weapon/storage/box/beanbags/large/New()
|
/obj/item/weapon/storage/box/beanbags/large
|
||||||
starts_with = list(/obj/item/ammo_casing/a12g/beanbag = 16)
|
starts_with = list(/obj/item/ammo_casing/a12g/beanbag = 16)
|
||||||
|
|
||||||
/obj/item/weapon/storage/box/shotgunammo
|
/obj/item/weapon/storage/box/shotgunammo
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
/obj/item/weapon/storage/belt/security,
|
/obj/item/weapon/storage/belt/security,
|
||||||
/obj/item/weapon/grenade/flashbang,
|
/obj/item/weapon/grenade/flashbang,
|
||||||
/obj/item/device/flash,
|
/obj/item/device/flash,
|
||||||
|
/obj/item/weapon/reagent_containers/spray/pepper,
|
||||||
/obj/item/weapon/handcuffs,
|
/obj/item/weapon/handcuffs,
|
||||||
/obj/item/weapon/melee/baton/loaded,
|
/obj/item/weapon/melee/baton/loaded,
|
||||||
/obj/item/clothing/glasses/sunglasses,
|
/obj/item/clothing/glasses/sunglasses,
|
||||||
@@ -30,9 +31,6 @@
|
|||||||
/obj/item/clothing/accessory/holster/leg,
|
/obj/item/clothing/accessory/holster/leg,
|
||||||
/obj/item/clothing/shoes/boots/jackboots,
|
/obj/item/clothing/shoes/boots/jackboots,
|
||||||
/obj/item/clothing/shoes/boots/jackboots/toeless,
|
/obj/item/clothing/shoes/boots/jackboots/toeless,
|
||||||
/obj/item/weapon/gun/projectile/shotgun/pump,
|
/obj/item/gunbox/blueshield,
|
||||||
/obj/item/weapon/storage/box/beanbags,
|
/obj/item/gunbox/blueshield/secondary
|
||||||
/obj/item/weapon/storage/box/shotgunshells,
|
|
||||||
/obj/item/weapon/storage/secure/briefcase/nsfw_pack_hos,
|
|
||||||
/obj/item/weapon/gun/energy/x01
|
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -168,7 +168,10 @@
|
|||||||
/obj/item/clothing/shoes/boots/winter/security,
|
/obj/item/clothing/shoes/boots/winter/security,
|
||||||
/obj/item/device/flashlight/maglight,
|
/obj/item/device/flashlight/maglight,
|
||||||
/obj/item/device/megaphone,
|
/obj/item/device/megaphone,
|
||||||
/obj/item/clothing/mask/gas/half)
|
/obj/item/clothing/mask/gas/half,
|
||||||
|
/obj/item/weapon/gun/projectile/revolvershotgun,
|
||||||
|
/obj/item/ammo_magazine/m12gdrumjack/beanbag,
|
||||||
|
/obj/item/ammo_magazine/m12gdrumjack/beanbag)
|
||||||
|
|
||||||
/obj/structure/closet/secure_closet/warden/initialize()
|
/obj/structure/closet/secure_closet/warden/initialize()
|
||||||
if(prob(50))
|
if(prob(50))
|
||||||
|
|||||||
@@ -49,7 +49,9 @@
|
|||||||
/obj/item/weapon/storage/box/flashbangs,
|
/obj/item/weapon/storage/box/flashbangs,
|
||||||
/obj/item/device/flash,
|
/obj/item/device/flash,
|
||||||
/obj/item/weapon/melee/baton/loaded,
|
/obj/item/weapon/melee/baton/loaded,
|
||||||
/obj/item/weapon/storage/secure/briefcase/nsfw_pack_hos,
|
// /obj/item/weapon/storage/secure/briefcase/nsfw_pack_hos,
|
||||||
|
/obj/item/weapon/gun/energy/x01,
|
||||||
|
/obj/item/weapon/cell/device/weapon,
|
||||||
/obj/item/weapon/melee/telebaton,
|
/obj/item/weapon/melee/telebaton,
|
||||||
/obj/item/clothing/head/beret/sec/corporate/hos,
|
/obj/item/clothing/head/beret/sec/corporate/hos,
|
||||||
/obj/item/clothing/suit/storage/hooded/wintercoat/security,
|
/obj/item/clothing/suit/storage/hooded/wintercoat/security,
|
||||||
|
|||||||
@@ -58,8 +58,8 @@
|
|||||||
modifystate = "x01stun"
|
modifystate = "x01stun"
|
||||||
|
|
||||||
firemodes = list(
|
firemodes = list(
|
||||||
list(mode_name="stun", projectile_type= /obj/item/projectile/energy/electrode/x01stunshot, modifystate="x01stun", fire_sound='sound/weapons/Taser.ogg', charge_cost = 240),
|
list(mode_name="stun", fire_delay = 8, projectile_type= /obj/item/projectile/energy/electrode/x01stunshot, modifystate="x01stun", fire_sound='sound/weapons/Taser.ogg', charge_cost = 240),
|
||||||
list(mode_name="laser", projectile_type=/obj/item/projectile/beam, modifystate="x01laser", fire_sound='sound/weapons/Laser.ogg', charge_cost = 480),
|
list(mode_name="laser", fire_delay = 8, projectile_type=/obj/item/projectile/beam, modifystate="x01laser", fire_sound='sound/weapons/Laser.ogg', charge_cost = 480),
|
||||||
list(mode_name="gauss", fire_delay=15, projectile_type=/obj/item/projectile/energy/gauss, modifystate="x01gauss", fire_sound='sound/weapons/gauss_shoot.ogg', charge_cost = 360)
|
list(mode_name="gauss", fire_delay=15, projectile_type=/obj/item/projectile/energy/gauss, modifystate="x01gauss", fire_sound='sound/weapons/gauss_shoot.ogg', charge_cost = 360)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -332,6 +332,10 @@
|
|||||||
list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-15,-15), dispersion=list(0.0, 0.6, 1.0))
|
list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-15,-15), dispersion=list(0.0, 0.6, 1.0))
|
||||||
)
|
)
|
||||||
|
|
||||||
|
//YW EDIT
|
||||||
|
/obj/item/weapon/gun/projectile/automatic/p90/blueshield
|
||||||
|
magazine_type = /obj/item/ammo_magazine/m9mm/rubber //Because a 50 round AP mag isn't really what we want for our defender.
|
||||||
|
|
||||||
/obj/item/weapon/gun/projectile/automatic/p90/update_icon()
|
/obj/item/weapon/gun/projectile/automatic/p90/update_icon()
|
||||||
icon_state = "p90smg-[ammo_magazine ? round(ammo_magazine.stored_ammo.len, 6) : "empty"]"
|
icon_state = "p90smg-[ammo_magazine ? round(ammo_magazine.stored_ammo.len, 6) : "empty"]"
|
||||||
|
|
||||||
|
|||||||
53
code/modules/projectiles/guns/projectile/shotgun_yw.dm
Normal file
53
code/modules/projectiles/guns/projectile/shotgun_yw.dm
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
/obj/item/weapon/gun/projectile/revolvershotgun
|
||||||
|
name = "jackhammer, probably"
|
||||||
|
desc = "Uses 12g rounds."
|
||||||
|
icon = 'icons/obj/gun_vr.dmi'
|
||||||
|
icon_state = "shotgun-mag"
|
||||||
|
item_state = null
|
||||||
|
w_class = ITEMSIZE_LARGE
|
||||||
|
force = 10
|
||||||
|
caliber = "12g"
|
||||||
|
origin_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 4, TECH_ILLEGAL = 2)
|
||||||
|
slot_flags = SLOT_BACK|SLOT_BELT|SLOT_HOLSTER
|
||||||
|
handle_casings = CYCLE_CASINGS
|
||||||
|
load_method = MAGAZINE
|
||||||
|
magazine_type = /obj/item/ammo_magazine/m12gdrumjack/beanbag
|
||||||
|
allowed_magazines = list(/obj/item/ammo_magazine/m12gdrumjack)
|
||||||
|
projectile_type = /obj/item/projectile/bullet/shotgun
|
||||||
|
|
||||||
|
/obj/item/weapon/gun/projectile/revolvershotgun/update_icon()
|
||||||
|
..()
|
||||||
|
if(ammo_magazine)
|
||||||
|
icon_state = "shotgun-mag"
|
||||||
|
else
|
||||||
|
icon_state = "shotgun-empty"
|
||||||
|
return
|
||||||
|
|
||||||
|
|
||||||
|
/obj/item/ammo_magazine/m12gdrumjack
|
||||||
|
name = "drum magazine (12 gauge slug)"
|
||||||
|
desc = "A magazine for a revolver shotgun."
|
||||||
|
icon = 'icons/obj/ammo_yw.dmi'
|
||||||
|
icon_state = "12g"
|
||||||
|
mag_type = MAGAZINE
|
||||||
|
caliber = "12g"
|
||||||
|
matter = list(DEFAULT_WALL_MATERIAL = 13000) //did the math. now fixed the exploityness of this thing. Have fun!
|
||||||
|
ammo_type = /obj/item/ammo_casing/a12g
|
||||||
|
max_ammo = 8
|
||||||
|
multiple_sprites = 1
|
||||||
|
|
||||||
|
/obj/item/ammo_magazine/m12gdrumjack/beanbag
|
||||||
|
name = "drum magazine (12 gauge beanbag)"
|
||||||
|
ammo_type = /obj/item/ammo_casing/a12g/beanbag
|
||||||
|
|
||||||
|
/obj/item/ammo_magazine/m12gdrumjack/pellet
|
||||||
|
name = "drum magazine (12 gauge pellet)"
|
||||||
|
ammo_type = /obj/item/ammo_casing/a12g/pellet
|
||||||
|
|
||||||
|
/obj/item/ammo_magazine/m12gdrumjack/flash
|
||||||
|
name = "drum magazine (12 gauge flash)"
|
||||||
|
ammo_type = /obj/item/ammo_casing/a12g/flash
|
||||||
|
|
||||||
|
/obj/item/ammo_magazine/m12gdrumjack/empty
|
||||||
|
name = "drum magazine (12 gauge)"
|
||||||
|
initial_ammo = 0
|
||||||
BIN
icons/obj/ammo_yw.dmi
Normal file
BIN
icons/obj/ammo_yw.dmi
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 474 B |
@@ -949,6 +949,7 @@
|
|||||||
#include "code\game\objects\items\glassjar.dm"
|
#include "code\game\objects\items\glassjar.dm"
|
||||||
#include "code\game\objects\items\gunbox.dm"
|
#include "code\game\objects\items\gunbox.dm"
|
||||||
#include "code\game\objects\items\gunbox_vr.dm"
|
#include "code\game\objects\items\gunbox_vr.dm"
|
||||||
|
#include "code\game\objects\items\gunbox_yw.dm"
|
||||||
#include "code\game\objects\items\latexballoon.dm"
|
#include "code\game\objects\items\latexballoon.dm"
|
||||||
#include "code\game\objects\items\paintkit.dm"
|
#include "code\game\objects\items\paintkit.dm"
|
||||||
#include "code\game\objects\items\poi_items.dm"
|
#include "code\game\objects\items\poi_items.dm"
|
||||||
@@ -2534,6 +2535,7 @@
|
|||||||
#include "code\modules\projectiles\guns\projectile\revolver_yw.dm"
|
#include "code\modules\projectiles\guns\projectile\revolver_yw.dm"
|
||||||
#include "code\modules\projectiles\guns\projectile\semiauto.dm"
|
#include "code\modules\projectiles\guns\projectile\semiauto.dm"
|
||||||
#include "code\modules\projectiles\guns\projectile\shotgun.dm"
|
#include "code\modules\projectiles\guns\projectile\shotgun.dm"
|
||||||
|
#include "code\modules\projectiles\guns\projectile\shotgun_yw.dm"
|
||||||
#include "code\modules\projectiles\guns\projectile\sniper.dm"
|
#include "code\modules\projectiles\guns\projectile\sniper.dm"
|
||||||
#include "code\modules\projectiles\guns\projectile\sniper\collapsible_sniper.dm"
|
#include "code\modules\projectiles\guns\projectile\sniper\collapsible_sniper.dm"
|
||||||
#include "code\modules\projectiles\projectile\animate.dm"
|
#include "code\modules\projectiles\projectile\animate.dm"
|
||||||
|
|||||||
Reference in New Issue
Block a user