ui: simplify quest book

This commit is contained in:
rr-
2018-11-08 10:46:06 +01:00
parent b00cf34e8f
commit 3afa965eeb
2 changed files with 6 additions and 10 deletions
+2 -2
View File
@@ -93,7 +93,7 @@ class Stats(SignalMixin):
class QuestBook(SignalMixin):
signals = ["complete_act", "complete_quest"]
signals = ["complete_act", "start_quest"]
def __init__(self) -> None:
self._quests: T.List[str] = []
@@ -610,7 +610,7 @@ class Simulation:
raise AssertionError
self.player.quest_book.add_quest(caption)
self.player.quest_book.emit("complete_quest")
self.player.quest_book.emit("start_quest", caption)
def interplot_cinematic(self) -> None:
def enqueue(task: BaseTask) -> None:
+4 -8
View File
@@ -289,7 +289,7 @@ class QuestBookView(DoubleLineBox):
self.list_box = CustomListBox([])
self.quest_bar = CustomProgressBar()
self.player.quest_book.connect("complete_quest", self.sync_quest_add)
self.player.quest_book.connect("start_quest", self.sync_quest_add)
self.player.quest_book.quest_bar.connect("change", self.sync_position)
super().__init__(
@@ -306,17 +306,13 @@ class QuestBookView(DoubleLineBox):
def sync_quests(self) -> None:
del self.list_box.body[:]
for quest_name in self.player.quest_book.quests[-self.cutoff :]:
self.list_box.body.append(ReadOnlyCheckBox(quest_name, state=True))
if self.list_box.body:
self.list_box.body[-1].set_state(False)
self.sync_quest_add(quest_name)
def sync_quest_add(self) -> None:
def sync_quest_add(self, quest_name: str) -> None:
del self.list_box.body[: -self.cutoff]
if self.list_box.body:
self.list_box.body[-1].set_state(True)
self.list_box.body.append(
ReadOnlyCheckBox(self.player.quest_book.quests[-1], state=False)
)
self.list_box.body.append(ReadOnlyCheckBox(quest_name, state=False))
def sync_position(self) -> None:
self.quest_bar.set_completion(