Adds 'Prospector' Mining Turrets (#32108)

* Adds 'Prospector' Mining Turrets

* Linters
This commit is contained in:
PollardTheDragon
2026-06-24 18:17:48 -04:00
committed by GitHub
parent 86a47cec8b
commit 5a446efbec
7 changed files with 75 additions and 1 deletions
+25
View File
@@ -546,6 +546,31 @@
turret.owner_uid = owner_uid
qdel(src)
/obj/item/grenade/turret/mining
name = "\"Prospector\" Turret grenade"
desc = "Inflates into a \"Prospector\" Mining Turret - a robust and secure defensive system."
icon_state = "mining_turret"
origin_tech = "materials=4;magnets=4;engineering=5"
/obj/item/grenade/turret/mining/emag_act(mob/user)
. = ..()
if(emagged)
return
to_chat(user, SPAN_WARNING("You short out the turret's IFF system."))
emagged = TRUE
/obj/item/grenade/turret/mining/prime()
var/turf/T = get_turf(src)
qdel(src)
var/obj/effect/temp_visual/rcd_effect/spawning_effect = new(T)
playsound(T, 'sound/items/rped.ogg', 100, TRUE)
sleep(5 SECONDS)
var/obj/machinery/porta_turret/mining_turret/turret = new(T)
if(emagged)
turret.faction = "hate_everyone"
turret.emagged = TRUE
qdel(spawning_effect)
/obj/structure/barricade/foam
name = "foam blockage"
desc = "This foam blocks the airlock from being opened."
+43
View File
@@ -1325,6 +1325,49 @@
/obj/machinery/porta_turret/inflatable_turret/CanPathfindPass(to_dir, datum/can_pass_info/pass_info)
return ((stat & BROKEN) || !pass_info.is_living)
/obj/machinery/porta_turret/mining_turret
name = "\"Prospector\" Pop-Up Turret"
desc = "A deployable turret equipped with a proto-kinetic accelerator, useful for those who need to secure a place in harsh environments."
icon_state = "standard_mining"
base_icon_state = "standard_mining"
projectile = /obj/projectile/kinetic/turret
eprojectile = /obj/projectile/kinetic/turret
shot_sound = 'sound/weapons/kenetic_accel.ogg'
eshot_sound = 'sound/weapons/kenetic_accel.ogg'
health = 150
installation = null
always_up = TRUE
interact_offline = TRUE
power_state = NO_POWER_USE
has_cover = FALSE
raised = TRUE
shot_delay = 2 SECONDS
scan_range = 3
faction = "neutral"
lethal = TRUE
lethal_is_configurable = FALSE
targetting_is_configurable = FALSE
check_arrest = FALSE
check_records = FALSE
check_access = FALSE
check_synth = TRUE
ailock = TRUE
/obj/machinery/porta_turret/mining_turret/update_icon_state()
if(stat & BROKEN)
icon_state = "standard_broken"
/obj/machinery/porta_turret/mining_turret/setup()
return
/obj/machinery/porta_turret/mining_turret/CanPass(atom/A)
return ((stat & BROKEN) || !isliving(A))
/obj/machinery/porta_turret/mining_turret/CanPathfindPass(to_dir, datum/can_pass_info/pass_info)
return ((stat & BROKEN) || !pass_info.is_living)
// Meatpackers' ruin turret
/obj/machinery/porta_turret/meatpacker_ship
name = "ship defense turret"
@@ -1040,7 +1040,8 @@
/obj/item/wormhole_jaunter,
/obj/item/storage/bag/plants,
/obj/item/stack/marker_beacon,
/obj/item/grenade/plastic/miningcharge)
/obj/item/grenade/plastic/miningcharge,
/obj/item/grenade/turret/mining)
/obj/item/storage/belt/mining/vendor/Initialize(mapload)
. = ..()
+2
View File
@@ -47,6 +47,7 @@
EQUIPMENT("Fulton Pack", /obj/item/extraction_pack, 1000),
EQUIPMENT("Fulton Beacon", /obj/item/fulton_core, 400),
EQUIPMENT("Jaunter", /obj/item/wormhole_jaunter, 750),
EQUIPMENT("\"Prospector\" Turret Grenade", /obj/item/grenade/turret/mining, 1500),
EQUIPMENT("Chasm Jaunter Recovery Grenade", /obj/item/grenade/jaunter_grenade, 1500),
EQUIPMENT("Lazarus Injector", /obj/item/lazarus_injector, 1000),
EQUIPMENT("Mining Charge", /obj/item/grenade/plastic/miningcharge/lesser, 150),
@@ -394,6 +395,7 @@
EQUIPMENT("First-Aid Kit", /obj/item/storage/firstaid/regular, 400),
EQUIPMENT("Machine Repair Kit", /obj/item/storage/firstaid/machine, 500),
EQUIPMENT("Advanced First-Aid Kit", /obj/item/storage/firstaid/adv, 600),
EQUIPMENT("\"Prospector\" Turret Grenade", /obj/item/grenade/turret/mining, 1500),
EQUIPMENT("Fulton Pack", /obj/item/extraction_pack, 1000),
EQUIPMENT("Fulton Beacon", /obj/item/fulton_core, 400),
EQUIPMENT("Stabilizing Serum", /obj/item/hivelordstabilizer, 400),
@@ -322,6 +322,9 @@
/obj/projectile/kinetic/pod
range = 4
/obj/projectile/kinetic/turret
damage = 30
/obj/projectile/kinetic/pod/regular
damage = 50
pressure_decrease = 0.5