initial commit

This commit is contained in:
paprka
2015-02-13 20:59:39 -08:00
parent cf395f7da8
commit 88760896ad
23 changed files with 314 additions and 239 deletions
@@ -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))
+1 -1
View File
@@ -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)
@@ -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
@@ -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"
+10 -2
View File
@@ -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'
@@ -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,
@@ -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"
+11 -1
View File
@@ -118,7 +118,17 @@
else
user << "<span class='warning'>You can't reach, close it first!</span>"
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 << "<span class='notice'>Your jackhammer doesn't have enough power to break through that wall.</span>"
D.update_charge()
return
D.update_charge()
D.playDigSound()
dismantle(user)
/obj/structure/falsewall/proc/dismantle(mob/user)
+20 -8
View File
@@ -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 << "<span class='notice'>You drill through the girder!</span>"
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 << "<span class='notice'>You smash through the girder!</span>"
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 << "<span class='notice'>You drill through the girder!</span>"
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 << "<span class='notice'>Your jackhammer smashes through the girder!</span>"
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))
+12 -9
View File
@@ -54,15 +54,18 @@
"<span class='notice'>You slice apart the [name]!</span>")
Dismantle(1)
else if(istype(W, /obj/item/weapon/pickaxe/drill/diamonddrill))
user.visible_message("<span class='notice'>[user] begins to drill apart the [name]!</span>", \
"<span class='notice'>You begin to drill apart the [name]!</span>")
if(do_after(user,5))
if(!src.loc)
return
user.visible_message("<span class='notice'>[user] destroys the [name]!</span>", \
"<span class='notice'>You destroy the [name]!</span>")
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("<span class='notice'>[user] destroys the [name]!</span>", \
"<span class='notice'>You destroy the [name]!</span>")
D.playDigSound()
qdel(src)
else if(istype(W, /obj/item/weapon/weldingtool) && !anchored)
playsound(loc, 'sound/items/Welder.ogg', 40, 1)
+14 -10
View File
@@ -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 << "<span class='notice'>You begin to drill though the wall.</span>"
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 << "<span class='notice'>Your drill tears though the last of the reinforced plating.</span>"
dismantle_wall()
visible_message("<span class='warning'>The wall was drilled through by [user]!</span>", "<span class='warning'>You hear the grinding of metal.</span>")
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 << "<span class='notice'>Your jackhammer doesn't have enough power to break through that wall.</span>"
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("<span class='warning'>[user] smashes through the wall with [W]!</span>", "<span class='warning'>You hear the grinding of metal.</span>")
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()
+13 -4
View File
@@ -32,13 +32,22 @@
if(istype(W, /obj/item/weapon/melee/energy/blade))
user << "<span class='notice'>This wall is too thick to slice through. You will need to find a different path.</span>"
return 1
else if (istype(W, /obj/item/weapon/pickaxe/drill/diamonddrill))
user << "<span class='notice'>You begin to drill though the wall.</span>"
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 << "<span class='notice'>You begin to smash though the reinforced wall.</span>"
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 << "<span class='notice'>Your drill tears though the last of the reinforced plating.</span>"
if(!D.bcell.use(800))
user << "<span class='notice'>Your jackhammer doesn't have enough power to break through that wall.</span>"
D.update_charge()
return 1
D.update_charge()
D.playDigSound()
user << "<span class='notice'>Your jackhammer smashes though the last of the reinforced plating.</span>"
dismantle_wall()
return 1
else if(istype(W, /obj/item/stack/sheet/metal) && d_state)
+2 -1
View File
@@ -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"
@@ -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."
+24 -21
View File
@@ -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)
+80 -58
View File
@@ -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 << "<span class='notice'>[src] already has a cell.</span>"
else
user.drop_item()
W.loc = src
bcell = W
user << "<span class='notice'>You install a cell in [src].</span>"
update_charge()
else if(istype(W, /obj/item/weapon/screwdriver))
if(bcell)
bcell.updateicon()
bcell.loc = get_turf(src.loc)
bcell = null
user << "<span class='notice'>You remove the cell from [src].</span>"
update_charge()
return
..()
return
/obj/item/weapon/pickaxe/drill/examine(mob/user)
..()
if(bcell)
user <<"<span class='notice'>The [src.name] is [round(bcell.percent())]% charged.</span>"
if(!bcell)
user <<"<span class='warning'>The [src.name] does not have a power source installed.</span>"
/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"
+50 -66
View File
@@ -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 << "<span class='danger'>You don't have the dexterity to do this!</span>"
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 << "<span class='warning'>Your drill ran out of power.</span>"
D.update_charge()
return
D.update_charge()
user << "<span class='notice'>You finish cutting into the rock.</span>"
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;i<mineralAmt;i++)
if (src.mineralName == "Uranium")
if(src.mineralName == "Uranium")
new /obj/item/weapon/ore/uranium(src)
if (src.mineralName == "Iron")
if(src.mineralName == "Iron")
new /obj/item/weapon/ore/iron(src)
if (src.mineralName == "Gold")
if(src.mineralName == "Gold")
new /obj/item/weapon/ore/gold(src)
if (src.mineralName == "Silver")
if(src.mineralName == "Silver")
new /obj/item/weapon/ore/silver(src)
if (src.mineralName == "Plasma")
if(src.mineralName == "Plasma")
new /obj/item/weapon/ore/plasma(src)
if (src.mineralName == "Diamond")
if(src.mineralName == "Diamond")
new /obj/item/weapon/ore/diamond(src)
if (src.mineralName == "Bananium")
if(src.mineralName == "Bananium")
new /obj/item/weapon/ore/bananium(src)
var/turf/simulated/floor/plating/asteroid/airless/N = ChangeTurf(/turf/simulated/floor/plating/asteroid/airless)
playsound(src, 'sound/effects/break_stone.ogg', 50, 1) //beautiful destruction
@@ -443,14 +461,14 @@
/*
/turf/simulated/mineral/proc/setRandomMinerals()
var/s = pickweight(list("uranium" = 5, "iron" = 50, "gold" = 5, "silver" = 5, "plasma" = 50, "diamond" = 1))
if (s)
if(s)
mineralName = s
var/N = text2path("/turf/simulated/mineral/[s]")
if (N)
if(N)
var/turf/simulated/mineral/M = new N
src = M
if (src.mineralName)
if(src.mineralName)
mineralAmt = 5
return*/
@@ -496,7 +514,7 @@
var/proper_name = name
..()
name = proper_name
//if (prob(50))
//if(prob(50))
// seedName = pick(list("1","2","3","4"))
// seedAmt = rand(1,4)
if(prob(20))
@@ -513,7 +531,7 @@
if(3.0)
return
if(2.0)
if (prob(20))
if(prob(20))
src.gets_dug()
if(1.0)
src.gets_dug()
@@ -524,58 +542,24 @@
if(!W || !user)
return 0
if ((istype(W, /obj/item/weapon/shovel)))
if((istype(W, /obj/item/weapon/shovel)))
var/turf/T = user.loc
if (!( istype(T, /turf) ))
if(!( istype(T, /turf) ))
return
if (dug)
if(dug)
user << "<span class='danger'>This area has already been dug.</span>"
return
user << "<span class='danger'>You start digging.</span>"
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 << "<span class='notice'>You dug a hole.</span>"
gets_dug()
return
if ((istype(W,/obj/item/weapon/pickaxe/drill)))
var/turf/T = user.loc
if (!( istype(T, /turf) ))
return
if (dug)
user << "<span class='warning'>This area has already been dug.</span>"
return
user << "<span class='danger'>You start digging.</span>"
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 << "<span class='notice'>You dug a hole.</span>"
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 << "<span class='warning'>This area has already been dug.</span>"
return
user << "<span class='danger'>You start digging.</span>"
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 << "<span class='notice'>You dug a hole.</span>"
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)
@@ -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
//////////////////
@@ -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()
@@ -91,17 +91,12 @@
else
usr << "<span class='notice'>It is spent.</span>"
/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"
+13 -23
View File
@@ -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/////////////////
/////////////////////////////////////////
@@ -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)
Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 64 KiB