Fix for issue which caused telecomms machinery to take no damage when temperature was 70C. Now it adds damage according to temperature. Higher temperature will cause the machinery to fail faster.

Conflicts:
	code/game/machinery/telecomms/telecomunications.dm
This commit is contained in:
Atlantiscze
2014-07-18 06:56:51 -04:00
committed by ZomgPonies
parent dbc621e7ab
commit 242b7ab66b
@@ -91,7 +91,9 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
"type" = signal.data["type"],
"server" = signal.data["server"],
"reject" = signal.data["reject"],
"level" = signal.data["level"]
"level" = signal.data["level"],
"verb" = signal.data["verb"],
"language" = signal.data["language"]
)
// Keep the "original" signal constant
@@ -158,7 +160,7 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
add_link(T)
/obj/machinery/telecomms/Destroy()
/obj/machinery/telecomms/Del()
telecomms_list -= src
..()
@@ -212,11 +214,20 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
/obj/machinery/telecomms/proc/checkheat()
// Checks heat from the environment and applies any integrity damage
var/datum/gas_mixture/environment = loc.return_air()
var/damage_chance = 0 // Percent based chance of applying 1 integrity damage this tick
switch(environment.temperature)
if(T0C to (T20C + 20))
integrity = between(0, integrity, 100)
if((T20C + 20) to (T0C + 70))
integrity = max(0, integrity - 1)
if((T0C + 40) to (T0C + 70)) // 40C-70C, minor overheat, 10% chance of taking damage
damage_chance = 10
if((T0C + 70) to (T0C + 130)) // 70C-130C, major overheat, 25% chance of taking damage
damage_chance = 25
if((T0C + 130) to (T0C + 200)) // 130C-200C, dangerous overheat, 50% chance of taking damage
damage_chance = 50
if((T0C + 200) to INFINITY) // More than 200C, INFERNO. Takes damage every tick.
damage_chance = 100
if (damage_chance && prob(damage_chance))
integrity = between(0, integrity - 1, 100)
if(delay)
delay--
else