Merge remote-tracking branch 'upstream/master' into RCDMEMES
This commit is contained in:
@@ -297,15 +297,14 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list(
|
||||
continue
|
||||
var/list/S_gases = S.air.gases
|
||||
for(var/id in S_gases)
|
||||
ASSERT_GAS(id, total)
|
||||
total_gases[id][MOLES] += S_gases[id][MOLES]
|
||||
total_gases[id] += S_gases[id]
|
||||
total.temperature += S.air.temperature
|
||||
|
||||
air.copy_from(total)
|
||||
|
||||
var/list/air_gases = air.gases
|
||||
for(var/id in air_gases)
|
||||
air_gases[id][MOLES] /= turf_count //Averages contents of the turfs, ignoring walls and the like
|
||||
air_gases[id] /= turf_count //Averages contents of the turfs, ignoring walls and the like
|
||||
|
||||
air.temperature /= turf_count
|
||||
SSair.add_to_active(src)
|
||||
|
||||
@@ -314,9 +314,8 @@
|
||||
/turf/open/rad_act(pulse_strength)
|
||||
. = ..()
|
||||
if (air.gases[/datum/gas/carbon_dioxide] && air.gases[/datum/gas/oxygen])
|
||||
pulse_strength = min(pulse_strength,air.gases[/datum/gas/carbon_dioxide][MOLES]*1000,air.gases[/datum/gas/oxygen][MOLES]*2000) //Ensures matter is conserved properly
|
||||
air.gases[/datum/gas/carbon_dioxide][MOLES]=max(air.gases[/datum/gas/carbon_dioxide][MOLES]-(pulse_strength/1000),0)
|
||||
air.gases[/datum/gas/oxygen][MOLES]=max(air.gases[/datum/gas/oxygen][MOLES]-(pulse_strength/2000),0)
|
||||
air.assert_gas(/datum/gas/pluoxium)
|
||||
air.gases[/datum/gas/pluoxium][MOLES]+=(pulse_strength/4000)
|
||||
air.garbage_collect()
|
||||
pulse_strength = min(pulse_strength,air.gases[/datum/gas/carbon_dioxide]*1000,air.gases[/datum/gas/oxygen]*2000) //Ensures matter is conserved properly
|
||||
air.gases[/datum/gas/carbon_dioxide]=max(air.gases[/datum/gas/carbon_dioxide]-(pulse_strength/1000),0)
|
||||
air.gases[/datum/gas/oxygen]=max(air.gases[/datum/gas/oxygen]-(pulse_strength/2000),0)
|
||||
air.gases[/datum/gas/pluoxium]+=(pulse_strength/4000)
|
||||
GAS_GARBAGE_COLLECT(air.gases)
|
||||
|
||||
@@ -77,7 +77,6 @@
|
||||
|
||||
return ..()
|
||||
|
||||
|
||||
/turf/closed/wall/clockwork/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd)
|
||||
if(heated && the_rcd.canRturf)
|
||||
return ..()
|
||||
@@ -86,6 +85,19 @@
|
||||
if(heated && the_rcd.canRturf)
|
||||
return ..()
|
||||
|
||||
/turf/closed/wall/clockwork/try_destroy(obj/item/I, mob/user, turf/T)
|
||||
if(!heated)
|
||||
return ..()
|
||||
if(!istype(I, /obj/item/pickaxe/drill/jackhammer))
|
||||
return FALSE
|
||||
to_chat(user, "<span class='notice'>You begin to smash though [src]...</span>")
|
||||
if(!do_after(user, 70, TRUE, src))
|
||||
return FALSE
|
||||
I.play_tool_sound(src)
|
||||
visible_message("<span class='warning'>[user] smashes through [src] with [I]!</span>", "<span class='italics'>You hear the grinding of metal.</span>")
|
||||
dismantle_wall()
|
||||
return TRUE
|
||||
|
||||
/turf/closed/wall/clockwork/ReplaceWithLattice()
|
||||
..()
|
||||
for(var/obj/structure/lattice/L in src)
|
||||
|
||||
@@ -134,7 +134,7 @@
|
||||
if ((!(A) || src != A.loc))
|
||||
return
|
||||
|
||||
if(destination_z && destination_x && destination_y)
|
||||
if(destination_z && destination_x && destination_y && !(A.pulledby || !A.can_be_z_moved))
|
||||
var/tx = destination_x
|
||||
var/ty = destination_y
|
||||
var/turf/DT = locate(tx, ty, destination_z)
|
||||
@@ -157,8 +157,10 @@
|
||||
A.forceMove(DT)
|
||||
if(AM)
|
||||
var/turf/T = get_step(A.loc,turn(A.dir, 180))
|
||||
AM.can_be_z_moved = FALSE
|
||||
AM.forceMove(T)
|
||||
A.start_pulling(AM)
|
||||
AM.can_be_z_moved = TRUE
|
||||
|
||||
//now we're on the new z_level, proceed the space drifting
|
||||
stoplag()//Let a diagonal move finish, if necessary
|
||||
|
||||
@@ -112,6 +112,8 @@
|
||||
LC.handlecable(C, user)
|
||||
return
|
||||
C.loaded.place_turf(src, user)
|
||||
if(C.wiring_gui_menu)
|
||||
C.wiringGuiUpdate(user)
|
||||
C.is_empty(user)
|
||||
|
||||
/turf/attackby(obj/item/C, mob/user, params)
|
||||
|
||||
Reference in New Issue
Block a user