Revert "Pipegun Buff (#12365)" (#12429)

This commit is contained in:
Matt Atlas
2021-08-31 21:56:36 +02:00
committed by GitHub
parent 53b4f37bc9
commit fb763d64c0
11 changed files with 30 additions and 74 deletions
+17 -18
View File
@@ -3,24 +3,23 @@
#define CANDLE_LUM 3 // For how bright candles are.
// Item inventory slot bitmasks.
#define SLOT_OCLOTHING BITFLAG(0)
#define SLOT_ICLOTHING BITFLAG(1)
#define SLOT_GLOVES BITFLAG(2)
#define SLOT_EYES BITFLAG(3)
#define SLOT_EARS BITFLAG(4)
#define SLOT_MASK BITFLAG(5)
#define SLOT_HEAD BITFLAG(6)
#define SLOT_FEET BITFLAG(7)
#define SLOT_ID BITFLAG(8)
#define SLOT_BELT BITFLAG(9)
#define SLOT_BACK BITFLAG(10)
#define SLOT_POCKET BITFLAG(11) // This is to allow items with a w_class of 3 or 4 to fit in pockets.
#define SLOT_DENYPOCKET BITFLAG(12) // This is to deny items with a w_class of 2 or 1 from fitting in pockets.
#define SLOT_TWOEARS BITFLAG(13)
#define SLOT_TIE BITFLAG(14)
#define SLOT_HOLSTER BITFLAG(15)
#define SLOT_WRISTS BITFLAG(16)
#define SLOT_S_STORE BITFLAG(17)
#define SLOT_OCLOTHING (1<<0)
#define SLOT_ICLOTHING (1<<1)
#define SLOT_GLOVES (1<<2)
#define SLOT_EYES (1<<3)
#define SLOT_EARS (1<<4)
#define SLOT_MASK (1<<5)
#define SLOT_HEAD (1<<6)
#define SLOT_FEET (1<<7)
#define SLOT_ID (1<<8)
#define SLOT_BELT (1<<9)
#define SLOT_BACK (1<<10)
#define SLOT_POCKET (1<<11) // This is to allow items with a w_class of 3 or 4 to fit in pockets.
#define SLOT_DENYPOCKET (1<<12) // This is to deny items with a w_class of 2 or 1 from fitting in pockets.
#define SLOT_TWOEARS (1<<13)
#define SLOT_TIE (1<<14)
#define SLOT_HOLSTER (1<<15)
#define SLOT_WRISTS (1<<16)
// Flags bitmasks.
#define NOBLUDGEON 0x1 // When an item has this it produces no "X has been hit by Y with Z" message with the default handler.
+3 -7
View File
@@ -396,8 +396,7 @@ var/list/global/slot_flags_enumeration = list(
"[slot_w_uniform]" = SLOT_ICLOTHING,
"[slot_wear_id]" = SLOT_ID,
"[slot_tie]" = SLOT_TIE,
"[slot_wrists]" = SLOT_WRISTS,
"[slot_s_store]" = SLOT_S_STORE
"[slot_wrists]" = SLOT_WRISTS
)
//the mob M is attempting to equip this item into the slot passed through as 'slot'. Return 1 if it can do this and 0 if it can't.
@@ -463,16 +462,13 @@ var/list/global/slot_flags_enumeration = list(
if( w_class > 2 && !(slot_flags & SLOT_POCKET) )
return 0
if(slot_s_store)
var/can_hold_s_store = (slot_flags & SLOT_S_STORE)
if(!can_hold_s_store && H.species.can_hold_s_store(src))
can_hold_s_store = TRUE
if(can_hold_s_store)
if(isvaurca(H) && src.w_class <= ITEMSIZE_SMALL)
return TRUE
if(!H.wear_suit && (slot_wear_suit in mob_equip))
if(!disable_warning)
to_chat(H, "<span class='warning'>You need a suit before you can attach this [name].</span>")
return 0
if(!H.wear_suit?.allowed)
if(!H.wear_suit.allowed)
if(!disable_warning)
to_chat(usr, "<span class='warning'>You somehow have a suit with no defined allowed items for suit storage, stop that.</span>")
return 0
@@ -114,7 +114,6 @@
recipes += new /datum/stack_recipe_list("[display_name] weaponry",
list(
new /datum/stack_recipe("makeshift magazine (5.56mm)", /obj/item/ammo_magazine/a556/makeshift/empty, 5, time = 20),
new /datum/stack_recipe("grenade casing", /obj/item/grenade/chem_grenade),
new /datum/stack_recipe("firearm receiver", /obj/item/receivergun, 15, time = 25, one_per_turf = 0, on_floor = 0),
new /datum/stack_recipe("shield fittings", /obj/item/material/shieldbits, 10, time = 25),
@@ -93,12 +93,7 @@ This saves us from having to call add_fingerprint() any time something is put in
if (wear_suit.flags_inv & HIDEJUMPSUIT)
update_uniform = 1
if(s_store)
var/can_keep_s_store = FALSE
if(s_store.slot_flags & SLOT_S_STORE)
can_keep_s_store = TRUE
if(!can_keep_s_store && species.can_hold_s_store(s_store))
can_keep_s_store = TRUE
if(!can_keep_s_store)
if(!(isvaurca(src) && s_store.w_class <= ITEMSIZE_SMALL))
drop_from_inventory(s_store)
wear_suit = null
update_inv_wear_suit()
@@ -774,7 +774,4 @@
if(C?.can_support)
stance_damage -=2
return stance_damage
/datum/species/proc/can_hold_s_store(var/obj/item/I)
return FALSE
return stance_damage
@@ -159,8 +159,3 @@
/datum/species/bug/is_naturally_insulated()
return TRUE
/datum/species/bug/can_hold_s_store(obj/item/I)
if(I.w_class <= ITEMSIZE_SMALL)
return TRUE
return FALSE
+1 -11
View File
@@ -236,7 +236,7 @@
max_ammo = 15
/obj/item/ammo_magazine/a556/carbine/empty
initial_ammo = 0
max_ammo = 0
/obj/item/ammo_magazine/a556/carbine/practice
name = "carbine magazine (5.56mm practice)"
@@ -248,16 +248,6 @@
origin_tech = list(TECH_COMBAT = 3)
ammo_type = /obj/item/ammo_casing/a556/ap
/obj/item/ammo_magazine/a556/makeshift
name = "makeshift magazine (5.56mm)"
icon_state = "5.56m"
origin_tech = list(TECH_COMBAT = 1)
matter = list(DEFAULT_WALL_MATERIAL = 600)
max_ammo = 7
/obj/item/ammo_magazine/a556/makeshift/empty
initial_ammo = 0
/obj/item/ammo_magazine/a50
name = "magazine (.50)"
icon_state = "50ae"
@@ -90,7 +90,6 @@
to_chat(user, "<span class='danger'>\The [src] jams!</span>")
balloon_alert(user, SPAN_RED("JAM"))
jam_num = rand(2, 5) // gotta attackself two to five times to unjam
return FALSE
return TRUE
/obj/item/gun/projectile/proc/process_chambered()
@@ -59,25 +59,13 @@
caliber = "a556"
ammo_type = null
magazine_type = null
allowed_magazines = list(/obj/item/ammo_magazine/a556/makeshift)
load_method = MAGAZINE
max_shells = 7
max_shells = 4
can_sawoff = FALSE
needspin = FALSE
has_safety = FALSE
slot_flags = SLOT_BACK|SLOT_S_STORE // can be stored in suit slot due to built in sling
jam_chance = -10
/obj/item/gun/projectile/shotgun/pump/rifle/pipegun/handle_pump_loading()
if(ammo_magazine && length(ammo_magazine.stored_ammo))
var/obj/item/ammo_casing/AC = ammo_magazine.stored_ammo[1] //load next casing.
if(AC)
AC.forceMove(src)
ammo_magazine.stored_ammo -= AC
chambered = AC
jam_chance = 0
/obj/item/gun/projectile/shotgun/pump/rifle/pipegun/examine(mob/user)
. = ..()
@@ -68,7 +68,8 @@
/obj/item/gun/projectile/shotgun/pump/unique_action(mob/living/user)
if(jam_num)
to_chat(user, SPAN_WARNING("\The [src] is jammed!"))
return
else if(unjam_cooldown + 2 SECONDS > world.time)
return
if(world.time >= recentpump + 10)
pump(user)
@@ -87,17 +88,14 @@
playsound(src.loc, chambered.drop_sound, DROP_SOUND_VOLUME, FALSE, required_asfx_toggles = ASFX_DROPSOUND)
chambered = null
handle_pump_loading()
update_maptext()
update_icon()
/obj/item/gun/projectile/shotgun/pump/proc/handle_pump_loading()
if(length(loaded))
var/obj/item/ammo_casing/AC = loaded[1] //load next casing.
loaded -= AC //Remove casing from loaded list.
chambered = AC
update_maptext()
update_icon()
/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."
Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 35 KiB