diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index 7285b4628b0..192446d262b 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -16,6 +16,7 @@ var/spreadChance = 0 //the percentual chance of an ore spreading to the neighbouring tiles var/artifactChance = 0.3 //percent chance to spawn a xenoarchaelogical artifact var/last_act = 0 + var/datum/geosample/geological_data /turf/simulated/mineral/Del() return @@ -54,6 +55,9 @@ if (T) T.overlays += image('icons/turf/walls.dmi', "rock_side_e", layer=6) + src.geological_data = new /datum/geosample + src.geological_data.UpdateTurf(src) + if (mineralName && mineralAmt && spread && spreadChance) if(prob(spreadChance)) if(istype(get_step(src, SOUTH), /turf/simulated/mineral/random)) @@ -102,6 +106,9 @@ if(M) src = M M.levelupdate() + if(!geological_data) + src.geological_data = new /datum/geosample + src.geological_data.UpdateTurf(src) else if (prob(artifactChance)) //spawn a rare, xeno-arch artifact here new/obj/machinery/artifact(src) @@ -220,6 +227,11 @@ usr << "\red You don't have the dexterity to do this!" return + if (istype(W, /obj/item/device/core_sampler)) + var/obj/item/device/core_sampler/C = W + C.sample_item(src, user) + return + if (istype(W, /obj/item/weapon/pickaxe)) var/turf/T = user.loc if (!( istype(T, /turf) )) @@ -250,27 +262,34 @@ if ((src.mineralName != "") && (src.mineralAmt > 0) && (src.mineralAmt < 11)) var/i for (i=0;i