diff --git a/aurorastation.dme b/aurorastation.dme index c516cc6620d..dd4a2b0cd9b 100644 --- a/aurorastation.dme +++ b/aurorastation.dme @@ -2624,6 +2624,7 @@ #include "code\modules\overmap\ship_weaponry\_ship_gun.dm" #include "code\modules\overmap\ship_weaponry\projectiles\_overmap_projectiles.dm" #include "code\modules\overmap\ship_weaponry\weaponry\bruiser.dm" +#include "code\modules\overmap\ship_weaponry\weaponry\coilgun.dm" #include "code\modules\overmap\ship_weaponry\weaponry\francisca.dm" #include "code\modules\overmap\ship_weaponry\weaponry\grauwolf.dm" #include "code\modules\overmap\ship_weaponry\weaponry\leviathan.dm" diff --git a/code/__defines/ship_weapons.dm b/code/__defines/ship_weapons.dm index 3ad321b2840..dc5d32c5daf 100644 --- a/code/__defines/ship_weapons.dm +++ b/code/__defines/ship_weapons.dm @@ -4,6 +4,7 @@ #define SHIP_CALIBER_90MM "90mm" #define SHIP_CALIBER_ZTA "zero-point warp beam" #define SHIP_CALIBER_178MM "178mm" +#define SHIP_CALIBER_COILGUN "tungsten rod" #define SHIP_GUN_FIRING_SUCCESSFUL "firing sequence completed" #define SHIP_GUN_ERROR_NO_AMMO "no ammunition loaded" diff --git a/code/modules/overmap/ship_weaponry/weaponry/coilgun.dm b/code/modules/overmap/ship_weaponry/weaponry/coilgun.dm new file mode 100644 index 00000000000..b14028bdf16 --- /dev/null +++ b/code/modules/overmap/ship_weaponry/weaponry/coilgun.dm @@ -0,0 +1,43 @@ +/obj/machinery/ship_weapon/coilgun + name = "type 21 nadziak solarian coilgun" + desc = "The venerable Nadziak-class line of coilguns was born in the fires of the Interstellar War, where its ability to shred shields and low-class hulls have ensured its immortality in the infrastructure of the Solarian Navy." + desc_extended = "Although originally an expensive blunder made by over-worked Kumar Arms designers, the Nadziak later preformed to an outstanding degree following numerous improvements. Its fame among post-War Admirals was such that its name and purpose has largely remained the same, with a new 'Type' iteration commissioned every decade or so. With the expulsion of Zavodskoi and its subsidiary from Solarian space, this aging giant and symbol of military might is under threat of being consumed by the resulting arms manufacturing vacuum." + icon = 'icons/obj/machines/ship_guns/sol_coilgun.dmi' + icon_state = "weapon_base" + projectile_type = /obj/item/projectile/ship_ammo/coilgun + + heavy_firing_sound = 'sound/weapons/railgun.ogg' + firing_effects = FIRING_EFFECT_FLAG_EXTREMELY_LOUD + screenshake_type = SHIP_GUN_SCREENSHAKE_ALL_MOBS + caliber = SHIP_CALIBER_COILGUN + +/obj/item/ship_ammunition/coilgun + name = "tungsten rod pack" + name_override = "tungsten rod" + desc = "A pack of rods used as ammunition for a coilgun." + icon = 'icons/obj/ammo.dmi' + icon_state = "trodpack-2" + caliber = SHIP_CALIBER_COILGUN + overmap_icon_state = "cannon" + impact_type = SHIP_AMMO_IMPACT_HE + +/obj/item/projectile/ship_ammo/coilgun + name = "high-power tungsten rod" + icon_state = "heavy" + damage = 10000 + armor_penetration = 1000 + penetrating = 1 + +/obj/item/projectile/ship_ammo/coilgun/on_hit(atom/target, blocked, def_zone, is_landmark_hit) + . = ..() + if(ismob(target)) + var/mob/M = target + M.visible_message(SPAN_DANGER("\The [src] blows [M]'s chest apart and punches straight through!")) + if(isturf(target) || isobj(target)) + explosion(target, 6, 8, 10) + +/obj/machinery/ammunition_loader/sol + icon_state = "ammo_loader_sol" + +/obj/structure/viewport/sol + icon_state = "viewport_sol" \ No newline at end of file diff --git a/icons/obj/machines/ship_guns/ship_weapon_attachments.dmi b/icons/obj/machines/ship_guns/ship_weapon_attachments.dmi index d7d5005dd82..4f59eb070a3 100644 Binary files a/icons/obj/machines/ship_guns/ship_weapon_attachments.dmi and b/icons/obj/machines/ship_guns/ship_weapon_attachments.dmi differ diff --git a/icons/obj/machines/ship_guns/sol_coilgun.dmi b/icons/obj/machines/ship_guns/sol_coilgun.dmi new file mode 100644 index 00000000000..2818bc46cb3 Binary files /dev/null and b/icons/obj/machines/ship_guns/sol_coilgun.dmi differ