Fixes the freezing component (#68737)

This commit is contained in:
Profakos
2022-07-31 03:49:54 +02:00
committed by GitHub
parent 0527cb396e
commit 5b0b56eef4
+10 -4
View File
@@ -22,12 +22,14 @@ GLOBAL_LIST_INIT(freon_color_matrix, list("#2E5E69", "#60A2A8", "#A1AFB1", rgb(0
target_obj.alpha -= 25
RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/on_moved)
RegisterSignal(target, COMSIG_MOVABLE_POST_THROW, .proc/shatter_on_throw)
RegisterSignal(target, COMSIG_MOVABLE_THROW_LANDED, .proc/shatter_on_throw)
RegisterSignal(target, COMSIG_MOVABLE_IMPACT, .proc/shatter_on_throw)
RegisterSignal(target, COMSIG_OBJ_UNFREEZE, .proc/on_unfreeze)
/datum/element/frozen/Detach(datum/source, ...)
var/obj/obj_source = source
REMOVE_TRAIT(obj_source, TRAIT_FROZEN, ELEMENT_TRAIT(type))
UnregisterSignal(obj_source, list(COMSIG_MOVABLE_MOVED, COMSIG_MOVABLE_THROW_LANDED, COMSIG_MOVABLE_IMPACT, COMSIG_OBJ_UNFREEZE))
obj_source.name = replacetext(obj_source.name, "frozen ", "")
obj_source.remove_atom_colour(TEMPORARY_COLOUR_PRIORITY, GLOB.freon_color_matrix)
obj_source.alpha += 25
@@ -49,10 +51,14 @@ GLOBAL_LIST_INIT(freon_color_matrix, list("#2E5E69", "#60A2A8", "#A1AFB1", rgb(0
/// our melting temperature.
/datum/element/frozen/proc/on_moved(datum/target)
SIGNAL_HANDLER
var/obj/obj_target = target
if(!isopenturf(obj_target.loc))
var/atom/movable/movable_target = target
if(movable_target.throwing)
return
var/turf/open/turf_loc = obj_target.loc
if(!isopenturf(movable_target.loc))
return
var/turf/open/turf_loc = movable_target.loc
if(turf_loc.air?.temperature >= T0C)//unfreezes target
Detach(target)