Merge pull request #6333 from mwerezak/engine

Alternative to #6332
This commit is contained in:
Snapshot
2014-09-13 00:45:17 -07:00
6 changed files with 11 additions and 11 deletions
@@ -1,4 +1,5 @@
//TODO: Put this under a common parent type with heaters to cut down on the copypasta
#define FREEZER_PERF_MULT 2.5
/obj/machinery/atmospherics/unary/freezer
name = "gas cooling system"
@@ -9,7 +10,7 @@
anchored = 1.0
var/heatsink_temperature = 70 //T20C //the constant temperature resevoir into which the freezer pumps heat. Probably the hull of the station or something.
var/heatsink_temperature = T20C //the constant temperature resevoir into which the freezer pumps heat. Probably the hull of the station or something.
var/internal_volume = 600 //L
var/on = 0
@@ -17,7 +18,7 @@
idle_power_usage = 5 //5 Watts for thermostat related circuitry
active_power_usage //50 kW. The power rating of the freezer
var/max_power_usage = 5000 //power rating when the usage is turned up to 1 //Reduced to 5kW for usability.
var/max_power_usage = 20000 //power rating when the usage is turned up to 100
var/power_setting = 100
var/set_temperature = T20C //thermostat
@@ -135,9 +136,8 @@
//Assume the heat is being pumped into the hull which is fixed at heatsink_temperature
//not /really/ proper thermodynamics but whatever
var/cop = air_contents.temperature/heatsink_temperature //heatpump coefficient of performance from thermodynamics -> power used = heat_transfer/cop
var/cop = FREEZER_PERF_MULT * air_contents.temperature/heatsink_temperature //heatpump coefficient of performance from thermodynamics -> power used = heat_transfer/cop
heat_transfer = min(heat_transfer, cop * active_power_usage) //limit heat transfer by available power
heat_transfer *= 10 //Temp fix for cryo being unusable.
var/removed = -air_contents.add_thermal_energy(-heat_transfer) //remove the heat
if (debug)
@@ -18,7 +18,7 @@
idle_power_usage = 5 //5 Watts for thermostat related circuitry
active_power_usage //50 kW. The power rating of the heater
var/max_power_usage = 50000 //power rating when the usage is turned up to 1
var/max_power_usage = 20000 //power rating when the usage is turned up to 100
var/power_setting = 100
var/heating = 0 //mainly for icon updates
+2 -2
View File
@@ -1,4 +1,4 @@
#define HEAT_CAPACITY_HUMAN 24984 //249840 J/K, for a 72 kg person. Making this one-tenth of that as a quick workaround for cryo not cooling people enough.
#define HEAT_CAPACITY_HUMAN 100 //249840 J/K, for a 72 kg person.
/obj/machinery/atmospherics/unary/cryo_cell
name = "cryo cell"
@@ -45,7 +45,7 @@
if(air_contents)
temperature_archived = air_contents.temperature
//heat_gas_contents()
heat_gas_contents()
expel_gas()
if(abs(temperature_archived-air_contents.temperature) > 1)
+1 -1
View File
@@ -15,7 +15,7 @@
var/lastout = 0 //Amount of power it actually outputs to the powernet
var/loaddemand = 0 //For use in restore()
var/capacity = 5e6 //Maximum amount of power it can hold
var/charge = 2.0e6 //Current amount of power it holds
var/charge = 1.0e6 //Current amount of power it holds
var/charging = 0 //1 if it's actually charging, 0 if not
var/chargemode = 0 //1 if it's trying to charge, 0 if not.
//var/chargecount = 0
+1 -1
View File
@@ -16,7 +16,7 @@
*/
//Controls how much power is produced by each collector in range - this is the main parameter for tweaking SM balance, as it basically controls how the power variable relates to the rest of the game.
#define POWER_FACTOR 0.7 //Obtained from testing. Aiming to make the ideal running output (500 kW) run the SM to ~85% of the safety level.
#define POWER_FACTOR 1.0
#define DECAY_FACTOR 700 //Affects how fast the supermatter power decays
#define CRITICAL_TEMPERATURE 800 //K
#define CHARGING_FACTOR 0.05