mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-12 19:22:56 +00:00
Supposed to help compilation times. Who knows. Signed-off-by: Mloc-Argent <colmohici@gmail.com>
45 lines
1.1 KiB
Plaintext
45 lines
1.1 KiB
Plaintext
/obj/item/weapon/gun/energy
|
|
icon_state = "energy"
|
|
name = "energy gun"
|
|
desc = "A basic energy-based gun."
|
|
fire_sound = 'sound/weapons/Taser.ogg'
|
|
|
|
var/obj/item/weapon/cell/power_supply //What type of power cell this uses
|
|
var/charge_cost = 100 //How much energy is needed to fire.
|
|
var/cell_type = "/obj/item/weapon/cell"
|
|
var/projectile_type = "/obj/item/projectile/beam/practice"
|
|
var/modifystate
|
|
|
|
emp_act(severity)
|
|
power_supply.use(round(power_supply.maxcharge / severity))
|
|
update_icon()
|
|
..()
|
|
|
|
|
|
New()
|
|
..()
|
|
if(cell_type)
|
|
power_supply = new cell_type(src)
|
|
else
|
|
power_supply = new(src)
|
|
power_supply.give(power_supply.maxcharge)
|
|
return
|
|
|
|
|
|
load_into_chamber()
|
|
if(in_chamber) return 1
|
|
if(!power_supply) return 0
|
|
if(!power_supply.use(charge_cost)) return 0
|
|
if(!projectile_type) return 0
|
|
in_chamber = new projectile_type(src)
|
|
return 1
|
|
|
|
|
|
update_icon()
|
|
var/ratio = power_supply.charge / power_supply.maxcharge
|
|
ratio = round(ratio, 0.25) * 100
|
|
if(modifystate)
|
|
icon_state = "[modifystate][ratio]"
|
|
else
|
|
icon_state = "[initial(icon_state)][ratio]"
|