diff --git a/code/game/gamemodes/sandbox/h_sandbox.dm b/code/game/gamemodes/sandbox/h_sandbox.dm index 74a70bf2ca0..f06b273d900 100644 --- a/code/game/gamemodes/sandbox/h_sandbox.dm +++ b/code/game/gamemodes/sandbox/h_sandbox.dm @@ -28,7 +28,7 @@ var/hsboxspawn = 1 var/global/list/spawn_forbidden = list( /obj/item/tk_grab, /obj/item/weapon/implant, // not implanter, the actual thing that is inside you /obj/item/assembly,/obj/item/device/onetankbomb, /obj/item/radio, /obj/item/device/pda/ai, - /obj/item/device/uplink, /obj/item/smallDelivery, /obj/item/missile,/obj/item/projectile, + /obj/item/device/uplink, /obj/item/smallDelivery, /obj/item/projectile, /obj/item/borg/sight,/obj/item/borg/stun,/obj/item/weapon/robot_module) /datum/hSB/proc/update() diff --git a/code/game/mecha/combat/marauder.dm b/code/game/mecha/combat/marauder.dm index fd1021b8b69..ea0e3075255 100644 --- a/code/game/mecha/combat/marauder.dm +++ b/code/game/mecha/combat/marauder.dm @@ -34,7 +34,7 @@ ..() var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/energy/pulse(src) ME.attach(src) - ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/missile_rack(src) + ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack(src) ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay(src) ME.attach(src) @@ -58,7 +58,7 @@ var/obj/item/mecha_parts/mecha_equipment/ME ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot(src) ME.attach(src) - ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/missile_rack(src) + ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack(src) ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/teleporter(src) ME.attach(src) @@ -81,7 +81,7 @@ ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot(src) ME.attach(src) - ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/missile_rack(src) + ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack(src) ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay(src) ME.attach(src) diff --git a/code/game/mecha/equipment/weapons/weapons.dm b/code/game/mecha/equipment/weapons/weapons.dm index 4b493a752ad..07109a45c22 100644 --- a/code/game/mecha/equipment/weapons/weapons.dm +++ b/code/game/mecha/equipment/weapons/weapons.dm @@ -278,6 +278,18 @@ randomspread = 1 projectile_delay = 2 +/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack + name = "\improper SRM-8 missile rack" + desc = "A weapon for combat exosuits. Shoots light explosive missiles." + icon_state = "mecha_missilerack" + origin_tech = "combat=5;materials=4;engineering=4" + projectile = /obj/item/projectile/bullet/srmrocket + fire_sound = 'sound/weapons/grenadelaunch.ogg' + projectiles = 8 + projectile_energy_cost = 1000 + equip_cooldown = 60 + + /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher var/missile_speed = 2 var/missile_range = 30 @@ -298,35 +310,6 @@ /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/proc/proj_init(var/obj/O) return -/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/missile_rack - name = "\improper SRM-8 missile rack" - desc = "A weapon for combat exosuits. Shoots light explosive missiles." - icon_state = "mecha_missilerack" - origin_tech = "combat=5;materials=4;engineering=4" - projectile = /obj/item/missile - fire_sound = 'sound/weapons/grenadelaunch.ogg' - projectiles = 8 - projectile_energy_cost = 1000 - equip_cooldown = 60 - -/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/missile_rack/proj_init(var/obj/item/missile/M) - M.primed = 1 - var/turf/T = get_turf(src) - message_admins("[ADMIN_LOOKUP(chassis.occupant)] fired a [src] in [ADMIN_COORDJMP(T)]",0,1) - log_game("[key_name(chassis.occupant)] fired a [src] [COORD(T)]") - -/obj/item/missile - icon = 'icons/obj/grenade.dmi' - icon_state = "missile" - var/primed = null - throwforce = 15 - -/obj/item/missile/throw_impact(atom/hit_atom) - if(primed) - explosion(hit_atom, 0, 0, 2, 4, 0) - qdel(src) - else - ..() /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/flashbang name = "\improper SGL-6 grenade launcher" diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index 537f9701604..cfe320c4074 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -301,7 +301,7 @@ var/list/TYPES_SHORTCUTS = list( /obj/item/weapon = "WEAPON", /obj/machinery/atmospherics = "ATMOS_MECH", /obj/machinery/portable_atmospherics = "PORT_ATMOS", - /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/missile_rack = "MECHA_MISSILE_RACK", + /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack = "MECHA_MISSILE_RACK", /obj/item/mecha_parts/mecha_equipment = "MECHA_EQUIP", /obj/item/organ = "ORGAN", /obj/item = "ITEM", diff --git a/code/modules/projectiles/projectile/special.dm b/code/modules/projectiles/projectile/special.dm index 7a68d887067..d1b7610f3f8 100644 --- a/code/modules/projectiles/projectile/special.dm +++ b/code/modules/projectiles/projectile/special.dm @@ -64,6 +64,21 @@ S.take_overall_damage(anti_armour_damage*0.75, anti_armour_damage*0.25) return 1 +/obj/item/projectile/bullet/srmrocket + name ="SRM-8 Rocket" + desc = "Boom" + icon = 'icons/obj/grenade.dmi' + icon_state = "missile" + damage = 30 + +/obj/item/projectile/bullet/srmrocket/on_hit(atom/target, blocked=0) + ..() + if(!isliving(target)) //if the target isn't alive, so is a wall or something + explosion(target, 0, 1, 2, 4) + else + explosion(target, 0, 0, 2, 4) + return 1 + /obj/item/projectile/temp name = "freeze beam" icon_state = "ice_2" diff --git a/code/modules/research/designs/mecha_designs.dm b/code/modules/research/designs/mecha_designs.dm index ebfece1ddbc..e4d862bc7a8 100644 --- a/code/modules/research/designs/mecha_designs.dm +++ b/code/modules/research/designs/mecha_designs.dm @@ -211,7 +211,7 @@ id = "mech_missile_rack" build_type = MECHFAB req_tech = list("combat" = 6, "materials" = 5, "engineering" = 5) - build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/missile_rack + build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack materials = list(MAT_METAL=22000,MAT_GOLD=6000,MAT_SILVER=8000) construction_time = 100 category = list("Exosuit Equipment")