diff options
Diffstat (limited to 'atoidejouer/story/keys.py')
-rw-r--r-- | atoidejouer/story/keys.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/atoidejouer/story/keys.py b/atoidejouer/story/keys.py index 4bebb2e..6d09820 100644 --- a/atoidejouer/story/keys.py +++ b/atoidejouer/story/keys.py @@ -356,6 +356,28 @@ class StoryKeys(object): # return default return [0, 0] + def get_next_align(self, sequence_name, frame, use_transition=False): + # prepare inversed range + _range = range(frame + 1, self.get_max_frame() + 1) + # try one by one + for _f in _range: + # get frame dict + _frame_dict = self.get_frame_dict(sequence_name, _f) + # get frame values + _frame_values = [] if _frame_dict is None else _frame_dict.values() + # find first valid key + for _f_dict in _frame_values: + # little check + if use_transition is False\ + and _f_dict['__key_type'] != 'key': + continue + elif '__align' in _f_dict\ + and _f_dict['__key_type'] in ['key', 'transition']: + return _f_dict['__align'] + else: + continue + # default + return [0, 0] def inc_position(self, sequence_name, frame, filename, move, value): # get align first |