mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-21 04:57:57 +01:00
Fixes unarmed telekinesis breaking chameleon. (#65505)
Apparently whoever implemented the signal handler forgot to pass the signal source so it was reading the thing clicked on as whether the thing clicked on was adjacent. As datums are truthy this resulted in all clicks breaking chameleon.
This commit is contained in:
@@ -19,12 +19,31 @@
|
||||
/datum/mutation/human/chameleon/on_life(delta_time, times_fired)
|
||||
owner.alpha = max(owner.alpha - (12.5 * delta_time), 0)
|
||||
|
||||
/datum/mutation/human/chameleon/proc/on_move()
|
||||
/**
|
||||
* Resets the alpha of the host to the chameleon default if they move.
|
||||
*
|
||||
* Arguments:
|
||||
* - [source][/atom/movable]: The source of the signal. Presumably the host mob.
|
||||
* - [old_loc][/atom]: The location the host mob used to be in.
|
||||
* - move_dir: The direction the host mob moved in.
|
||||
* - forced: Whether the movement was caused by a forceMove or moveToNullspace.
|
||||
* - [old_locs][/list/atom]: The locations the host mob used to be in.
|
||||
*/
|
||||
/datum/mutation/human/chameleon/proc/on_move(atom/movable/source, atom/old_loc, move_dir, forced, list/atom/old_locs)
|
||||
SIGNAL_HANDLER
|
||||
|
||||
owner.alpha = CHAMELEON_MUTATION_DEFAULT_TRANSPARENCY
|
||||
|
||||
/datum/mutation/human/chameleon/proc/on_attack_hand(atom/target, proximity)
|
||||
/**
|
||||
* Resets the alpha of the host if they click on something nearby.
|
||||
*
|
||||
* Arguments:
|
||||
* - [source][/mob/living/carbon/human]: The host mob that just clicked on something.
|
||||
* - [target][/atom]: The thing the host mob clicked on.
|
||||
* - proximity: Whether the host mob can physically reach the thing that they clicked on.
|
||||
* - [modifiers][/list]: The set of click modifiers associated with this attack chain call.
|
||||
*/
|
||||
/datum/mutation/human/chameleon/proc/on_attack_hand(mob/living/carbon/human/source, atom/target, proximity, list/modifiers)
|
||||
SIGNAL_HANDLER
|
||||
|
||||
if(!proximity) //stops tk from breaking chameleon
|
||||
|
||||
Reference in New Issue
Block a user