diff --git a/code/datums/diseases/advance/symptoms/stimulant.dm b/code/datums/diseases/advance/symptoms/stimulant.dm
index a3c16a4eaca..0f5729e9842 100644
--- a/code/datums/diseases/advance/symptoms/stimulant.dm
+++ b/code/datums/diseases/advance/symptoms/stimulant.dm
@@ -30,7 +30,7 @@ Bonus
var/mob/living/M = A.affected_mob
switch(A.stage)
if(5)
- if (M.reagents.get_reagent_amount("ephedrine") < 30)
+ if (M.reagents.get_reagent_amount("ephedrine") < 10)
M.reagents.add_reagent("ephedrine", 10)
else
if(prob(SYMPTOM_ACTIVATION_PROB * 5))
diff --git a/code/game/asteroid.dm b/code/game/asteroid.dm
index 6e9ac7205b5..994f08d87cb 100644
--- a/code/game/asteroid.dm
+++ b/code/game/asteroid.dm
@@ -89,7 +89,7 @@ proc/make_mining_asteroid_secret()
walltypes = list(/turf/simulated/mineral/random/high_chance=1)
floortypes = list(/turf/simulated/floor/plating/asteroid/airless, /turf/simulated/floor/beach/sand)
treasureitems = list(/obj/mecha/working/ripley/mining=1, /obj/item/weapon/pickaxe/drill/diamonddrill=2,/obj/item/weapon/gun/energy/kinetic_accelerator=1,
- /obj/item/weapon/resonator=1, /obj/item/weapon/pickaxe/jackhammer=5)
+ /obj/item/weapon/resonator=1, /obj/item/weapon/pickaxe/drill/jackhammer=5)
fluffitems = list(/obj/effect/decal/cleanable/blood=3,/obj/effect/decal/remains/human=1,/obj/item/clothing/under/overalls=1,
/obj/item/weapon/reagent_containers/food/snacks/grown/chili=1,/obj/item/weapon/tank/internals/oxygen/red=2)
diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm
index 38b006fbce0..454bbb5c8e8 100644
--- a/code/game/objects/items/devices/flashlight.dm
+++ b/code/game/objects/items/devices/flashlight.dm
@@ -259,6 +259,12 @@ obj/item/device/flashlight/lamp/bananalamp
item_state = "torch"
on_damage = 10
+/obj/item/device/flashlight/lantern
+ name = "lantern"
+ icon_state = "lantern"
+ desc = "A mining lantern."
+ brightness_on = 6 // luminosity when on
+
/obj/item/device/flashlight/slime
gender = PLURAL
diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm
index 86514fd7b29..e22fa305c5d 100644
--- a/code/game/objects/items/robot/robot_upgrades.dm
+++ b/code/game/objects/items/robot/robot_upgrades.dm
@@ -153,6 +153,25 @@
R.module.rebuild()
return 1
+/obj/item/borg/upgrade/ddrill
+ name = "mining cyborg diamond drill"
+ desc = "A diamond drill replacement for the mining module's standard drill."
+ icon_state = "cyborg_upgrade3"
+ require_module = 1
+
+/obj/item/borg/upgrade/ddrill/action(var/mob/living/silicon/robot/R)
+ if(..()) return 0
+
+ if(!istype(R.module, /obj/item/weapon/robot_module/miner))
+ R << "Upgrade mounting error! No suitable hardpoint detected!"
+ usr << "There's no mounting point for the module!"
+ return 0
+ else
+ for(var/obj/item/weapon/pickaxe/drill/cyborg/D in R.module.modules)
+ qdel(D)
+ R.module.modules += new /obj/item/weapon/pickaxe/drill/diamonddrill(src)
+ R.module.rebuild()
+ return 1
/obj/item/borg/upgrade/syndicate/
name = "illegal equipment module"
diff --git a/code/game/objects/items/weapons/clown_items.dm b/code/game/objects/items/weapons/clown_items.dm
index 51872a33139..3baa458a85f 100644
--- a/code/game/objects/items/weapons/clown_items.dm
+++ b/code/game/objects/items/weapons/clown_items.dm
@@ -2,6 +2,7 @@
* Contains:
* Soap
* Bike Horns
+ * Air Horns
*/
/*
@@ -82,16 +83,23 @@
throw_range = 7
attack_verb = list("HONKED")
var/spam_flag = 0
+ var/honksound = 'sound/items/bikehorn.ogg'
/obj/item/weapon/bikehorn/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
- playsound(loc, 'sound/items/bikehorn.ogg', 50, 1, -1) //plays instead of tap.ogg!
+ playsound(loc, honksound, 50, 1, -1) //plays instead of tap.ogg!
return ..()
/obj/item/weapon/bikehorn/attack_self(mob/user as mob)
if(spam_flag == 0)
spam_flag = 1
- playsound(src.loc, 'sound/items/bikehorn.ogg', 50, 1)
+ playsound(src.loc, honksound, 50, 1)
src.add_fingerprint(user)
spawn(20)
spam_flag = 0
return
+
+/obj/item/weapon/bikehorn/airhorn
+ name = "air horn"
+ desc = "Damn son, where'd you find this?"
+ icon_state = "air_horn"
+ honksound = 'sound/items/AirHorn.ogg'
diff --git a/code/game/objects/items/weapons/gift_wrappaper.dm b/code/game/objects/items/weapons/gift_wrappaper.dm
index aff93a5b31e..5c0f7722a70 100644
--- a/code/game/objects/items/weapons/gift_wrappaper.dm
+++ b/code/game/objects/items/weapons/gift_wrappaper.dm
@@ -34,7 +34,7 @@
/obj/item/weapon/storage/backpack/holding,
/obj/item/weapon/storage/belt/champion,
/obj/item/weapon/soap/deluxe,
- /obj/item/weapon/pickaxe/silver,
+ /obj/item/weapon/pickaxe/diamond,
/obj/item/weapon/pen/invisible,
/obj/item/weapon/lipstick/random,
/obj/item/weapon/grenade/smokebomb,
diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm
index 2a26329b210..b31555a50ff 100644
--- a/code/game/objects/items/weapons/storage/boxes.dm
+++ b/code/game/objects/items/weapons/storage/boxes.dm
@@ -138,17 +138,17 @@
new /obj/item/weapon/reagent_containers/hypospray/medipen( src )
/obj/item/weapon/storage/box/medipens/utility
- name = "medipens kit"
- desc = "A box with several utility medipens for the economical miner."
+ name = "stimpack value kit"
+ desc = "A box with several stimpack medipens for the economical miner."
icon_state = "syringe"
/obj/item/weapon/storage/box/medipens/utility/New()
..()
- new /obj/item/weapon/reagent_containers/hypospray/medipen/leporazine( src )
- new /obj/item/weapon/reagent_containers/hypospray/medipen/leporazine( src )
- new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack( src )
- new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack( src )
- new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack( src )
+ new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack(src)
+ new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack(src)
+ new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack(src)
+ new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack(src)
+ new /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack(src)
/obj/item/weapon/storage/box/beakers
name = "box of beakers"
diff --git a/code/game/objects/structures/false_walls.dm b/code/game/objects/structures/false_walls.dm
index 7e25264fb9c..a0fd026a4cf 100644
--- a/code/game/objects/structures/false_walls.dm
+++ b/code/game/objects/structures/false_walls.dm
@@ -118,7 +118,17 @@
else
user << "You can't reach, close it first!"
- if(istype(W, /obj/item/weapon/pickaxe/plasmacutter) || istype(W, /obj/item/weapon/pickaxe/drill/diamonddrill) || istype(W, /obj/item/weapon/melee/energy/blade))
+ if(istype(W, /obj/item/weapon/pickaxe/plasmacutter) || istype(W, /obj/item/weapon/melee/energy/blade))
+ dismantle(user)
+
+ if(istype(W, /obj/item/weapon/pickaxe/drill/jackhammer))
+ var/obj/item/weapon/pickaxe/drill/jackhammer/D = W
+ if(!D.bcell.use(300))
+ user << "Your jackhammer doesn't have enough power to break through that wall."
+ D.update_charge()
+ return
+ D.update_charge()
+ D.playDigSound()
dismantle(user)
/obj/structure/falsewall/proc/dismantle(mob/user)
diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm
index 4768a2941a2..ce1be5ec1f6 100644
--- a/code/game/objects/structures/girders.dm
+++ b/code/game/objects/structures/girders.dm
@@ -39,9 +39,15 @@
new /obj/item/stack/sheet/metal(get_turf(src))
qdel(src)
- else if(istype(W, /obj/item/weapon/pickaxe/drill/diamonddrill))
- user << "You drill through the girder!"
+ else if(istype(W, /obj/item/weapon/pickaxe/drill/jackhammer))
+ var/obj/item/weapon/pickaxe/drill/jackhammer/D = W
+ if(!D.bcell.use(D.drillcost))
+ D.update_charge()
+ return
+ D.update_charge()
+ user << "You smash through the girder!"
new /obj/item/stack/sheet/metal(get_turf(src))
+ D.playDigSound()
qdel(src)
else if(istype(W, /obj/item/weapon/screwdriver) && state == 2 && istype(src,/obj/structure/girder/reinforced))
@@ -273,12 +279,18 @@
transfer_fingerprints_to(R)
qdel(src)
- else if(istype(W, /obj/item/weapon/pickaxe/drill/diamonddrill))
- user << "You drill through the girder!"
- if(do_after(user, 5))
- var/obj/effect/decal/remains/human/R = new (get_turf(src))
- transfer_fingerprints_to(R)
- qdel(src)
+
+ else if(istype(W, /obj/item/weapon/pickaxe/drill/jackhammer))
+ var/obj/item/weapon/pickaxe/drill/jackhammer/D = W
+ if(!D.bcell.use(D.drillcost))
+ D.update_charge()
+ return
+ D.update_charge()
+ user << "Your jackhammer smashes through the girder!"
+ var/obj/effect/decal/remains/human/R = new (get_turf(src))
+ transfer_fingerprints_to(R)
+ D.playDigSound()
+ qdel(src)
/obj/structure/cultgirder/blob_act()
if(prob(40))
diff --git a/code/game/objects/structures/statues.dm b/code/game/objects/structures/statues.dm
index 87b694983c7..e2334ffde6f 100644
--- a/code/game/objects/structures/statues.dm
+++ b/code/game/objects/structures/statues.dm
@@ -54,15 +54,18 @@
"You slice apart the [name]!")
Dismantle(1)
- else if(istype(W, /obj/item/weapon/pickaxe/drill/diamonddrill))
- user.visible_message("[user] begins to drill apart the [name]!", \
- "You begin to drill apart the [name]!")
- if(do_after(user,5))
- if(!src.loc)
- return
- user.visible_message("[user] destroys the [name]!", \
- "You destroy the [name]!")
- qdel(src)
+ else if(istype(W, /obj/item/weapon/pickaxe/drill/jackhammer))
+ var/obj/item/weapon/pickaxe/drill/jackhammer/D = W
+ if(!D.bcell.use(D.drillcost))
+ D.update_charge()
+ return
+ D.update_charge()
+ if(!src.loc)
+ return
+ user.visible_message("[user] destroys the [name]!", \
+ "You destroy the [name]!")
+ D.playDigSound()
+ qdel(src)
else if(istype(W, /obj/item/weapon/weldingtool) && !anchored)
playsound(loc, 'sound/items/Welder.ogg', 40, 1)
diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm
index 96178d35462..e31c001280a 100644
--- a/code/game/turfs/simulated/walls.dm
+++ b/code/game/turfs/simulated/walls.dm
@@ -212,16 +212,20 @@
/turf/simulated/wall/proc/try_destroy(obj/item/weapon/W as obj, mob/user as mob, turf/T as turf)
- if (istype(W, /obj/item/weapon/pickaxe/drill/diamonddrill))
- user << "You begin to drill though the wall."
- if(do_after(user, slicing_duration*0.6)) // diamond drill is faster than welding tool slicing
- if( !istype(src, /turf/simulated/wall) || !user || !W || !T )
- return 1
- if( user.loc == T && user.get_active_hand() == W )
- user << "Your drill tears though the last of the reinforced plating."
- dismantle_wall()
- visible_message("The wall was drilled through by [user]!", "You hear the grinding of metal.")
- return 1
+ if(istype(W, /obj/item/weapon/pickaxe/drill/jackhammer))
+ var/obj/item/weapon/pickaxe/drill/jackhammer/D = W
+ if(!D.bcell.use(400))
+ D.update_charge()
+ user << "Your jackhammer doesn't have enough power to break through that wall."
+ return
+ D.update_charge()
+ if( !istype(src, /turf/simulated/wall) || !user || !W || !T )
+ return 1
+ if( user.loc == T && user.get_active_hand() == W )
+ D.playDigSound()
+ dismantle_wall()
+ visible_message("[user] smashes through the wall with [W]!", "You hear the grinding of metal.")
+ return 1
else if( istype(W, /obj/item/weapon/melee/energy/blade) )
var/obj/item/weapon/melee/energy/blade/EB = W
EB.spark_system.start()
diff --git a/code/game/turfs/simulated/walls_reinforced.dm b/code/game/turfs/simulated/walls_reinforced.dm
index d657f200d19..aeb3c507dfa 100644
--- a/code/game/turfs/simulated/walls_reinforced.dm
+++ b/code/game/turfs/simulated/walls_reinforced.dm
@@ -32,13 +32,22 @@
if(istype(W, /obj/item/weapon/melee/energy/blade))
user << "This wall is too thick to slice through. You will need to find a different path."
return 1
- else if (istype(W, /obj/item/weapon/pickaxe/drill/diamonddrill))
- user << "You begin to drill though the wall."
- if(do_after(user, 200))
+ else if(istype(W, /obj/item/weapon/pickaxe/drill/jackhammer))
+ var/obj/item/weapon/pickaxe/drill/jackhammer/D = W
+ if(!D.powered)
+ return 1
+ user << "You begin to smash though the reinforced wall."
+ if(do_after(user, 50))
if( !istype(src, /turf/simulated/wall/r_wall) || !user || !W || !T )
return 1
if( user.loc == T && user.get_active_hand() == W )
- user << "Your drill tears though the last of the reinforced plating."
+ if(!D.bcell.use(800))
+ user << "Your jackhammer doesn't have enough power to break through that wall."
+ D.update_charge()
+ return 1
+ D.update_charge()
+ D.playDigSound()
+ user << "Your jackhammer smashes though the last of the reinforced plating."
dismantle_wall()
return 1
else if(istype(W, /obj/item/stack/sheet/metal) && d_state)
diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm
index 463ea5426d7..77e6f2ffe24 100644
--- a/code/modules/clothing/spacesuits/hardsuit.dm
+++ b/code/modules/clothing/spacesuits/hardsuit.dm
@@ -94,11 +94,12 @@
//Mining hardsuit
/obj/item/clothing/head/helmet/space/hardsuit/mining
name = "mining hardsuit helmet"
- desc = "A special helmet designed for work in a hazardous, low pressure environment. Has reinforced plating for wildlife encounters."
+ desc = "A special helmet designed for work in a hazardous, low pressure environment. Has reinforced plating for wildlife encounters and dual floodlights."
icon_state = "hardsuit0-mining"
item_state = "mining_helm"
item_color = "mining"
armor = list(melee = 40, bullet = 5, laser = 10, energy = 5, bomb = 50, bio = 100, rad = 50)
+ brightness_on = 7
/obj/item/clothing/suit/space/hardsuit/mining
icon_state = "hardsuit-mining"
diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm
index e610a351aa1..c9ef68af849 100644
--- a/code/modules/clothing/spacesuits/miscellaneous.dm
+++ b/code/modules/clothing/spacesuits/miscellaneous.dm
@@ -126,6 +126,7 @@
armor = list(melee = 65, bullet = 50, laser = 50, energy = 50, bomb = 50, bio = 100, rad = 100)
strip_delay = 130
flags = HEADCOVERSEYES | BLOCKHAIR | HEADCOVERSMOUTH | STOPSPRESSUREDMAGE | THICKMATERIAL
+ brightness_on = 7
/obj/item/clothing/head/helmet/space/hardsuit/ert/sec
desc = "Standard issue security helmet for the ERT."
diff --git a/code/modules/mining/equipment_locker.dm b/code/modules/mining/equipment_locker.dm
index 6f82f8176d9..ffa167b835b 100644
--- a/code/modules/mining/equipment_locker.dm
+++ b/code/modules/mining/equipment_locker.dm
@@ -229,24 +229,24 @@
anchored = 1.0
var/obj/item/weapon/card/id/inserted_id
var/list/prize_list = list(
- new /datum/data/mining_equipment("Stimpack MediPen", /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack, 50),
- new /datum/data/mining_equipment("Leporazine MediPen", /obj/item/weapon/reagent_containers/hypospray/medipen/leporazine, 50),
- new /datum/data/mining_equipment("MediPen Bundle", /obj/item/weapon/storage/box/medipens/utility, 200),
+ new /datum/data/mining_equipment("Stimpack", /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack, 50),
+ new /datum/data/mining_equipment("Stimpack Bundle", /obj/item/weapon/storage/box/medipens/utility, 200),
new /datum/data/mining_equipment("Whiskey", /obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey, 100),
new /datum/data/mining_equipment("Cigar", /obj/item/clothing/mask/cigarette/cigar/havana, 150),
new /datum/data/mining_equipment("Soap", /obj/item/weapon/soap/nanotrasen, 200),
new /datum/data/mining_equipment("Jaunter", /obj/item/device/wormhole_jaunter, 250),
- new /datum/data/mining_equipment("Advanced Scanner", /obj/item/device/t_scanner/adv_mining_scanner, 300),
- new /datum/data/mining_equipment("Laser Pointer", /obj/item/device/laser_pointer, 400),
- new /datum/data/mining_equipment("Alien Toy", /obj/item/clothing/mask/facehugger/toy, 450),
- new /datum/data/mining_equipment("Mining Drone", /mob/living/simple_animal/hostile/mining_drone/, 500),
- new /datum/data/mining_equipment("Resonator", /obj/item/weapon/resonator, 650),
- new /datum/data/mining_equipment("Kinetic Accelerator", /obj/item/weapon/gun/energy/kinetic_accelerator, 650),
- new /datum/data/mining_equipment("Sonic Jackhammer", /obj/item/weapon/pickaxe/jackhammer, 800),
+ new /datum/data/mining_equipment("Laser Pointer", /obj/item/device/laser_pointer, 300),
+ new /datum/data/mining_equipment("Alien Toy", /obj/item/clothing/mask/facehugger/toy, 300),
+ new /datum/data/mining_equipment("Air Horn", /obj/item/weapon/bikehorn/airhorn, 350),
+ new /datum/data/mining_equipment("Advanced Scanner", /obj/item/device/t_scanner/adv_mining_scanner, 400),
+ new /datum/data/mining_equipment("Mining Drone", /mob/living/simple_animal/hostile/mining_drone, 500),
+ new /datum/data/mining_equipment("Kinetic Accelerator", /obj/item/weapon/gun/energy/kinetic_accelerator, 500),
+ new /datum/data/mining_equipment("Resonator", /obj/item/weapon/resonator, 500),
new /datum/data/mining_equipment("Lazarus Injector", /obj/item/weapon/lazarus_injector, 1000),
- new /datum/data/mining_equipment("Jetpack", /obj/item/weapon/tank/jetpack/carbondioxide/mining, 2000),
- new /datum/data/mining_equipment("Space Cash", /obj/item/weapon/spacecash/c1000, 5000),
- new /datum/data/mining_equipment("Point Card", /obj/item/weapon/card/mining_point_card, 500),
+ new /datum/data/mining_equipment("Diamond Pickaxe", /obj/item/weapon/pickaxe/diamond, 1500),
+ new /datum/data/mining_equipment("Jetpack", /obj/item/weapon/tank/jetpack/carbondioxide/mining, 1800),
+ new /datum/data/mining_equipment("Space Cash", /obj/item/weapon/spacecash/c1000, 2000),
+ new /datum/data/mining_equipment("Point Transfer Card", /obj/item/weapon/card/mining_point_card, 500),
)
/datum/data/mining_equipment/
@@ -342,12 +342,15 @@
..()
/obj/machinery/mineral/equipment_vendor/proc/RedeemVoucher(obj/item/weapon/mining_voucher/voucher, mob/redeemer)
- var/selection = input(redeemer, "Pick your equipment", "Mining Voucher Redemption") as null|anything in list("Mining Drill", "Kinetic Accelerator", "Mining Drone", "Advanced Scanner")
+ var/selection = input(redeemer, "Pick your equipment", "Mining Voucher Redemption") as null|anything in list("Mining Drill", "Resonator", "Kinetic Accelerator", "Advanced Scanner")
if(!selection || !Adjacent(redeemer) || voucher.gc_destroyed || voucher.loc != redeemer)
return
switch(selection)
if("Mining Drill")
new /obj/item/weapon/pickaxe/drill(src.loc)
+ new /obj/item/weapon/stock_parts/cell/high(src.loc)
+ if("Resonator")
+ new /obj/item/weapon/resonator(src.loc)
if("Kinetic Accelerator")
new /obj/item/weapon/gun/energy/kinetic_accelerator(src.loc)
if("Mining Drone")
@@ -378,7 +381,7 @@
/**********************Mining Point Card**********************/
/obj/item/weapon/card/mining_point_card
- name = "mining point card"
+ name = "mining points card"
desc = "A small card preloaded with mining points. Swipe your ID card over it to transfer the points, then discard."
icon_state = "data"
var/points = 500
@@ -468,7 +471,7 @@
item_state = "resonator"
desc = "A handheld device that creates small fields of energy that resonate until they detonate, crushing rock. It can also be activated without a target to create a field at the user's location, to act as a delayed time trap. It's more effective in a vacuum."
w_class = 3
- force = 10
+ force = 15
throwforce = 10
var/cooldown = 0
@@ -504,16 +507,16 @@
return
if(istype(proj_turf, /turf/simulated/mineral))
var/turf/simulated/mineral/M = proj_turf
- playsound(src,'sound/weapons/resonator_blast.ogg',50,1)
- M.gets_drilled(creator)
- spawn(5)
+ spawn(50)
+ playsound(src,'sound/weapons/resonator_blast.ogg',50,1)
+ M.gets_drilled(creator)
qdel(src)
else
var/datum/gas_mixture/environment = proj_turf.return_air()
var/pressure = environment.return_pressure()
if(pressure < 50)
name = "strong resonance field"
- resonance_damage = 45
+ resonance_damage = 50
spawn(50)
playsound(src,'sound/weapons/resonator_blast.ogg',50,1)
if(creator)
@@ -788,7 +791,7 @@
/obj/item/device/t_scanner/adv_mining_scanner/scan()
if(!cooldown)
cooldown = 1
- spawn(80)
+ spawn(60)
cooldown = 0
var/turf/t = get_turf(src)
var/list/mobs = recursive_mob_check(t, 1,0,0)
diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm
index 917f30a33b3..b04ec323d3c 100644
--- a/code/modules/mining/mine_items.dm
+++ b/code/modules/mining/mine_items.dm
@@ -31,7 +31,6 @@
new /obj/item/clothing/shoes/sneakers/black(src)
new /obj/item/device/mining_scanner(src)
new /obj/item/weapon/storage/bag/ore(src)
- new /obj/item/device/flashlight/lantern(src)
new /obj/item/weapon/shovel(src)
new /obj/item/weapon/pickaxe(src)
new /obj/item/clothing/glasses/meson(src)
@@ -39,7 +38,6 @@
/**********************Shuttle Computer**************************/
-
/obj/machinery/computer/shuttle/mining
name = "Mining Shuttle Console"
desc = "Used to call and send the mining shuttle."
@@ -48,15 +46,7 @@
shuttleId = "mining"
possible_destinations = "mining_home;mining_away"
-/******************************Lantern*******************************/
-
-/obj/item/device/flashlight/lantern
- name = "lantern"
- icon_state = "lantern"
- desc = "A mining lantern."
- brightness_on = 6 // luminosity when on
-
-/*****************************Pickaxe********************************/
+/*********************Pickaxe & Drills**************************/
/obj/item/weapon/pickaxe
name = "pickaxe"
@@ -64,89 +54,125 @@
icon_state = "pickaxe"
flags = CONDUCT
slot_flags = SLOT_BELT
- force = 15.0
+ force = 15
throwforce = 10.0
item_state = "pickaxe"
w_class = 4.0
m_amt = 3750 //one sheet, but where can you make them?
- var/digspeed = 40 //moving the delay to an item var so R&D can make improved picks. --NEO
+ var/digspeed = 40
var/list/digsound = list('sound/effects/picaxe1.ogg','sound/effects/picaxe2.ogg','sound/effects/picaxe3.ogg')
origin_tech = "materials=1;engineering=1"
attack_verb = list("hit", "pierced", "sliced", "attacked")
+ var/powered = 1 //used to check for drill charge when mining
/obj/item/weapon/pickaxe/proc/playDigSound()
playsound(src, pick(digsound),20,1)
-/obj/item/weapon/pickaxe/silver
- name = "silver pickaxe"
- icon_state = "spickaxe"
- item_state = "spickaxe"
- digspeed = 30
- origin_tech = "materials=3"
- desc = "This makes no metallurgic sense."
+/obj/item/weapon/pickaxe/diamond
+ name = "diamond-tipped pickaxe"
+ icon_state = "dpickaxe"
+ item_state = "dpickaxe"
+ digspeed = 20 //mines twice as fast as a normal pickaxe, bought from mining vendor
+ origin_tech = "materials=4;engineering=3"
+ desc = "A pickaxe with a diamond pick head. Extremely robust at cracking rock walls and digging up dirt."
/obj/item/weapon/pickaxe/drill
- name = "mining drill" // Can dig sand as well!
+ name = "mining drill"
icon_state = "handdrill"
item_state = "jackhammer"
- digspeed = 30
+ digspeed = 25 //available from roundstart, faster than a pickaxe but needs recharging or cell replacements
digsound = list('sound/weapons/drill.ogg')
hitsound = 'sound/weapons/drill.ogg'
origin_tech = "materials=2;powerstorage=3;engineering=2"
- desc = "Yours is the drill that will pierce through the rock walls."
+ desc = "An electric mining drill for the especially scrawny."
+ var/drillcost = 125
+ var/obj/item/weapon/stock_parts/cell/high/bcell = null
+ powered = 0
-/obj/item/weapon/pickaxe/drill/diamonddrill //When people ask about the badass leader of the mining tools, they are talking about ME! making it a child of drill to stop copypasta
- name = "diamond mining drill"
+/obj/item/weapon/pickaxe/drill/New() //this one starts with a cell pre-installed.
+ ..()
+ bcell = new(src)
+ update_charge()
+ return
+
+/obj/item/weapon/pickaxe/drill/proc/update_charge()
+ if(bcell && bcell.charge >= drillcost)
+ powered = 1
+ else
+ powered = 0
+ update_icon()
+
+/obj/item/weapon/pickaxe/drill/update_icon()
+ if(!bcell)
+ icon_state = "[initial(icon_state)]-nocell"
+ else if(bcell.charge < drillcost)
+ icon_state = "[initial(icon_state)]-empty"
+ else
+ icon_state = "[initial(icon_state)]"
+
+/obj/item/weapon/pickaxe/drill/attackby(obj/item/weapon/W, mob/user)
+ if(istype(W, /obj/item/weapon/stock_parts/cell))
+ if(bcell)
+ user << "[src] already has a cell."
+ else
+ user.drop_item()
+ W.loc = src
+ bcell = W
+ user << "You install a cell in [src]."
+ update_charge()
+ else if(istype(W, /obj/item/weapon/screwdriver))
+ if(bcell)
+ bcell.updateicon()
+ bcell.loc = get_turf(src.loc)
+ bcell = null
+ user << "You remove the cell from [src]."
+ update_charge()
+ return
+ ..()
+ return
+
+/obj/item/weapon/pickaxe/drill/examine(mob/user)
+ ..()
+ if(bcell)
+ user <<"The [src.name] is [round(bcell.percent())]% charged."
+ if(!bcell)
+ user <<"The [src.name] does not have a power source installed."
+
+/obj/item/weapon/pickaxe/drill/cyborg
+ name = "cyborg mining drill"
+
+/obj/item/weapon/pickaxe/drill/diamonddrill
+ name = "diamond-tipped mining drill"
icon_state = "diamonddrill"
- digspeed = 5 //Digs through walls, girders, and can dig up sand
+ digspeed = 10
origin_tech = "materials=6;powerstorage=4;engineering=5"
desc = "Yours is the drill that will pierce the heavens!"
+ drillcost = 150
-/obj/item/weapon/pickaxe/jackhammer
+/obj/item/weapon/pickaxe/drill/jackhammer
name = "sonic jackhammer"
icon_state = "jackhammer"
item_state = "jackhammer"
- digspeed = 15 //faster than drill, but cannot dig
+ digspeed = 5 //the epitome of powertools. high power consumption, extremely fast mining, laughs at puny walls
origin_tech = "materials=3;powerstorage=2;engineering=2"
digsound = list('sound/weapons/sonic_jackhammer.ogg')
hitsound = 'sound/weapons/sonic_jackhammer.ogg'
- desc = "Cracks rocks with sonic blasts, perfect for clearing large areas of rock."
-
-/obj/item/weapon/pickaxe/jackhammer/borgdrill // making it a parrent of jackhammer to prevent copypasta
- name = "cyborg mining drill"
- desc = ""
-
-/obj/item/weapon/pickaxe/gold
- name = "golden pickaxe"
- icon_state = "gpickaxe"
- item_state = "gpickaxe"
- digspeed = 20
- origin_tech = "materials=4"
- desc = "This makes no metallurgic sense."
+ desc = "Cracks rocks with sonic blasts, and doubles as a demolition power tool for smashing walls.."
+ drillcost = 200
/obj/item/weapon/pickaxe/plasmacutter
name = "plasma cutter"
icon_state = "plasmacutter"
item_state = "gun"
- w_class = 3.0 //it is smaller than the pickaxe
+ w_class = 3 //it is smaller than the pickaxe
damtype = "fire"
- digspeed = 20 //Can slice though normal walls, all girders, or be used in reinforced wall deconstruction/ light thermite on fire
+ throwforce = 8
+ digspeed = 30 //Mines slightly faster than a normal pickaxe, but doubles as an unlimited-ammo welding tool.
digsound = list('sound/weapons/plasma_cutter.ogg')
hitsound = 'sound/weapons/plasma_cutter.ogg'
origin_tech = "materials=4;plasmatech=3;engineering=3"
desc = "A rock cutter that uses bursts of hot plasma. You could use it to cut limbs off of xenos! Or, you know, mine stuff."
-/obj/item/weapon/pickaxe/diamond
- name = "diamond pickaxe"
- icon_state = "dpickaxe"
- item_state = "dpickaxe"
- digspeed = 10
- origin_tech = "materials=6;engineering=4"
- desc = "A pickaxe with a diamond pick head, this is just like minecraft."
-
-
-
-
/*****************************Shovel********************************/
@@ -185,7 +211,3 @@
density = 1
icon_opened = "miningcaropen"
icon_closed = "miningcar"
-
-
-
-
diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm
index b9f0a945e3c..1bebab91a97 100644
--- a/code/modules/mining/mine_turfs.dm
+++ b/code/modules/mining/mine_turfs.dm
@@ -22,10 +22,10 @@
..()
switch(severity)
if(3.0)
- if (prob(75))
+ if(prob(75))
src.gets_drilled(null, 1)
if(2.0)
- if (prob(90))
+ if(prob(90))
src.gets_drilled(null, 1)
if(1.0)
src.gets_drilled(null, 1)
@@ -37,22 +37,22 @@
var/turf/T
if((istype(get_step(src, NORTH), /turf/simulated/floor)) || (istype(get_step(src, NORTH), /turf/space)) || (istype(get_step(src, NORTH), /turf/simulated/shuttle/floor)))
T = get_step(src, NORTH)
- if (T)
+ if(T)
T.overlays += image('icons/turf/walls.dmi', "rock_side_s")
if((istype(get_step(src, SOUTH), /turf/simulated/floor)) || (istype(get_step(src, SOUTH), /turf/space)) || (istype(get_step(src, SOUTH), /turf/simulated/shuttle/floor)))
T = get_step(src, SOUTH)
- if (T)
+ if(T)
T.overlays += image('icons/turf/walls.dmi', "rock_side_n", layer=6)
if((istype(get_step(src, EAST), /turf/simulated/floor)) || (istype(get_step(src, EAST), /turf/space)) || (istype(get_step(src, EAST), /turf/simulated/shuttle/floor)))
T = get_step(src, EAST)
- if (T)
+ if(T)
T.overlays += image('icons/turf/walls.dmi', "rock_side_w", layer=6)
if((istype(get_step(src, WEST), /turf/simulated/floor)) || (istype(get_step(src, WEST), /turf/space)) || (istype(get_step(src, WEST), /turf/simulated/shuttle/floor)))
T = get_step(src, WEST)
- if (T)
+ if(T)
T.overlays += image('icons/turf/walls.dmi', "rock_side_e", layer=6)
- if (mineralName && mineralAmt && spread && spreadChance)
+ if(mineralName && mineralAmt && spread && spreadChance)
for(var/dir in cardinal)
if(prob(spreadChance))
var/turf/T = get_step(src, dir)
@@ -78,10 +78,10 @@
/turf/simulated/mineral/random/New()
..()
- if (prob(mineralChance))
+ if(prob(mineralChance))
var/mName = pickweight(mineralSpawnChanceList) //temp mineral name
- if (mName)
+ if(mName)
var/turf/simulated/mineral/M
switch(mName)
if("Uranium")
@@ -383,18 +383,22 @@
/turf/simulated/mineral/attackby(var/obj/item/weapon/pickaxe/P as obj, mob/user as mob)
- if (!user.IsAdvancedToolUser())
+ if(!user.IsAdvancedToolUser())
usr << "You don't have the dexterity to do this!"
return
- if (istype(P, /obj/item/weapon/pickaxe))
+ if(istype(P, /obj/item/weapon/pickaxe))
var/turf/T = user.loc
- if (!( istype(T, /turf) ))
+ if(!( istype(T, /turf) ))
return
+
+ if(!P.powered)
+ return
+
/*
- if (istype(W, /obj/item/weapon/pickaxe/radius))
+ if(istype(W, /obj/item/weapon/pickaxe/radius))
var/turf/T = user.loc
- if (!( istype(T, /turf) ))
+ if(!( istype(T, /turf) ))
return
*/
//Watch your tabbing, microwave. --NEO
@@ -406,6 +410,20 @@
P.playDigSound()
if(do_after(user,P.digspeed))
+ if(istype(P, /obj/item/weapon/pickaxe/drill))
+ var/obj/item/weapon/pickaxe/drill/D = P
+ if(isrobot(user))
+ var/mob/living/silicon/robot/R = user
+ if(R && R.cell)
+ if(!R.cell.use(D.drillcost))
+ D.update_charge()
+ return
+ else
+ if(!D.bcell.use(D.drillcost))
+ user << "Your drill ran out of power."
+ D.update_charge()
+ return
+ D.update_charge()
user << "You finish cutting into the rock."
gets_drilled(user)
else
@@ -413,22 +431,22 @@
return
/turf/simulated/mineral/proc/gets_drilled()
- if ((src.mineralName != "") && (src.mineralAmt > 0) && (src.mineralAmt < 11))
+ if((src.mineralName != "") && (src.mineralAmt > 0) && (src.mineralAmt < 11))
var/i
for (i=0;iThis area has already been dug."
return
user << "You start digging."
playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) //FUCK YO RUSTLE I GOT'S THE DIGS SOUND HERE
- sleep(40)
- if ((user.loc == T && user.get_active_hand() == W))
+ sleep(15)
+ if((user.loc == T && user.get_active_hand() == W))
user << "You dug a hole."
gets_dug()
return
- if ((istype(W,/obj/item/weapon/pickaxe/drill)))
- var/turf/T = user.loc
- if (!( istype(T, /turf) ))
- return
-
- if (dug)
- user << "This area has already been dug."
- return
-
- user << "You start digging."
- playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) //FUCK YO RUSTLE I GOT'S THE DIGS SOUND HERE
-
- sleep(30)
- if ((user.loc == T && user.get_active_hand() == W))
- user << "You dug a hole."
- gets_dug()
-
- if ((istype(W,/obj/item/weapon/pickaxe/drill/diamonddrill)) || (istype(W,/obj/item/weapon/pickaxe/jackhammer/borgdrill)))
- var/turf/T = user.loc
- if (!( istype(T, /turf) ))
- return
-
- if (dug)
- user << "This area has already been dug."
- return
-
- user << "You start digging."
- playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) //FUCK YO RUSTLE I GOT'S THE DIGS SOUND HERE
-
- sleep(0)
- if ((user.loc == T && user.get_active_hand() == W))
- user << "You dug a hole."
- gets_dug()
-
if(istype(W,/obj/item/weapon/storage/bag/ore))
var/obj/item/weapon/storage/bag/ore/S = W
if(S.collection_mode == 1)
diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm
index 20fb3cb23ab..9d073d4fe8a 100644
--- a/code/modules/mob/living/carbon/human/species.dm
+++ b/code/modules/mob/living/carbon/human/species.dm
@@ -668,8 +668,6 @@
/datum/species/proc/movement_delay(var/mob/living/carbon/human/H)
var/mspeed = 0
- if(H.status_flags & GOTTAGOFAST)
- mspeed -= 1
var/hasjetpack = 0
if(istype(H.back, /obj/item/weapon/tank/jetpack))
@@ -703,6 +701,9 @@
mspeed += speedmod
+ if(H.status_flags & GOTTAGOFAST)
+ mspeed = 0
+
return mspeed
//////////////////
diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm
index 5458b66ba5f..1c2cdff1c0c 100644
--- a/code/modules/mob/living/silicon/robot/robot_modules.dm
+++ b/code/modules/mob/living/silicon/robot/robot_modules.dm
@@ -219,14 +219,11 @@
/obj/item/weapon/robot_module/miner/New()
..()
- var/mob/living/silicon/robot/R = loc
modules += new /obj/item/borg/sight/meson(src)
emag = new /obj/item/borg/stun(src)
modules += new /obj/item/weapon/storage/bag/ore(src)
- if(R.emagged)
- modules += new /obj/item/weapon/pickaxe/drill/diamonddrill(src)
- else
- modules += new /obj/item/weapon/pickaxe/jackhammer/borgdrill(src)
+ modules += new /obj/item/weapon/pickaxe/drill/cyborg(src)
+ modules += new /obj/item/weapon/shovel(src)
modules += new /obj/item/device/flashlight/lantern(src)
modules += new /obj/item/weapon/storage/bag/sheetsnatcher/borg(src)
modules += new /obj/item/device/t_scanner/adv_mining_scanner(src)
@@ -235,7 +232,7 @@
/obj/item/weapon/robot_module/miner/on_emag()
..()
- for(var/obj/item/weapon/pickaxe/jackhammer/borgdrill/D in modules)
+ for(var/obj/item/weapon/pickaxe/drill/cyborg/D in modules)
qdel(D)
modules += new /obj/item/weapon/pickaxe/drill/diamonddrill(src)
rebuild()
diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm
index 8a0afbfe290..23a60af6e1b 100644
--- a/code/modules/reagents/reagent_containers/hypospray.dm
+++ b/code/modules/reagents/reagent_containers/hypospray.dm
@@ -91,17 +91,12 @@
else
usr << "It is spent."
-/obj/item/weapon/reagent_containers/hypospray/medipen/leporazine //basilisks
- name = "leporazine medipen"
- desc = "A rapid way to regulate your body's temperature in the event of a hardsuit malfunction at the cost of some shortness of breath."
- icon_state = "lepopen"
- list_reagents = list("leporazine" = 9, "lexorin" = 1)
-
/obj/item/weapon/reagent_containers/hypospray/medipen/stimpack //goliath kiting
- name = "ephedrine medipen"
- desc = "A rapid way to stimulate your body's adrenaline, allowing for freer movement in restrictive armor at the cost of some shortness of breath."
+ name = "stimpack medipen"
+ desc = "A rapid way to stimulate your body's adrenaline, allowing for freer movement in restrictive armor as well as a ."
icon_state = "stimpen"
- list_reagents = list("ephedrine" = 9, "lexorin" = 1)
+ volume = 20
+ list_reagents = list("ephedrine" = 10, "coffee" = 10)
/obj/item/weapon/reagent_containers/hypospray/medipen/morphine
name = "morphine medipen"
diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm
index 50aaac4afb1..67bb730f7fb 100644
--- a/code/modules/research/designs.dm
+++ b/code/modules/research/designs.dm
@@ -126,16 +126,6 @@ datum/design/proc/CalcReliability(var/list/temp_techs)
/////////////////Mining//////////////////
/////////////////////////////////////////
-/datum/design/jackhammer
- name = "Sonic Jackhammer"
- desc = "Cracks rocks with sonic blasts, perfect for killing cave lizards."
- id = "jackhammer"
- req_tech = list("materials" = 3, "powerstorage" = 2, "engineering" = 2)
- build_type = PROTOLATHE
- materials = list("$metal" = 2000, "$glass" = 500, "$silver" = 500)
- build_path = /obj/item/weapon/pickaxe/jackhammer
- category = list("Mining Designs")
-
/datum/design/drill
name = "Mining Drill"
desc = "Yours is the drill that will pierce through the rock walls."
@@ -152,32 +142,32 @@ datum/design/proc/CalcReliability(var/list/temp_techs)
id = "plasmacutter"
req_tech = list("materials" = 4, "plasmatech" = 3, "engineering" = 3)
build_type = PROTOLATHE
- materials = list("$metal" = 1500, "$glass" = 500, "$gold" = 500, "$plasma" = 500)
+ materials = list("$metal" = 5000, "$glass" = 1000, "$gold" = 500, "$plasma" = 500)
reliability = 79
build_path = /obj/item/weapon/pickaxe/plasmacutter
category = list("Mining Designs")
-/datum/design/pick_diamond
- name = "Diamond Pickaxe"
- desc = "A pickaxe with a diamond pick head, this is just like minesim 2554!."
- id = "pick_diamond"
- req_tech = list("materials" = 6)
- build_type = PROTOLATHE
- materials = list("$diamond" = 3000)
- build_path = /obj/item/weapon/pickaxe/diamond
- category = list("Mining Designs")
-
/datum/design/drill_diamond
- name = "Diamond Mining Drill"
+ name = "Diamond-Tipped Mining Drill"
desc = "Yours is the drill that will pierce the heavens!"
id = "drill_diamond"
req_tech = list("materials" = 6, "powerstorage" = 4, "engineering" = 4)
build_type = PROTOLATHE
- materials = list("$metal" = 3000, "$glass" = 1000, "$diamond" = 3750) //Yes, a whole diamond is needed.
+ materials = list("$metal" = 6000, "$glass" = 1000, "$diamond" = 3750) //Yes, a whole diamond is needed.
reliability = 79
build_path = /obj/item/weapon/pickaxe/drill/diamonddrill
category = list("Mining Designs")
+/datum/design/jackhammer
+ name = "Sonic Jackhammer"
+ desc = "Essentially a handheld planet-cracker. Can drill through walls with ease as well, but has high power cost for doing so."
+ id = "jackhammer"
+ req_tech = list("materials" = 6, "powerstorage" = 6, "engineering" = 5, "magnets" = 6)
+ build_type = PROTOLATHE
+ materials = list("$metal" = 8000, "$glass" = 1500, "$silver" = 2000, "$diamond" = 6000)
+ build_path = /obj/item/weapon/pickaxe/drill/jackhammer
+ category = list("Mining Designs")
+
/////////////////////////////////////////
//////////////Blue Space/////////////////
/////////////////////////////////////////
diff --git a/code/modules/research/designs/mechfabricator_designs.dm b/code/modules/research/designs/mechfabricator_designs.dm
index e8e53971da7..d71c753df2a 100644
--- a/code/modules/research/designs/mechfabricator_designs.dm
+++ b/code/modules/research/designs/mechfabricator_designs.dm
@@ -599,7 +599,7 @@
/////////////////////////////////////////
/datum/design/borg_upgrade_reset
- name = "Cyborg Upgrade Module (Reset Module)"
+ name = "Cyborg Upgrade (Reset Module)"
id = "borg_upgrade_reset"
build_type = MECHFAB
build_path = /obj/item/borg/upgrade/reset
@@ -608,7 +608,7 @@
category = list("Cyborg Upgrade Modules")
/datum/design/borg_upgrade_rename
- name = "Cyborg Upgrade Module (Rename Module)"
+ name = "Cyborg Upgrade (Rename Module)"
id = "borg_upgrade_rename"
build_type = MECHFAB
build_path = /obj/item/borg/upgrade/rename
@@ -617,7 +617,7 @@
category = list("Cyborg Upgrade Modules")
/datum/design/borg_upgrade_restart
- name = "Cyborg Upgrade Module (Restart Module)"
+ name = "Cyborg Upgrade (Restart Module)"
id = "borg_upgrade_restart"
build_type = MECHFAB
build_path = /obj/item/borg/upgrade/restart
@@ -626,7 +626,7 @@
category = list("Cyborg Upgrade Modules")
/datum/design/borg_upgrade_vtec
- name = "Cyborg Upgrade Module (VTEC Module)"
+ name = "Cyborg Upgrade (VTEC Module)"
id = "borg_upgrade_vtec"
build_type = MECHFAB
build_path = /obj/item/borg/upgrade/vtec
@@ -636,7 +636,7 @@
category = list("Cyborg Upgrade Modules")
/datum/design/borg_upgrade_disablercooler
- name = "Cyborg Upgrade Module (Rapid Disabler Cooling Module)"
+ name = "Cyborg Upgrade (Rapid Disabler Cooling Module)"
id = "borg_upgrade_disablercooler"
build_type = MECHFAB
build_path = /obj/item/borg/upgrade/disablercooler
@@ -646,18 +646,28 @@
category = list("Cyborg Upgrade Modules")
/datum/design/borg_upgrade_jetpack
- name = "Cyborg Upgrade Module (Mining Jetpack)"
+ name = "Cyborg Upgrade (Mining Jetpack)"
id = "borg_upgrade_jetpack"
build_type = MECHFAB
build_path = /obj/item/borg/upgrade/jetpack
req_tech = list("engineering" = 4, "power" = 4)
- materials = list("$metal"=10000,"$plasma"=12000,"$uranium" = 10000)
+ materials = list("$metal"=10000, "$plasma"=5000, "$uranium" = 6000)
+ construction_time = 120
+ category = list("Cyborg Upgrade Modules")
+
+/datum/design/borg_upgrade_diamonddrill
+ name = "Cyborg Upgrade (Diamond Drill)"
+ id = "borg_upgrade_diamonddrill"
+ build_type = MECHFAB
+ build_path = /obj/item/borg/upgrade/ddrill
+ req_tech = list("engineering" = 5, "materials" = 5)
+ materials = list("$metal"=10000, "$diamond"=8000)
construction_time = 120
category = list("Cyborg Upgrade Modules")
/datum/design/borg_syndicate_module
- name = "Borg Illegal Weapons Upgrade"
- desc = "Allows for the construction of illegal upgrades for cyborgs"
+ name = "Cyborg Illegal Upgrades Module"
+ desc = "Allows for the construction of restricted upgrades for cyborgs"
id = "borg_syndicate_module"
build_type = MECHFAB
req_tech = list("combat" = 4, "syndicate" = 3)
diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi
index dbb4e8b1265..f4332bfb6c8 100644
Binary files a/icons/obj/items.dmi and b/icons/obj/items.dmi differ