mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-30 00:21:11 +01:00
Adds a freeze ray gun (#11114)
This pr adds a freeze ray gun. It works by reducing the mob's temperature until they freeze and get stuck inside ice for a while. The gun also has an alt-fire mode that fires ice bolt.
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
/obj/item/gun/energy/freeze
|
||||
name = "freeze ray gun"
|
||||
desc = "A portable freezing ray gun designated to quickly lower temperatures."
|
||||
icon = 'icons/obj/guns/freezeray.dmi'
|
||||
icon_state = "icer"
|
||||
item_state = "icer"
|
||||
has_item_ratio = FALSE
|
||||
fire_sound = 'sound/weapons/pulse3.ogg'
|
||||
|
||||
max_shots = 5
|
||||
|
||||
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 4, TECH_POWER = 4)
|
||||
slot_flags = SLOT_BELT
|
||||
|
||||
projectile_type = /obj/item/projectile/beam/freezer
|
||||
|
||||
firemodes = list(
|
||||
list(mode_name="freeze", projectile_type= /obj/item/projectile/beam/freezer, fire_sound='sound/weapons/pulse3.ogg'),
|
||||
list(mode_name="ice bolt", projectile_type= /obj/item/projectile/ice, fire_sound='sound/weapons/crossbow.ogg')
|
||||
)
|
||||
@@ -445,3 +445,11 @@
|
||||
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/item/projectile/beam/freezer
|
||||
icon_state = "blue"
|
||||
firing_sound = 'sound/weapons/pulse3.ogg'
|
||||
origin_tech = list(TECH_COMBAT = 3, TECH_MAGNET = 5, TECH_MATERIAL = 4)
|
||||
@@ -443,4 +443,28 @@
|
||||
damage = 20
|
||||
|
||||
/obj/item/projectile/beam/tesla/paramount
|
||||
damage = 25
|
||||
damage = 25
|
||||
|
||||
/obj/item/projectile/beam/freezer
|
||||
name = "freezing ray"
|
||||
icon_state = "bluelaser"
|
||||
pass_flags = PASSTABLE
|
||||
damage = 15
|
||||
damage_type = BURN
|
||||
check_armor = "energy"
|
||||
|
||||
muzzle_type = /obj/effect/projectile/muzzle/laser/blue
|
||||
tracer_type = /obj/effect/projectile/tracer/laser/blue
|
||||
impact_type = /obj/effect/projectile/impact/laser/blue
|
||||
|
||||
/obj/item/projectile/beam/freezer/on_impact(atom/target)
|
||||
. = ..()
|
||||
if(isliving(target))
|
||||
var/mob/living/L = target
|
||||
L.bodytemperature -= 40
|
||||
|
||||
if(ishuman(L))
|
||||
var/mob/living/carbon/human/H = L
|
||||
if(H.bodytemperature <= H.species.cold_level_2)
|
||||
new /obj/structure/closet/statue/ice(H.loc, H)
|
||||
H.visible_message(SPAN_WARNING("\The [H] freezes!"))
|
||||
|
||||
@@ -300,3 +300,10 @@
|
||||
else
|
||||
..()
|
||||
return
|
||||
|
||||
/obj/item/projectile/ice
|
||||
name ="ice bolt"
|
||||
icon_state= "icer_bolt"
|
||||
damage = 15
|
||||
damage_type = BRUTE
|
||||
check_armor = "energy"
|
||||
@@ -242,4 +242,9 @@
|
||||
/datum/design/item/modular_weapon/modular_net
|
||||
req_tech = list(TECH_COMBAT = 5, TECH_PHORON = 4, TECH_ILLEGAL = 4)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 5000, MATERIAL_GLASS = 1000, MATERIAL_PHORON = 3000)
|
||||
build_path = /obj/item/laser_components/modulator/net
|
||||
build_path = /obj/item/laser_components/modulator/net
|
||||
|
||||
/datum/design/item/modular_weapon/freezing_ray
|
||||
req_tech = list(TECH_COMBAT = 3, TECH_MAGNET = 5, TECH_MATERIAL = 4)
|
||||
materials = list(DEFAULT_WALL_MATERIAL = 2000, MATERIAL_GLASS = 1000, MATERIAL_URANIUM = 500)
|
||||
build_path = /obj/item/laser_components/modulator/freeze
|
||||
Reference in New Issue
Block a user