Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions code/datums/traits/negative/gunslinger.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/datum/quirk/gunslinger
name = "Gunslinger"
desc = "You are one of the fastest guns in the frontier. These new guns physically repulse you, but revolvers in particular were made for you, along with shotguns and lever action rifles. You can fan single action revolvers, flip any revolver, and have mastery of the greatest handgun ever made. NOT RECOMENDED FOR BEGINNERS. ADVANCED PLAYERS ONLY."
mob_traits = list(TRAIT_GUNSLINGER)
value = -1
gain_text = span_notice("The HP Shadow is greatest handgun ever made.")
lose_text = span_danger("...Who the hell would use such antiquated weapons in this year?")
detectable = FALSE
8 changes: 0 additions & 8 deletions code/datums/traits/neutral/gunslinger.dm

This file was deleted.

4 changes: 4 additions & 0 deletions code/modules/projectiles/guns/ballistic.dm
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@
"y" = 18,
)
)
var/gunslingerGun = FALSE

/obj/item/gun/ballistic/Initialize(mapload, spawn_empty)
. = ..()
Expand Down Expand Up @@ -331,6 +332,9 @@
return ..()

/obj/item/gun/ballistic/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0, burst_firing = FALSE, spread_override = 0, iteration = 0)
if(HAS_TRAIT(user, TRAIT_GUNSLINGER) && !gunslingerGun)
to_chat(user, span_warning("Ewwww what is this crap??? I NEED A REAL WEAPON!!!"))
return
. = ..() //The gun actually firing
postfire_empty_checks(.)

Expand Down
2 changes: 1 addition & 1 deletion code/modules/projectiles/guns/ballistic/revolver.dm
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@
var/gate_loaded = FALSE //for stupid wild west shit
var/gate_offset = 5 //for wild west shit 2: instead of ejecting the chambered round, eject the next round if 1
var/gate_load_direction = REVOLVER_AUTO_ROTATE_RIGHT_LOADING //when we load ammo with a box, which direction do we rotate the cylinder? unused with normal revolvers

gunslingerGun = TRUE
COOLDOWN_DECLARE(flip_cooldown)

/obj/item/gun/ballistic/revolver/examine(mob/user)
Expand Down
4 changes: 3 additions & 1 deletion code/modules/projectiles/guns/ballistic/shotgun.dm
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,8 @@
///can this shotgun breach doors
var/door_breaching_weapon = TRUE

gunslingerGun = TRUE

/obj/item/gun/ballistic/shotgun/attack_obj(obj/O, mob/living/user)
if(door_breaching_weapon && istype(O, /obj/machinery/door/airlock))
var/obj/machinery/door/airlock/breaching = O
Expand Down Expand Up @@ -115,7 +117,7 @@
wear_minor_threshold = 60
wear_major_threshold = 180
wear_maximum = 300

gunslingerGun = FALSE
//Dual Feed Shotgun

/obj/item/gun/ballistic/shotgun/automatic/dual_tube
Expand Down
3 changes: 3 additions & 0 deletions code/modules/projectiles/guns/energy.dm
Original file line number Diff line number Diff line change
Expand Up @@ -254,6 +254,9 @@
SEND_SIGNAL(src, COMSIG_GUN_CHAMBER_PROCESSED)

/obj/item/gun/energy/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0)
if(HAS_TRAIT(user, TRAIT_GUNSLINGER))
to_chat(user, span_warning("Ewwww what is this crap??? I NEED A REAL WEAPON!!!"))
return
if(!chambered && can_shoot())
process_chamber() // If the gun was drained and then recharged, load a new shot.
..() //process the gunshot as normal
Expand Down
2 changes: 1 addition & 1 deletion shiptest.dme
Original file line number Diff line number Diff line change
Expand Up @@ -912,6 +912,7 @@
#include "code\datums\traits\negative\congenital_analgesia.dm"
#include "code\datums\traits\negative\deafness.dm"
#include "code\datums\traits\negative\frail.dm"
#include "code\datums\traits\negative\gunslinger.dm"
#include "code\datums\traits\negative\heavy_sleeper.dm"
#include "code\datums\traits\negative\light_drinker.dm"
#include "code\datums\traits\negative\mute.dm"
Expand All @@ -923,7 +924,6 @@
#include "code\datums\traits\neutral\ageusia.dm"
#include "code\datums\traits\neutral\bald.dm"
#include "code\datums\traits\neutral\deviant_tastes.dm"
#include "code\datums\traits\neutral\gunslinger.dm"
#include "code\datums\traits\neutral\languages.dm"
#include "code\datums\traits\neutral\monochromatic.dm"
#include "code\datums\traits\neutral\musician.dm"
Expand Down