diff --git a/code/game/mecha/equipment/weapons/weapons.dm b/code/game/mecha/equipment/weapons/weapons.dm index 03234e968e..4721e84440 100644 --- a/code/game/mecha/equipment/weapons/weapons.dm +++ b/code/game/mecha/equipment/weapons/weapons.dm @@ -218,6 +218,24 @@ /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/Fire(atom/movable/AM, atom/target, turf/aimloc) AM.throw_at(target,missile_range, missile_speed, chassis) + +/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flare + name = "\improper BNI Flare Launcher" + icon_state = "mecha_flaregun" + projectile = /obj/item/device/flashlight/flare + fire_sound = 'sound/weapons/tablehit1.ogg' + auto_rearm = 1 + fire_cooldown = 20 + projectiles_per_shot = 1 + projectile_energy_cost = 20 + missile_speed = 1 + missile_range = 15 + required_type = /obj/mecha //Why restrict it to just mining or combat mechs? + +/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flare/Fire(atom/movable/AM, atom/target, turf/aimloc) + var/obj/item/device/flashlight/flare/fired = AM + fired.ignite() + ..() /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/explosive name = "\improper SRM-8 missile rack" diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index b0e3d60f96..c7f90e9746 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -199,6 +199,14 @@ src.force = on_damage src.damtype = "fire" processing_objects += src + +/obj/item/device/flashlight/flare/proc/ignite() //Used for flare launchers. + on = !on + update_icon() + force = on_damage + damtype = "fire" + processing_objects += src + return 1 /obj/item/device/flashlight/slime gender = PLURAL diff --git a/code/modules/research/mechfab_designs.dm b/code/modules/research/mechfab_designs.dm index 4448881748..f10e3ae472 100644 --- a/code/modules/research/mechfab_designs.dm +++ b/code/modules/research/mechfab_designs.dm @@ -407,6 +407,12 @@ name = "Cable layer" id = "mech_cable_layer" build_path = /obj/item/mecha_parts/mecha_equipment/tool/cable_layer + +/datum/design/item/mecha/flaregun + name = "Flare launcher" + id = "mecha_flare_gun" + build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flare + materials = list(DEFAULT_WALL_MATERIAL = 12500) /datum/design/item/mecha/sleeper name = "Sleeper" diff --git a/icons/mecha/mecha_equipment.dmi b/icons/mecha/mecha_equipment.dmi index 23e826159e..5f1898b857 100644 Binary files a/icons/mecha/mecha_equipment.dmi and b/icons/mecha/mecha_equipment.dmi differ