from .get_scene_object import get_scene_object from .set_scene_object_collision_rules import set_scene_object_collision_rules from ..rendering.collision_rules import resolve_collision_rules, sanitize_collision_rules, move_action_in_rules def move_action_in_trigger(slug, object_id, leaf_id, direction): """Déplace une action précise d'un cran ("up"/"down", voir screens/rendering/collision_rules.py::move_action_in_rules) dans son déclencheur d'OBJET — même patron qu'append_action_to_trigger.""" obj = get_scene_object(slug, object_id) if obj is None: return False rules = resolve_collision_rules(obj) if not move_action_in_rules(rules, leaf_id, direction): return False sanitized = sanitize_collision_rules(rules) set_scene_object_collision_rules(slug, object_id, sanitized) return True