From 705b10abc98ad8f02ab7b2ba754bb0275e75fc52 Mon Sep 17 00:00:00 2001 From: Ceda EI Date: Sat, 3 Nov 2018 16:29:06 +0530 Subject: [PATCH] Update quest/side quest view. Quests/Side Quests have status listed. Completed quests only show a back button --- bot.py | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/bot.py b/bot.py index 6053108..ca9e4b5 100644 --- a/bot.py +++ b/bot.py @@ -207,14 +207,21 @@ def quest(bot, update, player, qid, type): text = ("🗺 " + {"quest": "Quest", "side_quest": "Side Quest"}[type] + f": {x.name}" "\n📌 Priority: " + ["Low", "Medium", "High"][x.imp-1] - + "\n📘 Difficulty: " + ["Low", "Medium", "High"][x.diff-1]) + + "\n📘 Difficulty: " + ["Low", "Medium", "High"][x.diff-1] + + "\n" + ["❎", "✅"][x.state] + " Status: " + + ["Incomplete", "Complete"][x.state]) + + if x.state == 1: + player.set_state('bo', 0) + custom_keyboard = [["Back"]] + elif x.state == 0: + state = {"quest": "eq", "side_quest": "esq"}[type] + player.set_state(state, qid) + custom_keyboard = [ + ["Mark as done"], + ["Edit Name", "Change Priority", "Change Difficulty"], + ["Back"]] - state = {"quest": "eq", "side_quest": "esq"}[type] - player.set_state(state, qid) - custom_keyboard = [ - ["Mark as done"], - ["Edit Name", "Change Priority", "Change Difficulty"], - ["Back"]] reply_markup = telegram.ReplyKeyboardMarkup(custom_keyboard) chat_id = update.message.chat_id bot.send_message(chat_id=chat_id, text=text, parse_mode="HTML", @@ -270,6 +277,7 @@ def message_handling(bot, update, db): # qi / sqi: (Side) Quest importance: User has entered difficulty, # importance requested # eq / qsq: Edit Quest / Side Quest. the user press /Q_\d+ or /SQ_\d+ + # bo: Back Only if state["state"] == "none": if text == "add quest": @@ -304,6 +312,9 @@ def message_handling(bot, update, db): send_status(bot, update, player) if text == "mark as done": mark_as_done(bot, update, player, state["extra"], "side_quest") + elif state["state"] == "bo": + player.set_state('none', 0) + send_status(bot, update, player) db = sqlite3.connect("questable.db", check_same_thread=False)