mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-22 20:43:10 +01:00
Unathi Guns & Armor (#18692)
Adds several pre-contact Unathi gun designs, some of which currently accessible through antag gear crates and the Unathi pirate ghost ships. All gun sprites done by Gecko. Additionally buffs the generic Unathi armor and Hegemony armor to be more on par with standard plate carriers instead of just being good at melee and terrible at everything else, as well as respriting the generic armor and rewriting flavor text. Armor resprites done by Dronz.
This commit is contained in:
@@ -345,7 +345,7 @@
|
||||
|
||||
/obj/item/clothing/head/helmet/unathi
|
||||
name = "unathi helmet"
|
||||
desc = "An outdated helmet designated to be worn by an Unathi, it was commonly used by the Hegemony Levies."
|
||||
desc = "An outdated ceramic-metal helmet of Unathi design. Commonly seen on Moghes during the days of the Contact War, and now commonplace in the hands of raiders and pirates."
|
||||
icon = 'icons/obj/unathi_items.dmi'
|
||||
icon_state = "unathi_helmet"
|
||||
item_state = "unathi_helmet"
|
||||
@@ -353,22 +353,22 @@
|
||||
species_restricted = list(BODYTYPE_UNATHI)
|
||||
armor = list(
|
||||
melee = ARMOR_MELEE_MAJOR,
|
||||
bullet = ARMOR_BALLISTIC_SMALL,
|
||||
laser = ARMOR_LASER_PISTOL,
|
||||
energy = ARMOR_ENERGY_MINOR,
|
||||
bullet = ARMOR_BALLISTIC_PISTOL,
|
||||
laser = ARMOR_LASER_KEVLAR,
|
||||
energy = ARMOR_ENERGY_SMALL,
|
||||
bomb = ARMOR_BOMB_PADDED
|
||||
)
|
||||
siemens_coefficient = 0.35
|
||||
|
||||
/obj/item/clothing/head/helmet/unathi/hegemony
|
||||
name = "hegemony helmet"
|
||||
desc = "A highly armored helmet designated to be worn by an Unathi, a newer variant commonly worn by the Hegemony Levies."
|
||||
desc = "A highly armored ceramic-metal composite helmet fitted for an Unathi. Commonly used by the military forces of the Izweski Hegemony."
|
||||
icon_state = "hegemony_helmet"
|
||||
item_state = "hegemony_helmet"
|
||||
armor = list(
|
||||
melee = ARMOR_MELEE_VERY_HIGH,
|
||||
bullet = ARMOR_BALLISTIC_MEDIUM,
|
||||
laser = ARMOR_LASER_PISTOL,
|
||||
laser = ARMOR_LASER_RIFLE,
|
||||
energy = ARMOR_ENERGY_MINOR,
|
||||
bomb = ARMOR_BOMB_PADDED,
|
||||
rad = ARMOR_RAD_MINOR
|
||||
|
||||
@@ -456,7 +456,7 @@
|
||||
|
||||
/obj/item/clothing/suit/armor/unathi
|
||||
name = "unathi body armor"
|
||||
desc = "An outdated armored chestplate designated to be worn by an Unathi, it was commonly used by the Hegemony Levies."
|
||||
desc = "An outdated set of ceramic-metal body armor of Unathi design. Commonly seen on Moghes during the days of the Contact War, and now commonplace in the hands of raiders and pirates."
|
||||
icon = 'icons/obj/unathi_items.dmi'
|
||||
icon_state = "unathi_armor"
|
||||
item_state = "unathi_armor"
|
||||
@@ -464,45 +464,46 @@
|
||||
species_restricted = list(BODYTYPE_UNATHI)
|
||||
armor = list(
|
||||
melee = ARMOR_MELEE_MAJOR,
|
||||
bullet = ARMOR_BALLISTIC_SMALL,
|
||||
laser = ARMOR_LASER_SMALL,
|
||||
energy = ARMOR_ENERGY_MINOR,
|
||||
bullet = ARMOR_BALLISTIC_PISTOL,
|
||||
laser = ARMOR_LASER_KEVLAR,
|
||||
energy = ARMOR_ENERGY_SMALL,
|
||||
bomb = ARMOR_BOMB_PADDED
|
||||
)
|
||||
siemens_coefficient = 0.35
|
||||
|
||||
/obj/item/clothing/suit/armor/unathi/hegemony
|
||||
name = "hegemony body armor"
|
||||
desc = "A highly armored chestplate designated to be worn by an Unathi, a newer variant commonly worn by the Hegemony Levies."
|
||||
desc = "A highly armored ceramic-metal composite chestplate fitted for an Unathi. Commonly used by the military forces of the Izweski Hegemony."
|
||||
icon_state = "hegemony_armor"
|
||||
item_state = "hegemony_armor"
|
||||
armor = list(
|
||||
melee = ARMOR_MELEE_VERY_HIGH,
|
||||
bullet = ARMOR_BALLISTIC_PISTOL,
|
||||
bullet = ARMOR_BALLISTIC_MEDIUM,
|
||||
laser = ARMOR_LASER_RIFLE,
|
||||
energy = ARMOR_ENERGY_MINOR,
|
||||
bomb = ARMOR_BOMB_PADDED
|
||||
bomb = ARMOR_BOMB_PADDED,
|
||||
rad = ARMOR_RAD_MINOR
|
||||
)
|
||||
|
||||
// Vaurca version of Unathi armor
|
||||
/obj/item/clothing/suit/armor/unathi/klax
|
||||
name = "klaxan warrior body armor"
|
||||
desc = "An armored chestplate designated to be worn by a K'lax warrior. The retrofit is only a bit shoddy."
|
||||
desc = "A highly armored ceramic-metal composite chestplate fitted for a Vaurca Warrior. Commonly used by the military forces of the Izweski Hegemony."
|
||||
icon = 'icons/obj/vaurca_items.dmi'
|
||||
icon_state = "klax_hopeful"
|
||||
item_state = "klax_hopeful"
|
||||
contained_sprite = TRUE
|
||||
species_restricted = list(BODYTYPE_VAURCA)
|
||||
allowed = list(/obj/item/gun/projectile, /obj/item/gun/energy, /obj/item/gun/launcher, /obj/item/melee, /obj/item/reagent_containers/spray/pepper, /obj/item/ammo_magazine, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/handcuffs, /obj/item/device/flashlight)
|
||||
siemens_coefficient = 0.35
|
||||
armor = list(
|
||||
melee = ARMOR_MELEE_VERY_HIGH,
|
||||
bullet = ARMOR_BALLISTIC_PISTOL,
|
||||
bullet = ARMOR_BALLISTIC_MEDIUM,
|
||||
laser = ARMOR_LASER_RIFLE,
|
||||
energy = ARMOR_ENERGY_MINOR,
|
||||
bomb = ARMOR_BOMB_PADDED,
|
||||
rad = ARMOR_RAD_RESISTANT
|
||||
rad = ARMOR_RAD_MINOR
|
||||
)
|
||||
allowed = list(/obj/item/gun/projectile, /obj/item/gun/energy, /obj/item/gun/launcher, /obj/item/melee, /obj/item/reagent_containers/spray/pepper, /obj/item/ammo_magazine, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/handcuffs, /obj/item/device/flashlight)
|
||||
siemens_coefficient = 0.35
|
||||
|
||||
/obj/item/clothing/suit/storage/vest/legion
|
||||
name = "foreign legion armored suit"
|
||||
|
||||
@@ -715,3 +715,35 @@
|
||||
ammo_type = /obj/item/ammo_casing/shotgun
|
||||
max_ammo = 9
|
||||
multiple_sprites = 1
|
||||
|
||||
/obj/item/ammo_magazine/spitterpistol
|
||||
name = "spitter pistol magazine"
|
||||
icon_state = "spitterpistol_mag"
|
||||
caliber = "11.6mm"
|
||||
mag_type = MAGAZINE
|
||||
ammo_type = /obj/item/ammo_casing/moghes_pistol
|
||||
max_ammo = 8
|
||||
|
||||
/obj/item/ammo_magazine/hookmg
|
||||
name = "hook machinegun magazine"
|
||||
icon_state = "hookmg_ammobox"
|
||||
caliber = "5.8mm"
|
||||
mag_type = MAGAZINE
|
||||
ammo_type = /obj/item/ammo_casing/moghes_rifle
|
||||
max_ammo = 50
|
||||
|
||||
/obj/item/ammo_magazine/crackrifle
|
||||
name = "crack rifle magazine"
|
||||
icon_state = "crackrifle_mag"
|
||||
caliber = "5.8mm"
|
||||
mag_type = MAGAZINE
|
||||
ammo_type = /obj/item/ammo_casing/moghes_rifle
|
||||
max_ammo = 33
|
||||
|
||||
/obj/item/ammo_magazine/tempestsmg
|
||||
name = "tempest smg magazine"
|
||||
icon_state = "tempestsmg_mag"
|
||||
caliber = "11.6mm"
|
||||
mag_type = MAGAZINE
|
||||
ammo_type = /obj/item/ammo_casing/moghes_pistol
|
||||
max_ammo = 20
|
||||
|
||||
@@ -224,6 +224,14 @@
|
||||
spent_icon = "trackingshell-spent"
|
||||
projectile_type = /obj/item/projectile/bullet/tracking
|
||||
|
||||
/obj/item/ammo_casing/shotgun/moghes
|
||||
name = "wall shell"
|
||||
desc = "The appropriately-named wall shell, made specifically for the Moghesian wall gun."
|
||||
desc_extended = "This complicated and expensive shotgun shell fires both a solid slug and a hail of shots at the same time, making it a destructive and dangerous ammunition at all ranges, assuming the user can point in the target's general direction. Somehow it seems to somewhat fit in other shotgun type weaponry too."
|
||||
icon_state = "moghes_shell"
|
||||
spent_icon = "moghes_shell_spent"
|
||||
projectile_type = /obj/item/projectile/bullet/shotgun/moghes
|
||||
|
||||
/obj/item/ammo_casing/tranq
|
||||
name = "PPS shell"
|
||||
desc = "A .50 cal PPS bullet casing."
|
||||
@@ -480,3 +488,19 @@
|
||||
caliber = "6mm"
|
||||
projectile_type = /obj/item/projectile/bullet/pistol/assassin
|
||||
max_stack = 15
|
||||
|
||||
/obj/item/ammo_casing/moghes_pistol
|
||||
desc = "A Moghesian pistol casing."
|
||||
icon_state = "moghes_casing_p"
|
||||
spent_icon = "moghes_casing_p_spent"
|
||||
caliber = "11.6mm"
|
||||
projectile_type = /obj/item/projectile/bullet/pistol/medium/ap
|
||||
max_stack = 15
|
||||
|
||||
/obj/item/ammo_casing/moghes_rifle
|
||||
desc = "A Moghesian rifle casing."
|
||||
icon_state = "moghes_casing"
|
||||
spent_icon = "moghes_casing_spent"
|
||||
caliber = "5.8mm"
|
||||
projectile_type = /obj/item/projectile/bullet/rifle/a556
|
||||
max_stack = 7
|
||||
|
||||
@@ -916,3 +916,51 @@
|
||||
..()
|
||||
icon_state = (ammo_magazine)? "mshotgun" : "mshotgun-empty"
|
||||
|
||||
/obj/item/gun/projectile/automatic/rifle/hook_mg
|
||||
name = "unathi hook machine gun"
|
||||
desc = "A ballistic machine gun of Unathi manufacture, often used by the forces of the Traditionalist Coalition during the Contact War."
|
||||
desc_extended = "The Hook Machinegun is a heavy automatic machinegun of Moghesian manufacture. Though the name of the creators of this weapon was lost to the destruction of the nuclear exchange, the Hook was known to be found in the hands of some of the better-equipped forces of the Traditionalist Coalition during the Contact War. \
|
||||
This machine gun is carried on one's shoulder and thus can be used with a single hand. Though it can fire heavy cartridges, it is quite lacking in accuracy."
|
||||
icon = 'icons/obj/guns/unathi_ballistics.dmi'
|
||||
icon_state = "hookmg"
|
||||
item_state = "hookmg"
|
||||
caliber = "5.8mm"
|
||||
magazine_type = /obj/item/ammo_magazine/hookmg
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/hookmg)
|
||||
firemodes = list(
|
||||
list(mode_name="short bursts", burst=5, burst_accuracy = list(1,0,0,-1,-1), dispersion = list(3, 6, 9)),
|
||||
list(mode_name="long bursts", burst=8, burst_accuracy = list(1,0,0,-1,-1,-1,-2,-2), dispersion = list(8)),
|
||||
list(mode_name="full auto", can_autofire=1, burst=1, fire_delay=5, fire_delay_wielded=2, one_hand_fa_penalty=12, burst_accuracy = list(0,-1,-1,-2,-2,-2,-3,-3), dispersion = list(5, 10, 15, 20, 25))
|
||||
)
|
||||
slot_flags = null
|
||||
w_class = ITEMSIZE_LARGE
|
||||
accuracy = -2
|
||||
accuracy_wielded = 0
|
||||
|
||||
/obj/item/gun/projectile/automatic/rifle/hook_mg/update_icon()
|
||||
..()
|
||||
icon_state = (ammo_magazine)? "hookmg" : "hookmg-empty"
|
||||
|
||||
/obj/item/gun/projectile/automatic/tempestsmg
|
||||
name = "tempest submachine gun"
|
||||
desc = "The tempest sub-machine gun is a Hegemonic design dating back to the 2350s, though still produced in ample numbers to this day. While rather large and heavy for a weapon of its class, its simplicity and reliability have made it a popular weapon among Unathi for over a century, and the aging weapon was even used as the basis for future designs."
|
||||
magazine_type = /obj/item/ammo_magazine/tempestsmg
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/tempestsmg)
|
||||
icon = 'icons/obj/guns/unathi_ballistics.dmi'
|
||||
icon_state = "tempestsmg"
|
||||
item_state = "tempestsmg"
|
||||
caliber = "11.6mm"
|
||||
origin_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 2)
|
||||
fire_sound = 'sound/weapons/gunshot/gunshot_light.ogg'
|
||||
load_method = MAGAZINE
|
||||
slot_flags = SLOT_BELT|SLOT_BACK|SLOT_S_STORE
|
||||
suppressed = FALSE
|
||||
is_wieldable = TRUE
|
||||
accuracy_wielded = 2
|
||||
can_suppress = TRUE
|
||||
suppressor_x_offset = 10
|
||||
suppressor_y_offset = 1
|
||||
|
||||
/obj/item/gun/projectile/automatic/tempestsmg/update_icon()
|
||||
..()
|
||||
icon_state = (ammo_magazine)? "tempestsmg" : "tempestsmg-empty"
|
||||
|
||||
@@ -131,7 +131,7 @@
|
||||
if(buildstate == 3)
|
||||
if(C.use(10))
|
||||
to_chat(user, "<span class='notice'>You tie the lengths of cable to the pipegun, making a sling.</span>")
|
||||
new /obj/item/gun/projectile/shotgun/pump/rifle/pipegun(get_turf(src))
|
||||
new /obj/item/gun/projectile/shotgun/pump/rifle/magazine_fed/pipegun(get_turf(src))
|
||||
qdel(src)
|
||||
else
|
||||
to_chat(user, "<span class='notice'>You need at least ten lengths of cable if you want to make a sling!</span>")
|
||||
|
||||
@@ -553,3 +553,25 @@
|
||||
icon_state = "dom_pistol"
|
||||
else
|
||||
icon_state = "dom_pistol-e"
|
||||
|
||||
/obj/item/gun/projectile/pistol/spitter
|
||||
name = "unathi spitter pistol"
|
||||
desc = "The venerable 'spitter' pistol is an Unathi design nearly three centuries old. Though no longer in use by the Hegemony's forces, these guns are still commonplace in the hands of criminals, Wastelanders, and former Traditionalists."
|
||||
desc_extended = "The Relzi-5 pistol, colloquially referred to as the 'spitter' was a common Unathi sidearm for centuries, though the design was already being phased out of Izweski use by the start of the Contact War due to superior-quality energy weapons becoming available.\
|
||||
In the modern day, they are no longer produced, but the sheer volume of them in service means they can be found all over Moghes, and even in the wider Orion Spur."
|
||||
magazine_type = /obj/item/ammo_magazine/spitterpistol
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/spitterpistol)
|
||||
icon = 'icons/obj/guns/unathi_ballistics.dmi'
|
||||
icon_state = "spitterpistol"
|
||||
item_state = "spitterpistol"
|
||||
caliber = "11.6mm"
|
||||
fire_sound = 'sound/weapons/gunshot/gunshot_pistol.ogg'
|
||||
load_method = MAGAZINE
|
||||
fire_delay = ROF_PISTOL
|
||||
|
||||
/obj/item/gun/projectile/pistol/spitter/update_icon()
|
||||
..()
|
||||
if(length(ammo_magazine?.stored_ammo))
|
||||
icon_state = "spitterpistol"
|
||||
else
|
||||
icon_state = "spitterpistol-empty"
|
||||
|
||||
@@ -21,6 +21,20 @@
|
||||
can_sawoff = TRUE
|
||||
sawnoff_workmsg = "shorten the barrel and stock"
|
||||
|
||||
/obj/item/gun/projectile/shotgun/pump/rifle/magazine_fed
|
||||
name = "strange rifle"
|
||||
desc = DESC_PARENT
|
||||
can_sawoff = FALSE
|
||||
load_method = MAGAZINE
|
||||
|
||||
/obj/item/gun/projectile/shotgun/pump/rifle/magazine_fed/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
|
||||
|
||||
/obj/item/gun/projectile/shotgun/pump/rifle/blank
|
||||
desc = "A replica of a traditional Adhomian bolt action rifle. It has the seal of the Grand Romanovich Casino on its stock."
|
||||
ammo_type = /obj/item/ammo_casing/a762/blank
|
||||
@@ -70,7 +84,7 @@
|
||||
slot_flags = SLOT_BELT|SLOT_HOLSTER
|
||||
can_bayonet = FALSE
|
||||
|
||||
/obj/item/gun/projectile/shotgun/pump/rifle/pipegun
|
||||
/obj/item/gun/projectile/shotgun/pump/rifle/magazine_fed/pipegun
|
||||
name = "pipegun"
|
||||
desc = "An excellent weapon for flushing out tunnel rats and enemy assistants, but its rifling leaves much to be desired."
|
||||
icon = 'icons/obj/guns/pipegun.dmi'
|
||||
@@ -91,15 +105,7 @@
|
||||
|
||||
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
|
||||
|
||||
/obj/item/gun/projectile/shotgun/pump/rifle/pipegun/get_examine_text(mob/user, distance, is_adjacent, infix, suffix)
|
||||
/obj/item/gun/projectile/shotgun/pump/rifle/magazine_fed/pipegun/get_examine_text(mob/user, distance, is_adjacent, infix, suffix)
|
||||
. = ..()
|
||||
switch(jam_chance)
|
||||
if(10 to 20)
|
||||
@@ -111,7 +117,7 @@
|
||||
if(80 to INFINITY)
|
||||
. += SPAN_DANGER("\The [src] is completely fouled. You're going to be extremely lucky to get a shot off. Clean it with a rag.")
|
||||
|
||||
/obj/item/gun/projectile/shotgun/pump/rifle/pipegun/attackby(obj/item/attacking_item, mob/user)
|
||||
/obj/item/gun/projectile/shotgun/pump/rifle/magazine_fed/pipegun/attackby(obj/item/attacking_item, mob/user)
|
||||
if(istype(attacking_item, /obj/item/reagent_containers/glass/rag))
|
||||
if(!jam_chance || jam_chance == initial(jam_chance))
|
||||
to_chat(user, SPAN_WARNING("There's no fouling present on \the [src]."))
|
||||
@@ -123,7 +129,7 @@
|
||||
return
|
||||
return ..()
|
||||
|
||||
/obj/item/gun/projectile/shotgun/pump/rifle/pipegun/handle_post_fire(mob/user)
|
||||
/obj/item/gun/projectile/shotgun/pump/rifle/magazine_fed/pipegun/handle_post_fire(mob/user)
|
||||
. = ..()
|
||||
jam_chance = min(jam_chance + 5, 100)
|
||||
|
||||
@@ -418,3 +424,17 @@
|
||||
rack_verb = "work the lever on"
|
||||
can_bayonet = FALSE
|
||||
can_sawoff = FALSE
|
||||
|
||||
/obj/item/gun/projectile/shotgun/pump/rifle/magazine_fed/crackrifle
|
||||
name = "crack rifle"
|
||||
desc = "A heavy bolt-action rifle of Moghesian manufacture."
|
||||
desc_extended = "Manufactured by the Azarak Kingdom in 2350, the Azarak-96 'Crack Rifle' is a bolt-action rifle of Moghesian manufacture, easily recognizable by its long bayonet and large magazine wrapped around its trigger guard.\
|
||||
This heavy but powerful weapon is mostly known for its use by the common warrior of the Traditionalist Coalition during the Contact War.\
|
||||
Many of these rifles survived the ravages of the Contact War, a testament to their reliability."
|
||||
icon = 'icons/obj/guns/unathi_ballistics.dmi'
|
||||
icon_state = "crackrifle"
|
||||
item_state = "crackrifle"
|
||||
caliber = "5.8mm"
|
||||
magazine_type = /obj/item/ammo_magazine/crackrifle
|
||||
allowed_magazines = list(/obj/item/ammo_magazine/crackrifle)
|
||||
load_method = MAGAZINE
|
||||
|
||||
@@ -278,3 +278,70 @@
|
||||
. = ..()
|
||||
if(distance <= 1)
|
||||
. += SPAN_NOTICE("Upon closer inspection, this is not a camera at all, but a 9mm firearm concealed inside the shell of one, which can be deployed by pressing a button.")
|
||||
|
||||
/obj/item/gun/projectile/shotgun/wallgun
|
||||
name = "wall gun"
|
||||
desc = "A small yet powerful shotgun of Unathi make."
|
||||
desc_extended = "The Moghesian wall gun, a classic Hegemonic weapon that saw plenty of service before and during the Contact War. This small-sized, break-action shotgun manages to pack a serious punch despite being barely larger than a pistol, however, it comes at the cost of extremely limited capacity. The wall gun is still produced and distributed nowadays, generally given to vehicle and ship crews and law enforcers."
|
||||
icon = 'icons/obj/guns/unathi_ballistics.dmi'
|
||||
icon_state = "wallgun"
|
||||
item_state = "wallgun"
|
||||
accuracy = 0
|
||||
is_wieldable = TRUE
|
||||
slot_flags = SLOT_BELT
|
||||
ammo_type = /obj/item/ammo_casing/shotgun/moghes
|
||||
load_method = SINGLE_CASING|SPEEDLOADER
|
||||
w_class = ITEMSIZE_NORMAL
|
||||
fire_delay = ROF_INTERMEDIATE
|
||||
force = 5
|
||||
max_shells = 1
|
||||
caliber = "shotgun"
|
||||
fire_sound = 'sound/weapons/gunshot/gunshot_shotgun2.ogg'
|
||||
handle_casings = HOLD_CASINGS
|
||||
///Whether the shotgun's chamber is open
|
||||
var/open = FALSE
|
||||
|
||||
/obj/item/gun/projectile/shotgun/wallgun/update_icon()
|
||||
if(open)
|
||||
icon_state = "wallgun-open"
|
||||
else
|
||||
icon_state = "wallgun"
|
||||
..()
|
||||
/obj/item/gun/projectile/shotgun/wallgun/unique_action(mob/user)
|
||||
if(!open)
|
||||
open = TRUE
|
||||
update_icon()
|
||||
unload_ammo(user, TRUE)
|
||||
else
|
||||
open = FALSE
|
||||
update_icon()
|
||||
|
||||
/obj/item/gun/projectile/shotgun/wallgun/unload_ammo(user, allow_dump)
|
||||
if(open)
|
||||
..(user, allow_dump=1)
|
||||
|
||||
/obj/item/gun/projectile/shotgun/wallgun/load_ammo(obj/item/A, mob/user)
|
||||
if(!open)
|
||||
to_chat(user, SPAN_WARNING("You need to open the cover to load \the[src]."))
|
||||
return
|
||||
..()
|
||||
|
||||
/obj/item/gun/projectile/shotgun/wallgun/handle_post_fire(mob/user)
|
||||
..()
|
||||
if(wielded)
|
||||
return
|
||||
else
|
||||
if(ishuman(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
if(H.mob_size <10)
|
||||
H.visible_message(SPAN_WARNING("\The [src] flies out of \the [H]'s' hand!"), SPAN_WARNING("\The [src] flies out of your hand!"))
|
||||
H.drop_item(src)
|
||||
src.throw_at(get_edge_target_turf(src, GLOB.reverse_dir[H.dir]), 4, 4)
|
||||
|
||||
var/obj/item/organ/external/LH = H.get_organ(BP_L_HAND)
|
||||
var/obj/item/organ/external/RH = H.get_organ(BP_R_HAND)
|
||||
|
||||
if(H.hand)
|
||||
LH.take_damage(30)
|
||||
else
|
||||
RH.take_damage(30)
|
||||
|
||||
@@ -102,6 +102,9 @@
|
||||
|
||||
var/iff // identify friend or foe. will check mob's IDs to see if they match, if they do, won't hit
|
||||
|
||||
///If the projectile launches a secondary projectile in addition to itself.
|
||||
var/secondary_projectile
|
||||
|
||||
/obj/item/projectile/CanPass()
|
||||
return TRUE
|
||||
|
||||
@@ -167,6 +170,10 @@
|
||||
if(get_turf(target) == get_turf(src))
|
||||
direct_target = target
|
||||
|
||||
if(ispath(secondary_projectile))
|
||||
var/obj/item/projectile/BB = new secondary_projectile(src)
|
||||
BB.launch_projectile(target, target_zone, user, params, angle_override, forced_spread)
|
||||
|
||||
preparePixelProjectile(target, user? user : get_turf(src), params, forced_spread)
|
||||
return fire(angle_override, direct_target)
|
||||
|
||||
|
||||
@@ -266,6 +266,10 @@
|
||||
T.part = organ
|
||||
LAZYADD(organ.implants, T)
|
||||
|
||||
/obj/item/projectile/bullet/shotgun/moghes
|
||||
name = "wall shot"
|
||||
secondary_projectile = /obj/item/projectile/bullet/pellet/shotgun/canister
|
||||
|
||||
//Should do about 80 damage at 1 tile distance (adjacent), and 50 damage at 3 tiles distance.
|
||||
//Overall less damage than slugs in exchange for more damage at very close range and more embedding
|
||||
/obj/item/projectile/bullet/pellet/shotgun
|
||||
|
||||
Reference in New Issue
Block a user