neelthee-mansion 3.19.13__py3-none-any.whl → 3.19.15__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- neelthee_mansion/Books.py +31 -29
- neelthee_mansion/Mansion_of_Amnesia.py +512 -341
- neelthee_mansion/Quests.py +16 -5
- neelthee_mansion/Rooms.py +1183 -1210
- neelthee_mansion/all_game_utils.py +3 -2
- neelthee_mansion/creatures.py +137 -85
- neelthee_mansion/items.py +40 -23
- neelthee_mansion/utils.py +141 -66
- {neelthee_mansion-3.19.13.dist-info → neelthee_mansion-3.19.15.dist-info}/METADATA +1 -1
- neelthee_mansion-3.19.15.dist-info/RECORD +16 -0
- neelthee_mansion-3.19.13.dist-info/RECORD +0 -16
- {neelthee_mansion-3.19.13.dist-info → neelthee_mansion-3.19.15.dist-info}/LICENSE.md +0 -0
- {neelthee_mansion-3.19.13.dist-info → neelthee_mansion-3.19.15.dist-info}/WHEEL +0 -0
- {neelthee_mansion-3.19.13.dist-info → neelthee_mansion-3.19.15.dist-info}/entry_points.txt +0 -0
- {neelthee_mansion-3.19.13.dist-info → neelthee_mansion-3.19.15.dist-info}/top_level.txt +0 -0
neelthee_mansion/Quests.py
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
from .utils import *
|
2
2
|
from .creatures import PC
|
3
3
|
|
4
|
+
|
4
5
|
class Objective:
|
5
6
|
def __init__(self, description, is_completed=False):
|
6
7
|
self.description = description
|
@@ -16,7 +17,9 @@ class Quest:
|
|
16
17
|
self.description = description
|
17
18
|
self.objectives = objectives # List of objectives
|
18
19
|
self.rewards = rewards # Rewards for completing the quest
|
19
|
-
self.status =
|
20
|
+
self.status = (
|
21
|
+
"Not Started" # Can be "Not Started", "In Progress", or "Completed"
|
22
|
+
)
|
20
23
|
|
21
24
|
def start(self):
|
22
25
|
self.status = "In Progress"
|
@@ -28,7 +31,9 @@ class Quest:
|
|
28
31
|
completer.money += reward
|
29
32
|
|
30
33
|
def is_completed(self):
|
31
|
-
return self.status == "Completed" and all(
|
34
|
+
return self.status == "Completed" and all(
|
35
|
+
obj.is_completed for obj in self.objectives
|
36
|
+
)
|
32
37
|
|
33
38
|
|
34
39
|
class QuestManager:
|
@@ -42,7 +47,9 @@ class QuestManager:
|
|
42
47
|
for quest in self.quests:
|
43
48
|
if quest.title == quest_title:
|
44
49
|
quest.start()
|
45
|
-
type_text(
|
50
|
+
type_text(
|
51
|
+
f"%*ORANGE*%Quest '{quest.title}' started: {quest.description}%*RESET*%"
|
52
|
+
)
|
46
53
|
return
|
47
54
|
type_text(f"Quest '{quest_title}' not found.")
|
48
55
|
|
@@ -50,7 +57,9 @@ class QuestManager:
|
|
50
57
|
for quest in self.quests:
|
51
58
|
if quest.title == quest_title and quest.is_completed():
|
52
59
|
quest.complete()
|
53
|
-
type_text(
|
60
|
+
type_text(
|
61
|
+
f"%*ORANGE*%Quest '{quest.title}' completed! Rewards: {quest.rewards} money%*RESET*%"
|
62
|
+
)
|
54
63
|
return
|
55
64
|
|
56
65
|
def show_quests(self):
|
@@ -66,5 +75,7 @@ class QuestManager:
|
|
66
75
|
for obj in quest.objectives:
|
67
76
|
if obj.description == objective_description:
|
68
77
|
obj.complete()
|
69
|
-
type_text(
|
78
|
+
type_text(
|
79
|
+
f"%*ORANGE*%Objective '{obj.description}' completed!%*RESET*%"
|
80
|
+
)
|
70
81
|
return
|