Files
VOREStation/code/modules/projectiles/guns/energy/pulse.dm
T
Cameron Lennox d5849910e5 Begin clickcode attack_self fix (#18797)
* Begin clickcode attack_self fix

Begins the work to make everything call back to parent for attack_self so that signals are sacred.

* Makes MORE things call the attack_self() parent

Yes, I could make special_handling a var on obj/item HOWEVER i want it to be specific so it can be tracked down later and ONLY the objects that use it can be refactored instead of sitting there literally forever and it just becoming 'a thing'.

* Finishes making the rest of attack_self call parent.

As mentioned, things such as 'specialty_goggles' 'special_handling' and the such are only there to help with attack_self until the attack_self is recoded for those items.

* begone foul demon

* some more cleanup

* These

* GOD this was annoying

* yeh

* Fix this

* fLARES

* Thesee too

* toys!

* Even more!

* More fixes

* Even more

* rest of em

* these too

* Update syndie.dm

* hardref clear

* Update code/game/gamemodes/nuclear/pinpointer.dm

* Update code/game/objects/effects/mines.dm

* Update code/game/objects/items/blueprints_vr.dm

* Update code/game/objects/items/blueprints_vr.dm

* Update code/game/objects/items/contraband_vr.dm

* Update code/game/objects/items/crayons.dm

* Update code/game/objects/items/crayons.dm

* Update code/game/objects/items/gunbox.dm

* Update code/game/objects/items/gunbox.dm

* Update code/game/objects/items/gunbox_vr.dm

* Update code/game/objects/items/gunbox_vr.dm

* Update code/game/objects/items/weapons/gift_wrappaper.dm

* Update code/game/objects/items/crayons.dm

* Update code/game/objects/items/crayons.dm

* Update code/game/objects/items/gunbox.dm

* these too

* Update maintpanel_stack.dm

* angry warning

* Fixes packaged snacks.

Fixes improper var default.

* Special handling for these

* proper poly types

* Fixes magclaws

Makes the 'features' it had just part  of base magboots that can be adjusted via varswap.

* Fixes jackets

Fixes https://github.com/VOREStation/VOREStation/issues/18941

* Small bugfix

Makes p_Theyre properly capitialize
Makes examine show proper wording

* Update gift_wrappaper.dm
2025-12-29 13:21:10 -05:00

87 lines
3.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/*
* Pulse Rifle
*/
/obj/item/gun/energy/pulse_rifle
name = "\improper LP1 Locust Rifle"
desc = "The Bishamonten LP1 is a weapon that uses advanced pulse-based beam generation technology to emit powerful laser blasts. \
Because of its complexity and cost, it is rarely seen in use except by specialists."
icon_state = "pulse"
item_state = null //so the human update icon uses the icon_state instead.
slot_flags = SLOT_BELT|SLOT_BACK
force = 10
projectile_type = /obj/item/projectile/beam
charge_cost = 120
fire_delay = 8
sel_mode = 2
firemodes = list(
list(mode_name="stun", projectile_type=/obj/item/projectile/beam/stun, fire_delay=null, charge_cost = 120),
list(mode_name="lethal", projectile_type=/obj/item/projectile/beam, fire_delay=null, charge_cost = 120),
list(mode_name="DESTROY", projectile_type=/obj/item/projectile/beam/pulse, fire_delay=null, charge_cost = 240),
)
/obj/item/gun/energy/pulse_rifle/mounted
self_recharge = 1
use_external_power = 1
/*
* Pulse Destroyer
*/
/obj/item/gun/energy/pulse_rifle/destroyer
name = "\improper LP1 MkII"
desc = "A more heavy-duty version of the Bishamonten LP1. It's had all its safety functions ripped out to facilitate the perfect killing machine."
icon_state = "pulsedest"
projectile_type=/obj/item/projectile/beam/pulse
charge_cost = 120
fire_delay = 12
special_handling = TRUE
/obj/item/gun/energy/pulse_rifle/destroyer/attack_self(mob/user)
. = ..(user)
if(.)
return TRUE
to_chat(user, span_warning("[src.name] has three settings, and they are all DESTROY."))
/*
* Pulse Carbine
*/
/obj/item/gun/energy/pulse_rifle/carbine
name = "\improper LP2 Grasshopper Carbine"
desc = "The Bishamonten LP2 is a sleek, compact version of the LP1. Because of its smaller design it takes less time to charge a shot."
icon_state = "pulsecarbine"
charge_cost = 480
fire_delay = 2
firemodes = list(
list(mode_name="stun", projectile_type=/obj/item/projectile/beam/stun, fire_delay=null, charge_cost = 120),
list(mode_name="lethal", projectile_type=/obj/item/projectile/beam, fire_delay=null, charge_cost = 120),
list(mode_name="DESTROY", projectile_type=/obj/item/projectile/beam/pulse, fire_delay=null, charge_cost = 240),
)
/*
* Pulse Pistol
*/
/obj/item/gun/energy/pulse_rifle/compact
name = "\improper LP4 Mantis Compact"
desc = "The Bishamonten LP4 was once the weapon of choice for military officers during the Hegemony War. Today it is little more than a collectors item."
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 Grasshopper remains one of the smallest production laser pistols ever produced that is still capable of causing significant \
damage to organic tissue."
slot_flags = SLOT_BELT|SLOT_HOLSTER
icon_state = "pulsepistol"
charge_cost = 480
/obj/item/gun/energy/pulse_rifle/compact/admin
name = "\improper LP4 Mantis Deluxe"
desc = "It's not the size of the gun, it's the size of the hole it puts through people."
charge_cost = 240
firemodes = list(
list(mode_name="stun", projectile_type=/obj/item/projectile/beam/stun, fire_delay=null, charge_cost = 240),
list(mode_name="lethal", projectile_type=/obj/item/projectile/beam, fire_delay=null, charge_cost = 240),
list(mode_name="DESTROY", projectile_type=/obj/item/projectile/beam/pulse, fire_delay=null, charge_cost = 480),
)