mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-19 02:54:41 +01:00
Mining fixes as it was annoying as fuck. Also a random object with nothing in it removed.
Conflicts: code/modules/mining/mine_turfs.dm
This commit is contained in:
+5
-5
@@ -826,10 +826,10 @@
|
||||
#include "code\modules\customitems\item_spawning.dm"
|
||||
#include "code\modules\customitems\definitions\base.dm"
|
||||
#include "code\modules\destilery\main.dm"
|
||||
#include "code\modules\DetectiveWork\detective_work.dm"
|
||||
#include "code\modules\DetectiveWork\evidence.dm"
|
||||
#include "code\modules\DetectiveWork\footprints_and_rag.dm"
|
||||
#include "code\modules\DetectiveWork\scanner.dm"
|
||||
#include "code\modules\detectivework\detective_work.dm"
|
||||
#include "code\modules\detectivework\evidence.dm"
|
||||
#include "code\modules\detectivework\footprints_and_rag.dm"
|
||||
#include "code\modules\detectivework\scanner.dm"
|
||||
#include "code\modules\economy\Accounts.dm"
|
||||
#include "code\modules\economy\Accounts_DB.dm"
|
||||
#include "code\modules\economy\ATM.dm"
|
||||
@@ -910,11 +910,11 @@
|
||||
#include "code\modules\mining\mine_areas.dm"
|
||||
#include "code\modules\mining\mine_items.dm"
|
||||
#include "code\modules\mining\mine_turfs.dm"
|
||||
#include "code\modules\mining\minerals.dm"
|
||||
#include "code\modules\mining\mint.dm"
|
||||
#include "code\modules\mining\money_bag.dm"
|
||||
#include "code\modules\mining\ores_coins.dm"
|
||||
#include "code\modules\mining\satchel_ore_boxdm.dm"
|
||||
#include "code\modules\mining\unsim_mine_turfs.dm"
|
||||
#include "code\modules\mining\laborcamp\laborminerals.dm"
|
||||
#include "code\modules\mining\laborcamp\laborshuttle.dm"
|
||||
#include "code\modules\mining\laborcamp\laborstacker.dm"
|
||||
|
||||
@@ -68,6 +68,7 @@ datum/controller/game_controller/proc/setup()
|
||||
setupgenetics()
|
||||
setupfactions()
|
||||
setup_economy()
|
||||
SetupXenoarch()
|
||||
|
||||
for(var/i=0, i<max_secret_rooms, i++)
|
||||
make_mining_asteroid_secret()
|
||||
|
||||
@@ -131,7 +131,7 @@ proc/make_mining_asteroid_secret(var/size = 5)
|
||||
valid = 0
|
||||
continue
|
||||
|
||||
if(locate(/turf/unsimulated/floor/plating/airless/asteroid) in surroundings)
|
||||
if(locate(/turf/simulated/floor/plating/airless/asteroid) in surroundings)
|
||||
valid = 0
|
||||
continue
|
||||
|
||||
|
||||
@@ -91,10 +91,10 @@
|
||||
if(T == chassis.loc && src == chassis.selected)
|
||||
if(istype(target, /turf/simulated/wall/r_wall))
|
||||
occupant_message("<font color='red'>[target] is too durable to drill through.</font>")
|
||||
else if(istype(target, /turf/unsimulated/mineral))
|
||||
for(var/turf/unsimulated/mineral/M in range(chassis,1))
|
||||
else if(istype(target, /turf/simulated/mineral))
|
||||
for(var/turf/simulated/mineral/M in range(chassis,1))
|
||||
if(get_dir(chassis,M)&chassis.dir)
|
||||
M.gets_drilled()
|
||||
M.GetDrilled()
|
||||
log_message("Drilled through [target]")
|
||||
if(locate(/obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp) in chassis.equipment)
|
||||
var/obj/structure/ore_box/ore_box = locate(/obj/structure/ore_box) in chassis:cargo
|
||||
@@ -102,8 +102,8 @@
|
||||
for(var/obj/item/weapon/ore/ore in range(chassis,1))
|
||||
if(get_dir(chassis,ore)&chassis.dir)
|
||||
ore.Move(ore_box)
|
||||
else if(istype(target, /turf/unsimulated/floor/plating/airless/asteroid))
|
||||
for(var/turf/unsimulated/floor/plating/airless/asteroid/M in range(chassis,1))
|
||||
else if(istype(target, /turf/simulated/floor/plating/airless/asteroid))
|
||||
for(var/turf/simulated/floor/plating/airless/asteroid/M in range(chassis,1))
|
||||
if(get_dir(chassis,M)&chassis.dir)
|
||||
M.gets_dug()
|
||||
log_message("Drilled through [target]")
|
||||
@@ -159,10 +159,10 @@
|
||||
if(do_after_cooldown(target))//To slow down how fast mechs can drill through the station
|
||||
log_message("Drilled through [target]")
|
||||
target.ex_act(3)
|
||||
else if(istype(target, /turf/unsimulated/mineral))
|
||||
for(var/turf/unsimulated/mineral/M in range(chassis,1))
|
||||
else if(istype(target, /turf/simulated/mineral))
|
||||
for(var/turf/simulated/mineral/M in range(chassis,1))
|
||||
if(get_dir(chassis,M)&chassis.dir)
|
||||
M.gets_drilled()
|
||||
M.GetDrilled()
|
||||
log_message("Drilled through [target]")
|
||||
if(locate(/obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp) in chassis.equipment)
|
||||
var/obj/structure/ore_box/ore_box = locate(/obj/structure/ore_box) in chassis:cargo
|
||||
@@ -170,8 +170,8 @@
|
||||
for(var/obj/item/weapon/ore/ore in range(chassis,1))
|
||||
if(get_dir(chassis,ore)&chassis.dir)
|
||||
ore.Move(ore_box)
|
||||
else if(istype(target,/turf/unsimulated/floor/plating/airless/asteroid))
|
||||
for(var/turf/unsimulated/floor/plating/airless/asteroid/M in range(target,1))
|
||||
else if(istype(target,/turf/simulated/floor/plating/airless/asteroid))
|
||||
for(var/turf/simulated/floor/plating/airless/asteroid/M in range(target,1))
|
||||
M.gets_dug()
|
||||
log_message("Drilled through [target]")
|
||||
if(locate(/obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp) in chassis.equipment)
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
if(prob(spreadIntoAdjacentChance))
|
||||
spreadsIntoAdjacent = 1
|
||||
|
||||
for(var/turf/unsimulated/floor/plating/airless/asteroid/earth in view(3,src))
|
||||
for(var/turf/simulated/floor/plating/airless/asteroid/earth in view(3,src))
|
||||
if(spreadsIntoAdjacent || !locate(/obj/effect/glowshroom) in view(1,earth))
|
||||
possibleLocs += earth
|
||||
|
||||
|
||||
@@ -276,7 +276,7 @@ turf/simulated/floor/proc/update_icon()
|
||||
|
||||
/turf/simulated/floor/proc/burn_tile()
|
||||
if(istype(src,/turf/simulated/floor/engine)) return
|
||||
if(istype(src,/turf/unsimulated/floor/plating/airless/asteroid)) return//Asteroid tiles don't burn
|
||||
if(istype(src,/turf/simulated/floor/plating/airless/asteroid)) return//Asteroid tiles don't burn
|
||||
if(broken || burnt) return
|
||||
if(is_plasteel_floor())
|
||||
src.icon_state = "damaged[pick(1,2,3,4,5)]"
|
||||
|
||||
+367
-591
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,72 @@
|
||||
var/list/name_to_mineral
|
||||
|
||||
proc/SetupMinerals()
|
||||
name_to_mineral = list()
|
||||
for(var/type in typesof(/mineral) - /mineral)
|
||||
var/mineral/new_mineral = new type
|
||||
if(!new_mineral.name)
|
||||
continue
|
||||
name_to_mineral[new_mineral.name] = new_mineral
|
||||
return 1
|
||||
|
||||
mineral
|
||||
///What am I called?
|
||||
var/name
|
||||
var/display_name
|
||||
///How much ore?
|
||||
var/result_amount
|
||||
///Does this type of deposit spread?
|
||||
var/spread = 1
|
||||
///Chance of spreading in any direction
|
||||
var/spread_chance
|
||||
|
||||
///Path to the resultant ore.
|
||||
var/ore
|
||||
|
||||
New()
|
||||
. = ..()
|
||||
if(!display_name)
|
||||
display_name = name
|
||||
|
||||
mineral/uranium
|
||||
name = "Uranium"
|
||||
result_amount = 5
|
||||
spread_chance = 10
|
||||
ore = /obj/item/weapon/ore/uranium
|
||||
|
||||
mineral/iron
|
||||
name = "Iron"
|
||||
result_amount = 5
|
||||
spread_chance = 25
|
||||
ore = /obj/item/weapon/ore/iron
|
||||
|
||||
mineral/diamond
|
||||
name = "Diamond"
|
||||
result_amount = 5
|
||||
spread_chance = 10
|
||||
ore = /obj/item/weapon/ore/diamond
|
||||
|
||||
mineral/gold
|
||||
name = "Gold"
|
||||
result_amount = 5
|
||||
spread_chance = 10
|
||||
ore = /obj/item/weapon/ore/gold
|
||||
|
||||
mineral/silver
|
||||
name = "Silver"
|
||||
result_amount = 5
|
||||
spread_chance = 10
|
||||
ore = /obj/item/weapon/ore/silver
|
||||
|
||||
mineral/plasma
|
||||
name = "Plasma"
|
||||
result_amount = 5
|
||||
spread_chance = 25
|
||||
ore = /obj/item/weapon/ore/plasma
|
||||
|
||||
mineral/clown
|
||||
display_name = "Bananium"
|
||||
name = "Clown"
|
||||
result_amount = 3
|
||||
spread = 0
|
||||
ore = /obj/item/weapon/ore/clown
|
||||
@@ -4,7 +4,7 @@
|
||||
name = "Rock"
|
||||
icon = 'icons/obj/mining.dmi'
|
||||
icon_state = "ore2"
|
||||
var/datum/geosample/geological_data
|
||||
var/datum/geosample/geologic_data
|
||||
|
||||
/obj/item/weapon/ore/uranium
|
||||
name = "Uranium ore"
|
||||
|
||||
@@ -1,780 +0,0 @@
|
||||
/turf/unsimulated/mineral //wall piece
|
||||
name = "Rock"
|
||||
icon = 'icons/turf/walls.dmi'
|
||||
icon_state = "rock"
|
||||
oxygen = 0
|
||||
nitrogen = 0
|
||||
opacity = 1
|
||||
density = 1
|
||||
blocks_air = 1
|
||||
temperature = TCMB
|
||||
var/mineralName = ""
|
||||
var/mineralAmt = 0
|
||||
var/spread = 0 //will the seam spread?
|
||||
var/spreadChance = 0 //the percentual chance of an ore spreading to the neighbouring tiles
|
||||
var/last_act = 0
|
||||
|
||||
var/datum/geosample/geological_data
|
||||
var/excavation_level = 0
|
||||
var/list/finds = list()
|
||||
var/list/excavation_minerals = list()
|
||||
var/next_rock = 0
|
||||
var/archaeo_overlay = ""
|
||||
var/excav_overlay = ""
|
||||
var/obj/item/weapon/last_find
|
||||
var/datum/artifact_find/artifact_find
|
||||
|
||||
/turf/unsimulated/mineral/Del()
|
||||
return
|
||||
|
||||
/turf/unsimulated/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/unsimulated/mineral/New()
|
||||
|
||||
spawn(1)
|
||||
var/turf/T
|
||||
if((istype(get_step(src, NORTH), /turf/unsimulated/floor)) || (istype(get_step(src, NORTH), /turf/space)) || (istype(get_step(src, NORTH), /turf/simulated/shuttle/floor)))
|
||||
T = get_step(src, NORTH)
|
||||
if (T)
|
||||
T.overlays += image('icons/turf/walls.dmi', "rock_side_s")
|
||||
if((istype(get_step(src, SOUTH), /turf/unsimulated/floor)) || (istype(get_step(src, SOUTH), /turf/space)) || (istype(get_step(src, SOUTH), /turf/simulated/shuttle/floor)))
|
||||
T = get_step(src, SOUTH)
|
||||
if (T)
|
||||
T.overlays += image('icons/turf/walls.dmi', "rock_side_n", layer=6)
|
||||
if((istype(get_step(src, EAST), /turf/unsimulated/floor)) || (istype(get_step(src, EAST), /turf/space)) || (istype(get_step(src, EAST), /turf/simulated/shuttle/floor)))
|
||||
T = get_step(src, EAST)
|
||||
if (T)
|
||||
T.overlays += image('icons/turf/walls.dmi', "rock_side_w", layer=6)
|
||||
if((istype(get_step(src, WEST), /turf/unsimulated/floor)) || (istype(get_step(src, WEST), /turf/space)) || (istype(get_step(src, WEST), /turf/simulated/shuttle/floor)))
|
||||
T = get_step(src, WEST)
|
||||
if (T)
|
||||
T.overlays += image('icons/turf/walls.dmi', "rock_side_e", layer=6)
|
||||
|
||||
if (mineralName && mineralAmt && spread && spreadChance)
|
||||
for(var/trydir in list(1,2,4,8))
|
||||
if(prob(spreadChance))
|
||||
if(istype(get_step(src, trydir), /turf/unsimulated/mineral/random))
|
||||
var/turf/unsimulated/mineral/T = get_step(src, trydir)
|
||||
var/turf/unsimulated/mineral/M = new src.type(T)
|
||||
//keep any digsite data as constant as possible
|
||||
if(T.finds.len && !M.finds.len)
|
||||
M.finds = T.finds
|
||||
if(T.archaeo_overlay)
|
||||
M.overlays += archaeo_overlay
|
||||
|
||||
|
||||
//---- Xenoarchaeology BEGIN
|
||||
|
||||
//put into spawn so that digsite data can be preserved over the turf replacements via spreading mineral veins
|
||||
spawn(0)
|
||||
if(mineralAmt > 0 && !excavation_minerals.len)
|
||||
for(var/i=0, i<mineralAmt, i++)
|
||||
excavation_minerals.Add(rand(5,95))
|
||||
excavation_minerals = insertion_sort_numeric_list_descending(excavation_minerals)
|
||||
|
||||
if(!finds.len && prob(XENOARCH_SPAWN_CHANCE))
|
||||
//create a new archaeological deposit
|
||||
var/digsite = get_random_digsite_type()
|
||||
|
||||
var/list/turfs_to_process = list(src)
|
||||
var/list/processed_turfs = list()
|
||||
while(turfs_to_process.len)
|
||||
var/turf/unsimulated/mineral/M = turfs_to_process[1]
|
||||
for(var/turf/unsimulated/mineral/T in orange(1, M))
|
||||
if(T.finds.len)
|
||||
continue
|
||||
if(T in processed_turfs)
|
||||
continue
|
||||
if(prob(XENOARCH_SPREAD_CHANCE))
|
||||
turfs_to_process.Add(T)
|
||||
|
||||
turfs_to_process.Remove(M)
|
||||
processed_turfs.Add(M)
|
||||
if(!M.finds.len)
|
||||
if(prob(50))
|
||||
M.finds.Add(new/datum/find(digsite, rand(5,95)))
|
||||
else if(prob(75))
|
||||
M.finds.Add(new/datum/find(digsite, rand(5,45)))
|
||||
M.finds.Add(new/datum/find(digsite, rand(55,95)))
|
||||
else
|
||||
M.finds.Add(new/datum/find(digsite, rand(5,30)))
|
||||
M.finds.Add(new/datum/find(digsite, rand(35,75)))
|
||||
M.finds.Add(new/datum/find(digsite, rand(75,95)))
|
||||
|
||||
//sometimes a find will be close enough to the surface to show
|
||||
var/datum/find/F = M.finds[1]
|
||||
if(F.excavation_required <= F.view_range)
|
||||
archaeo_overlay = "overlay_archaeo[rand(1,3)]"
|
||||
M.overlays += archaeo_overlay
|
||||
|
||||
//dont create artifact machinery in animal or plant digsites, or if we already have one
|
||||
if(!artifact_find && digsite != 1 && digsite != 2 && prob(ARTIFACT_SPAWN_CHANCE))
|
||||
artifact_find = new()
|
||||
master_controller.artifact_spawning_turfs.Add(src)
|
||||
|
||||
if(!src.geological_data)
|
||||
src.geological_data = new/datum/geosample(src)
|
||||
src.geological_data.UpdateTurf(src)
|
||||
|
||||
//for excavated turfs placeable in the map editor
|
||||
/*if(excavation_level > 0)
|
||||
if(excavation_level < 25)
|
||||
src.overlays += image('icons/obj/xenoarchaeology.dmi', "overlay_excv1_[rand(1,3)]")
|
||||
else if(excavation_level < 50)
|
||||
src.overlays += image('icons/obj/xenoarchaeology.dmi', "overlay_excv2_[rand(1,3)]")
|
||||
else if(excavation_level < 75)
|
||||
src.overlays += image('icons/obj/xenoarchaeology.dmi', "overlay_excv3_[rand(1,3)]")
|
||||
else
|
||||
src.overlays += image('icons/obj/xenoarchaeology.dmi', "overlay_excv4_[rand(1,3)]")
|
||||
desc = "It appears to be partially excavated."*/
|
||||
|
||||
return
|
||||
|
||||
/turf/unsimulated/mineral/random
|
||||
name = "Mineral deposit"
|
||||
var/mineralAmtList = list("Uranium" = 5, "Iron" = 5, "Diamond" = 5, "Gold" = 5, "Silver" = 5, "Plasma" = 5/*, "Adamantine" = 5*/)
|
||||
var/mineralSpawnChanceList = list("Uranium" = 5, "Iron" = 50, "Diamond" = 1, "Gold" = 5, "Silver" = 5, "Plasma" = 25/*, "Adamantine" =5*/)//Currently, Adamantine won't spawn as it has no uses. -Durandan
|
||||
var/mineralChance = 10 //means 10% chance of this plot changing to a mineral deposit
|
||||
|
||||
/turf/unsimulated/mineral/random/New()
|
||||
if (prob(mineralChance))
|
||||
var/mName = pickweight(mineralSpawnChanceList) //temp mineral name
|
||||
|
||||
if (mName)
|
||||
var/turf/unsimulated/mineral/M
|
||||
switch(mName)
|
||||
if("Uranium")
|
||||
M = new/turf/unsimulated/mineral/uranium(src)
|
||||
if("Iron")
|
||||
M = new/turf/unsimulated/mineral/iron(src)
|
||||
M.icon_state = "rock_Iron[rand(1,3)]"
|
||||
if("Diamond")
|
||||
M = new/turf/unsimulated/mineral/diamond(src)
|
||||
if("Gold")
|
||||
M = new/turf/unsimulated/mineral/gold(src)
|
||||
if("Silver")
|
||||
M = new/turf/unsimulated/mineral/silver(src)
|
||||
if("Plasma")
|
||||
M = new/turf/unsimulated/mineral/plasma(src)
|
||||
M.icon_state = "rock_Plasma[rand(1,3)]"
|
||||
if("Clown")
|
||||
M = new/turf/unsimulated/mineral/clown(src)
|
||||
if(M)
|
||||
..()
|
||||
src = M
|
||||
M.levelupdate()
|
||||
|
||||
//preserve archaeo data
|
||||
M.geological_data = src.geological_data
|
||||
M.excavation_minerals = src.excavation_minerals
|
||||
M.overlays = src.overlays
|
||||
M.artifact_find = src.artifact_find
|
||||
M.archaeo_overlay = src.archaeo_overlay
|
||||
M.excav_overlay = src.excav_overlay
|
||||
|
||||
/*else if (prob(artifactChance))
|
||||
new/obj/machinery/artifact(src)*/
|
||||
return
|
||||
|
||||
/turf/unsimulated/mineral/random/high_chance
|
||||
mineralChance = 25
|
||||
mineralSpawnChanceList = list("Uranium" = 10, "Iron" = 30, "Diamond" = 2, "Gold" = 10, "Silver" = 10, "Plasma" = 25, "Archaeo" = 2)
|
||||
|
||||
|
||||
/turf/unsimulated/mineral/random/high_chance_clown
|
||||
mineralChance = 40
|
||||
mineralSpawnChanceList = list("Uranium" = 10, "Iron" = 30, "Diamond" = 2, "Gold" = 5, "Silver" = 5, "Plasma" = 25, "Archaeo" = 2, "Clown" = 15)
|
||||
|
||||
/turf/unsimulated/mineral/random/Del()
|
||||
return
|
||||
|
||||
/turf/unsimulated/mineral/uranium
|
||||
name = "Uranium deposit"
|
||||
icon_state = "rock_Uranium"
|
||||
mineralName = "Uranium"
|
||||
mineralAmt = 5
|
||||
spreadChance = 10
|
||||
spread = 1
|
||||
|
||||
|
||||
|
||||
/turf/unsimulated/mineral/iron
|
||||
name = "Iron deposit"
|
||||
icon_state = "rock_Iron1"
|
||||
mineralName = "Iron"
|
||||
mineralAmt = 5
|
||||
spreadChance = 25
|
||||
spread = 1
|
||||
|
||||
|
||||
/turf/unsimulated/mineral/diamond
|
||||
name = "Diamond deposit"
|
||||
icon_state = "rock_Diamond"
|
||||
mineralName = "Diamond"
|
||||
mineralAmt = 5
|
||||
spreadChance = 10
|
||||
spread = 1
|
||||
|
||||
|
||||
/turf/unsimulated/mineral/gold
|
||||
name = "Gold deposit"
|
||||
icon_state = "rock_Gold"
|
||||
mineralName = "Gold"
|
||||
mineralAmt = 5
|
||||
spreadChance = 10
|
||||
spread = 1
|
||||
|
||||
|
||||
/turf/unsimulated/mineral/silver
|
||||
name = "Silver deposit"
|
||||
icon_state = "rock_Silver"
|
||||
mineralName = "Silver"
|
||||
mineralAmt = 5
|
||||
spreadChance = 10
|
||||
spread = 1
|
||||
|
||||
|
||||
/turf/unsimulated/mineral/plasma
|
||||
name = "Plasma deposit"
|
||||
icon_state = "rock_Plasma1"
|
||||
mineralName = "Plasma"
|
||||
mineralAmt = 5
|
||||
spreadChance = 25
|
||||
spread = 1
|
||||
|
||||
|
||||
/turf/unsimulated/mineral/clown
|
||||
name = "Bananium deposit"
|
||||
icon_state = "rock_Clown"
|
||||
mineralName = "Clown"
|
||||
mineralAmt = 3
|
||||
spreadChance = 10
|
||||
spread = 1
|
||||
|
||||
/*
|
||||
commented out in r5061, I left it because of the shroom thingies
|
||||
|
||||
/turf/unsimulated/mineral/ReplaceWithFloor()
|
||||
if(!icon_old) icon_old = icon_state
|
||||
var/turf/unsimulated/floor/plating/airless/asteroid/W
|
||||
var/old_dir = dir
|
||||
|
||||
for(var/direction in cardinal)
|
||||
for(var/obj/effect/glowshroom/shroom in get_step(src,direction))
|
||||
if(!shroom.floor) //shrooms drop to the floor
|
||||
shroom.floor = 1
|
||||
shroom.icon_state = "glowshroomf"
|
||||
shroom.pixel_x = 0
|
||||
shroom.pixel_y = 0
|
||||
|
||||
var/old_lumcount = lighting_lumcount - initial(lighting_lumcount)
|
||||
W = new /turf/unsimulated/floor/plating/airless/asteroid(src)
|
||||
W.lighting_lumcount += old_lumcount
|
||||
if(old_lumcount != W.lighting_lumcount)
|
||||
W.lighting_changed = 1
|
||||
lighting_controller.changed_turfs += W
|
||||
|
||||
W.dir = old_dir
|
||||
|
||||
W.fullUpdateMineralOverlays()
|
||||
W.levelupdate()
|
||||
return W
|
||||
*/
|
||||
|
||||
/turf/unsimulated/mineral/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!"
|
||||
return
|
||||
|
||||
if (istype(W, /obj/item/device/core_sampler))
|
||||
src.geological_data.UpdateNearbyArtifactInfo(src)
|
||||
var/obj/item/device/core_sampler/C = W
|
||||
C.sample_item(src, user)
|
||||
return
|
||||
|
||||
if (istype(W, /obj/item/device/depth_scanner))
|
||||
var/obj/item/device/depth_scanner/C = W
|
||||
C.scan_atom(user, src)
|
||||
return
|
||||
|
||||
if (istype(W, /obj/item/device/measuring_tape))
|
||||
var/obj/item/device/measuring_tape/P = W
|
||||
user.visible_message("\blue[user] extends [P] towards [src].","\blue You extend [P] towards [src].")
|
||||
if(do_after(user,25))
|
||||
user << "\blue \icon[P] [src] has been excavated to a depth of [2*src.excavation_level]cm."
|
||||
return
|
||||
|
||||
if (istype(W, /obj/item/weapon/pickaxe))
|
||||
var/turf/T = user.loc
|
||||
if (!( istype(T, /turf) ))
|
||||
return
|
||||
/*
|
||||
if (istype(W, /obj/item/weapon/pickaxe/radius))
|
||||
var/turf/T = user.loc
|
||||
if (!( istype(T, /turf) ))
|
||||
return
|
||||
*/
|
||||
//Watch your tabbing, microwave. --NEO
|
||||
|
||||
var/obj/item/weapon/pickaxe/P = W
|
||||
if(last_act+P.digspeed > world.time)//prevents message spam
|
||||
return
|
||||
last_act = world.time
|
||||
|
||||
playsound(user, P.drill_sound, 20, 1)
|
||||
|
||||
//handle any archaeological finds we might uncover
|
||||
var/fail_message
|
||||
if(src.finds.len)
|
||||
var/datum/find/F = src.finds[1]
|
||||
if(src.excavation_level + P.excavation_amount > F.excavation_required)
|
||||
//Chance to destroy / extract any finds here
|
||||
fail_message = ", <b>[pick("there is a crunching noise","[W] collides with some different rock","part of the rock face crumbles away","something breaks under [W]")]</b>"
|
||||
|
||||
user << "\red You start [P.drill_verb][fail_message ? fail_message : ""]."
|
||||
|
||||
if(fail_message && prob(90))
|
||||
if(prob(25))
|
||||
excavate_find(5, src.finds[1])
|
||||
else if(prob(50))
|
||||
src.finds.Remove(src.finds[1])
|
||||
if(prob(50))
|
||||
artifact_debris()
|
||||
|
||||
if(do_after(user,P.digspeed))
|
||||
user << "\blue You finish [P.drill_verb] the rock."
|
||||
|
||||
if(finds.len)
|
||||
var/datum/find/F = src.finds[1]
|
||||
if(round(src.excavation_level + P.excavation_amount) == F.excavation_required)
|
||||
//Chance to extract any items here perfectly, otherwise just pull them out along with the rock surrounding them
|
||||
if(src.excavation_level + P.excavation_amount > F.excavation_required)
|
||||
//if you can get slightly over, perfect extraction
|
||||
excavate_find(100, F)
|
||||
else
|
||||
excavate_find(80, F)
|
||||
|
||||
else if(src.excavation_level + P.excavation_amount > F.excavation_required - F.clearance_range)
|
||||
//just pull the surrounding rock out
|
||||
excavate_find(0, F)
|
||||
|
||||
if( src.excavation_level + P.excavation_amount >= 100 )
|
||||
//if players have been excavating this turf, leave some rocky debris behind
|
||||
var/obj/structure/boulder/B
|
||||
if(artifact_find)
|
||||
if( src.excavation_level > 0 || prob(15) )
|
||||
//boulder with an artifact inside
|
||||
B = new(src)
|
||||
if(artifact_find)
|
||||
B.artifact_find = artifact_find
|
||||
else
|
||||
artifact_debris(1)
|
||||
else if(prob(15))
|
||||
//empty boulder
|
||||
B = new(src)
|
||||
|
||||
if(B)
|
||||
gets_drilled(0)
|
||||
else
|
||||
gets_drilled(1)
|
||||
return
|
||||
else
|
||||
src.excavation_level += P.excavation_amount
|
||||
|
||||
//archaeo overlays
|
||||
if(!archaeo_overlay && finds.len)
|
||||
var/datum/find/F = src.finds[1]
|
||||
if(F.excavation_required <= src.excavation_level + F.view_range)
|
||||
archaeo_overlay = "overlay_archaeo[rand(1,3)]"
|
||||
overlays += archaeo_overlay
|
||||
|
||||
//there's got to be a better way to do this
|
||||
var/update_excav_overlay = 0
|
||||
if(src.excavation_level >= 75)
|
||||
if(src.excavation_level - P.excavation_amount < 75)
|
||||
update_excav_overlay = 1
|
||||
else if(src.excavation_level >= 50)
|
||||
if(src.excavation_level - P.excavation_amount < 50)
|
||||
update_excav_overlay = 1
|
||||
else if(src.excavation_level >= 25)
|
||||
if(src.excavation_level - P.excavation_amount < 25)
|
||||
update_excav_overlay = 1
|
||||
|
||||
//update overlays displaying excavation level
|
||||
if( !(excav_overlay && excavation_level > 0) || update_excav_overlay )
|
||||
var/excav_quadrant = round(excavation_level / 25) + 1
|
||||
excav_overlay = "overlay_excv[excav_quadrant]_[rand(1,3)]"
|
||||
overlays += excav_overlay
|
||||
|
||||
//extract pesky minerals while we're excavating
|
||||
while(excavation_minerals.len && src.excavation_level > excavation_minerals[excavation_minerals.len])
|
||||
drop_mineral()
|
||||
pop(excavation_minerals)
|
||||
mineralAmt--
|
||||
score_oremined++
|
||||
|
||||
//drop some rocks
|
||||
next_rock += P.excavation_amount * 10
|
||||
while(next_rock > 100)
|
||||
next_rock -= 100
|
||||
var/obj/item/weapon/ore/O = new(src)
|
||||
src.geological_data.UpdateNearbyArtifactInfo(src)
|
||||
O.geological_data = src.geological_data
|
||||
|
||||
else
|
||||
return attack_hand(user)
|
||||
return
|
||||
|
||||
/turf/unsimulated/mineral/proc/drop_mineral()
|
||||
var/obj/item/weapon/ore/O
|
||||
if (src.mineralName == "Uranium")
|
||||
O = new /obj/item/weapon/ore/uranium(src)
|
||||
if (src.mineralName == "Iron")
|
||||
O = new /obj/item/weapon/ore/iron(src)
|
||||
if (src.mineralName == "Gold")
|
||||
O = new /obj/item/weapon/ore/gold(src)
|
||||
if (src.mineralName == "Silver")
|
||||
O = new /obj/item/weapon/ore/silver(src)
|
||||
if (src.mineralName == "Plasma")
|
||||
O = new /obj/item/weapon/ore/plasma(src)
|
||||
if (src.mineralName == "Diamond")
|
||||
O = new /obj/item/weapon/ore/diamond(src)
|
||||
if (src.mineralName == "Clown")
|
||||
O = new /obj/item/weapon/ore/clown(src)
|
||||
if(O)
|
||||
src.geological_data.UpdateNearbyArtifactInfo(src)
|
||||
O.geological_data = src.geological_data
|
||||
return O
|
||||
|
||||
/turf/unsimulated/mineral/proc/gets_drilled(var/artifact_fail = 0)
|
||||
//var/destroyed = 0 //used for breaking strange rocks
|
||||
if ((src.mineralName != "") && (src.mineralAmt > 0) && (src.mineralAmt < 11))
|
||||
|
||||
//if the turf has already been excavated, some of it's ore has been removed
|
||||
for (var/i=0;i<mineralAmt;i++)
|
||||
drop_mineral()
|
||||
score_oremined++
|
||||
|
||||
//destroyed artifacts have weird, unpleasant effects
|
||||
//make sure to destroy them before changing the turf though
|
||||
if(artifact_find && artifact_fail)
|
||||
var/pain = 0
|
||||
if(prob(50))
|
||||
pain = 1
|
||||
for(var/mob/living/M in range(src, 200))
|
||||
M << "<font color='red'><b>[pick("A high pitched [pick("keening","wailing","whistle")]","A rumbling noise like [pick("thunder","heavy machinery")]")] somehow penetrates your mind before fading away!</b></font>"
|
||||
if(pain)
|
||||
flick("pain",M.pain)
|
||||
if(prob(50))
|
||||
M.adjustBruteLoss(5)
|
||||
else
|
||||
flick("flash",M.flash)
|
||||
if(prob(50))
|
||||
M.Stun(5)
|
||||
M.apply_effect(25, IRRADIATE)
|
||||
|
||||
var/turf/unsimulated/floor/plating/airless/asteroid/N = ChangeTurf(/turf/unsimulated/floor/plating/airless/asteroid)
|
||||
N.fullUpdateMineralOverlays()
|
||||
var/crate = rand(1,500)
|
||||
switch(crate)
|
||||
if(1)
|
||||
visible_message("<span class='notice'>After digging, you find an old dusty crate buried within!</span>")
|
||||
new/obj/structure/closet/crate/secure/loot(src)
|
||||
return
|
||||
|
||||
/turf/unsimulated/mineral/proc/excavate_find(var/prob_clean = 0, var/datum/find/F)
|
||||
//with skill and luck, players can cleanly extract finds
|
||||
//otherwise, they come out inside a chunk of rock
|
||||
var/obj/item/weapon/X
|
||||
if(prob_clean)
|
||||
X = new/obj/item/weapon/archaeological_find(src, new_item_type = F.find_type)
|
||||
else
|
||||
X = new/obj/item/weapon/ore/strangerock(src, inside_item_type = F.find_type)
|
||||
src.geological_data.UpdateNearbyArtifactInfo(src)
|
||||
X:geological_data = src.geological_data
|
||||
|
||||
//some find types delete the /obj/item/weapon/archaeological_find and replace it with something else, this handles when that happens
|
||||
//yuck
|
||||
var/display_name = "something"
|
||||
if(!X)
|
||||
X = last_find
|
||||
if(X)
|
||||
display_name = X.name
|
||||
|
||||
//many finds are ancient and thus very delicate - luckily there is a specialised energy suspension field which protects them when they're being extracted
|
||||
if(prob(F.prob_delicate))
|
||||
var/obj/effect/suspension_field/S = locate() in src
|
||||
if(!S || S.field_type != get_responsive_reagent(F.find_type))
|
||||
if(X)
|
||||
src.visible_message("\red<b>[pick("[display_name] crumbles away into dust","[display_name] breaks apart")].</b>")
|
||||
del(X)
|
||||
|
||||
src.finds.Remove(F)
|
||||
|
||||
/turf/unsimulated/mineral/proc/artifact_debris(var/severity = 0)
|
||||
//cael's patented random limited drop componentized loot system!
|
||||
severity = max(min(severity,1),0)
|
||||
var/materials = 0
|
||||
var/list/viable_materials = list(1,2,4,8,16,32,64,128,256)
|
||||
|
||||
var/num_materials = rand(1,3 + severity*2)
|
||||
for(var/i=0, i<num_materials, i++)
|
||||
var/chosen = pick(viable_materials)
|
||||
materials |= chosen
|
||||
viable_materials.Remove(chosen)
|
||||
|
||||
if(materials & 1)
|
||||
var/obj/item/stack/rods/R = new(src)
|
||||
R.amount = rand(5,25)
|
||||
|
||||
if(materials & 2)
|
||||
var/obj/item/stack/tile/R = new(src)
|
||||
R.amount = rand(1,5)
|
||||
|
||||
if(materials & 4)
|
||||
var/obj/item/stack/sheet/metal/R = new(src)
|
||||
R.amount = rand(5,25)
|
||||
|
||||
if(materials & 8)
|
||||
var/obj/item/stack/sheet/plasteel/R = new(src)
|
||||
R.amount = rand(5,25)
|
||||
|
||||
if(materials & 16)
|
||||
var/quantity = rand(1,3)
|
||||
for(var/i=0, i<quantity, i++)
|
||||
new /obj/item/weapon/shard(src)
|
||||
|
||||
if(materials & 32)
|
||||
var/quantity = rand(1,3)
|
||||
for(var/i=0, i<quantity, i++)
|
||||
new /obj/item/weapon/shard/plasma(src)
|
||||
|
||||
if(materials & 64)
|
||||
var/obj/item/stack/sheet/mineral/uranium/R = new(src)
|
||||
R.amount = rand(5,25)
|
||||
|
||||
if(materials & 128)
|
||||
var/obj/item/stack/sheet/mineral/mythril/R = new(src)
|
||||
R.amount = rand(1,5)
|
||||
|
||||
if(materials & 256)
|
||||
var/obj/item/stack/sheet/mineral/adamantine/R = new(src)
|
||||
R.amount = rand(1,5)
|
||||
|
||||
/*
|
||||
/turf/unsimulated/mineral/proc/setRandomMinerals()
|
||||
var/s = pickweight(list("uranium" = 5, "iron" = 50, "gold" = 5, "silver" = 5, "plasma" = 50, "diamond" = 1))
|
||||
if (s)
|
||||
mineralName = s
|
||||
|
||||
var/N = text2path("/turf/unsimulated/mineral/[s]")
|
||||
if (N)
|
||||
var/turf/unsimulated/mineral/M = new N
|
||||
src = M
|
||||
if (src.mineralName)
|
||||
mineralAmt = 5
|
||||
return*/
|
||||
|
||||
/turf/unsimulated/mineral/Bumped(AM as mob|obj)
|
||||
..()
|
||||
if(istype(AM,/mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = AM
|
||||
if((istype(H.l_hand,/obj/item/weapon/pickaxe)) && (!H.hand))
|
||||
src.attackby(H.l_hand,H)
|
||||
else if((istype(H.r_hand,/obj/item/weapon/pickaxe)) && H.hand)
|
||||
src.attackby(H.r_hand,H)
|
||||
return
|
||||
else if(istype(AM,/mob/living/silicon/robot))
|
||||
var/mob/living/silicon/robot/R = AM
|
||||
if(istype(R.module_active,/obj/item/weapon/pickaxe))
|
||||
src.attackby(R.module_active,R)
|
||||
return
|
||||
else if(istype(AM,/obj/mecha))
|
||||
var/obj/mecha/M = AM
|
||||
if(istype(M.selected,/obj/item/mecha_parts/mecha_equipment/tool/drill))
|
||||
M.selected.action(src)
|
||||
else
|
||||
return
|
||||
|
||||
|
||||
/**********************Asteroid**************************/
|
||||
|
||||
/turf/unsimulated/floor/plating/airless/asteroid //floor piece
|
||||
name = "Asteroid"
|
||||
icon = 'icons/turf/floors.dmi'
|
||||
icon_state = "asteroid"
|
||||
oxygen = 0.01
|
||||
nitrogen = 0.01
|
||||
temperature = TCMB
|
||||
var/dug = 0 //0 = has not yet been dug, 1 = has already been dug
|
||||
|
||||
/turf/unsimulated/floor/plating/airless/asteroid/New()
|
||||
var/proper_name = name
|
||||
..()
|
||||
name = proper_name
|
||||
//if (prob(50))
|
||||
// seedName = pick(list("1","2","3","4"))
|
||||
// seedAmt = rand(1,4)
|
||||
if(prob(20))
|
||||
icon_state = "asteroid[rand(0,12)]"
|
||||
spawn(2)
|
||||
updateMineralOverlays()
|
||||
|
||||
/turf/unsimulated/floor/plating/airless/asteroid/ex_act(severity)
|
||||
switch(severity)
|
||||
if(3.0)
|
||||
return
|
||||
if(2.0)
|
||||
if (prob(70))
|
||||
src.gets_dug()
|
||||
if(1.0)
|
||||
src.gets_dug()
|
||||
return
|
||||
|
||||
/turf/unsimulated/floor/plating/airless/asteroid/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
|
||||
if(!W || !user)
|
||||
return 0
|
||||
|
||||
if ((istype(W, /obj/item/weapon/shovel)))
|
||||
var/turf/T = user.loc
|
||||
if (!( istype(T, /turf) ))
|
||||
return
|
||||
|
||||
if (dug)
|
||||
user << "\red This area has already been dug"
|
||||
return
|
||||
|
||||
user << "\red You start digging."
|
||||
playsound(src.loc, 'sound/effects/rustle1.ogg', 50, 1) //russle sounds sounded better
|
||||
|
||||
sleep(40)
|
||||
if ((user.loc == T && user.get_active_hand() == W))
|
||||
user << "\blue You dug a hole."
|
||||
gets_dug()
|
||||
|
||||
if ((istype(W,/obj/item/weapon/pickaxe/drill)))
|
||||
var/turf/T = user.loc
|
||||
if (!( istype(T, /turf) ))
|
||||
return
|
||||
|
||||
if (dug)
|
||||
user << "\red This area has already been dug"
|
||||
return
|
||||
|
||||
user << "\red You start digging."
|
||||
playsound(src.loc, 'sound/effects/rustle1.ogg', 50, 1) //russle sounds sounded better
|
||||
|
||||
sleep(30)
|
||||
if ((user.loc == T && user.get_active_hand() == W))
|
||||
user << "\blue You dug a hole."
|
||||
gets_dug()
|
||||
|
||||
if ((istype(W,/obj/item/weapon/pickaxe/diamonddrill)) || (istype(W,/obj/item/weapon/pickaxe/borgdrill)))
|
||||
var/turf/T = user.loc
|
||||
if (!( istype(T, /turf) ))
|
||||
return
|
||||
|
||||
if (dug)
|
||||
user << "\red This area has already been dug"
|
||||
return
|
||||
|
||||
user << "\red You start digging."
|
||||
playsound(src.loc, 'sound/effects/rustle1.ogg', 50, 1) //russle sounds sounded better
|
||||
|
||||
sleep(0)
|
||||
if ((user.loc == T && user.get_active_hand() == W))
|
||||
user << "\blue 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)
|
||||
for(var/obj/item/weapon/ore/O in src.contents)
|
||||
O.attackby(W,user)
|
||||
return
|
||||
|
||||
else
|
||||
..(W,user)
|
||||
return
|
||||
|
||||
/turf/unsimulated/floor/plating/airless/asteroid/proc/gets_dug()
|
||||
if(dug)
|
||||
return
|
||||
new/obj/item/weapon/ore/glass(src)
|
||||
new/obj/item/weapon/ore/glass(src)
|
||||
new/obj/item/weapon/ore/glass(src)
|
||||
new/obj/item/weapon/ore/glass(src)
|
||||
new/obj/item/weapon/ore/glass(src)
|
||||
dug = 1
|
||||
icon_state = "asteroid_dug"
|
||||
return
|
||||
|
||||
/turf/unsimulated/floor/plating/airless/asteroid/proc/updateMineralOverlays()
|
||||
|
||||
src.overlays.Cut()
|
||||
|
||||
if(istype(get_step(src, NORTH), /turf/unsimulated/mineral))
|
||||
src.overlays += image('icons/turf/walls.dmi', "rock_side_n")
|
||||
if(istype(get_step(src, SOUTH), /turf/unsimulated/mineral))
|
||||
src.overlays += image('icons/turf/walls.dmi', "rock_side_s", layer=6)
|
||||
if(istype(get_step(src, EAST), /turf/unsimulated/mineral))
|
||||
src.overlays += image('icons/turf/walls.dmi', "rock_side_e", layer=6)
|
||||
if(istype(get_step(src, WEST), /turf/unsimulated/mineral))
|
||||
src.overlays += image('icons/turf/walls.dmi', "rock_side_w", layer=6)
|
||||
|
||||
/turf/unsimulated/floor/plating/airless/asteroid/proc/fullUpdateMineralOverlays()
|
||||
var/turf/unsimulated/floor/plating/airless/asteroid/A
|
||||
if(istype(get_step(src, WEST), /turf/unsimulated/floor/plating/airless/asteroid))
|
||||
A = get_step(src, WEST)
|
||||
A.updateMineralOverlays()
|
||||
if(istype(get_step(src, EAST), /turf/unsimulated/floor/plating/airless/asteroid))
|
||||
A = get_step(src, EAST)
|
||||
A.updateMineralOverlays()
|
||||
if(istype(get_step(src, NORTH), /turf/unsimulated/floor/plating/airless/asteroid))
|
||||
A = get_step(src, NORTH)
|
||||
A.updateMineralOverlays()
|
||||
if(istype(get_step(src, NORTHWEST), /turf/unsimulated/floor/plating/airless/asteroid))
|
||||
A = get_step(src, NORTHWEST)
|
||||
A.updateMineralOverlays()
|
||||
if(istype(get_step(src, NORTHEAST), /turf/unsimulated/floor/plating/airless/asteroid))
|
||||
A = get_step(src, NORTHEAST)
|
||||
A.updateMineralOverlays()
|
||||
if(istype(get_step(src, SOUTHWEST), /turf/unsimulated/floor/plating/airless/asteroid))
|
||||
A = get_step(src, SOUTHWEST)
|
||||
A.updateMineralOverlays()
|
||||
if(istype(get_step(src, SOUTHEAST), /turf/unsimulated/floor/plating/airless/asteroid))
|
||||
A = get_step(src, SOUTHEAST)
|
||||
A.updateMineralOverlays()
|
||||
if(istype(get_step(src, SOUTH), /turf/unsimulated/floor/plating/airless/asteroid))
|
||||
A = get_step(src, SOUTH)
|
||||
A.updateMineralOverlays()
|
||||
src.updateMineralOverlays()
|
||||
|
||||
/turf/unsimulated/floor/plating/airless/asteroid/Entered(atom/movable/M as mob|obj)
|
||||
..()
|
||||
if(istype(M,/mob/living/silicon/robot))
|
||||
var/mob/living/silicon/robot/R = M
|
||||
if(istype(R.module, /obj/item/weapon/robot_module/miner))
|
||||
if(istype(R.module_state_1,/obj/item/weapon/storage/bag/ore))
|
||||
src.attackby(R.module_state_1,R)
|
||||
else if(istype(R.module_state_2,/obj/item/weapon/storage/bag/ore))
|
||||
src.attackby(R.module_state_2,R)
|
||||
else if(istype(R.module_state_3,/obj/item/weapon/storage/bag/ore))
|
||||
src.attackby(R.module_state_3,R)
|
||||
else
|
||||
return
|
||||
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
Methylphenidate
|
||||
|
||||
#define ANTIDEPRESSANT_MESSAGE_DELAY 5*60*10
|
||||
|
||||
/datum/reagent/antidepressant/methylphenidate
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
anchored = 1
|
||||
spawn(drill_time)
|
||||
if(get_turf(src) == drilling_turf && active)
|
||||
M.gets_drilled()
|
||||
M.GetDrilled()
|
||||
src.loc = M
|
||||
drilling_turf = null
|
||||
anchored = 0
|
||||
|
||||
@@ -57,44 +57,45 @@
|
||||
|
||||
age = rand(1,999)
|
||||
|
||||
switch(container.mineralName)
|
||||
if("Uranium")
|
||||
age_million = rand(1, 704)
|
||||
age_thousand = rand(1,999)
|
||||
find_presence["potassium"] = rand(1,1000) / 100
|
||||
source_mineral = "potassium"
|
||||
if("Iron")
|
||||
age_thousand = rand(1, 999)
|
||||
age_million = rand(1, 999)
|
||||
find_presence["iron"] = rand(1,1000) / 100
|
||||
source_mineral = "iron"
|
||||
if("Diamond")
|
||||
age_thousand = rand(1,999)
|
||||
age_million = rand(1,999)
|
||||
find_presence["nitrogen"] = rand(1,1000) / 100
|
||||
source_mineral = "nitrogen"
|
||||
if("Gold")
|
||||
age_thousand = rand(1,999)
|
||||
age_million = rand(1,999)
|
||||
age_billion = rand(3,4)
|
||||
find_presence["iron"] = rand(1,1000) / 100
|
||||
source_mineral = "iron"
|
||||
if("Silver")
|
||||
age_thousand = rand(1,999)
|
||||
age_million = rand(1,999)
|
||||
find_presence["iron"] = rand(1,1000) / 100
|
||||
source_mineral = "iron"
|
||||
if("Plasma")
|
||||
age_thousand = rand(1,999)
|
||||
age_million = rand(1,999)
|
||||
age_billion = rand(10, 13)
|
||||
find_presence["plasma"] = rand(1,1000) / 100
|
||||
source_mineral = "plasma"
|
||||
if("Clown")
|
||||
age = rand(-1,-999) //thats the joke
|
||||
age_thousand = rand(-1,-999)
|
||||
find_presence["plasma"] = rand(1,1000) / 100
|
||||
source_mineral = "plasma"
|
||||
if(container.mineral)
|
||||
switch(container.mineral.name)
|
||||
if("Uranium")
|
||||
age_million = rand(1, 704)
|
||||
age_thousand = rand(1,999)
|
||||
find_presence["potassium"] = rand(1,1000) / 100
|
||||
source_mineral = "potassium"
|
||||
if("Iron")
|
||||
age_thousand = rand(1, 999)
|
||||
age_million = rand(1, 999)
|
||||
find_presence["iron"] = rand(1,1000) / 100
|
||||
source_mineral = "iron"
|
||||
if("Diamond")
|
||||
age_thousand = rand(1,999)
|
||||
age_million = rand(1,999)
|
||||
find_presence["nitrogen"] = rand(1,1000) / 100
|
||||
source_mineral = "nitrogen"
|
||||
if("Gold")
|
||||
age_thousand = rand(1,999)
|
||||
age_million = rand(1,999)
|
||||
age_billion = rand(3,4)
|
||||
find_presence["iron"] = rand(1,1000) / 100
|
||||
source_mineral = "iron"
|
||||
if("Silver")
|
||||
age_thousand = rand(1,999)
|
||||
age_million = rand(1,999)
|
||||
find_presence["iron"] = rand(1,1000) / 100
|
||||
source_mineral = "iron"
|
||||
if("Plasma")
|
||||
age_thousand = rand(1,999)
|
||||
age_million = rand(1,999)
|
||||
age_billion = rand(10, 13)
|
||||
find_presence["plasma"] = rand(1,1000) / 100
|
||||
source_mineral = "plasma"
|
||||
if("Clown")
|
||||
age = rand(-1,-999) //thats the joke
|
||||
age_thousand = rand(-1,-999)
|
||||
find_presence["plasma"] = rand(1,1000) / 100
|
||||
source_mineral = "plasma"
|
||||
|
||||
if(prob(75))
|
||||
find_presence["phosphorus"] = rand(1,500) / 100
|
||||
|
||||
@@ -273,8 +273,8 @@
|
||||
switch(scanned_item.type)
|
||||
if(/obj/item/weapon/ore)
|
||||
var/obj/item/weapon/ore/O = scanned_item
|
||||
if(O.geological_data)
|
||||
G = O.geological_data
|
||||
if(O.geologic_data)
|
||||
G = O.geologic_data
|
||||
|
||||
if(/obj/item/weapon/rocksliver)
|
||||
var/obj/item/weapon/rocksliver/O = scanned_item
|
||||
|
||||
@@ -1,3 +1,52 @@
|
||||
#define XENOARCH_SPAWN_CHANCE 0.5
|
||||
#define XENOARCH_SPREAD_CHANCE 15
|
||||
#define ARTIFACT_SPAWN_CHANCE 20
|
||||
|
||||
proc/SetupXenoarch()
|
||||
for(var/turf/simulated/mineral/M in block(locate(1,1,1), locate(world.maxx, world.maxy, world.maxz)))
|
||||
if(!M.geologic_data)
|
||||
M.geologic_data = new/datum/geosample(M)
|
||||
|
||||
if(!prob(XENOARCH_SPAWN_CHANCE))
|
||||
continue
|
||||
|
||||
var/digsite = get_random_digsite_type()
|
||||
var/list/processed_turfs = list()
|
||||
var/list/turfs_to_process = list(M)
|
||||
for(var/turf/simulated/mineral/archeo_turf in turfs_to_process)
|
||||
|
||||
for(var/turf/simulated/mineral/T in orange(1, archeo_turf))
|
||||
if(T.finds)
|
||||
continue
|
||||
if(T in processed_turfs)
|
||||
continue
|
||||
if(prob(XENOARCH_SPREAD_CHANCE))
|
||||
turfs_to_process.Add(T)
|
||||
|
||||
processed_turfs.Add(archeo_turf)
|
||||
if(!archeo_turf.finds)
|
||||
archeo_turf.finds = list()
|
||||
if(prob(50))
|
||||
archeo_turf.finds.Add(new /datum/find(digsite, rand(5,95)))
|
||||
else if(prob(75))
|
||||
archeo_turf.finds.Add(new /datum/find(digsite, rand(5,45)))
|
||||
archeo_turf.finds.Add(new /datum/find(digsite, rand(55,95)))
|
||||
else
|
||||
archeo_turf.finds.Add(new /datum/find(digsite, rand(5,30)))
|
||||
archeo_turf.finds.Add(new /datum/find(digsite, rand(35,75)))
|
||||
archeo_turf.finds.Add(new /datum/find(digsite, rand(75,95)))
|
||||
|
||||
//sometimes a find will be close enough to the surface to show
|
||||
var/datum/find/F = archeo_turf.finds[1]
|
||||
if(F.excavation_required <= F.view_range)
|
||||
archeo_turf.archaeo_overlay = "overlay_archaeo[rand(1,3)]"
|
||||
archeo_turf.overlays += archeo_turf.archaeo_overlay
|
||||
|
||||
//dont create artifact machinery in animal or plant digsites, or if we already have one
|
||||
if(!M.artifact_find && digsite != 1 && digsite != 2 && prob(ARTIFACT_SPAWN_CHANCE))
|
||||
M.artifact_find = new()
|
||||
artifact_spawn.Add(src)
|
||||
|
||||
|
||||
//---- Noticeboard
|
||||
|
||||
|
||||
@@ -51,11 +51,11 @@
|
||||
var/datum/geosample/geo_data
|
||||
if(istype(item_to_sample, /turf/simulated/mineral))
|
||||
var/turf/simulated/mineral/T = item_to_sample
|
||||
T.geological_data.UpdateNearbyArtifactInfo(T)
|
||||
geo_data = T.geological_data
|
||||
T.geologic_data.UpdateNearbyArtifactInfo(T)
|
||||
geo_data = T.geologic_data
|
||||
else if(istype(item_to_sample, /obj/item/weapon/ore))
|
||||
var/obj/item/weapon/ore/O = item_to_sample
|
||||
geo_data = O.geological_data
|
||||
geo_data = O.geologic_data
|
||||
|
||||
if(geo_data)
|
||||
if(filled_bag)
|
||||
|
||||
@@ -28,14 +28,14 @@
|
||||
user.visible_message("\blue [user] scans [A], the air around them humming gently.")
|
||||
if(istype(A,/turf/simulated/mineral))
|
||||
var/turf/simulated/mineral/M = A
|
||||
if(M.excavation_minerals.len || M.finds.len || M.artifact_find)
|
||||
if(M.finds.len || M.artifact_find)
|
||||
|
||||
//create a new scanlog entry
|
||||
var/datum/depth_scan/D = new()
|
||||
D.coords = "[M.x].[rand(0,9)]:[M.y].[rand(0,9)]:[10 * M.z].[rand(0,9)]"
|
||||
D.time = worldtime2text()
|
||||
D.record_index = positive_locations.len + 1
|
||||
D.material = M.mineralName
|
||||
D.material = M.mineral ? M.mineral.display_name : "Rock"
|
||||
|
||||
//find the first artifact and store it
|
||||
if(M.finds.len)
|
||||
@@ -44,13 +44,6 @@
|
||||
D.clearance = F.clearance_range * 2
|
||||
D.material = get_responsive_reagent(F.find_type)
|
||||
|
||||
//check if there are minerals interfering with the scan
|
||||
if(M.excavation_minerals.len)
|
||||
if(!D.depth || M.excavation_minerals[1] < D.depth)
|
||||
D.depth = M.excavation_minerals[1]
|
||||
D.clearance = rand() * 4 + 1
|
||||
D.material = M.mineralName
|
||||
|
||||
positive_locations.Add(D)
|
||||
|
||||
for(var/mob/L in range(src, 1))
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"ad" = (/turf/unsimulated/floor/plating/snow,/area/planet/clown)
|
||||
"ae" = (/obj/effect/decal/snow/clean/edge{tag = "icon-snow_corner (WEST)"; icon_state = "snow_corner"; dir = 8},/turf/unsimulated/floor/plating/snow/concrete,/area/planet/clown)
|
||||
"af" = (/obj/effect/decal/snow/clean/edge{tag = "icon-snow_corner (EAST)"; icon_state = "snow_corner"; dir = 4},/turf/unsimulated/floor/plating/snow/concrete,/area/planet/clown)
|
||||
"ag" = (/turf/unsimulated/mineral/random/high_chance_clown,/area/planet/clown)
|
||||
"ag" = (/turf/simulated/mineral/random/high_chance_clown,/area/planet/clown)
|
||||
"ah" = (/obj/structure/grille/fence/north_south,/obj/effect/decal/snow/clean/edge{tag = "icon-snow_corner (EAST)"; icon_state = "snow_corner"; dir = 4},/turf/unsimulated/floor/plating/snow/concrete,/area/planet/clown)
|
||||
"ai" = (/obj/structure/flora/tree/dead,/turf/unsimulated/floor/plating/snow,/area/planet/clown)
|
||||
"aj" = (/obj/structure/flora/tree/pine,/turf/unsimulated/floor/plating/snow,/area/planet/clown)
|
||||
|
||||
@@ -9385,14 +9385,14 @@
|
||||
"dyy" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_l (WEST)"; icon_state = "propulsion_l"; dir = 8},/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_l (WEST)"; icon_state = "propulsion_l"; dir = 8},/turf/space,/area)
|
||||
"dyz" = (/turf/simulated/mineral,/area/mine/unexplored)
|
||||
"dyA" = (/turf/space,/area/syndicate_station/mining)
|
||||
"dyB" = (/turf/unsimulated/floor/plating/airless/asteroid,/area)
|
||||
"dyB" = (/turf/simulated/floor/plating/airless/asteroid,/area)
|
||||
"dyC" = (/obj/structure/transit_tube{icon_state = "D-SE"},/obj/structure/lattice,/turf/space,/area)
|
||||
"dyD" = (/obj/structure/lattice,/obj/structure/transit_tube{icon_state = "E-SW"},/turf/space,/area)
|
||||
"dyE" = (/obj/structure/lattice,/obj/structure/transit_tube,/turf/space,/area)
|
||||
"dyF" = (/obj/structure/transit_tube,/turf/unsimulated/floor/plating/airless/asteroid,/area)
|
||||
"dyG" = (/obj/machinery/light/small,/obj/structure/transit_tube,/turf/unsimulated/floor/plating/airless/asteroid,/area/research_outpost/maintstore1)
|
||||
"dyH" = (/obj/structure/transit_tube,/turf/unsimulated/floor/plating/airless/asteroid,/area/research_outpost/maintstore1)
|
||||
"dyI" = (/obj/structure/transit_tube{icon_state = "W-SE"},/turf/unsimulated/floor/plating/airless/asteroid,/area/research_outpost/maintstore1)
|
||||
"dyF" = (/obj/structure/transit_tube,/turf/simulated/floor/plating/airless/asteroid,/area)
|
||||
"dyG" = (/obj/machinery/light/small,/obj/structure/transit_tube,/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/maintstore1)
|
||||
"dyH" = (/obj/structure/transit_tube,/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/maintstore1)
|
||||
"dyI" = (/obj/structure/transit_tube{icon_state = "W-SE"},/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/maintstore1)
|
||||
"dyJ" = (/obj/structure/transit_tube{icon_state = "D-SW"},/turf/simulated/mineral,/area/mine/unexplored)
|
||||
"dyK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/space,/area/research_outpost/hallway)
|
||||
"dyL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/research_outpost/hallway)
|
||||
@@ -9403,9 +9403,9 @@
|
||||
"dyQ" = (/obj/structure/transit_tube{icon_state = "D-NE"},/turf/simulated/wall/r_wall,/area/research_outpost/maintstore1)
|
||||
"dyR" = (/obj/structure/transit_tube{icon_state = "NW-SE"},/turf/simulated/wall/r_wall,/area/research_outpost/maintstore1)
|
||||
"dyS" = (/obj/structure/transit_tube{icon_state = "D-SE"},/turf/simulated/mineral,/area/mine/unexplored)
|
||||
"dyT" = (/obj/structure/transit_tube{icon_state = "E-SW"},/obj/machinery/light/small{dir = 1},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dyU" = (/obj/structure/transit_tube,/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dyV" = (/obj/structure/transit_tube,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/unsimulated/floor/plating/airless/asteroid,/area/research_outpost/hallway)
|
||||
"dyT" = (/obj/structure/transit_tube{icon_state = "E-SW"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dyU" = (/obj/structure/transit_tube,/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dyV" = (/obj/structure/transit_tube,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/hallway)
|
||||
"dyW" = (/obj/structure/transit_tube/station,/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/research_outpost/hallway)
|
||||
"dyX" = (/obj/structure/transit_tube,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/research_outpost/hallway)
|
||||
"dyY" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/transit_tube,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/research_outpost/hallway)
|
||||
@@ -9443,7 +9443,7 @@
|
||||
"dzE" = (/obj/machinery/door_control{id = "rdorm2"; name = "Door Bolt Control"; normaldoorcontrol = 1; pixel_x = -25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/carpet,/area/research_outpost/hallway)
|
||||
"dzF" = (/obj/structure/transit_tube{icon_state = "D-NE"},/obj/structure/lattice,/turf/space,/area)
|
||||
"dzG" = (/obj/structure/transit_tube{icon_state = "S-NW"},/obj/structure/lattice,/turf/space,/area)
|
||||
"dzH" = (/turf/unsimulated/mineral/random,/area/mine/unexplored)
|
||||
"dzH" = (/turf/simulated/mineral/random,/area/mine/unexplored)
|
||||
"dzI" = (/obj/structure/closet/crate/hydroponics,/obj/item/weapon/shovel/spade,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/weapon/minihoe,/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 13; pixel_y = 5},/obj/item/weedkiller/triclopyr,/obj/item/nutrient/ez,/turf/simulated/floor/plating,/area/research_outpost/maintstore1)
|
||||
"dzJ" = (/obj/machinery/light/small,/obj/structure/closet/walllocker/emerglocker/north{dir = 1; pixel_y = -32},/turf/simulated/floor/plating,/area/research_outpost/maintstore1)
|
||||
"dzK" = (/obj/machinery/door/firedoor/border_only{dir = 4; layer = 2.6; name = "Firelock"},/obj/machinery/door/airlock/maintenance{name = "Auxiliary Storage"; req_access_txt = "0"; req_one_access_txt = "65;12"},/turf/simulated/floor{icon_state = "white"},/area/research_outpost/maintstore1)
|
||||
@@ -9576,7 +9576,7 @@
|
||||
"dCh" = (/obj/item/weapon/shard{icon_state = "medium"},/obj/effect/alien/weeds{icon_state = "weeds"},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/mine/abandoned)
|
||||
"dCi" = (/turf/simulated/floor/airless{icon_state = "damaged5"},/area/mine/abandoned)
|
||||
"dCj" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/mine/abandoned)
|
||||
"dCk" = (/turf/unsimulated/mineral/random,/area/mine/explored)
|
||||
"dCk" = (/turf/simulated/mineral/random,/area/mine/explored)
|
||||
"dCl" = (/turf/space,/area/mine/explored)
|
||||
"dCm" = (/obj/structure/lattice,/obj/structure/transit_tube{icon_state = "S-NE"},/turf/space,/area)
|
||||
"dCn" = (/obj/machinery/atmospherics/pipe/simple{color = "red"; icon_state = "intact-r-f"; level = 1; name = "pipe"},/turf/simulated/wall/r_wall,/area/research_outpost/spectro)
|
||||
@@ -9597,7 +9597,7 @@
|
||||
"dCC" = (/obj/machinery/atmospherics/pipe/manifold{color = "blue"; icon_state = "manifold-b"; level = 2; name = "pipe manifold"},/obj/machinery/light/small,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor/plating,/area/research_outpost/atmos)
|
||||
"dCD" = (/obj/machinery/atmospherics/pipe/manifold{color = "blue"; icon_state = "manifold-b"; level = 2; name = "pipe manifold"},/obj/machinery/meter,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/research_outpost/atmos)
|
||||
"dCE" = (/obj/structure/sign/fire{pixel_x = 32},/obj/machinery/atmospherics/pipe/simple{color = "red"; icon_state = "intact-r"; level = 2},/obj/machinery/atmospherics/pipe/tank/air{dir = 8},/turf/simulated/floor/plating,/area/research_outpost/atmos)
|
||||
"dCF" = (/obj/structure/transit_tube{icon_state = "N-S"},/turf/unsimulated/floor/plating/airless/asteroid,/area/research_outpost/atmos)
|
||||
"dCF" = (/obj/structure/transit_tube{icon_state = "N-S"},/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/atmos)
|
||||
"dCG" = (/turf/simulated/mineral,/area/research_outpost/atmos)
|
||||
"dCH" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-pwall (NORTHEAST)"; icon_state = "pwall"; dir = 5},/area)
|
||||
"dCI" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-pwall (NORTHWEST)"; icon_state = "pwall"; dir = 9},/area)
|
||||
@@ -9630,7 +9630,7 @@
|
||||
"dDj" = (/obj/machinery/door/firedoor/border_only{dir = 4; layer = 2.6; name = "Firelock"},/obj/machinery/door/airlock/glass_atmos{name = "Outpost Atmospherics"; req_access_txt = "0"; req_one_access_txt = "65;10;24"},/turf/simulated/floor,/area/research_outpost/power)
|
||||
"dDk" = (/obj/machinery/atmospherics/pipe/simple{color = "red"; dir = 5; icon_state = "intact-r"; level = 2},/turf/simulated/wall/r_wall,/area/research_outpost/power)
|
||||
"dDl" = (/obj/machinery/atmospherics/pipe/simple{color = "red"; dir = 4; icon_state = "intact-r"; level = 2},/turf/simulated/wall/r_wall,/area/research_outpost/power)
|
||||
"dDm" = (/obj/structure/transit_tube{icon_state = "N-S"},/obj/machinery/atmospherics/pipe/simple{color = "red"; dir = 4; icon_state = "intact-r"; level = 2},/turf/unsimulated/floor/plating/airless/asteroid,/area/research_outpost/atmos)
|
||||
"dDm" = (/obj/structure/transit_tube{icon_state = "N-S"},/obj/machinery/atmospherics/pipe/simple{color = "red"; dir = 4; icon_state = "intact-r"; level = 2},/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/atmos)
|
||||
"dDn" = (/obj/machinery/atmospherics/pipe/simple{color = "red"; dir = 4; icon_state = "intact-r"; level = 2},/turf/simulated/mineral,/area/research_outpost/atmos)
|
||||
"dDo" = (/obj/machinery/atmospherics/pipe/vent{dir = 8},/turf/simulated/floor/plating,/area/research_outpost/atmos)
|
||||
"dDp" = (/obj/item/stack/rods,/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/shard,/turf/simulated/floor/plating,/area/mine/abandoned)
|
||||
@@ -9663,7 +9663,7 @@
|
||||
"dDQ" = (/obj/machinery/power/port_gen/pacman{anchored = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/sign/nosmoking_1{pixel_y = 32},/turf/simulated/floor/plating,/area/research_outpost/power)
|
||||
"dDR" = (/obj/machinery/power/terminal{dir = 4},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/research_outpost/power)
|
||||
"dDS" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/sign/electricshock{pixel_x = 32},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating,/area/research_outpost/power)
|
||||
"dDT" = (/obj/structure/transit_tube{icon_state = "N-S"},/obj/machinery/light/small{dir = 8},/turf/unsimulated/floor/plating/airless/asteroid,/area/research_outpost/atmos)
|
||||
"dDT" = (/obj/structure/transit_tube{icon_state = "N-S"},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/atmos)
|
||||
"dDU" = (/obj/structure/lattice,/obj/item/weapon/shard{icon_state = "medium"},/turf/space,/area)
|
||||
"dDV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/mine/abandoned)
|
||||
"dDW" = (/obj/effect/alien/weeds{icon_state = "weeds2"},/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/mine/abandoned)
|
||||
@@ -9692,8 +9692,8 @@
|
||||
"dEt" = (/obj/machinery/power/terminal{dir = 4},/obj/structure/cable,/turf/simulated/floor/plating,/area/research_outpost/power)
|
||||
"dEu" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/research_outpost/power)
|
||||
"dEv" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/wall/r_wall,/area/research_outpost/power)
|
||||
"dEw" = (/obj/structure/transit_tube{icon_state = "N-S"},/obj/structure/disposalpipe/segment{dir = 4},/turf/unsimulated/floor/plating/airless/asteroid,/area/research_outpost/power)
|
||||
"dEx" = (/obj/structure/disposaloutlet{dir = 2},/obj/structure/disposalpipe/trunk{dir = 8},/turf/unsimulated/floor/plating/airless/asteroid,/area/research_outpost/power)
|
||||
"dEw" = (/obj/structure/transit_tube{icon_state = "N-S"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/power)
|
||||
"dEx" = (/obj/structure/disposaloutlet{dir = 2},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/power)
|
||||
"dEy" = (/turf/simulated/mineral,/area/research_outpost/power)
|
||||
"dEz" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/mine/abandoned)
|
||||
"dEA" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating/airless,/area/mine/abandoned)
|
||||
@@ -9716,9 +9716,9 @@
|
||||
"dER" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/research_outpost/power)
|
||||
"dES" = (/obj/machinery/portable_atmospherics/scrubber,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/research_outpost/power)
|
||||
"dET" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 2},/turf/simulated/floor/plating,/area/research_outpost/power)
|
||||
"dEU" = (/obj/structure/transit_tube{icon_state = "N-S"},/turf/unsimulated/floor/plating/airless/asteroid,/area/research_outpost/power)
|
||||
"dEV" = (/obj/machinery/mass_driver{dir = 4; id = "research"},/turf/unsimulated/floor/plating/airless/asteroid,/area/research_outpost/power)
|
||||
"dEW" = (/turf/unsimulated/floor/plating/airless/asteroid,/area/research_outpost/power)
|
||||
"dEU" = (/obj/structure/transit_tube{icon_state = "N-S"},/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/power)
|
||||
"dEV" = (/obj/machinery/mass_driver{dir = 4; id = "research"},/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/power)
|
||||
"dEW" = (/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/power)
|
||||
"dEX" = (/obj/item/stack/rods,/obj/structure/lattice,/turf/space,/area)
|
||||
"dEY" = (/obj/item/weapon/shard,/obj/item/stack/rods,/turf/simulated/floor/plating/airless,/area/mine/abandoned)
|
||||
"dEZ" = (/turf/simulated/floor/plating/airless,/area/mine/abandoned)
|
||||
@@ -9972,7 +9972,7 @@
|
||||
"dJN" = (/obj/item/weapon/shard,/turf/simulated/floor/airless{icon_state = "floorscorched2"},/area/mine/abandoned)
|
||||
"dJO" = (/obj/item/weapon/shard{icon_state = "small"},/turf/simulated/floor/airless,/area/mine/abandoned)
|
||||
"dJP" = (/obj/effect/alien/weeds,/turf/simulated/floor/airless{icon_state = "damaged3"},/area/mine/abandoned)
|
||||
"dJQ" = (/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dJQ" = (/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dJR" = (/turf/simulated/wall,/area/mine/unexplored)
|
||||
"dJS" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'INTERNALS REQUIRED'."; name = "INTERNALS REQUIRED"; pixel_x = -32; pixel_y = 0},/turf/space,/area)
|
||||
"dJT" = (/obj/structure/transit_tube{icon_state = "D-SE"},/turf/simulated/wall,/area/research_outpost/entry)
|
||||
@@ -10013,8 +10013,8 @@
|
||||
"dKC" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/mine/abandoned)
|
||||
"dKD" = (/obj/effect/alien/weeds{icon_state = "weeds2"},/turf/simulated/floor,/area/mine/abandoned)
|
||||
"dKE" = (/obj/effect/alien/weeds{icon_state = "weeds"},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/mine/abandoned)
|
||||
"dKF" = (/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dKG" = (/obj/structure/transit_tube{tag = "icon-E-SW"; icon_state = "E-SW"},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dKF" = (/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dKG" = (/obj/structure/transit_tube{tag = "icon-E-SW"; icon_state = "E-SW"},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dKH" = (/turf/simulated/wall,/area/research_outpost/gearstore)
|
||||
"dKI" = (/obj/structure/closet/excavation,/turf/simulated/floor,/area/research_outpost/gearstore)
|
||||
"dKJ" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor,/area/research_outpost/gearstore)
|
||||
@@ -10055,8 +10055,8 @@
|
||||
"dLs" = (/obj/effect/alien/weeds{icon_state = "weeds2"},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/mine/abandoned)
|
||||
"dLt" = (/obj/effect/decal/remains/xeno,/turf/simulated/floor,/area/mine/abandoned)
|
||||
"dLu" = (/obj/effect/alien/weeds{icon_state = "weeds"},/turf/simulated/floor/airless{icon_state = "damaged3"},/area/mine/abandoned)
|
||||
"dLv" = (/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/obj/machinery/light/small{dir = 8},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dLw" = (/obj/structure/transit_tube{tag = "icon-NE-SW"; icon_state = "NE-SW"},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dLv" = (/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dLw" = (/obj/structure/transit_tube{tag = "icon-NE-SW"; icon_state = "NE-SW"},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dLx" = (/obj/structure/transit_tube{tag = "icon-D-NW"; icon_state = "D-NW"},/turf/simulated/mineral,/area/mine/unexplored)
|
||||
"dLy" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor,/area/research_outpost/gearstore)
|
||||
"dLz" = (/obj/structure/rack,/obj/item/weapon/storage/belt/archaeology,/obj/item/clothing/suit/space/anomaly,/obj/item/clothing/head/helmet/space/anomaly,/obj/item/clothing/mask/breath,/obj/machinery/atmospherics/pipe/simple{color = "red"; dir = 4; icon_state = "intact-r-f"; level = 1},/turf/simulated/floor,/area/research_outpost/gearstore)
|
||||
@@ -10085,7 +10085,7 @@
|
||||
"dLW" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/research_outpost/longtermstorage)
|
||||
"dLX" = (/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/research_outpost/longtermstorage)
|
||||
"dLY" = (/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/research_outpost/longtermstorage)
|
||||
"dLZ" = (/obj/structure/transit_tube{icon_state = "D-SE"},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dLZ" = (/obj/structure/transit_tube{icon_state = "D-SE"},/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dMa" = (/obj/structure/transit_tube{icon_state = "W-NE"},/obj/structure/lattice,/turf/space,/area)
|
||||
"dMb" = (/obj/structure/transit_tube{icon_state = "D-NW"},/turf/space,/area)
|
||||
"dMc" = (/turf/simulated/floor{icon_state = "green"; dir = 8},/area/mine/abandoned)
|
||||
@@ -10093,8 +10093,8 @@
|
||||
"dMe" = (/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/simulated/floor,/area/mine/abandoned)
|
||||
"dMf" = (/obj/effect/alien/weeds{icon_state = "weeds"},/turf/simulated/floor/airless{icon_state = "floorscorched1"},/area/mine/abandoned)
|
||||
"dMg" = (/turf/simulated/wall,/area/mine/explored)
|
||||
"dMh" = (/obj/structure/ore_box,/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dMi" = (/obj/structure/transit_tube{tag = "icon-S-NE"; icon_state = "S-NE"},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dMh" = (/obj/structure/ore_box,/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dMi" = (/obj/structure/transit_tube{tag = "icon-S-NE"; icon_state = "S-NE"},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dMj" = (/obj/structure/transit_tube{tag = "icon-D-NW"; icon_state = "D-NW"},/turf/simulated/mineral,/area/mine/explored)
|
||||
"dMk" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; layer = 2.4; on = 1},/turf/simulated/floor,/area/research_outpost/gearstore)
|
||||
"dMl" = (/obj/machinery/atmospherics/pipe/simple{color = "blue"; dir = 4; icon_state = "intact-b-f"; level = 1; name = "pipe"},/turf/simulated/floor,/area/research_outpost/gearstore)
|
||||
@@ -10120,15 +10120,15 @@
|
||||
"dMF" = (/obj/structure/dispenser,/turf/simulated/floor/plating,/area/research_outpost/maintstore2)
|
||||
"dMG" = (/turf/simulated/floor{dir = 4; icon_state = "vault"; name = "Mainframe floor"; nitrogen = 100; oxygen = 0; tag = "icon-vault (EAST)"; temperature = 80},/area/research_outpost/longtermstorage)
|
||||
"dMH" = (/turf/simulated/floor{dir = 1; icon_state = "vault"; name = "Mainframe floor"; nitrogen = 100; oxygen = 0; tag = "icon-vault (NORTH)"; temperature = 80},/area/research_outpost/longtermstorage)
|
||||
"dMI" = (/obj/structure/transit_tube{tag = "icon-S-NE"; icon_state = "S-NE"},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dMJ" = (/obj/structure/transit_tube{tag = "icon-D-NW"; icon_state = "D-NW"},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dMI" = (/obj/structure/transit_tube{tag = "icon-S-NE"; icon_state = "S-NE"},/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dMJ" = (/obj/structure/transit_tube{tag = "icon-D-NW"; icon_state = "D-NW"},/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dMK" = (/obj/effect/decal/remains/human,/turf/simulated/floor{icon_state = "green"; dir = 8},/area/mine/abandoned)
|
||||
"dML" = (/obj/effect/alien/resin,/turf/simulated/floor/airless{icon_state = "floorgrime"},/area/mine/abandoned)
|
||||
"dMM" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/mine/abandoned)
|
||||
"dMN" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/mine/abandoned)
|
||||
"dMO" = (/obj/effect/alien/weeds{icon_state = "weeds2"},/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/simulated/floor/airless{icon_state = "damaged5"},/area/mine/abandoned)
|
||||
"dMP" = (/obj/structure/ore_box,/obj/machinery/light_construct/small{dir = 1},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dMQ" = (/obj/machinery/light_construct/small{dir = 4},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dMP" = (/obj/structure/ore_box,/obj/machinery/light_construct/small{dir = 1},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dMQ" = (/obj/machinery/light_construct/small{dir = 4},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dMR" = (/obj/structure/transit_tube{tag = "icon-N-S"; icon_state = "N-S"},/turf/simulated/wall,/area/mine/explored)
|
||||
"dMS" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/research_outpost/gearstore)
|
||||
"dMT" = (/obj/structure/dispenser/oxygen,/turf/simulated/floor,/area/research_outpost/gearstore)
|
||||
@@ -10150,7 +10150,7 @@
|
||||
"dNj" = (/obj/structure/rack,/obj/item/weapon/storage/box/gloves,/obj/item/weapon/storage/box/samplebags{pixel_x = 3; pixel_y = -3},/obj/machinery/power/apc{dir = 4; name = "Maintenance Storage APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/research_outpost/maintstore2)
|
||||
"dNk" = (/turf/simulated/wall/r_wall,/area/research_outpost/maintstore2)
|
||||
"dNl" = (/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/turf/simulated/wall/r_wall,/area/research_outpost/longtermstorage)
|
||||
"dNm" = (/obj/structure/transit_tube{tag = "icon-N-SW"; icon_state = "N-SW"},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dNm" = (/obj/structure/transit_tube{tag = "icon-N-SW"; icon_state = "N-SW"},/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dNn" = (/obj/effect/alien/weeds{icon_state = "weeds2"},/turf/simulated/floor/airless{icon_state = "damaged3"},/area/mine/abandoned)
|
||||
"dNo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/shard,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/abandoned)
|
||||
"dNp" = (/obj/machinery/door/airlock/glass{name = "Glass Airlock"; req_access_txt = "0"},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
|
||||
@@ -10178,14 +10178,14 @@
|
||||
"dNL" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1; pump_direction = 0},/turf/simulated/floor/engine{name = "vacuum floor"; nitrogen = 0.01; oxygen = 0.01},/area/research_outpost/iso3)
|
||||
"dNM" = (/obj/structure/rack,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/simulated/floor/plating,/area/research_outpost/maintstore2)
|
||||
"dNN" = (/obj/structure/rack,/obj/item/weapon/storage/box/lights/bulbs{pixel_x = 5; pixel_y = 5},/obj/item/weapon/storage/box/lights/tubes{pixel_x = -5; pixel_y = 5},/obj/item/weapon/storage/box/lights/mixed,/obj/machinery/light/small,/turf/simulated/floor/plating,/area/research_outpost/maintstore2)
|
||||
"dNO" = (/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/turf/unsimulated/mineral/random,/area/mine/unexplored)
|
||||
"dNP" = (/obj/structure/transit_tube{tag = "icon-NE-SW"; icon_state = "NE-SW"},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dNQ" = (/obj/structure/transit_tube{tag = "icon-D-NW"; icon_state = "D-NW"},/obj/machinery/light/small{dir = 4},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dNO" = (/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/turf/simulated/mineral/random,/area/mine/unexplored)
|
||||
"dNP" = (/obj/structure/transit_tube{tag = "icon-NE-SW"; icon_state = "NE-SW"},/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dNQ" = (/obj/structure/transit_tube{tag = "icon-D-NW"; icon_state = "D-NW"},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dNR" = (/obj/effect/decal/remains/human,/obj/item/clothing/mask/facehugger{icon_state = "facehugger_dead"; stat = 2},/turf/simulated/floor,/area/mine/abandoned)
|
||||
"dNS" = (/obj/item/weapon/table_parts,/turf/simulated/floor,/area/mine/abandoned)
|
||||
"dNT" = (/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
|
||||
"dNU" = (/obj/structure/rack,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
|
||||
"dNV" = (/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dNV" = (/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dNW" = (/obj/machinery/door/window/westleft,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/explored)
|
||||
"dNX" = (/obj/structure/transit_tube/station{dir = 8; icon_state = "closed"; tag = "icon-closed (EAST)"},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/mine/explored)
|
||||
"dNY" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/lattice,/turf/space,/area)
|
||||
@@ -10196,8 +10196,8 @@
|
||||
"dOd" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "research_inner"; locked = 1; name = "Research Outpost External Access"; req_access = null; req_access_txt = null},/obj/machinery/atmospherics/pipe/simple{color = "cyan"; dir = 1; icon_state = "intact-c-f"; level = 1},/turf/simulated/floor,/area/research_outpost/gearstore)
|
||||
"dOe" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/mine/explored)
|
||||
"dOf" = (/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/turf/simulated/wall/r_wall,/area/research_outpost/maintstore2)
|
||||
"dOg" = (/obj/structure/transit_tube{tag = "icon-E-SW"; icon_state = "E-SW"},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dOh" = (/obj/structure/transit_tube{tag = "icon-W-NE"; icon_state = "W-NE"},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dOg" = (/obj/structure/transit_tube{tag = "icon-E-SW"; icon_state = "E-SW"},/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dOh" = (/obj/structure/transit_tube{tag = "icon-W-NE"; icon_state = "W-NE"},/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dOi" = (/obj/item/weapon/rack_parts,/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/abandoned)
|
||||
"dOj" = (/obj/structure/girder/displaced,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/abandoned)
|
||||
"dOk" = (/obj/machinery/door/window/westleft,/obj/machinery/light/small,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/explored)
|
||||
@@ -10220,7 +10220,7 @@
|
||||
"dOB" = (/turf/simulated/wall/r_wall,/area/mine/explored)
|
||||
"dOC" = (/obj/structure/transit_tube{tag = "icon-D-SE"; icon_state = "D-SE"},/turf/simulated/mineral,/area/mine/unexplored)
|
||||
"dOD" = (/obj/structure/transit_tube{tag = "icon-NE-SW"; icon_state = "NE-SW"},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/unexplored)
|
||||
"dOE" = (/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/libertycap,/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dOE" = (/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/libertycap,/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dOF" = (/obj/structure/girder,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/abandoned)
|
||||
"dOG" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/mine/explored)
|
||||
"dOH" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/transit_tube{tag = "icon-D-NE"; icon_state = "D-NE"},/turf/simulated/floor/plating,/area/mine/explored)
|
||||
@@ -10236,7 +10236,7 @@
|
||||
"dOR" = (/turf/simulated/floor{icon_state = "warning"},/area/research_outpost/gearstore)
|
||||
"dOS" = (/obj/structure/ore_box,/turf/simulated/floor{icon_state = "warning"},/area/research_outpost/gearstore)
|
||||
"dOT" = (/obj/structure/transit_tube{tag = "icon-D-SW"; icon_state = "D-SW"},/turf/simulated/wall/r_wall,/area/mine/explored)
|
||||
"dOU" = (/obj/effect/glowshroom,/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dOU" = (/obj/effect/glowshroom,/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dOV" = (/obj/machinery/door/airlock/external{name = "Mining Bridge"; req_access_txt = "65"},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/explored)
|
||||
"dOW" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/airless,/area/mine/explored)
|
||||
"dOX" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "research_outer"; locked = 1; name = "Research Outpost External Access"; req_access = null; req_access_txt = "10;13"},/turf/simulated/floor/plating,/area/research_outpost/gearstore)
|
||||
@@ -10244,7 +10244,7 @@
|
||||
"dOZ" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'VACUUM'"; icon_state = "space"; layer = 4; name = "VACUUM"; pixel_x = 0; pixel_y = -32},/obj/machinery/door/window/westleft,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/explored)
|
||||
"dPa" = (/obj/structure/transit_tube{tag = "icon-D-NE"; icon_state = "D-NE"},/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/mine/explored)
|
||||
"dPb" = (/obj/structure/transit_tube{tag = "icon-E-NW"; icon_state = "E-NW"},/turf/simulated/wall/r_wall,/area/mine/explored)
|
||||
"dPc" = (/obj/structure/transit_tube,/obj/machinery/light/small{dir = 1},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dPc" = (/obj/structure/transit_tube,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dPd" = (/obj/structure/transit_tube,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/unexplored)
|
||||
"dPe" = (/obj/structure/transit_tube,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/mine/unexplored)
|
||||
"dPf" = (/obj/structure/transit_tube/station,/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/mine/unexplored)
|
||||
@@ -10258,17 +10258,17 @@
|
||||
"dPn" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/airless{tag = "icon-asteroidwarning (NORTHWEST)"; icon_state = "asteroidwarning"; dir = 9},/area/mine/explored)
|
||||
"dPo" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/airless{tag = "icon-asteroidwarning (NORTH)"; icon_state = "asteroidwarning"; dir = 1},/area/mine/explored)
|
||||
"dPp" = (/turf/simulated/floor/airless{tag = "icon-asteroidwarning (NORTHEAST)"; icon_state = "asteroidwarning"; dir = 5},/area/mine/explored)
|
||||
"dPq" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'VACUUM'"; icon_state = "space"; layer = 4; name = "VACUUM"; pixel_x = -32; pixel_y = -32},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dPq" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'VACUUM'"; icon_state = "space"; layer = 4; name = "VACUUM"; pixel_x = -32; pixel_y = -32},/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dPr" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/unexplored)
|
||||
"dPs" = (/obj/machinery/door/window/westleft{dir = 2},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/unexplored)
|
||||
"dPt" = (/obj/machinery/door/window/westleft{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/unexplored)
|
||||
"dPu" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/airless{tag = "icon-asteroidwarning"; icon_state = "asteroidwarning"; dir = 2},/area/mine/explored)
|
||||
"dPv" = (/obj/effect/glowshroom,/obj/machinery/light/small,/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dPv" = (/obj/effect/glowshroom,/obj/machinery/light/small,/turf/simulated/floor/plating/airless/asteroid,/area/mine/unexplored)
|
||||
"dPw" = (/turf/simulated/floor/airless{tag = "icon-asteroidwarning"; icon_state = "asteroidwarning"; dir = 2},/area/mine/abandoned)
|
||||
"dPx" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/simulated/floor/airless{tag = "icon-asteroidwarning"; icon_state = "asteroidwarning"; dir = 2},/area/mine/abandoned)
|
||||
"dPy" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/explored)
|
||||
"dPz" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille{density = 0; icon_state = "brokengrille"},/obj/item/stack/rods,/obj/item/weapon/shard,/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/abandoned)
|
||||
"dPA" = (/obj/machinery/light_construct/small,/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dPA" = (/obj/machinery/light_construct/small,/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dPB" = (/turf/simulated/mineral/random/high_chance,/area/mine/unexplored)
|
||||
"dPC" = (/turf/simulated/floor/airless{tag = "icon-asteroidwarning (SOUTHWEST)"; icon_state = "asteroidwarning"; dir = 10},/area/mine/unexplored)
|
||||
"dPD" = (/turf/simulated/floor/airless{tag = "icon-asteroidwarning"; icon_state = "asteroidwarning"; dir = 2},/area/mine/unexplored)
|
||||
@@ -10286,7 +10286,7 @@
|
||||
"dPP" = (/turf/simulated/floor,/area/mine/unexplored)
|
||||
"dPQ" = (/obj/machinery/sleeper{dir = 1},/turf/simulated/floor,/area/mine/unexplored)
|
||||
"dPR" = (/obj/machinery/camera{c_tag = "Labor Camp Bathroom"; dir = 8; network = list("SS13","Prison")},/obj/machinery/sleep_console,/turf/simulated/floor,/area/mine/unexplored)
|
||||
"dPS" = (/obj/machinery/light/small{dir = 4},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dPS" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dPT" = (/turf/simulated/wall/r_wall,/area/mine/unexplored)
|
||||
"dPU" = (/obj/machinery/computer/labor_shuttle/one_way,/turf/simulated/floor,/area/mine/unexplored)
|
||||
"dPV" = (/obj/structure/rack{dir = 1},/obj/item/weapon/pickaxe{pixel_x = 5},/obj/item/weapon/shovel{pixel_x = -5},/obj/item/clothing/glasses/meson,/obj/item/device/flashlight,/obj/item/weapon/storage/bag/ore,/turf/simulated/floor,/area/mine/unexplored)
|
||||
@@ -10345,7 +10345,7 @@
|
||||
"dQW" = (/obj/structure/closet/crate,/turf/simulated/floor{icon_state = "asteroidfloor"},/area/mine/unexplored)
|
||||
"dQX" = (/turf/simulated/mineral/random/high_chance,/area/mine/explored)
|
||||
"dQY" = (/obj/effect/decal/remains/human,/turf/simulated/floor{icon_plating = "asteroid"; icon_state = "asteroid"; name = "Asteroid"},/area/mine/unexplored)
|
||||
"dQZ" = (/obj/machinery/light/small{dir = 8},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dQZ" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dRa" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/explored)
|
||||
"dRb" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/explored)
|
||||
"dRc" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/airless{tag = "icon-asteroidwarning (WEST)"; icon_state = "asteroidwarning"; dir = 8},/area/mine/explored)
|
||||
@@ -10390,8 +10390,8 @@
|
||||
"dRP" = (/obj/machinery/conveyor{dir = 4; id = "nmining"},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/mine/explored)
|
||||
"dRQ" = (/obj/structure/lattice,/obj/machinery/disposal/deliveryChute{dir = 8},/obj/structure/disposalpipe/trunk{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/space,/area/mine/explored)
|
||||
"dRR" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced,/turf/space,/area/mine/explored)
|
||||
"dRS" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dRT" = (/obj/machinery/light/small,/obj/structure/disposalpipe/segment{dir = 4},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dRS" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dRT" = (/obj/machinery/light/small,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dRU" = (/obj/structure/disposalpipe/junction{tag = "icon-pipe-j2 (EAST)"; icon_state = "pipe-j2"; dir = 4},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/explored)
|
||||
"dRV" = (/obj/machinery/light/small,/turf/simulated/floor/plating,/area/mine/north_outpost)
|
||||
"dRW" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/mine/north_outpost)
|
||||
@@ -10406,7 +10406,7 @@
|
||||
"dSf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/light/small,/turf/simulated/floor/plating,/area/mine/north_outpost)
|
||||
"dSg" = (/obj/machinery/power/port_gen/pacman{anchored = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating,/area/mine/north_outpost)
|
||||
"dSh" = (/obj/machinery/power/port_gen/pacman{anchored = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/mine/north_outpost)
|
||||
"dSi" = (/obj/machinery/light/small,/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dSi" = (/obj/machinery/light/small,/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dSj" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/mine/explored)
|
||||
"dSk" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/mine/explored)
|
||||
"dSl" = (/obj/machinery/door/airlock/external{name = "Mining Bridge"; req_access_txt = "54"},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/explored)
|
||||
@@ -10445,10 +10445,10 @@
|
||||
"dSS" = (/obj/machinery/door/airlock{id_tag = "miningdorm1"; name = "Room 1"},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/mine/living_quarters)
|
||||
"dST" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet{dir = 1},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/explored)
|
||||
"dSU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple,/obj/machinery/light/small{dir = 4},/turf/simulated/floor,/area/mine/living_quarters)
|
||||
"dSV" = (/obj/structure/disposalpipe/segment,/turf/unsimulated/mineral/random,/area/mine/unexplored)
|
||||
"dSV" = (/obj/structure/disposalpipe/segment,/turf/simulated/mineral/random,/area/mine/unexplored)
|
||||
"dSW" = (/obj/machinery/light/small{dir = 4},/obj/machinery/door_control{id = "miningdorm2"; name = "Door Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/turf/simulated/floor/carpet,/area/mine/living_quarters)
|
||||
"dSX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/mine/living_quarters)
|
||||
"dSY" = (/obj/machinery/light/small{dir = 1},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dSY" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dSZ" = (/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/west_outpost)
|
||||
"dTa" = (/obj/machinery/door/airlock{id_tag = "miningdorm2"; name = "Room 2"},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/mine/living_quarters)
|
||||
"dTb" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/mine/living_quarters)
|
||||
@@ -10510,7 +10510,7 @@
|
||||
"dUf" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor,/area/mine/living_quarters)
|
||||
"dUg" = (/obj/structure/rack,/obj/item/clothing/suit/space/rig/mining,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig/mining,/turf/simulated/floor,/area/mine/eva)
|
||||
"dUh" = (/obj/structure/rack,/obj/item/weapon/storage/backpack/satchel,/obj/item/weapon/pickaxe,/obj/item/weapon/storage/belt/utility,/turf/simulated/floor,/area/mine/eva)
|
||||
"dUi" = (/obj/machinery/light,/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dUi" = (/obj/machinery/light,/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dUj" = (/obj/structure/table,/obj/item/weapon/storage/backpack/satchel,/obj/item/clothing/glasses/meson,/obj/machinery/light/small{dir = 8},/turf/simulated/floor,/area/mine/west_outpost)
|
||||
"dUk" = (/obj/machinery/door/airlock/glass_mining{name = "Break Room"; req_access_txt = "54"},/turf/simulated/floor,/area/mine/west_outpost)
|
||||
"dUl" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/mine/west_outpost)
|
||||
@@ -10712,7 +10712,7 @@
|
||||
"dXZ" = (/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/explored)
|
||||
"dYa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "mining_west_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = null},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/explored)
|
||||
"dYb" = (/turf/simulated/floor/airless{tag = "icon-asteroidwarning (EAST)"; icon_state = "asteroidwarning"; dir = 4},/area/mine/explored)
|
||||
"dYc" = (/obj/machinery/light{dir = 1},/turf/unsimulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dYc" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored)
|
||||
"dYd" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/simulated/floor/plating,/area/mine/production)
|
||||
"dYe" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/turf/simulated/floor/plating,/area/mine/production)
|
||||
"dYf" = (/obj/structure/closet/emcloset,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/mine/production)
|
||||
|
||||
Reference in New Issue
Block a user