diff --git a/_maps/shuttles/whiteship_miner.dmm b/_maps/shuttles/whiteship_miner.dmm index 665bd327b576..cb48632032b7 100644 --- a/_maps/shuttles/whiteship_miner.dmm +++ b/_maps/shuttles/whiteship_miner.dmm @@ -347,6 +347,7 @@ amount = 10 }, /obj/item/mecha_parts/mecha_equipment/ripleyupgrade, +/obj/item/borg/upgrade/freeminer, /turf/open/floor/mineral/titanium/white, /area/shuttle/abandoned) "bd" = ( diff --git a/code/__DEFINES/access.dm b/code/__DEFINES/access.dm index f946a3301abc..0d5496280633 100644 --- a/code/__DEFINES/access.dm +++ b/code/__DEFINES/access.dm @@ -85,6 +85,7 @@ #define ACCESS_TCOM_ADMIN 70 #define ACCESS_FREEMINER 71 #define ACCESS_FREEMINER_CAPTAIN 72 +#define ACCESS_FREEMINER_ENGINEER 73 //BEGIN CENTCOM ACCESS /*Should leave plenty of room if we need to add more access levels. @@ -144,3 +145,4 @@ #define ACCESS_MECH_SECURITY 302 #define ACCESS_MECH_SCIENCE 303 #define ACCESS_MECH_ENGINE 304 +#define ACCESS_MECH_FREEMINER 310 diff --git a/code/game/mecha/working/ripley.dm b/code/game/mecha/working/ripley.dm index 41728ab0b47e..e91ef04e687a 100644 --- a/code/game/mecha/working/ripley.dm +++ b/code/game/mecha/working/ripley.dm @@ -13,7 +13,7 @@ armor = list("melee" = 40, "bullet" = 20, "laser" = 10, "energy" = 20, "bomb" = 40, "bio" = 0, "rad" = 20, "fire" = 100, "acid" = 100) max_equip = 6 wreckage = /obj/structure/mecha_wreckage/ripley - internals_req_access = list(ACCESS_MECH_ENGINE, ACCESS_MECH_SCIENCE, ACCESS_MECH_MINING) + internals_req_access = list(ACCESS_MECH_ENGINE, ACCESS_MECH_SCIENCE, ACCESS_MECH_MINING, ACCESS_MECH_FREEMINER) var/list/cargo = new var/cargo_capacity = 15 var/hides = 0 diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index 6c788537ac08..607c3a5fd051 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -70,6 +70,15 @@ R.revive() +/obj/item/borg/upgrade/freeminer + name = "free miner cyborg firmware hack" + desc = "Used to override the default firmware of a cyborg with the freeminer version." + icon_state = "cyborg_upgrade2" + one_use = TRUE + +/obj/item/borg/upgrade/freeminer/action(mob/living/silicon/robot/R, user = usr) + R.req_access = list(ACCESS_FREEMINER_ENGINEER) + /obj/item/borg/upgrade/vtec name = "cyborg VTEC module" desc = "Used to kick in a cyborg's VTEC systems, increasing their speed." diff --git a/yogstation/code/datums/ruins/free_miners.dm b/yogstation/code/datums/ruins/free_miners.dm index 5af4cd9d3021..2c8655a6e22f 100644 --- a/yogstation/code/datums/ruins/free_miners.dm +++ b/yogstation/code/datums/ruins/free_miners.dm @@ -93,6 +93,7 @@ r_pocket = null gloves = /obj/item/clothing/gloves/color/yellow belt = /obj/item/storage/belt/utility/full + id = /obj/item/card/id/freeminer/engi /obj/effect/mob_spawn/human/free_miner/captain name = "Free Miner Captain" @@ -117,11 +118,15 @@ /obj/item/card/id/freeminer name = "Free Miner Crewman ID" - access = list(ACCESS_MINERAL_STOREROOM, ACCESS_FREEMINER) + access = list(ACCESS_MINERAL_STOREROOM, ACCESS_FREEMINER, ACCESS_MECH_FREEMINER) + +/obj/item/card/id/freeminer/engi + name = "Free Miner Engineer ID" + access = list(ACCESS_MINERAL_STOREROOM, ACCESS_FREEMINER, ACCESS_MECH_FREEMINER, ACCESS_FREEMINER_ENGINEER) /obj/item/card/id/freeminer/captain name = "Free Miner Ship Pilot ID" - access = list(ACCESS_MINERAL_STOREROOM, ACCESS_FREEMINER, ACCESS_FREEMINER_CAPTAIN) + access = list(ACCESS_MINERAL_STOREROOM, ACCESS_FREEMINER, ACCESS_MECH_FREEMINER, ACCESS_FREEMINER_ENGINEER, ACCESS_FREEMINER_CAPTAIN) /obj/item/storage/box/ids/free_miners name = "box of spare IDs"