From 41691f5d253f78b8a992a4cbccf6656306faa3dd Mon Sep 17 00:00:00 2001 From: Teddy Xiong Date: Thu, 26 Mar 2026 11:19:55 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=F0=9F=8E=B8=20add=20tick=20index?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AsyncOutput.py | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/AsyncOutput.py b/AsyncOutput.py index 1ed5f85..1cf33d2 100644 --- a/AsyncOutput.py +++ b/AsyncOutput.py @@ -375,8 +375,8 @@ class AsyncOutputRemoteTriggerNode: } } - RETURN_TYPES = ("BOOLEAN", ) - RETURN_NAMES = ("bool", ) + RETURN_TYPES = ("BOOLEAN", "INT", ) + RETURN_NAMES = ("bool", "tick_index", ) OUTPUT_NODE = True CATEGORY = f'{MAIN_CATEGORY}/RemoteControl' FUNCTION = "remote_trigger" @@ -399,7 +399,7 @@ class AsyncOutputRemoteTriggerNode: del ASYNC_OUTPUT_REMOTE_CONTROL_DATA[key_id] if key_id in ASYNC_OUTPUT_REMOTE_CONTROL_TICK_DICT: del ASYNC_OUTPUT_REMOTE_CONTROL_TICK_DICT[key_id] - return (False, ) + return (False, -1, ) if tick_output == True: if key_id not in ASYNC_OUTPUT_REMOTE_CONTROL_DATA: @@ -410,10 +410,11 @@ class AsyncOutputRemoteTriggerNode: if key_id not in ASYNC_OUTPUT_REMOTE_CONTROL_DATA: - return (False, ) + return (False, -1, ) res = False + tick_index = -1 if mode == "==": res = (conditions == ASYNC_OUTPUT_REMOTE_CONTROL_DATA[key_id]) elif mode == "!=": @@ -432,15 +433,16 @@ class AsyncOutputRemoteTriggerNode: tick_count = ASYNC_OUTPUT_REMOTE_CONTROL_TICK_DICT[key_id] if tick_count == -1 and tick_count < count: ASYNC_OUTPUT_REMOTE_CONTROL_TICK_DICT[key_id] += 1 - return (True, ) + return (True, 0, ) elif tick_count < count: ASYNC_OUTPUT_REMOTE_CONTROL_TICK_DICT[key_id] += 1 - return (res, ) + tick_index = ASYNC_OUTPUT_REMOTE_CONTROL_TICK_DICT[key_id] + return (res, tick_index, ) else: - return (False, ) + return (False, -1, ) - return (res, ) + return (res, tick_index, ) @classmethod def IS_CHANGED(s, key_id, conditions, mode, tick_output=False, reset=False, unique_id=0):