def finish_sentence(self, caller, dialogue, sentence): """ A sentence finished, do it's action. """ if not caller: return # get dialogue dlg = self.get_dialogue(dialogue) if not dlg: return if sentence >= len(dlg["sentences"]): return sen = self.get_sentence(dialogue, sentence) if not sen: return # do dialogue's action if sen["action"]: script_handler.do_action(caller, sen["action"]) if sentence + 1 >= len(dlg["sentences"]): # last sentence self.finish_dialogue(caller, dialogue) if sen["finish_quest"]: caller.quest.finish(sen["finish_quest"]) if sen["provide_quest"]: caller.quest.accept(sen["provide_quest"])
def finish(self): """ """ # do quest's action if self.action: script_handler.do_action(caller, self.action)