diff --git a/CHANGELOG.md b/CHANGELOG.md index 96fa32b3d8..569963f01e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -179,6 +179,8 @@ Up requirements to Django 4.0+, Twisted 22+, Python 3.9 or 3.10 - Enable proper serialization of dict subclasses in Attributes (aogier) - `object.search` fuzzy-matching now uses `icontains` instead of `istartswith` to better match how search works elsewhere (volund) +- The `.at_traverse` hook now receives a `exit_obj` kwarg, linking back to the + exit triggering the hook (volund) ## Evennia 0.9.5 diff --git a/evennia/objects/objects.py b/evennia/objects/objects.py index 5b012000f3..0bebac8487 100644 --- a/evennia/objects/objects.py +++ b/evennia/objects/objects.py @@ -865,6 +865,7 @@ class DefaultObject(ObjectDB, metaclass=TypeclassBase): Keyword Args: Passed on to announce_move_to and announce_move_from hooks. + Exits will set the "exit_obj" kwarg to themselves. Returns: result (bool): True/False depending on if there were problems with the move. @@ -2892,7 +2893,7 @@ class DefaultExit(DefaultObject): """ source_location = traversing_object.location - if traversing_object.move_to(target_location, move_type="traverse"): + if traversing_object.move_to(target_location, move_type="traverse", exit_obj=self): self.at_post_traverse(traversing_object, source_location) else: if self.db.err_traverse: