mirror of
https://github.com/SPLURT-Station/S.P.L.U.R.T-Station-13.git
synced 2025-12-11 18:33:36 +00:00
37 lines
941 B
Plaintext
37 lines
941 B
Plaintext
/**
|
|
* # Temperature Sensor
|
|
*
|
|
* Returns the temperature of the tile
|
|
*/
|
|
/obj/item/circuit_component/tempsensor
|
|
display_name = "Temperature Sensor"
|
|
desc = "Outputs the current temperature of the tile"
|
|
|
|
circuit_flags = CIRCUIT_FLAG_INPUT_SIGNAL|CIRCUIT_FLAG_OUTPUT_SIGNAL
|
|
|
|
/// The result from the output
|
|
var/datum/port/output/result
|
|
|
|
/obj/item/circuit_component/tempsensor/Initialize(mapload)
|
|
. = ..()
|
|
result = add_output_port("Result", PORT_TYPE_NUMBER)
|
|
|
|
/obj/item/circuit_component/tempsensor/input_received(datum/port/input/port)
|
|
. = ..()
|
|
if(.)
|
|
return
|
|
//Get current turf
|
|
var/turf/location = get_turf(src)
|
|
if(!location)
|
|
result.set_output(null)
|
|
return
|
|
//Get environment info
|
|
var/datum/gas_mixture/environment = location.return_air()
|
|
var/total_moles = environment.total_moles()
|
|
if(total_moles)
|
|
//If there's atmos, return temperature
|
|
result.set_output(round(environment.temperature,1))
|
|
else
|
|
result.set_output(0)
|
|
|