Merge branch 'CHOMPStation2:master' into items

This commit is contained in:
Cyrelius
2023-02-08 22:50:13 -08:00
committed by GitHub
248 changed files with 11474 additions and 193988 deletions

View File

@@ -29,6 +29,10 @@
light_state = "prot_light"
flight_x_offset = 0
flight_y_offset = 0
action_button_name = "Toggle gun-light"
var/gun_light_icon = TRUE
var/gun_light_on = FALSE
var/brightness_on = 5
w_class = ITEMSIZE_SMALL
@@ -46,6 +50,17 @@
return ..()
/obj/item/weapon/gun/energy/gun/protector/ui_action_click(mob/user, actiontype)
gun_light_on = !gun_light_on
playsound(src, 'sound/weapons/empty.ogg', 40, TRUE)
update_brightness(user)
update_icon()
/obj/item/weapon/gun/energy/gun/protector/proc/update_brightness(mob/user = null)
if(gun_light_on)
set_light(brightness_on)
else
set_light(0)
/obj/item/weapon/gun/energy/gun/protector/emag_act(var/remaining_charges,var/mob/user)
..()
@@ -88,11 +103,12 @@
else
add_overlay("[icon_state]_[modifystate][ratio]")
if(can_flashlight & gun_light)
if(can_flashlight & gun_light_on)
var/mutable_appearance/flashlight_overlay = mutable_appearance(icon, light_state)
flashlight_overlay.pixel_x = flight_x_offset
flashlight_overlay.pixel_y = flight_y_offset
add_overlay(flashlight_overlay)
add_overlay(light_state)
/* Don't have one for this gun
if(itemState)
@@ -104,3 +120,43 @@
emagged = TRUE
name = "small energy gun"
desc = "The LAEP95 'Protector' is another firearm from Lawson Arms and "+TSC_HEPH+", unlike the Perun this is designed for issue to non-security staff. It contains a detachable cell. It also features an integrated flashlight!"
/obj/item/weapon/gun/energy/gun/protector/pilotgun/locked
name = "secure shuttle-protection pistol"
desc = "The LAEP97 'Defender' is a variant of another firearm from Lawson Arms and "+TSC_HEPH+", designed to be issued to pilots for defence of their craft from trespassers whilst in-flight. It contains a detachable cell, two modes of fire and a safety interlock to minimize workplace accidents. It also features an integrated flashlight!"
description_info = "This gun can only fire non-lethally. Additionally, it's incapable of firing within the proximity of Nanotrasen facilities courtesy of the built-in safety interlock."
description_fluff = "A lighter weapon designed for pilots, this gun has a wireless connection to the computer's datacore to ensure it can't be used within the bounds of NT facilities without authorization from ranking members of security, or the Captain."
firemodes = list(
list(mode_name="stunbeam", projectile_type=/obj/item/projectile/beam/stun/med, modifystate="stun", charge_cost = 400),
list(mode_name="electrode", projectile_type=/obj/item/projectile/energy/electrode/strong, modifystate="zap", charge_cost = 800),
)
req_access = list(access_armory) //for toggling safety
var/locked = 1
var/lockable = 1
/obj/item/weapon/gun/energy/gun/protector/pilotgun/locked/attackby(obj/item/I, mob/user)
var/obj/item/weapon/card/id/id = I.GetID()
if(istype(id) && lockable)
if(check_access(id))
locked = !locked
to_chat(user, "<span class='warning'>You [locked ? "enable" : "disable"] the safety interlock on \the [src].</span>")
else
to_chat(user, "<span class='warning'>Access denied.</span>")
user.visible_message("<span class='notice'>[user] swipes \the [I] against \the [src].</span>")
else
return ..()
/obj/item/weapon/gun/energy/gun/protector/pilotgun/locked/emag_act(var/remaining_charges,var/mob/user)
return ..()
/obj/item/weapon/gun/energy/gun/protector/pilotgun/locked/special_check(mob/user)
if(locked)
var/turf/T = get_turf(src)
if(T.z in using_map.station_levels)
to_chat(user, "<span class='warning'>The safety device prevents the gun from firing this close to the facility.</span>")
return 0
return ..()

View File

@@ -183,6 +183,9 @@
scoped_accuracy = 40
one_handed_penalty = 50 // The weapon itself is heavy, and the long barrel makes it hard to hold steady with just one hand.
phase_power = 150 //efficient crank charger
fire_sound = null
charge_cost = 600
fire_delay = 35
projectile_type = /obj/item/projectile/beam/sniper
modifystate = "phrifledmr"

View File

@@ -218,16 +218,12 @@
* Mako
*/
/obj/item/weapon/gun/projectile/revolver/lemat
name = "\improper \"Mako\" Revolver"
desc = "The Bishamonten P100 Mako is a 9 shot revolver with a secondary firing barrel loading shotgun shells. \
For when you really need something dead. A rare yet deadly collector's item. Uses .38-Special and 12g rounds depending on the barrel."
description_fluff = "The Bishamonten Company operated from roughly 2150-2280 - the height of the first \
extrasolar colonisation boom - before filing for bankruptcy and selling off its assets to various companies \
that would go on to become todays TSCs. Focused on sleek futurist designs which have largely fallen out of \
fashion but remain popular with collectors and people hoping to make some quick thalers from replica weapons. \
Bishamonten weapons tended to be form over function - despite their flashy looks, most were completely \
unremarkable one way or another as weapons and used very standard firing mechanisms - the Mako was a notable \
exception, and original examples are much sought after."
name = "Mako revolver"
desc = "The Bishamonten P100 Mako is a 9 shot revolver with a secondary firing barrel loading shotgun shells. For when you really need something dead. A rare yet deadly collector's item. Uses .38-Special and 12g rounds depending on the barrel."
description_fluff = "The Bishamonten Company operated from roughly 2150-2280 - the height of the first extrasolar colonisation boom - before filing for bankruptcy and selling off its assets to various companies that would go on to become todays TSCs. \
Focused on sleek futurist designs which have largely fallen out of fashion but remain popular with collectors and people hoping to make some quick thalers from replica weapons. \
Bishamonten weapons tended to be form over function - despite their flashy looks, most were completely unremarkable one way or another as weapons, and used very standard firing mechanisms - \
the Mako was a notable exception, so original examples are much sought after."
icon_state = "combatrevolver"
item_state = "revolver"
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2)