mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-18 18:42:08 +01:00
**Modular laser changes** - tl:dr Shooting mod laser at a mob counts up an improvement potential variable, which when the gun is disassembled, gets spread across the components. - When the components are repaired, by someone with high skill, there is a chance to increase a variable, such as damage, shot count, accuracy. - Players give the biggest increase, followed by non-player humans (protohumans & mechs fall in this catagory), then simple mobs and finally monkeys. Non combat modlasers improve slowly when used for their intended task (betarays slowly tick up when shooting hydroponics bays) The philosophy for these changes is that research should continue to be involved with the equipment they give out. It should also be difficult (but not impossible) for research to upgrade their weapons without support from other departments. Xenobio slimes, protohumans, medical help to keep the protohuman alive while you shoot it, security help to actually use the guns on real targets (this gives the biggest increases). The more powerful a weapon is the harder it is to upgrade, as it'll kill it's targets quicker. The more upgraded a weapon is the more difficult it is to upgrade further, improvement potential will get wasted on components that have already hit their cap. On their own, by the time the 5 monkeys research start with are dead, it's possible for a max skill scientist to improve one gun's worth of components by ~25%. The weapons research can now make at roundstart (with max tech) are significantly worse than what spawns in the armoury. The weapons research can make with gold, silver, uranium and phoron are equal to what spawns in the armoury. The weapons research can make with diamonds are better than what spawns in the armoury. Major nerfs to heat vents, auxiliary capacitor and capacitor overcharge, these were the problem children. It is now impossible to make a weapon that does not take damage through use. Safe designs will only break with heavy use, by people who don't bring them back to research for repairs. Powerful designs break quickly and need repeated repairs. Adds two side grade capacitors that can be made at roundstart (with max tech), one higher damage and fewer shots. One lower damage and more shots. High skill characters get much more information when examining modular lasers and a chance to throw the gun away before it explodes. Adds some defines to help balance these changes: Improvement cap (the total percent a component can increase) Currently 100%. Increase & Decrease Cap, how much an individual variable can be increased or decreased. Currently 2x and 0.2x. Improvement multiplier, multiplies all improvement gains. Currently 1x. **Firing Pin fixes & changes** Fixed ID locked firing pins and adds them to R&D. Adds the inner research department to the firing range locked pins. This is so xenobotanists, xenobiologists & xenoarchs can use the modular lasers. Freeze rays for slimes, betarays for xenobotanists, laser activation for artifacts for xenoarch. It is still impossible for a scientist to make a weapon they can use anywhere, but they can give them to security who can use them freely. **Misc bug fixes** The weapon analyzer UI now updates and only shows relevant statistics, instead of displaying every variable even when they do nothing. Replaces the buggy tesla zap with just electrocuting the holder. Fixes a few broken visual messages. Fixes the vermin modulator not killing anything, now it also works on grems. Fixes click delay on malfunction. Fixes radiation damage numbers. Fixes the temperature modulator. Fixes the report printout showing the wrong numbers. --------- Co-authored-by: Copilot <copilot@github.com>
514 lines
20 KiB
Plaintext
514 lines
20 KiB
Plaintext
//Assemblies
|
|
|
|
/obj/item/laser_assembly/medium
|
|
name = "laser assembly (medium)"
|
|
base_icon_state = "medium"
|
|
w_class = WEIGHT_CLASS_SMALL
|
|
size = CHASSIS_MEDIUM
|
|
modifier_cap = 4
|
|
|
|
/obj/item/laser_assembly/large
|
|
name = "laser assembly (large)"
|
|
base_icon_state = "large"
|
|
w_class = WEIGHT_CLASS_NORMAL
|
|
size = CHASSIS_LARGE
|
|
modifier_cap = 5
|
|
|
|
/obj/item/laser_assembly/admin
|
|
name = "laser assembly (obscene)"
|
|
base_icon_state = "large"
|
|
w_class = WEIGHT_CLASS_BULKY
|
|
size = CHASSIS_LARGE
|
|
modifier_cap = 25
|
|
|
|
//Capacitors
|
|
/obj/item/laser_components/capacitor/potato
|
|
name = "starch capacitor"
|
|
desc = "A powercell composed of a primarily starch-based conductor."
|
|
icon_state = "starch_capacitor"
|
|
reliability = 30
|
|
shots = 1
|
|
damage = 5
|
|
|
|
/obj/item/laser_components/capacitor/reinforced
|
|
name = "reinforced capacitor"
|
|
desc = "A reinforced laser weapon capacitor."
|
|
icon_state = "reinforced_capacitor"
|
|
reliability = 100
|
|
malus_multiplier = 0.9
|
|
|
|
/obj/item/laser_components/capacitor/highcap
|
|
name = "high-capacity capacitor"
|
|
desc = "A capacitor with increased charge capacity, at the cost of peak output"
|
|
icon_state = "reinforced_capacitor"
|
|
reliability = 45
|
|
shots = 15
|
|
damage = 8
|
|
|
|
/obj/item/laser_components/capacitor/highpower
|
|
name = "overclocked capacitor"
|
|
desc = "A capacitor withhigher output, at the cost of total charge."
|
|
icon_state = "reinforced_capacitor"
|
|
damage = 20
|
|
shots = 4
|
|
reliability = 45
|
|
|
|
/obj/item/laser_components/capacitor/nuclear
|
|
name = "uranium-enriched capacitor"
|
|
desc = "A capacitor built from uranium enriched materials."
|
|
icon_state = "uranium_capacitor"
|
|
damage = 20
|
|
shots = 10
|
|
reliability = 60
|
|
|
|
|
|
/obj/item/laser_components/capacitor/reinforced/small_fail(var/mob/living/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
..()
|
|
|
|
/obj/item/laser_components/capacitor/reinforced/medium_fail(var/mob/living/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
visible_message(SPAN_DANGER("\The [src] powering \the [prototype] mostly contains the sparks as it overloads!"), range = 3)
|
|
..()
|
|
|
|
/obj/item/laser_components/capacitor/reinforced/critical_fail(var/mob/living/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
visible_message(SPAN_DANGER("\The [src] powering \the [prototype] goes critical but contains the worst of the sparks!"), range = 4)
|
|
..()
|
|
|
|
/obj/item/laser_components/capacitor/nuclear/small_fail(var/mob/living/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
visible_message(SPAN_WARNING("\The [src] powering \the [prototype] sparks and briefly glows a sickly yellow."), range = 4)
|
|
var/turf/T = get_turf(src)
|
|
for (var/mob/living/M in range(0, T))
|
|
to_chat(M, SPAN_WARNING("You feel a warm sensation."))
|
|
M.apply_damage(rand(50,100)*max(prototype.criticality, 1), DAMAGE_RADIATION)
|
|
..()
|
|
|
|
/obj/item/laser_components/capacitor/nuclear/medium_fail(var/mob/living/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
visible_message(SPAN_DANGER("\The [src] in \the [prototype] glows ominously as it overloads!"), range = 6)
|
|
var/turf/T = get_turf(src)
|
|
for (var/mob/living/M in range(round(max(prototype.criticality, 1)),T))
|
|
to_chat(M, SPAN_WARNING("You feel a warm sensation."))
|
|
M.apply_damage(rand(100,200)*max(prototype.criticality, 1), DAMAGE_RADIATION)
|
|
..()
|
|
|
|
/obj/item/laser_components/capacitor/nuclear/critical_fail(var/mob/living/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
visible_message(SPAN_DANGER("\The [src] in \the [prototype] goes critical and explodes in a burst of radiation!"), range = 6)
|
|
var/turf/T = get_turf(src)
|
|
for (var/mob/living/M in range(rand(2,6)*max(prototype.criticality, 1),T))
|
|
to_chat(M, SPAN_WARNING("You feel a wave of heat wash over you."))
|
|
M.apply_damage(300*max(prototype.criticality, 1), DAMAGE_RADIATION)
|
|
SSradiation.radiate(src, 50*max(prototype.criticality, 1))
|
|
new /obj/effect/decal/cleanable/greenglow/radioactive/medium(T)
|
|
..()
|
|
|
|
|
|
/obj/item/laser_components/capacitor/teranium
|
|
name = "teranium-enriched capacitor"
|
|
desc = "A capacitor built from teranium enriched materials."
|
|
icon_state = "teranium_capacitor"
|
|
damage = 25
|
|
shots = 15
|
|
reliability = 55
|
|
|
|
/obj/item/laser_components/capacitor/teranium/small_fail(var/mob/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
visible_message(SPAN_WARNING("\The [src] in \the [prototype] spits angry sparks!"))
|
|
tesla_zap(prototype, 2, 1000*max(prototype.criticality, 1))
|
|
return
|
|
|
|
/obj/item/laser_components/capacitor/teranium/medium_fail(var/mob/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
visible_message(SPAN_WARNING("\The [src] in \the [prototype] shoots random arcs of electricity as it overloads!"))
|
|
tesla_zap(prototype, round(max(prototype.criticality, 1)*2,1), 2000*prototype.criticality)
|
|
return
|
|
|
|
/obj/item/laser_components/capacitor/teranium/critical_fail(var/mob/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
visible_message(SPAN_DANGER("\The [src] in \the [prototype] blasts huge lightning bolts in all directions as it goes critical!"))
|
|
tesla_zap(prototype, round(max(prototype.criticality, 1)*2,1), 4000*prototype.criticality, TRUE)
|
|
..()
|
|
|
|
/obj/item/laser_components/capacitor/phoron
|
|
name = "phoron-enriched capacitor"
|
|
desc = "A capacitor built from phoron enriched materials."
|
|
icon_state = "phoron_capacitor"
|
|
damage = 30
|
|
shots = 20
|
|
reliability = 50
|
|
|
|
/obj/item/laser_components/capacitor/phoron/small_fail(var/mob/living/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
if (user)
|
|
visible_message(SPAN_WARNING("\The [src] powering \the [prototype] sparks in \the [user]'s hand and briefly glows a sickly yellow."), range = 4)
|
|
user.apply_damage(rand(50,100)*max(prototype.criticality, 1), DAMAGE_RADIATION)
|
|
else
|
|
visible_message(SPAN_WARNING("\The [src] powering \the [prototype] sparks and briefly glows a sickly yellow."), range = 4)
|
|
SSradiation.radiate(src, 10*max(prototype.criticality, 1))
|
|
..()
|
|
|
|
/obj/item/laser_components/capacitor/phoron/medium_fail(var/mob/living/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
if (user)
|
|
visible_message(SPAN_WARNING("\The [src] powering \the [prototype] hisses in \the [user]'s hand and explosively vents hot phoron!"))
|
|
if (prototype in list(user.l_hand))
|
|
user.apply_damage(25*max(prototype.criticality, 1), DAMAGE_BRUTE, BP_L_HAND, prototype, DAMAGE_FLAG_EXPLODE)
|
|
else if (prototype in list(user.r_hand))
|
|
user.apply_damage(25*max(prototype.criticality, 1), DAMAGE_BRUTE, BP_R_HAND, prototype, DAMAGE_FLAG_EXPLODE)
|
|
else
|
|
visible_message(SPAN_DANGER("\The [src] powering \the [prototype] hisses and explosively vents hot phoron!"))
|
|
explosion(get_turf(prototype), 0, 0, round(max(prototype.criticality, 1)*2,1))
|
|
..()
|
|
|
|
/obj/item/laser_components/capacitor/phoron/critical_fail(var/mob/living/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
if (user)
|
|
visible_message(SPAN_DANGER("\The [src] powering \the [prototype] goes critical in \the [user]'s hand causing a massive explosion!"))
|
|
if (prototype in list(user.l_hand))
|
|
user.apply_damage(40*max(prototype.criticality, 1), DAMAGE_BRUTE, BP_L_HAND, prototype, DAMAGE_FLAG_EXPLODE)
|
|
else if (prototype in list(user.r_hand))
|
|
user.apply_damage(40*max(prototype.criticality, 1), DAMAGE_BRUTE, BP_R_HAND, prototype, DAMAGE_FLAG_EXPLODE)
|
|
else
|
|
visible_message(SPAN_DANGER("\The [src] powering \the [prototype] goes critical causing a massive explosion!"))
|
|
empulse(get_turf(src), round(max(prototype.criticality, 1),1), round(max(prototype.criticality, 1)*4,1))
|
|
explosion(get_turf(prototype), 0, round(max(prototype.criticality, 1),1), round(max(prototype.criticality, 1)*3,1))
|
|
..()
|
|
|
|
/obj/item/laser_components/capacitor/bluespace
|
|
name = "bluespace-enriched capacitor"
|
|
desc = "A capacitor built from bluespace enriched materials."
|
|
icon_state = "bluespace_capacitor"
|
|
damage = 35
|
|
shots = 25
|
|
reliability = 45
|
|
|
|
/obj/item/laser_components/capacitor/bluespace/small_fail(var/mob/living/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
visible_message(SPAN_WARNING("\The [src] in \the [prototype] sparks and everything touching it teleports a short distance!"))
|
|
var/turf/T = get_turf(src)
|
|
for (var/mob/living/M in range(round(max(prototype.criticality, 1),1),T))
|
|
do_teleport(M, get_turf(M), rand(1,3)*round(max(prototype.criticality, 1),1), asoundin = 'sound/effects/phasein.ogg')
|
|
..()
|
|
|
|
/obj/item/laser_components/capacitor/bluespace/medium_fail(var/mob/living/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
visible_message(SPAN_WARNING("\The [src] in \the [prototype] flickers then vanishes along with everything around it!"))
|
|
var/turf/T = get_turf(src)
|
|
for (var/mob/living/M in range(round(3*max(prototype.criticality, 1),1),T))
|
|
empulse(get_turf(M), 0, round(max(prototype.criticality, 1)*2,1))
|
|
do_teleport(M, get_turf(M), rand(2,6)*round(max(prototype.criticality, 1),1), asoundin = 'sound/effects/phasein.ogg')
|
|
..()
|
|
/obj/item/laser_components/capacitor/bluespace/critical_fail(var/mob/living/user, var/obj/item/gun/energy/laser/prototype/prototype)
|
|
visible_message(SPAN_DANGER("\The [src] in \the [prototype] implodes in a catastrophic spatial anomaly, teleporting everything around it!"))
|
|
var/turf/T = get_turf(src)
|
|
for (var/mob/living/M in range(round(6*max(prototype.criticality, 1),1),T))
|
|
empulse(get_turf(M), 0, round(max(prototype.criticality, 1)*4,1))
|
|
do_teleport(M, get_turf(M), rand(4,12)*round(max(prototype.criticality, 1),1), asoundin = 'sound/effects/phasein.ogg')
|
|
..()
|
|
|
|
//Lenses
|
|
/obj/item/laser_components/focusing_lens/shotgun
|
|
name = "splitter lens"
|
|
desc = "A focusing lens that splits the beam into several sub-beams."
|
|
icon_state = "splitter_lens"
|
|
dispersion = list(5, 10, 15, 20, 25, 30, 35, 40)
|
|
burst = 4
|
|
accuracy = -1
|
|
reliability = 35
|
|
|
|
/obj/item/laser_components/focusing_lens/sniper
|
|
name = "precise lens"
|
|
desc = "A focusing lens that is made of refined crystal, providing enhanced clarity and precision."
|
|
icon_state = "precise_lens"
|
|
accuracy = 2
|
|
reliability = 30
|
|
dispersion = list(0, 0, 0, 0, 0, 1, 2, 3, 4, 5)
|
|
|
|
/obj/item/laser_components/focusing_lens/strong
|
|
name = "reinforced lens"
|
|
desc = "A focusing lens that is reinforced with stronger material."
|
|
icon_state = "reinforced_lens"
|
|
reliability = 60
|
|
|
|
//Modifiers
|
|
|
|
/obj/item/laser_components/modifier/silencer
|
|
name = "energy suppressor"
|
|
desc = "A sophisticated audio dampener that negates much of the sound produced by an energy weapon."
|
|
mod_type = MOD_SILENCE
|
|
icon_state = "energy_silencer"
|
|
|
|
/obj/item/laser_components/modifier/aeg
|
|
name = "miniaturized reactor"
|
|
desc = "An internal nuclear reactor which recharges the energy cell of the weapon. Feels tingly."
|
|
icon_state = "mini_reactor"
|
|
mod_type = MOD_NUCLEAR_CHARGE
|
|
base_malus = 2
|
|
malus = 2
|
|
reliability = -10
|
|
criticality = 1.5
|
|
increasable_stats = list()
|
|
decreaseable_stats = list("base_malus", "criticality")
|
|
|
|
/obj/item/laser_components/modifier/surge
|
|
name = "surge protector"
|
|
desc = "A surge protector along the cell minimizes capacitor failure."
|
|
reliability = 0
|
|
base_malus = 0 //when modifiers get damaged they do not break, but make other components break faster
|
|
malus = 0 //subtracted from weapon's overall reliability everytime it's fired
|
|
criticality = 0.5
|
|
icon_state = "surge_protector"
|
|
increasable_stats = list()
|
|
decreaseable_stats = list("criticality")
|
|
|
|
/obj/item/laser_components/modifier/repeater
|
|
name = "pulser"
|
|
desc = "A modification to the energy cell that permits rudimentary burst fire."
|
|
base_malus = 0.5 //when modifiers get damaged they do not break, but make other components break faster
|
|
malus = 0.5 //subtracted from weapon's overall reliability everytime it's fired
|
|
burst_delay = 1
|
|
burst = 3
|
|
damage = 1.1
|
|
fire_delay = 3
|
|
accuracy = -1
|
|
icon_state = "pulser"
|
|
increasable_stats = list("shots", "accuracy")
|
|
decreaseable_stats = list("base_malus", "fire_delay", "burst_delay", "fire_delay")
|
|
|
|
/obj/item/laser_components/modifier/auxiliarycap
|
|
name = "auxiliary capacitor"
|
|
desc = "A string of sub-capacitors along the central capacitor moderates its discharge, increasing capacitor efficiency by reducing peak output."
|
|
base_malus = 3
|
|
malus = 3
|
|
reliability = -10
|
|
shots = 2
|
|
damage = 0.8
|
|
criticality = 1.25
|
|
icon_state = "aux_capacitor"
|
|
increasable_stats = list("reliability", "shots", "damage")
|
|
decreaseable_stats = list("base_malus", "criticality")
|
|
|
|
/obj/item/laser_components/modifier/overcharge
|
|
name = "capacitor overcharge"
|
|
desc = "A bypass to the internal cell's limiter, producing an explosive result."
|
|
base_malus = 5
|
|
malus = 5
|
|
reliability = -25
|
|
shots = 0.5
|
|
damage = 2
|
|
criticality = 2
|
|
icon_state = "capacitor_overcharge"
|
|
increasable_stats = list("reliability")
|
|
decreaseable_stats = list("base_malus", "criticality")
|
|
|
|
/obj/item/laser_components/modifier/gatling
|
|
name = "gatling rotator"
|
|
desc = "A modification to the lens that permits rapid-fire for extended durations."
|
|
base_malus = 0.5
|
|
malus = 0.5
|
|
burst_delay = 1
|
|
burst = 10
|
|
damage = 2 //With the way armour works, splitting the damage across multiple shots actually reduces the overall damage, so we compensate by increasing it.
|
|
fire_delay = 10
|
|
chargetime = 3
|
|
accuracy = -1
|
|
icon_state = "rotating_lens"
|
|
increasable_stats = list()
|
|
decreaseable_stats = list("fire_delay", "chargetime")
|
|
|
|
/obj/item/laser_components/modifier/scope
|
|
name = "telescopic sight"
|
|
desc = "A modification that adds a zoom function to the prototype."
|
|
scope_name = "proto-scope"
|
|
gun_overlay = "scope"
|
|
icon_state = "telescopic_sight"
|
|
|
|
/obj/item/laser_components/modifier/barrel
|
|
name = "reinforced barrel"
|
|
desc = "Reinforcement along the barrel extends the longevity of the prototype."
|
|
reliability = 25
|
|
icon_state = "reinforced_barrel"
|
|
|
|
/obj/item/laser_components/modifier/barrel/nano
|
|
name = "nano-reinforced barrel"
|
|
desc = "Reinforcement along the barrel extends the longevity of the prototype even more than predecessor barrel. Uses nano-technology to increase reinforcement while retaining same weight."
|
|
reliability = 35
|
|
icon_state = "nano_barrel"
|
|
|
|
/obj/item/laser_components/modifier/vents
|
|
name = "exhaust venting"
|
|
desc = "More efficient exhaust venting reduces the impact of firing the prototype."
|
|
reliability = 0
|
|
base_malus = -0.5
|
|
malus = -0.5
|
|
malus_multiplier = 0.5
|
|
icon_state = "vents"
|
|
increasable_stats = list()
|
|
decreaseable_stats = list("base_malus")
|
|
|
|
/obj/item/laser_components/modifier/grip
|
|
name = "enhanced grip"
|
|
desc = "A modification that improves the fire delay of the prototype."
|
|
fire_delay = 0.8
|
|
gun_overlay = "grip"
|
|
icon_state = "grip"
|
|
increasable_stats = list()
|
|
decreaseable_stats = list("fire_delay")
|
|
|
|
/obj/item/laser_components/modifier/grip/improved
|
|
name = "enhanced grip MK2"
|
|
desc = "A modification that improves the fire delay of the prototype. Slight improvement over a predecessor."
|
|
fire_delay = 0.7
|
|
gun_overlay = "grip"
|
|
icon_state = "enhanced_grip"
|
|
|
|
/obj/item/laser_components/modifier/stock
|
|
name = "improved stock"
|
|
desc = "A modification that improves the accuracy."
|
|
fire_delay = 0.9
|
|
accuracy = 1
|
|
gun_overlay = "stock"
|
|
icon_state = "improved_stock"
|
|
increasable_stats = list("accuracy")
|
|
decreaseable_stats = list("fire_delay")
|
|
|
|
/obj/item/laser_components/modifier/stock/gyro
|
|
name = "stability stock"
|
|
desc = "A better version of na improved stock. This stock is more ergonomic, with in-built gyroscope increasing handly and accuracy."
|
|
fire_delay = 0.8
|
|
accuracy = 1.5
|
|
icon_state = "stable_stock"
|
|
|
|
/obj/item/laser_components/modifier/bayonet
|
|
name = "bayonet"
|
|
desc = "A modification that adds a big knife to your gun. Science."
|
|
gun_force = 10
|
|
gun_overlay = "bayonet"
|
|
icon_state = "bayonet_item"
|
|
increasable_stats = list("gun_force")
|
|
decreaseable_stats = list()
|
|
|
|
/obj/item/laser_components/modifier/ebayonet
|
|
name = "energy bayonet"
|
|
desc = "A modification that adds a hardlight knife to your gun. Science!"
|
|
gun_force = 25
|
|
gun_overlay = "ebayonet"
|
|
icon_state = "ebayonet_item"
|
|
increasable_stats = list("gun_force")
|
|
decreaseable_stats = list()
|
|
|
|
//Projectile modulators
|
|
|
|
/obj/item/laser_components/modulator/taser
|
|
name = "TASER modulator"
|
|
desc = "A modification that modulates the beam into a nonlethal electrical arc."
|
|
damage = 0
|
|
projectile = /obj/projectile/beam/stun
|
|
icon_state = "taser"
|
|
firing_sound = 'sound/weapons/Taser.ogg'
|
|
|
|
/obj/item/laser_components/modulator/tesla
|
|
name = "tesla modulator"
|
|
desc = "A modification that modulates the beam into a lethal electrical arc."
|
|
projectile = /obj/projectile/beam/tesla
|
|
icon_state = "tesla"
|
|
firing_sound = 'sound/magic/LightningShock.ogg'
|
|
|
|
/obj/item/laser_components/modulator/pulse
|
|
name = "pulse modulator"
|
|
desc = "Amplifies the laser beam into a highly lethal pulse beam."
|
|
projectile = /obj/projectile/beam/pulse
|
|
damage = 1.5
|
|
icon_state = "pulse"
|
|
firing_sound = 'sound/weapons/pulse.ogg'
|
|
|
|
/obj/item/laser_components/modulator/xray
|
|
name = "xray modulator"
|
|
desc = "Modulates the beam into a concentrated x-ray blast."
|
|
projectile = /obj/projectile/beam/xray
|
|
icon_state = "xray"
|
|
firing_sound = 'sound/weapons/laser3.ogg'
|
|
|
|
/obj/item/laser_components/modulator/ion
|
|
name = "ion cannon"
|
|
desc = "Modulates the prototype to fire disparate ion projectiles."
|
|
projectile = /obj/projectile/ion
|
|
icon_state = "ion"
|
|
origin_tech = list(TECH_COMBAT = 2, TECH_MAGNET = 3)
|
|
|
|
/obj/item/laser_components/modulator/floramut
|
|
name = "floral somatomodulator"
|
|
desc = "Modulates the beam into firing controlled radiation which induces mutation in plant cells."
|
|
projectile = /obj/projectile/energy/floramut
|
|
icon_state = "somatoray"
|
|
firing_sound = 'sound/effects/stealthoff.ogg'
|
|
|
|
/obj/item/laser_components/modulator/floramut2
|
|
name = "betaray modulator"
|
|
desc = "Modulates the beam into firing controlled radiation which induces enhanced reproduction in plant cells."
|
|
projectile = /obj/projectile/energy/florayield
|
|
icon_state = "betaray"
|
|
firing_sound = 'sound/effects/stealthoff.ogg'
|
|
|
|
/obj/item/laser_components/modulator/xenovermin
|
|
name = "xenovermin modulator"
|
|
desc = "Modulates the beam into firing precise electrical arcs designed for pest and xenofauna control."
|
|
projectile = /obj/projectile/beam/mousegun/xenofauna
|
|
damage = 0.1
|
|
icon_state = "pesker"
|
|
firing_sound = 'sound/weapons/taser2.ogg'
|
|
|
|
/obj/item/laser_components/modulator/mindflayer
|
|
name = "mind flayer modulator"
|
|
desc = "Modulates the beam into firing \"mind flayer\" beams."
|
|
projectile = /obj/projectile/beam/mindflayer
|
|
damage = 0.5
|
|
icon_state = "flayer"
|
|
|
|
/obj/item/laser_components/modulator/decloner
|
|
name = "decloner modulator"
|
|
desc = "Modulates the beam into firing highly radioactive particulates."
|
|
projectile = /obj/projectile/energy/declone
|
|
damage = 0.5
|
|
icon_state = "decloner"
|
|
firing_sound = 'sound/weapons/pulse3.ogg'
|
|
origin_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 4, TECH_POWER = 3)
|
|
|
|
/obj/item/laser_components/modulator/ebow
|
|
name = "dart modulator"
|
|
desc = "Modulates the beam into firing minute energy darts."
|
|
projectile = /obj/projectile/energy/dart
|
|
damage = 0.25
|
|
icon_state = "dart"
|
|
firing_sound = 'sound/weapons/Genhit.ogg'
|
|
origin_tech = list(TECH_COMBAT = 3, TECH_MAGNET = 2, TECH_ILLEGAL = 3)
|
|
|
|
/obj/item/laser_components/modulator/blaster
|
|
name = "blaster-bolt modulator"
|
|
desc = "Modulates the beam into firing disparate energy bolts designed to burn through armour."
|
|
projectile = /obj/projectile/energy/blaster/incendiary/light
|
|
damage = 0.8 //Specialist anti-armour incendiary projectile.
|
|
icon_state = "lensatic"
|
|
origin_tech = list(TECH_COMBAT = 2, TECH_PHORON = 4)
|
|
|
|
/obj/item/laser_components/modulator/bfg
|
|
name = "bioforce modulator"
|
|
desc = "Modulates the beam into firing big green balls of death."
|
|
projectile = /obj/projectile/energy/bfg
|
|
damage = 2
|
|
icon_state = "bfg"
|
|
firing_sound = 'sound/magic/LightningShock.ogg'
|
|
|
|
/obj/item/laser_components/modulator/tox
|
|
name = "phoron bolt modulator"
|
|
desc = "Modulates the beam into firing toxic phoron bolts."
|
|
projectile = /obj/projectile/energy/phoron
|
|
icon_state = "tox"
|
|
firing_sound = 'sound/effects/stealthoff.ogg'
|
|
origin_tech = list(TECH_COMBAT = 4, TECH_PHORON = 4)
|
|
|
|
/obj/item/laser_components/modulator/net
|
|
name = "energy net modulator"
|
|
desc = "Modulates the beam into firing an energy net."
|
|
projectile = /obj/projectile/beam/energy_net
|
|
icon_state = "xray"
|
|
firing_sound = 'sound/weapons/plasma_cutter.ogg'
|
|
origin_tech = list(TECH_COMBAT = 3, TECH_PHORON = 4, TECH_ILLEGAL = 4)
|
|
|
|
/obj/item/laser_components/modulator/freeze
|
|
name = "freeze ray modulator"
|
|
desc = "Modulates the beam into freezing rays."
|
|
projectile = /obj/projectile/beam/freezer
|
|
icon_state = "blue"
|
|
firing_sound = 'sound/weapons/pulse3.ogg'
|
|
origin_tech = list(TECH_COMBAT = 3, TECH_MAGNET = 5, TECH_MATERIAL = 4)
|