diff --git a/auxmos.dll b/auxmos.dll index 8d3b0e7320..faf5faedc7 100644 Binary files a/auxmos.dll and b/auxmos.dll differ diff --git a/auxmos.pdb b/auxmos.pdb index 3127a1e7de..52146c3510 100644 Binary files a/auxmos.pdb and b/auxmos.pdb differ diff --git a/code/controllers/subsystem/air.dm b/code/controllers/subsystem/air.dm index d30c7df18c..5775d5722d 100644 --- a/code/controllers/subsystem/air.dm +++ b/code/controllers/subsystem/air.dm @@ -151,17 +151,14 @@ SUBSYSTEM_DEF(air) if(currentpart == SSAIR_TURF_CONDUCTION) timer = TICK_USAGE_REAL - process_turf_heat(CALLBACK(GLOBAL_PROC,/proc/heat_post_process)) + if(process_turf_heat(MC_TICK_REMAINING_MS)) + pause() cost_superconductivity = MC_AVERAGE(cost_superconductivity, TICK_DELTA_TO_MS(TICK_USAGE_REAL - timer)) if(state != SS_RUNNING) return resumed = 0 currentpart = SSAIR_REBUILD_PIPENETS -/proc/heat_post_process(turf/T,new_temp) - T.temperature = new_temp - T.temperature_expose() - /datum/controller/subsystem/air/proc/process_pipenets(resumed = 0) if (!resumed) src.currentrun = networks.Copy() @@ -223,15 +220,8 @@ SUBSYSTEM_DEF(air) if(MC_TICK_CHECK) return -/proc/post_process_equalize(turf/open/T,turf/open/otherT,amount) - if(!istype(T) || !istype(otherT)) - return - T.update_visuals() - otherT.update_visuals() - T.consider_pressure_difference(otherT,amount) - /datum/controller/subsystem/air/proc/process_turf_equalize(resumed = 0) - if(process_turf_equalize_extools((Master.current_ticklimit - TICK_USAGE) * world.tick_lag,CALLBACK(GLOBAL_PROC,/proc/post_process_equalize))) + if(process_turf_equalize_extools(MC_TICK_REMAINING_MS)) pause() /* //cache for sanic speed @@ -250,25 +240,8 @@ SUBSYSTEM_DEF(air) return */ -/proc/post_process_turf(flags,turf/open/T,list/tiles_with_diffs) - if(!isopenturf(T)) - return - if(flags & 2) - T.air.react() - if(flags & 1) - T.update_visuals() - for(var/list/pair in tiles_with_diffs) - var/turf/open/enemy_tile = pair[1] - if(istype(enemy_tile)) - var/difference = pair[2] - if(difference > 0) - T.consider_pressure_difference(enemy_tile, difference) - else - enemy_tile.consider_pressure_difference(T, -difference) - /datum/controller/subsystem/air/proc/process_turfs(resumed = 0) - var/datum/callback/post_process = CALLBACK(GLOBAL_PROC,/proc/post_process_turf) - if(process_turfs_extools(post_process)) + if(process_turfs_extools(MC_TICK_REMAINING_MS)) pause() /* //cache for sanic speed @@ -291,7 +264,7 @@ SUBSYSTEM_DEF(air) T.update_visuals() /datum/controller/subsystem/air/proc/process_excited_groups(resumed = 0) - if(!process_excited_groups_extools(CALLBACK(GLOBAL_PROC,/proc/post_process_excited_turf))) + if(!process_excited_groups_extools(MC_TICK_REMAINING_MS)) pause() /datum/controller/subsystem/air/proc/process_turfs_extools() diff --git a/code/controllers/subsystem/callback.dm b/code/controllers/subsystem/callback.dm index 154dc513f6..ff47ac6665 100644 --- a/code/controllers/subsystem/callback.dm +++ b/code/controllers/subsystem/callback.dm @@ -4,17 +4,11 @@ SUBSYSTEM_DEF(callbacks) wait = 1 priority = FIRE_PRIORITY_CALLBACKS -/proc/_process_callbacks() - SScallbacks.can_fire = 0 - SScallbacks.flags |= SS_NO_FIRE - CRASH("Auxtools not found! Callback subsystem shutting itself off.") - -/proc/_process_callbacks_priority() +/proc/process_callbacks() SScallbacks.can_fire = 0 SScallbacks.flags |= SS_NO_FIRE CRASH("Auxtools not found! Callback subsystem shutting itself off.") /datum/controller/subsystem/callbacks/fire() - _process_callbacks_priority() - if(TICK_CHECK || _process_callbacks(MC_TICK_REMAINING_MS)) + if(process_callbacks(null,MC_TICK_REMAINING_MS)) pause() diff --git a/code/game/turfs/simulated/floor/fancy_floor.dm b/code/game/turfs/simulated/floor/fancy_floor.dm index 3cf6cc7511..ce27f8fd24 100644 --- a/code/game/turfs/simulated/floor/fancy_floor.dm +++ b/code/game/turfs/simulated/floor/fancy_floor.dm @@ -69,7 +69,7 @@ ChangeTurf(/turf/open/floor/plating/rust) /turf/open/floor/wood/cold - temperature = 255.37 + initial_temperature = 255.37 /turf/open/floor/wood/airless initial_gas_mix = AIRLESS_ATMOS diff --git a/code/game/turfs/simulated/floor/plating/misc_plating.dm b/code/game/turfs/simulated/floor/plating/misc_plating.dm index 5323db001f..dfa537b738 100644 --- a/code/game/turfs/simulated/floor/plating/misc_plating.dm +++ b/code/game/turfs/simulated/floor/plating/misc_plating.dm @@ -177,7 +177,7 @@ icon = 'icons/turf/floors/ice_turf.dmi' icon_state = "unsmooth" initial_gas_mix = FROZEN_ATMOS - temperature = 180 + initial_temperature = 180 planetary_atmos = TRUE baseturfs = /turf/open/floor/plating/ice slowdown = 1 @@ -201,10 +201,10 @@ canSmoothWith = list(/turf/open/floor/plating/ice/smooth, /turf/open/floor/plating/ice, /turf/open/floor/plating/ice/colder) /turf/open/floor/plating/ice/colder - temperature = 140 + initial_temperature = 140 /turf/open/floor/plating/ice/temperate - temperature = 255.37 + initial_temperature = 255.37 /turf/open/floor/plating/ice/break_tile() return @@ -221,7 +221,7 @@ icon = 'icons/turf/snow.dmi' icon_state = "snowplating" initial_gas_mix = FROZEN_ATMOS - temperature = 180 + initial_temperature = 180 attachment_holes = FALSE planetary_atmos = TRUE footstep = FOOTSTEP_SAND @@ -240,10 +240,10 @@ icon_state = "smooth" /turf/open/floor/plating/snowed/colder - temperature = 140 + initial_temperature = 140 /turf/open/floor/plating/snowed/temperatre - temperature = 255.37 + initial_temperature = 255.37 /turf/open/floor/plating/snowed/smoothed/icemoon initial_gas_mix = ICEMOON_DEFAULT_ATMOS diff --git a/code/game/turfs/simulated/minerals.dm b/code/game/turfs/simulated/minerals.dm index 0f1ec6fa85..1743478ff2 100644 --- a/code/game/turfs/simulated/minerals.dm +++ b/code/game/turfs/simulated/minerals.dm @@ -13,7 +13,7 @@ density = TRUE blocks_air = 1 layer = EDGED_TURF_LAYER - temperature = TCMB + initial_temperature = 293.15 var/environment_type = "asteroid" var/turf/open/floor/plating/turf_type = /turf/open/floor/plating/asteroid/airless var/mineralType = null diff --git a/code/game/turfs/space/space.dm b/code/game/turfs/space/space.dm index d6409bf099..52bdb9fc3f 100644 --- a/code/game/turfs/space/space.dm +++ b/code/game/turfs/space/space.dm @@ -4,7 +4,7 @@ name = "\proper space" intact = 0 - temperature = TCMB + initial_temperature = TCMB thermal_conductivity = 0 heat_capacity = 700000 diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index 57c50db018..69f63e114e 100755 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -13,7 +13,7 @@ // This shouldn't be modified directly, use the helper procs. var/list/baseturfs = /turf/baseturf_bottom - var/temperature = T20C + var/initial_temperature = T20C var/to_be_destroyed = 0 //Used for fire, if a melting temperature was reached, it will be destroyed var/max_fire_temperature_sustained = 0 //The max temperature of the fire which it was subjected to @@ -95,6 +95,10 @@ /turf/proc/__auxtools_update_turf_temp_info() +/turf/return_temperature() + +/turf/proc/set_temperature() + /turf/proc/Initalize_Atmos(times_fired) CALCULATE_ADJACENT_TURFS(src) diff --git a/code/modules/atmospherics/environmental/LINDA_turf_tile.dm b/code/modules/atmospherics/environmental/LINDA_turf_tile.dm index 54df320c39..1e242f133d 100644 --- a/code/modules/atmospherics/environmental/LINDA_turf_tile.dm +++ b/code/modules/atmospherics/environmental/LINDA_turf_tile.dm @@ -76,7 +76,7 @@ return air /turf/temperature_expose() - if(temperature > heat_capacity) + if(return_temperature() > heat_capacity) to_be_destroyed = TRUE /turf/open/proc/eg_reset_cooldowns() @@ -179,7 +179,10 @@ //////////////////////////SPACEWIND///////////////////////////// -/turf/open/proc/consider_pressure_difference(turf/T, difference) +/turf/proc/consider_pressure_difference() + return + +/turf/open/consider_pressure_difference(turf/T, difference) if(difference > pressure_difference) pressure_direction = get_dir(src, T) pressure_difference = difference diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.dm b/code/modules/atmospherics/gasmixtures/gas_mixture.dm index 6aeaae8f4e..fd54eaa04a 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -243,8 +243,8 @@ GLOBAL_LIST_INIT(auxtools_atmos_initialized,FALSE) //acounts for changes in temperature var/turf/model_parent = model.parent_type - if(model.temperature != initial(model.temperature) || model.temperature != initial(model_parent.temperature)) - set_temperature(model.temperature) + if(model.return_temperature() != initial(model.initial_temperature) || model.return_temperature() != initial(model_parent.initial_temperature)) + set_temperature(model.return_temperature()) return 1 diff --git a/code/modules/awaymissions/mission_code/snowdin.dm b/code/modules/awaymissions/mission_code/snowdin.dm index d873b42d33..957d28ae5c 100644 --- a/code/modules/awaymissions/mission_code/snowdin.dm +++ b/code/modules/awaymissions/mission_code/snowdin.dm @@ -156,7 +156,7 @@ /turf/open/floor/plasteel/dark/snowdin initial_gas_mix = FROZEN_ATMOS planetary_atmos = 1 - temperature = 180 + initial_temperature = 180 /turf/open/lava/plasma name = "liquid plasma" diff --git a/code/modules/holodeck/holo_effect.dm b/code/modules/holodeck/holo_effect.dm index 09dcd7fa64..c37ccf657b 100644 --- a/code/modules/holodeck/holo_effect.dm +++ b/code/modules/holodeck/holo_effect.dm @@ -61,7 +61,7 @@ var/datum/effect_system/spark_spread/s = new s.set_up(3, 1, T) s.start() - T.temperature = 5000 + T.set_temperature(5000) T.hotspot_expose(50000, 50000, TRUE, TRUE) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index da03c4b533..71154fcd90 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -939,7 +939,7 @@ loc_temp = obj_temp else if(isspaceturf(get_turf(src))) var/turf/heat_turf = get_turf(src) - loc_temp = heat_turf.temperature + loc_temp = heat_turf.return_temperature() return loc_temp /mob/living/proc/get_standard_pixel_x_offset(lying = 0) diff --git a/code/modules/procedural_mapping/mapGeneratorModules/helpers.dm b/code/modules/procedural_mapping/mapGeneratorModules/helpers.dm index 0a2ae50baa..18607b919a 100644 --- a/code/modules/procedural_mapping/mapGeneratorModules/helpers.dm +++ b/code/modules/procedural_mapping/mapGeneratorModules/helpers.dm @@ -14,7 +14,7 @@ if(T.air) if(T.initial_gas_mix) T.air.parse_gas_string(T.initial_gas_mix) - T.temperature = T.air.return_temperature() + T.set_temperature(T.air.return_temperature()) else T.air.copy_from_turf(T)