-
-
Notifications
You must be signed in to change notification settings - Fork 12
Quest
( in progress )

The Quest class is a set of stages, which follow each other in an orderly fashion.
(code-snippets: DR_QuestAdd)
define quests = {
"alice" : Quest(id = "alice", title = _("Help [a]"), bg="bg alice terrace talk",
stages_id = ["talk alice1", "order products", "take products", "talk alice2"],
description = _("To learn more about how the repo works, Talk to [a]. \nGoing when she is there will automatically start an \"Event\" (see routine*.rpy to learn more). \nAfter that an action (action*.rpy) will be added to open the pc, in MC room. \n\n(during the quest you can talk to [a] and you will see her talking during the quests of the same Quest)")),
"ann" : Quest(id = "ann", title = _("Help [an]"), stages_id = ["talk al about ann"], development = True),
}quests["alice"].start()
quests["ann"].start()(only if the Stage has been completed)
quests["alice"].next_stage()To check which stage number a Quest has arrived at:
if (quests_levels["alice"] == 2):
# ...The Stage() class is the necle of the Quest system. It is mandatory to define idQuestOrTask: it is the id of the quest it belongs to, or it is the id of the Task (explained later). In addition as title, description, description_request and advice the other parameters:
bg: in the information you can see the image inserted in bg
goals = []: the Goals to be passed (explained later)
days_late: days_late must pass since we "reached" the stage to start it
bl_requests = []: the bl_values (explained later) must be set to True to start the quest
quests_levels_requests = {
"quest id" : level,
}quests_levels_requests: to start the stage: quests_levels[quest] < level
label_start: label which will be started at the beginning of the quest
label_end: label which will be started at the end of the stage
label_check: (has not been implemented yet)
define quest_stages = {
# Quest "alice"
"talk alice1" : Stage(idQuestOrTask = "alice", title = _("Talk [a]"),
description = _("Talk [a] on the terrace."), label_start="stagestart_talkalice"),
"order products" : Stage(idQuestOrTask = "alice", title = _("Order products"),
description = _("Order the products with your PC.")),
"take products" : Stage(idQuestOrTask = "alice", title = _("Take products"),
description = _("Take products on the Terrace."),
description_request = _("Wait for the products you ordered to arrive (2 day)"),
days_late = 2, label_start="add_product"),
"talk alice2" : Stage(idQuestOrTask = "alice", title = _("Talk [a]"), description = _("Talk [a].")),
# Quest "ann"
"talk al about ann" : Stage(idQuestOrTask = "ann", title = _("Talk [a]"), description = _("Talk [a].")),
"visit ann" : Stage(idQuestOrTask = "ann", title = _("Visit [an]"),
description = _("Go to the house of [an].")),
}(in process)
(in process)