mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
Asteroid unsimulated.
This commit is contained in:
@@ -130,7 +130,7 @@ proc/make_mining_asteroid_secret(var/size = 5)
|
|||||||
valid = 0
|
valid = 0
|
||||||
continue
|
continue
|
||||||
|
|
||||||
if(locate(/turf/simulated/floor/plating/airless/asteroid) in surroundings)
|
if(locate(/turf/unsimulated/floor/asteroid) in surroundings)
|
||||||
valid = 0
|
valid = 0
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
|||||||
@@ -89,8 +89,8 @@
|
|||||||
if(T == chassis.loc && src == chassis.selected)
|
if(T == chassis.loc && src == chassis.selected)
|
||||||
if(istype(target, /turf/simulated/wall/r_wall))
|
if(istype(target, /turf/simulated/wall/r_wall))
|
||||||
occupant_message("<font color='red'>[target] is too durable to drill through.</font>")
|
occupant_message("<font color='red'>[target] is too durable to drill through.</font>")
|
||||||
else if(istype(target, /turf/simulated/mineral))
|
else if(istype(target, /turf/unsimulated/mineral))
|
||||||
for(var/turf/simulated/mineral/M in range(chassis,1))
|
for(var/turf/unsimulated/mineral/M in range(chassis,1))
|
||||||
if(get_dir(chassis,M)&chassis.dir)
|
if(get_dir(chassis,M)&chassis.dir)
|
||||||
M.gets_drilled()
|
M.gets_drilled()
|
||||||
log_message("Drilled through [target]")
|
log_message("Drilled through [target]")
|
||||||
@@ -100,8 +100,8 @@
|
|||||||
for(var/obj/item/weapon/ore/ore in range(chassis,1))
|
for(var/obj/item/weapon/ore/ore in range(chassis,1))
|
||||||
if(get_dir(chassis,ore)&chassis.dir)
|
if(get_dir(chassis,ore)&chassis.dir)
|
||||||
ore.Move(ore_box)
|
ore.Move(ore_box)
|
||||||
else if(istype(target, /turf/simulated/floor/plating/airless/asteroid))
|
else if(istype(target, /turf/unsimulated/floor/asteroid))
|
||||||
for(var/turf/simulated/floor/plating/airless/asteroid/M in range(chassis,1))
|
for(var/turf/unsimulated/floor/asteroid/M in range(chassis,1))
|
||||||
if(get_dir(chassis,M)&chassis.dir)
|
if(get_dir(chassis,M)&chassis.dir)
|
||||||
M.gets_dug()
|
M.gets_dug()
|
||||||
log_message("Drilled through [target]")
|
log_message("Drilled through [target]")
|
||||||
@@ -153,8 +153,8 @@
|
|||||||
if(do_after_cooldown(target))//To slow down how fast mechs can drill through the station
|
if(do_after_cooldown(target))//To slow down how fast mechs can drill through the station
|
||||||
log_message("Drilled through [target]")
|
log_message("Drilled through [target]")
|
||||||
target.ex_act(3)
|
target.ex_act(3)
|
||||||
else if(istype(target, /turf/simulated/mineral))
|
else if(istype(target, /turf/unsimulated/mineral))
|
||||||
for(var/turf/simulated/mineral/M in range(chassis,1))
|
for(var/turf/unsimulated/mineral/M in range(chassis,1))
|
||||||
if(get_dir(chassis,M)&chassis.dir)
|
if(get_dir(chassis,M)&chassis.dir)
|
||||||
M.gets_drilled()
|
M.gets_drilled()
|
||||||
log_message("Drilled through [target]")
|
log_message("Drilled through [target]")
|
||||||
@@ -164,8 +164,8 @@
|
|||||||
for(var/obj/item/weapon/ore/ore in range(chassis,1))
|
for(var/obj/item/weapon/ore/ore in range(chassis,1))
|
||||||
if(get_dir(chassis,ore)&chassis.dir)
|
if(get_dir(chassis,ore)&chassis.dir)
|
||||||
ore.Move(ore_box)
|
ore.Move(ore_box)
|
||||||
else if(istype(target,/turf/simulated/floor/plating/airless/asteroid))
|
else if(istype(target,/turf/unsimulated/floor/asteroid))
|
||||||
for(var/turf/simulated/floor/plating/airless/asteroid/M in range(target,1))
|
for(var/turf/unsimulated/floor/asteroid/M in range(target,1))
|
||||||
M.gets_dug()
|
M.gets_dug()
|
||||||
log_message("Drilled through [target]")
|
log_message("Drilled through [target]")
|
||||||
if(locate(/obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp) in chassis.equipment)
|
if(locate(/obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp) in chassis.equipment)
|
||||||
|
|||||||
@@ -59,7 +59,7 @@
|
|||||||
if(prob(spreadIntoAdjacentChance))
|
if(prob(spreadIntoAdjacentChance))
|
||||||
spreadsIntoAdjacent = 1
|
spreadsIntoAdjacent = 1
|
||||||
|
|
||||||
for(var/turf/simulated/floor/plating/airless/asteroid/earth in view(3,src))
|
for(var/turf/unsimulated/floor/asteroid/earth in view(3,src))
|
||||||
if(spreadsIntoAdjacent || !locate(/obj/effect/glowshroom) in view(1,earth))
|
if(spreadsIntoAdjacent || !locate(/obj/effect/glowshroom) in view(1,earth))
|
||||||
possibleLocs += earth
|
possibleLocs += earth
|
||||||
|
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ proc/explosion_rec(turf/epicenter, power)
|
|||||||
/turf/simulated/floor
|
/turf/simulated/floor
|
||||||
explosion_resistance = 1
|
explosion_resistance = 1
|
||||||
|
|
||||||
/turf/simulated/mineral
|
/turf/unsimulated/mineral
|
||||||
explosion_resistance = 2
|
explosion_resistance = 2
|
||||||
|
|
||||||
/turf/simulated/shuttle/floor
|
/turf/simulated/shuttle/floor
|
||||||
|
|||||||
@@ -276,7 +276,7 @@ turf/simulated/floor/proc/update_icon()
|
|||||||
|
|
||||||
/turf/simulated/floor/proc/burn_tile()
|
/turf/simulated/floor/proc/burn_tile()
|
||||||
if(istype(src,/turf/simulated/floor/engine)) return
|
if(istype(src,/turf/simulated/floor/engine)) return
|
||||||
if(istype(src,/turf/simulated/floor/plating/airless/asteroid)) return//Asteroid tiles don't burn
|
if(istype(src,/turf/unsimulated/floor/asteroid)) return//Asteroid tiles don't burn
|
||||||
if(broken || burnt) return
|
if(broken || burnt) return
|
||||||
if(is_plasteel_floor())
|
if(is_plasteel_floor())
|
||||||
src.icon_state = "damaged[pick(1,2,3,4,5)]"
|
src.icon_state = "damaged[pick(1,2,3,4,5)]"
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
#define XENOARCH_SPREAD_CHANCE 15
|
#define XENOARCH_SPREAD_CHANCE 15
|
||||||
#define ARTIFACT_SPAWN_CHANCE 20
|
#define ARTIFACT_SPAWN_CHANCE 20
|
||||||
|
|
||||||
/turf/simulated/mineral //wall piece
|
/turf/unsimulated/mineral //wall piece
|
||||||
name = "Rock"
|
name = "Rock"
|
||||||
icon = 'icons/turf/walls.dmi'
|
icon = 'icons/turf/walls.dmi'
|
||||||
icon_state = "rock"
|
icon_state = "rock"
|
||||||
@@ -13,7 +13,7 @@
|
|||||||
opacity = 1
|
opacity = 1
|
||||||
density = 1
|
density = 1
|
||||||
blocks_air = 1
|
blocks_air = 1
|
||||||
temperature = TCMB
|
//temperature = TCMB
|
||||||
var/mineralName = ""
|
var/mineralName = ""
|
||||||
var/mineralAmt = 0
|
var/mineralAmt = 0
|
||||||
var/spread = 0 //will the seam spread?
|
var/spread = 0 //will the seam spread?
|
||||||
@@ -30,10 +30,10 @@
|
|||||||
var/obj/item/weapon/last_find
|
var/obj/item/weapon/last_find
|
||||||
var/datum/artifact_find/artifact_find
|
var/datum/artifact_find/artifact_find
|
||||||
|
|
||||||
/turf/simulated/mineral/Del()
|
/turf/unsimulated/mineral/Del()
|
||||||
return
|
return
|
||||||
|
|
||||||
/turf/simulated/mineral/ex_act(severity)
|
/turf/unsimulated/mineral/ex_act(severity)
|
||||||
switch(severity)
|
switch(severity)
|
||||||
if(3.0)
|
if(3.0)
|
||||||
return
|
return
|
||||||
@@ -46,7 +46,7 @@
|
|||||||
src.gets_drilled()
|
src.gets_drilled()
|
||||||
return
|
return
|
||||||
|
|
||||||
/turf/simulated/mineral/New()
|
/turf/unsimulated/mineral/New()
|
||||||
|
|
||||||
spawn(1)
|
spawn(1)
|
||||||
var/turf/T
|
var/turf/T
|
||||||
@@ -70,9 +70,9 @@
|
|||||||
if (mineralName && mineralAmt && spread && spreadChance)
|
if (mineralName && mineralAmt && spread && spreadChance)
|
||||||
for(var/trydir in list(1,2,4,8))
|
for(var/trydir in list(1,2,4,8))
|
||||||
if(prob(spreadChance))
|
if(prob(spreadChance))
|
||||||
if(istype(get_step(src, trydir), /turf/simulated/mineral/random))
|
if(istype(get_step(src, trydir), /turf/unsimulated/mineral/random))
|
||||||
var/turf/simulated/mineral/T = get_step(src, trydir)
|
var/turf/unsimulated/mineral/T = get_step(src, trydir)
|
||||||
var/turf/simulated/mineral/M = new src.type(T)
|
var/turf/unsimulated/mineral/M = new src.type(T)
|
||||||
//keep any digsite data as constant as possible
|
//keep any digsite data as constant as possible
|
||||||
if(T.finds.len && !M.finds.len)
|
if(T.finds.len && !M.finds.len)
|
||||||
M.finds = T.finds
|
M.finds = T.finds
|
||||||
@@ -96,8 +96,8 @@
|
|||||||
var/list/turfs_to_process = list(src)
|
var/list/turfs_to_process = list(src)
|
||||||
var/list/processed_turfs = list()
|
var/list/processed_turfs = list()
|
||||||
while(turfs_to_process.len)
|
while(turfs_to_process.len)
|
||||||
var/turf/simulated/mineral/M = turfs_to_process[1]
|
var/turf/unsimulated/mineral/M = turfs_to_process[1]
|
||||||
for(var/turf/simulated/mineral/T in orange(1, M))
|
for(var/turf/unsimulated/mineral/T in orange(1, M))
|
||||||
if(T.finds.len)
|
if(T.finds.len)
|
||||||
continue
|
continue
|
||||||
if(T in processed_turfs)
|
if(T in processed_turfs)
|
||||||
@@ -147,38 +147,38 @@
|
|||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
/turf/simulated/mineral/random
|
/turf/unsimulated/mineral/random
|
||||||
name = "Mineral deposit"
|
name = "Mineral deposit"
|
||||||
var/mineralAmtList = list("Uranium" = 5, "Iron" = 5, "Diamond" = 5, "Gold" = 5, "Silver" = 5, "Plasma" = 5, "Phazite"=1/*, "Adamantine" = 5*/)
|
var/mineralAmtList = list("Uranium" = 5, "Iron" = 5, "Diamond" = 5, "Gold" = 5, "Silver" = 5, "Plasma" = 5, "Phazite"=1/*, "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/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
|
var/mineralChance = 10 //means 10% chance of this plot changing to a mineral deposit
|
||||||
|
|
||||||
/turf/simulated/mineral/random/New()
|
/turf/unsimulated/mineral/random/New()
|
||||||
..()
|
..()
|
||||||
if (prob(mineralChance))
|
if (prob(mineralChance))
|
||||||
var/mName = pickweight(mineralSpawnChanceList) //temp mineral name
|
var/mName = pickweight(mineralSpawnChanceList) //temp mineral name
|
||||||
|
|
||||||
if (mName)
|
if (mName)
|
||||||
var/turf/simulated/mineral/M
|
var/turf/unsimulated/mineral/M
|
||||||
switch(mName)
|
switch(mName)
|
||||||
if("Uranium")
|
if("Uranium")
|
||||||
M = new/turf/simulated/mineral/uranium(src)
|
M = new/turf/unsimulated/mineral/uranium(src)
|
||||||
if("Iron")
|
if("Iron")
|
||||||
M = new/turf/simulated/mineral/iron(src)
|
M = new/turf/unsimulated/mineral/iron(src)
|
||||||
if("Diamond")
|
if("Diamond")
|
||||||
M = new/turf/simulated/mineral/diamond(src)
|
M = new/turf/unsimulated/mineral/diamond(src)
|
||||||
if("Gold")
|
if("Gold")
|
||||||
M = new/turf/simulated/mineral/gold(src)
|
M = new/turf/unsimulated/mineral/gold(src)
|
||||||
if("Silver")
|
if("Silver")
|
||||||
M = new/turf/simulated/mineral/silver(src)
|
M = new/turf/unsimulated/mineral/silver(src)
|
||||||
if("Plasma")
|
if("Plasma")
|
||||||
M = new/turf/simulated/mineral/plasma(src)
|
M = new/turf/unsimulated/mineral/plasma(src)
|
||||||
if("Clown")
|
if("Clown")
|
||||||
M = new/turf/simulated/mineral/clown(src)
|
M = new/turf/unsimulated/mineral/clown(src)
|
||||||
if("Phazite")
|
if("Phazite")
|
||||||
M = new/turf/simulated/mineral/phazon(src)
|
M = new/turf/unsimulated/mineral/phazon(src)
|
||||||
/*if("Adamantine")
|
/*if("Adamantine")
|
||||||
M = new/turf/simulated/mineral/adamantine(src)*/
|
M = new/turf/unsimulated/mineral/adamantine(src)*/
|
||||||
if(M)
|
if(M)
|
||||||
src = M
|
src = M
|
||||||
M.levelupdate()
|
M.levelupdate()
|
||||||
@@ -195,19 +195,19 @@
|
|||||||
new/obj/machinery/artifact(src)*/
|
new/obj/machinery/artifact(src)*/
|
||||||
return
|
return
|
||||||
|
|
||||||
/turf/simulated/mineral/random/high_chance
|
/turf/unsimulated/mineral/random/high_chance
|
||||||
mineralChance = 25
|
mineralChance = 25
|
||||||
mineralSpawnChanceList = list("Uranium" = 10, "Iron" = 30, "Diamond" = 2, "Gold" = 10, "Silver" = 10, "Plasma" = 25, "Archaeo" = 2)
|
mineralSpawnChanceList = list("Uranium" = 10, "Iron" = 30, "Diamond" = 2, "Gold" = 10, "Silver" = 10, "Plasma" = 25, "Archaeo" = 2)
|
||||||
|
|
||||||
/turf/simulated/mineral/random/high_chance_clown
|
/turf/unsimulated/mineral/random/high_chance_clown
|
||||||
//icon_state="rock_Phazon"
|
//icon_state="rock_Phazon"
|
||||||
mineralChance = 40
|
mineralChance = 40
|
||||||
mineralSpawnChanceList = list("Uranium" = 10, "Iron" = 10, "Diamond" = 2, "Gold" = 5, "Silver" = 5, "Plasma" = 25, "Archaeo" = 2, "Clown"=15, "Phazite"=10)
|
mineralSpawnChanceList = list("Uranium" = 10, "Iron" = 10, "Diamond" = 2, "Gold" = 5, "Silver" = 5, "Plasma" = 25, "Archaeo" = 2, "Clown"=15, "Phazite"=10)
|
||||||
|
|
||||||
/turf/simulated/mineral/random/Del()
|
/turf/unsimulated/mineral/random/Del()
|
||||||
return
|
return
|
||||||
|
|
||||||
/turf/simulated/mineral/uranium
|
/turf/unsimulated/mineral/uranium
|
||||||
name = "Uranium deposit"
|
name = "Uranium deposit"
|
||||||
icon_state = "rock_Uranium"
|
icon_state = "rock_Uranium"
|
||||||
mineralName = "Uranium"
|
mineralName = "Uranium"
|
||||||
@@ -217,7 +217,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
/turf/simulated/mineral/iron
|
/turf/unsimulated/mineral/iron
|
||||||
name = "Iron deposit"
|
name = "Iron deposit"
|
||||||
icon_state = "rock_Iron"
|
icon_state = "rock_Iron"
|
||||||
mineralName = "Iron"
|
mineralName = "Iron"
|
||||||
@@ -226,7 +226,7 @@
|
|||||||
spread = 1
|
spread = 1
|
||||||
|
|
||||||
|
|
||||||
/turf/simulated/mineral/diamond
|
/turf/unsimulated/mineral/diamond
|
||||||
name = "Diamond deposit"
|
name = "Diamond deposit"
|
||||||
icon_state = "rock_Diamond"
|
icon_state = "rock_Diamond"
|
||||||
mineralName = "Diamond"
|
mineralName = "Diamond"
|
||||||
@@ -235,7 +235,7 @@
|
|||||||
spread = 1
|
spread = 1
|
||||||
|
|
||||||
|
|
||||||
/turf/simulated/mineral/gold
|
/turf/unsimulated/mineral/gold
|
||||||
name = "Gold deposit"
|
name = "Gold deposit"
|
||||||
icon_state = "rock_Gold"
|
icon_state = "rock_Gold"
|
||||||
mineralName = "Gold"
|
mineralName = "Gold"
|
||||||
@@ -244,7 +244,7 @@
|
|||||||
spread = 1
|
spread = 1
|
||||||
|
|
||||||
|
|
||||||
/turf/simulated/mineral/silver
|
/turf/unsimulated/mineral/silver
|
||||||
name = "Silver deposit"
|
name = "Silver deposit"
|
||||||
icon_state = "rock_Silver"
|
icon_state = "rock_Silver"
|
||||||
mineralName = "Silver"
|
mineralName = "Silver"
|
||||||
@@ -253,7 +253,7 @@
|
|||||||
spread = 1
|
spread = 1
|
||||||
|
|
||||||
|
|
||||||
/turf/simulated/mineral/plasma
|
/turf/unsimulated/mineral/plasma
|
||||||
name = "Plasma deposit"
|
name = "Plasma deposit"
|
||||||
icon_state = "rock_Plasma"
|
icon_state = "rock_Plasma"
|
||||||
mineralName = "Plasma"
|
mineralName = "Plasma"
|
||||||
@@ -262,7 +262,7 @@
|
|||||||
spread = 1
|
spread = 1
|
||||||
|
|
||||||
|
|
||||||
/turf/simulated/mineral/clown
|
/turf/unsimulated/mineral/clown
|
||||||
name = "Bananium deposit"
|
name = "Bananium deposit"
|
||||||
icon_state = "rock_Clown"
|
icon_state = "rock_Clown"
|
||||||
mineralName = "Clown"
|
mineralName = "Clown"
|
||||||
@@ -271,7 +271,7 @@
|
|||||||
spread = 0
|
spread = 0
|
||||||
|
|
||||||
|
|
||||||
/turf/simulated/mineral/phazon
|
/turf/unsimulated/mineral/phazon
|
||||||
name = "Phazite deposit"
|
name = "Phazite deposit"
|
||||||
icon_state = "rock_Phazon"
|
icon_state = "rock_Phazon"
|
||||||
mineralName = "Phazite"
|
mineralName = "Phazite"
|
||||||
@@ -282,9 +282,9 @@
|
|||||||
/*
|
/*
|
||||||
commented out in r5061, I left it because of the shroom thingies
|
commented out in r5061, I left it because of the shroom thingies
|
||||||
|
|
||||||
/turf/simulated/mineral/ReplaceWithFloor()
|
/turf/unsimulated/mineral/ReplaceWithFloor()
|
||||||
if(!icon_old) icon_old = icon_state
|
if(!icon_old) icon_old = icon_state
|
||||||
var/turf/simulated/floor/plating/airless/asteroid/W
|
var/turf/unsimulated/floor/asteroid/W
|
||||||
var/old_dir = dir
|
var/old_dir = dir
|
||||||
|
|
||||||
for(var/direction in cardinal)
|
for(var/direction in cardinal)
|
||||||
@@ -296,7 +296,7 @@ commented out in r5061, I left it because of the shroom thingies
|
|||||||
shroom.pixel_y = 0
|
shroom.pixel_y = 0
|
||||||
|
|
||||||
var/old_lumcount = lighting_lumcount - initial(lighting_lumcount)
|
var/old_lumcount = lighting_lumcount - initial(lighting_lumcount)
|
||||||
W = new /turf/simulated/floor/plating/airless/asteroid(src)
|
W = new /turf/unsimulated/floor/asteroid(src)
|
||||||
W.lighting_lumcount += old_lumcount
|
W.lighting_lumcount += old_lumcount
|
||||||
if(old_lumcount != W.lighting_lumcount)
|
if(old_lumcount != W.lighting_lumcount)
|
||||||
W.lighting_changed = 1
|
W.lighting_changed = 1
|
||||||
@@ -309,7 +309,7 @@ commented out in r5061, I left it because of the shroom thingies
|
|||||||
return W
|
return W
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/turf/simulated/mineral/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
/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")
|
if (!(istype(usr, /mob/living/carbon/human) || ticker) && ticker.mode.name != "monkey")
|
||||||
usr << "\red You don't have the dexterity to do this!"
|
usr << "\red You don't have the dexterity to do this!"
|
||||||
@@ -457,7 +457,7 @@ commented out in r5061, I left it because of the shroom thingies
|
|||||||
return attack_hand(user)
|
return attack_hand(user)
|
||||||
return
|
return
|
||||||
|
|
||||||
/turf/simulated/mineral/proc/drop_mineral()
|
/turf/unsimulated/mineral/proc/drop_mineral()
|
||||||
var/obj/item/weapon/ore/O
|
var/obj/item/weapon/ore/O
|
||||||
if (src.mineralName == "Uranium")
|
if (src.mineralName == "Uranium")
|
||||||
O = new /obj/item/weapon/ore/uranium(src)
|
O = new /obj/item/weapon/ore/uranium(src)
|
||||||
@@ -480,7 +480,7 @@ commented out in r5061, I left it because of the shroom thingies
|
|||||||
O.geological_data = src.geological_data
|
O.geological_data = src.geological_data
|
||||||
return O
|
return O
|
||||||
|
|
||||||
/turf/simulated/mineral/proc/gets_drilled(var/artifact_fail = 0)
|
/turf/unsimulated/mineral/proc/gets_drilled(var/artifact_fail = 0)
|
||||||
//var/destroyed = 0 //used for breaking strange rocks
|
//var/destroyed = 0 //used for breaking strange rocks
|
||||||
if ((src.mineralName != "") && (src.mineralAmt > 0) && (src.mineralAmt < 11))
|
if ((src.mineralName != "") && (src.mineralAmt > 0) && (src.mineralAmt < 11))
|
||||||
|
|
||||||
@@ -506,12 +506,12 @@ commented out in r5061, I left it because of the shroom thingies
|
|||||||
M.Stun(5)
|
M.Stun(5)
|
||||||
M.apply_effect(25, IRRADIATE)
|
M.apply_effect(25, IRRADIATE)
|
||||||
|
|
||||||
var/turf/simulated/floor/plating/airless/asteroid/N = ChangeTurf(/turf/simulated/floor/plating/airless/asteroid)
|
var/turf/unsimulated/floor/asteroid/N = ChangeTurf(/turf/unsimulated/floor/asteroid)
|
||||||
N.fullUpdateMineralOverlays()
|
N.fullUpdateMineralOverlays()
|
||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
/turf/simulated/mineral/proc/excavate_find(var/prob_clean = 0, var/datum/find/F)
|
/turf/unsimulated/mineral/proc/excavate_find(var/prob_clean = 0, var/datum/find/F)
|
||||||
//with skill and luck, players can cleanly extract finds
|
//with skill and luck, players can cleanly extract finds
|
||||||
//otherwise, they come out inside a chunk of rock
|
//otherwise, they come out inside a chunk of rock
|
||||||
var/obj/item/weapon/X
|
var/obj/item/weapon/X
|
||||||
@@ -540,7 +540,7 @@ commented out in r5061, I left it because of the shroom thingies
|
|||||||
|
|
||||||
src.finds.Remove(F)
|
src.finds.Remove(F)
|
||||||
|
|
||||||
/turf/simulated/mineral/proc/artifact_debris(var/severity = 0)
|
/turf/unsimulated/mineral/proc/artifact_debris(var/severity = 0)
|
||||||
//cael's patented random limited drop componentized loot system!
|
//cael's patented random limited drop componentized loot system!
|
||||||
severity = max(min(severity,1),0)
|
severity = max(min(severity,1),0)
|
||||||
var/materials = 0
|
var/materials = 0
|
||||||
@@ -591,20 +591,20 @@ commented out in r5061, I left it because of the shroom thingies
|
|||||||
R.amount = rand(1,5)
|
R.amount = rand(1,5)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
/turf/simulated/mineral/proc/setRandomMinerals()
|
/turf/unsimulated/mineral/proc/setRandomMinerals()
|
||||||
var/s = pickweight(list("uranium" = 5, "iron" = 50, "gold" = 5, "silver" = 5, "plasma" = 50, "diamond" = 1))
|
var/s = pickweight(list("uranium" = 5, "iron" = 50, "gold" = 5, "silver" = 5, "plasma" = 50, "diamond" = 1))
|
||||||
if (s)
|
if (s)
|
||||||
mineralName = s
|
mineralName = s
|
||||||
|
|
||||||
var/N = text2path("/turf/simulated/mineral/[s]")
|
var/N = text2path("/turf/unsimulated/mineral/[s]")
|
||||||
if (N)
|
if (N)
|
||||||
var/turf/simulated/mineral/M = new N
|
var/turf/unsimulated/mineral/M = new N
|
||||||
src = M
|
src = M
|
||||||
if (src.mineralName)
|
if (src.mineralName)
|
||||||
mineralAmt = 5
|
mineralAmt = 5
|
||||||
return*/
|
return*/
|
||||||
|
|
||||||
/turf/simulated/mineral/Bumped(AM as mob|obj)
|
/turf/unsimulated/mineral/Bumped(AM as mob|obj)
|
||||||
..()
|
..()
|
||||||
if(istype(AM,/mob/living/carbon/human))
|
if(istype(AM,/mob/living/carbon/human))
|
||||||
var/mob/living/carbon/human/H = AM
|
var/mob/living/carbon/human/H = AM
|
||||||
@@ -629,17 +629,22 @@ commented out in r5061, I left it because of the shroom thingies
|
|||||||
|
|
||||||
/**********************Asteroid**************************/
|
/**********************Asteroid**************************/
|
||||||
|
|
||||||
/turf/simulated/floor/plating/airless/asteroid //floor piece
|
/turf/unsimulated/floor/airless //floor piece
|
||||||
|
oxygen = 0.01
|
||||||
|
nitrogen = 0.01
|
||||||
|
temperature = TCMB
|
||||||
|
|
||||||
|
/turf/unsimulated/floor/asteroid //floor piece
|
||||||
name = "Asteroid"
|
name = "Asteroid"
|
||||||
icon = 'icons/turf/floors.dmi'
|
icon = 'icons/turf/floors.dmi'
|
||||||
icon_state = "asteroid"
|
icon_state = "asteroid"
|
||||||
oxygen = 0.01
|
oxygen = 0.01
|
||||||
nitrogen = 0.01
|
nitrogen = 0.01
|
||||||
temperature = TCMB
|
temperature = TCMB
|
||||||
icon_plating = "asteroid"
|
//icon_plating = "asteroid"
|
||||||
var/dug = 0 //0 = has not yet been dug, 1 = has already been dug
|
var/dug = 0 //0 = has not yet been dug, 1 = has already been dug
|
||||||
|
|
||||||
/turf/simulated/floor/plating/airless/asteroid/New()
|
/turf/unsimulated/floor/asteroid/New()
|
||||||
var/proper_name = name
|
var/proper_name = name
|
||||||
..()
|
..()
|
||||||
name = proper_name
|
name = proper_name
|
||||||
@@ -651,7 +656,7 @@ commented out in r5061, I left it because of the shroom thingies
|
|||||||
spawn(2)
|
spawn(2)
|
||||||
updateMineralOverlays()
|
updateMineralOverlays()
|
||||||
|
|
||||||
/turf/simulated/floor/plating/airless/asteroid/ex_act(severity)
|
/turf/unsimulated/floor/asteroid/ex_act(severity)
|
||||||
switch(severity)
|
switch(severity)
|
||||||
if(3.0)
|
if(3.0)
|
||||||
return
|
return
|
||||||
@@ -662,7 +667,7 @@ commented out in r5061, I left it because of the shroom thingies
|
|||||||
src.gets_dug()
|
src.gets_dug()
|
||||||
return
|
return
|
||||||
|
|
||||||
/turf/simulated/floor/plating/airless/asteroid/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
/turf/unsimulated/floor/asteroid/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||||
|
|
||||||
if(!W || !user)
|
if(!W || !user)
|
||||||
return 0
|
return 0
|
||||||
@@ -729,7 +734,7 @@ commented out in r5061, I left it because of the shroom thingies
|
|||||||
..(W,user)
|
..(W,user)
|
||||||
return
|
return
|
||||||
|
|
||||||
/turf/simulated/floor/plating/airless/asteroid/proc/gets_dug()
|
/turf/unsimulated/floor/asteroid/proc/gets_dug()
|
||||||
if(dug)
|
if(dug)
|
||||||
return
|
return
|
||||||
new/obj/item/weapon/ore/glass(src)
|
new/obj/item/weapon/ore/glass(src)
|
||||||
@@ -738,52 +743,52 @@ commented out in r5061, I left it because of the shroom thingies
|
|||||||
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
|
dug = 1
|
||||||
icon_plating = "asteroid_dug"
|
//icon_plating = "asteroid_dug"
|
||||||
icon_state = "asteroid_dug"
|
icon_state = "asteroid_dug"
|
||||||
return
|
return
|
||||||
|
|
||||||
/turf/simulated/floor/plating/airless/asteroid/proc/updateMineralOverlays()
|
/turf/unsimulated/floor/asteroid/proc/updateMineralOverlays()
|
||||||
|
|
||||||
src.overlays.Cut()
|
src.overlays.Cut()
|
||||||
|
|
||||||
if(istype(get_step(src, NORTH), /turf/simulated/mineral))
|
if(istype(get_step(src, NORTH), /turf/unsimulated/mineral))
|
||||||
src.overlays += image('icons/turf/walls.dmi', "rock_side_n")
|
src.overlays += image('icons/turf/walls.dmi', "rock_side_n")
|
||||||
if(istype(get_step(src, SOUTH), /turf/simulated/mineral))
|
if(istype(get_step(src, SOUTH), /turf/unsimulated/mineral))
|
||||||
src.overlays += image('icons/turf/walls.dmi', "rock_side_s", layer=6)
|
src.overlays += image('icons/turf/walls.dmi', "rock_side_s", layer=6)
|
||||||
if(istype(get_step(src, EAST), /turf/simulated/mineral))
|
if(istype(get_step(src, EAST), /turf/unsimulated/mineral))
|
||||||
src.overlays += image('icons/turf/walls.dmi', "rock_side_e", layer=6)
|
src.overlays += image('icons/turf/walls.dmi', "rock_side_e", layer=6)
|
||||||
if(istype(get_step(src, WEST), /turf/simulated/mineral))
|
if(istype(get_step(src, WEST), /turf/unsimulated/mineral))
|
||||||
src.overlays += image('icons/turf/walls.dmi', "rock_side_w", layer=6)
|
src.overlays += image('icons/turf/walls.dmi', "rock_side_w", layer=6)
|
||||||
|
|
||||||
/turf/simulated/floor/plating/airless/asteroid/proc/fullUpdateMineralOverlays()
|
/turf/unsimulated/floor/asteroid/proc/fullUpdateMineralOverlays()
|
||||||
var/turf/simulated/floor/plating/airless/asteroid/A
|
var/turf/unsimulated/floor/asteroid/A
|
||||||
if(istype(get_step(src, WEST), /turf/simulated/floor/plating/airless/asteroid))
|
if(istype(get_step(src, WEST), /turf/unsimulated/floor/asteroid))
|
||||||
A = get_step(src, WEST)
|
A = get_step(src, WEST)
|
||||||
A.updateMineralOverlays()
|
A.updateMineralOverlays()
|
||||||
if(istype(get_step(src, EAST), /turf/simulated/floor/plating/airless/asteroid))
|
if(istype(get_step(src, EAST), /turf/unsimulated/floor/asteroid))
|
||||||
A = get_step(src, EAST)
|
A = get_step(src, EAST)
|
||||||
A.updateMineralOverlays()
|
A.updateMineralOverlays()
|
||||||
if(istype(get_step(src, NORTH), /turf/simulated/floor/plating/airless/asteroid))
|
if(istype(get_step(src, NORTH), /turf/unsimulated/floor/asteroid))
|
||||||
A = get_step(src, NORTH)
|
A = get_step(src, NORTH)
|
||||||
A.updateMineralOverlays()
|
A.updateMineralOverlays()
|
||||||
if(istype(get_step(src, NORTHWEST), /turf/simulated/floor/plating/airless/asteroid))
|
if(istype(get_step(src, NORTHWEST), /turf/unsimulated/floor/asteroid))
|
||||||
A = get_step(src, NORTHWEST)
|
A = get_step(src, NORTHWEST)
|
||||||
A.updateMineralOverlays()
|
A.updateMineralOverlays()
|
||||||
if(istype(get_step(src, NORTHEAST), /turf/simulated/floor/plating/airless/asteroid))
|
if(istype(get_step(src, NORTHEAST), /turf/unsimulated/floor/asteroid))
|
||||||
A = get_step(src, NORTHEAST)
|
A = get_step(src, NORTHEAST)
|
||||||
A.updateMineralOverlays()
|
A.updateMineralOverlays()
|
||||||
if(istype(get_step(src, SOUTHWEST), /turf/simulated/floor/plating/airless/asteroid))
|
if(istype(get_step(src, SOUTHWEST), /turf/unsimulated/floor/asteroid))
|
||||||
A = get_step(src, SOUTHWEST)
|
A = get_step(src, SOUTHWEST)
|
||||||
A.updateMineralOverlays()
|
A.updateMineralOverlays()
|
||||||
if(istype(get_step(src, SOUTHEAST), /turf/simulated/floor/plating/airless/asteroid))
|
if(istype(get_step(src, SOUTHEAST), /turf/unsimulated/floor/asteroid))
|
||||||
A = get_step(src, SOUTHEAST)
|
A = get_step(src, SOUTHEAST)
|
||||||
A.updateMineralOverlays()
|
A.updateMineralOverlays()
|
||||||
if(istype(get_step(src, SOUTH), /turf/simulated/floor/plating/airless/asteroid))
|
if(istype(get_step(src, SOUTH), /turf/unsimulated/floor/asteroid))
|
||||||
A = get_step(src, SOUTH)
|
A = get_step(src, SOUTH)
|
||||||
A.updateMineralOverlays()
|
A.updateMineralOverlays()
|
||||||
src.updateMineralOverlays()
|
src.updateMineralOverlays()
|
||||||
|
|
||||||
/turf/simulated/floor/plating/airless/asteroid/Entered(atom/movable/M as mob|obj)
|
/turf/unsimulated/floor/asteroid/Entered(atom/movable/M as mob|obj)
|
||||||
..()
|
..()
|
||||||
if(istype(M,/mob/living/silicon/robot))
|
if(istype(M,/mob/living/silicon/robot))
|
||||||
var/mob/living/silicon/robot/R = M
|
var/mob/living/silicon/robot/R = M
|
||||||
|
|||||||
@@ -22,8 +22,8 @@
|
|||||||
|
|
||||||
/obj/machinery/giga_drill/Bump(atom/A)
|
/obj/machinery/giga_drill/Bump(atom/A)
|
||||||
if(active && !drilling_turf)
|
if(active && !drilling_turf)
|
||||||
if(istype(A,/turf/simulated/mineral))
|
if(istype(A,/turf/unsimulated/mineral))
|
||||||
var/turf/simulated/mineral/M = A
|
var/turf/unsimulated/mineral/M = A
|
||||||
drilling_turf = get_turf(src)
|
drilling_turf = get_turf(src)
|
||||||
src.visible_message("\red <b>[src] begins to drill into [M]!</b>")
|
src.visible_message("\red <b>[src] begins to drill into [M]!</b>")
|
||||||
anchored = 1
|
anchored = 1
|
||||||
|
|||||||
@@ -528,7 +528,7 @@
|
|||||||
new_item.speaking_to_players = 1
|
new_item.speaking_to_players = 1
|
||||||
processing_objects.Add(src)
|
processing_objects.Add(src)
|
||||||
var/turf/T = get_turf(src)
|
var/turf/T = get_turf(src)
|
||||||
if(istype(T, /turf/simulated/mineral))
|
if(istype(T, /turf/unsimulated/mineral))
|
||||||
T:last_find = new_item
|
T:last_find = new_item
|
||||||
del(src)
|
del(src)
|
||||||
|
|
||||||
|
|||||||
@@ -121,7 +121,7 @@
|
|||||||
return "carbon"
|
return "carbon"
|
||||||
return "plasma"
|
return "plasma"
|
||||||
|
|
||||||
//see /turf/simulated/mineral/New() in code/modules/mining/mine_turfs.dm
|
//see /turf/unsimulated/mineral/New() in code/modules/mining/mine_turfs.dm
|
||||||
/proc/get_random_digsite_type()
|
/proc/get_random_digsite_type()
|
||||||
return pick(100;DIGSITE_GARDEN,95;DIGSITE_ANIMAL,90;DIGSITE_HOUSE,85;DIGSITE_TECHNICAL,80;DIGSITE_TEMPLE,75;DIGSITE_WAR)
|
return pick(100;DIGSITE_GARDEN,95;DIGSITE_ANIMAL,90;DIGSITE_HOUSE,85;DIGSITE_TECHNICAL,80;DIGSITE_TEMPLE,75;DIGSITE_WAR)
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
var/t = pickweight(l)
|
var/t = pickweight(l)
|
||||||
var/obj/item/weapon/W = new t(src.loc)
|
var/obj/item/weapon/W = new t(src.loc)
|
||||||
var/turf/T = get_turf(src)
|
var/turf/T = get_turf(src)
|
||||||
if(istype(T, /turf/simulated/mineral))
|
if(istype(T, /turf/unsimulated/mineral))
|
||||||
T:last_find = W
|
T:last_find = W
|
||||||
del src
|
del src
|
||||||
|
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
icon_state = "sliver1" //0-4
|
icon_state = "sliver1" //0-4
|
||||||
w_class = 1
|
w_class = 1
|
||||||
//item_state = "electronic"
|
//item_state = "electronic"
|
||||||
var/source_rock = "/turf/simulated/mineral/"
|
var/source_rock = "/turf/unsimulated/mineral/"
|
||||||
var/datum/geosample/geological_data
|
var/datum/geosample/geological_data
|
||||||
|
|
||||||
/obj/item/weapon/rocksliver/New()
|
/obj/item/weapon/rocksliver/New()
|
||||||
@@ -70,12 +70,12 @@ var/list/artifact_spawning_turfs = list()
|
|||||||
//all potential finds are initialised to null, so nullcheck before you access them
|
//all potential finds are initialised to null, so nullcheck before you access them
|
||||||
var/list/find_presence = list()
|
var/list/find_presence = list()
|
||||||
|
|
||||||
/datum/geosample/New(var/turf/simulated/mineral/container)
|
/datum/geosample/New(var/turf/unsimulated/mineral/container)
|
||||||
|
|
||||||
UpdateTurf(container)
|
UpdateTurf(container)
|
||||||
|
|
||||||
//this should only need to be called once
|
//this should only need to be called once
|
||||||
/datum/geosample/proc/UpdateTurf(var/turf/simulated/mineral/container)
|
/datum/geosample/proc/UpdateTurf(var/turf/unsimulated/mineral/container)
|
||||||
if(!container || !istype(container))
|
if(!container || !istype(container))
|
||||||
return
|
return
|
||||||
|
|
||||||
@@ -136,7 +136,7 @@ var/list/artifact_spawning_turfs = list()
|
|||||||
total_spread += find_presence[entry]
|
total_spread += find_presence[entry]
|
||||||
|
|
||||||
//have this separate from UpdateTurf() so that we dont have a billion turfs being updated (redundantly) every time an artifact spawns
|
//have this separate from UpdateTurf() so that we dont have a billion turfs being updated (redundantly) every time an artifact spawns
|
||||||
/datum/geosample/proc/UpdateNearbyArtifactInfo(var/turf/simulated/mineral/container)
|
/datum/geosample/proc/UpdateNearbyArtifactInfo(var/turf/unsimulated/mineral/container)
|
||||||
if(!container || !istype(container))
|
if(!container || !istype(container))
|
||||||
return
|
return
|
||||||
|
|
||||||
@@ -144,7 +144,7 @@ var/list/artifact_spawning_turfs = list()
|
|||||||
artifact_distance = rand()
|
artifact_distance = rand()
|
||||||
artifact_id = container.artifact_find.artifact_id
|
artifact_id = container.artifact_find.artifact_id
|
||||||
else
|
else
|
||||||
for(var/turf/simulated/mineral/holder in artifact_spawning_turfs)
|
for(var/turf/unsimulated/mineral/holder in artifact_spawning_turfs)
|
||||||
if(holder.artifact_find)
|
if(holder.artifact_find)
|
||||||
var/dist = get_dist(container, holder)
|
var/dist = get_dist(container, holder)
|
||||||
if(dist < holder.artifact_find.artifact_detect_range && dist < src.artifact_distance)
|
if(dist < holder.artifact_find.artifact_detect_range && dist < src.artifact_distance)
|
||||||
|
|||||||
@@ -36,8 +36,8 @@
|
|||||||
|
|
||||||
//for analysis debugging
|
//for analysis debugging
|
||||||
/*var/obj/item/weapon/reagent_containers/glass/solution_tray/S = new(src.loc)
|
/*var/obj/item/weapon/reagent_containers/glass/solution_tray/S = new(src.loc)
|
||||||
var/turf/simulated/mineral/diamond/D
|
var/turf/unsimulated/mineral/diamond/D
|
||||||
for(var/turf/simulated/mineral/diamond/M in world)
|
for(var/turf/unsimulated/mineral/diamond/M in world)
|
||||||
D = M
|
D = M
|
||||||
break
|
break
|
||||||
S.reagents.add_reagent("analysis_sample", 1, D.geological_data)
|
S.reagents.add_reagent("analysis_sample", 1, D.geological_data)
|
||||||
|
|||||||
@@ -308,7 +308,7 @@
|
|||||||
suspension_field.overlays += "shield2"
|
suspension_field.overlays += "shield2"
|
||||||
src.visible_message("\blue \icon[suspension_field] [suspension_field] gently absconds [collected > 1 ? "something" : "several things"].")
|
src.visible_message("\blue \icon[suspension_field] [suspension_field] gently absconds [collected > 1 ? "something" : "several things"].")
|
||||||
else
|
else
|
||||||
if(istype(T,/turf/simulated/mineral) || istype(T,/turf/simulated/wall))
|
if(istype(T,/turf/unsimulated/mineral) || istype(T,/turf/simulated/wall))
|
||||||
suspension_field.icon_state = "shieldsparkles"
|
suspension_field.icon_state = "shieldsparkles"
|
||||||
else
|
else
|
||||||
suspension_field.icon_state = "shield2"
|
suspension_field.icon_state = "shield2"
|
||||||
|
|||||||
@@ -49,8 +49,8 @@
|
|||||||
|
|
||||||
/obj/item/device/core_sampler/proc/sample_item(var/item_to_sample, var/mob/user as mob)
|
/obj/item/device/core_sampler/proc/sample_item(var/item_to_sample, var/mob/user as mob)
|
||||||
var/datum/geosample/geo_data
|
var/datum/geosample/geo_data
|
||||||
if(istype(item_to_sample, /turf/simulated/mineral))
|
if(istype(item_to_sample, /turf/unsimulated/mineral))
|
||||||
var/turf/simulated/mineral/T = item_to_sample
|
var/turf/unsimulated/mineral/T = item_to_sample
|
||||||
T.geological_data.UpdateNearbyArtifactInfo(T)
|
T.geological_data.UpdateNearbyArtifactInfo(T)
|
||||||
geo_data = T.geological_data
|
geo_data = T.geological_data
|
||||||
else if(istype(item_to_sample, /obj/item/weapon/ore))
|
else if(istype(item_to_sample, /obj/item/weapon/ore))
|
||||||
|
|||||||
@@ -26,8 +26,8 @@
|
|||||||
|
|
||||||
/obj/item/device/depth_scanner/proc/scan_atom(var/mob/user, var/atom/A)
|
/obj/item/device/depth_scanner/proc/scan_atom(var/mob/user, var/atom/A)
|
||||||
user.visible_message("\blue [user] scans [A], the air around them humming gently.")
|
user.visible_message("\blue [user] scans [A], the air around them humming gently.")
|
||||||
if(istype(A,/turf/simulated/mineral))
|
if(istype(A,/turf/unsimulated/mineral))
|
||||||
var/turf/simulated/mineral/M = A
|
var/turf/unsimulated/mineral/M = A
|
||||||
if(M.excavation_minerals.len || M.finds.len || M.artifact_find)
|
if(M.excavation_minerals.len || M.finds.len || M.artifact_find)
|
||||||
|
|
||||||
//create a new scanlog entry
|
//create a new scanlog entry
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user