diff --git a/code/WorkInProgress/mining.dm b/code/WorkInProgress/mining.dm index a962cc1daa4..be6a8a5ba2c 100644 --- a/code/WorkInProgress/mining.dm +++ b/code/WorkInProgress/mining.dm @@ -12,10 +12,7 @@ /area/mine/lobby name = "Mining station" - requires_power = 0 - luminosity = 1 icon_state = "mine" - sd_lighting = 0 /**********************Mineral deposits**************************/ @@ -32,6 +29,20 @@ var/spread = 0 //will the seam spread? var/spreadChance = 0 //the percentual chance of an ore spreading to the neighbouring tiles + +/turf/simulated/mineral/ex_act(severity) + switch(severity) + if(3.0) + return + if(2.0) + if (prob(70)) + src.mineralAmt -= 1 //some of the stuff gets blown up + src.gets_drilled() + if(1.0) + src.mineralAmt -= 2 //some of the stuff gets blown up + src.gets_drilled() + return + /turf/simulated/mineral/New() desc = "0" if (mineralName && mineralAmt && spread && spreadChance) @@ -263,6 +274,9 @@ spawn(2) updateMineralOverlays() +/turf/simulated/floor/airless/asteroid/ex_act(severity) + return + /turf/simulated/floor/airless/asteroid/attackby(obj/item/weapon/W as obj, mob/user as mob) if (!(istype(usr, /mob/living/carbon/human) || ticker) && ticker.mode.name != "monkey") usr << "\red You don't have the dexterity to do this!" @@ -1211,6 +1225,11 @@ var/obj/machinery/mineral/output = null var/amt_silver = 0 //amount of silver var/amt_gold = 0 //amount of gold + var/amt_diamond = 0 + var/amt_iron = 0 + var/amt_plasma = 0 + var/amt_uranium = 0 + var/amt_clown = 0 var/newCoins = 0 //how many coins the machine made in it's last load var/processing = 0 @@ -1228,12 +1247,28 @@ if (src.output && src.input) var/obj/item/stack/sheet/O O = locate(/obj/item/stack/sheet, input.loc) - if (istype(O,/obj/item/stack/sheet/gold)) - amt_gold += 100 - del(O) - if (istype(O,/obj/item/stack/sheet/silver)) - amt_silver += 100 - del(O) + if(O) + if (istype(O,/obj/item/stack/sheet/gold)) + amt_gold += 100 + del(O) + if (istype(O,/obj/item/stack/sheet/silver)) + amt_silver += 100 + del(O) + if (istype(O,/obj/item/stack/sheet/diamond)) + amt_diamond += 100 + del(O) + if (istype(O,/obj/item/stack/sheet/plasma)) + amt_plasma += 100 + del(O) + if (istype(O,/obj/item/weapon/ore/uranium)) + amt_uranium += 100 + del(O) + if (istype(O,/obj/item/stack/sheet/metal)) + amt_iron += 100 + del(O) + if (istype(O,/obj/item/stack/sheet/clown)) + amt_clown += 100 + del(O) /obj/machinery/mineral/mint/attack_hand(user as mob) @@ -1252,6 +1287,11 @@ dat += text("

Gold inserterd: [amt_gold]") dat += text("

Silver inserterd: [amt_silver]") + dat += text("

Iron inserterd: [amt_iron]") + dat += text("

Diamond inserterd: [amt_diamond]") + dat += text("

Plasma inserterd: [amt_plasma]") + dat += text("

Uranium inserterd: [amt_uranium]") + dat += text("

Bananium inserterd: [amt_clown]") dat += text("

Make coins") dat += text("

found: [newCoins]") @@ -1279,6 +1319,37 @@ newCoins++ src.updateUsrDialog() sleep(5); + while(amt_diamond > 0) + new /obj/item/weapon/coin/diamond(output.loc) + amt_diamond -= 20 + newCoins++ + src.updateUsrDialog() + sleep(5); + while(amt_iron > 0) + new /obj/item/weapon/coin/iron(output.loc) + amt_iron -= 20 + newCoins++ + src.updateUsrDialog() + sleep(5); + while(amt_plasma > 0) + new /obj/item/weapon/coin/plasma(output.loc) + amt_plasma -= 20 + newCoins++ + src.updateUsrDialog() + sleep(5); + while(amt_uranium > 0) + new /obj/item/weapon/coin/uranium(output.loc) + amt_uranium -= 20 + newCoins++ + src.updateUsrDialog() + sleep(5); + while(amt_clown > 0) + new /obj/item/weapon/coin/clown(output.loc) + amt_clown -= 20 + newCoins++ + src.updateUsrDialog() + sleep(5); + processing = 0; src.updateUsrDialog() return @@ -1308,6 +1379,26 @@ name = "Silver coin" icon_state = "coin_silver" +/obj/item/weapon/coin/diamond + name = "Diamond coin" + icon_state = "coin_diamond" + +/obj/item/weapon/coin/iron + name = "Iron coin" + icon_state = "coin_iron" + +/obj/item/weapon/coin/plasma + name = "Solid plasma coin" + icon_state = "coin_plasma" + +/obj/item/weapon/coin/uranium + name = "Uranium coin" + icon_state = "coin_uranium" + +/obj/item/weapon/coin/clown + name = "Bananaium coin" + icon_state = "coin_clown" + /**********************Gas extractor**************************/ @@ -1512,6 +1603,7 @@ icon_state = "rail" dir = 2 var/id = null //this is needed for switches to work Set to the same on the whole length of the track + anchored = 1 /**********************Rail intersection**************************/ @@ -2007,12 +2099,12 @@ for (var/client/C) dat += text("


Scrap current shuttle") else dat += text("Available ships to build:

") - dat += text("Planet hopper - Tiny, Slow
") - dat += text("Blunder Bus - Small, Decent speed
") - dat += text("Space dinghy - Medium size, Decent speed
") - dat += text("Boxvan MMDLVIr - Medium size, Decent speed
") - dat += text("Boxvan MMDLVI - Security eidition - Large, Rather slow
") - dat += text("Space station 4 - Huge, Slow
") + dat += text("Planet hopper - Tiny, Slow, 25000 metal
") + dat += text("Blunder Bus - Small, Decent speed, 60000 metal
") + dat += text("Space dinghy - Medium size, Decent speed, 100000 metal
") + dat += text("Boxvan MMDLVIr - Medium size, Decent speed, 120000 metal
") + dat += text("Boxvan MMDLVI - Security eidition - Large, Rather slow, 125000 metal
") + dat += text("Space station 4 - Huge, Slow, 250000 metal
") user << browse("[dat]", "window=shipbuilder") diff --git a/icons/obj/mining.dmi b/icons/obj/mining.dmi index 10572a23fe3..3d8d571f78b 100644 Binary files a/icons/obj/mining.dmi and b/icons/obj/mining.dmi differ diff --git a/icons/turf/floors.dmi b/icons/turf/floors.dmi index d334401862e..33c9e1b105f 100644 Binary files a/icons/turf/floors.dmi and b/icons/turf/floors.dmi differ