neelthee-mansion 3.20.21__py3-none-any.whl → 3.21.1__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/Mansion_of_Amnesia.py +68 -0
- neelthee_mansion/Rooms.py +61 -1
- {neelthee_mansion-3.20.21.dist-info → neelthee_mansion-3.21.1.dist-info}/METADATA +3 -13
- neelthee_mansion-3.21.1.dist-info/RECORD +16 -0
- {neelthee_mansion-3.20.21.dist-info → neelthee_mansion-3.21.1.dist-info}/WHEEL +1 -1
- neelthee_mansion/Mansion_of_Amnesia-win2.py +0 -1345
- neelthee_mansion/Rooms-win2.py +0 -1937
- neelthee_mansion-3.20.21.dist-info/RECORD +0 -18
- {neelthee_mansion-3.20.21.dist-info → neelthee_mansion-3.21.1.dist-info}/LICENSE.md +0 -0
- {neelthee_mansion-3.20.21.dist-info → neelthee_mansion-3.21.1.dist-info}/entry_points.txt +0 -0
- {neelthee_mansion-3.20.21.dist-info → neelthee_mansion-3.21.1.dist-info}/top_level.txt +0 -0
@@ -3,6 +3,7 @@ from .creatures import *
|
|
3
3
|
from .items import *
|
4
4
|
from .Quests import *
|
5
5
|
from .all_game_utils import *
|
6
|
+
import tkinter as tk
|
6
7
|
|
7
8
|
|
8
9
|
GameState = {
|
@@ -497,6 +498,8 @@ def Examine(*Args):
|
|
497
498
|
elif isinstance(_, Recorder):
|
498
499
|
type_text("This device records sound. The current message is:")
|
499
500
|
type_text(_.message)
|
501
|
+
else:
|
502
|
+
type_text(_.value)
|
500
503
|
elif Name in ROOMS[player.CURRENTROOM]["directions"]: # Check exits in the room
|
501
504
|
door = ROOMS[player.CURRENTROOM]["directions"][Name]
|
502
505
|
if isinstance(door, Door):
|
@@ -1112,6 +1115,71 @@ def handle_guard_action(guard):
|
|
1112
1115
|
def initializer():
|
1113
1116
|
global color_coding, player, CHARACTERSLIST
|
1114
1117
|
df = pd.DataFrame(CHARACTERSLIST)
|
1118
|
+
|
1119
|
+
# A tkinter window that asks these questions, instead of the console.Include a button that says "Exit Game". When the button is clicked, the game exits. Include a button that says "premade character". When the button is clicked, a new window opens that lets you choose one of the premade characters from teh CHARACTERSLIST var. Include a button that says "custom character". When the button is clicked, a new window opens that asks them for a name, age, hight, and waight(LBs).
|
1120
|
+
def create_main_menu():
|
1121
|
+
def exit_game():
|
1122
|
+
root.destroy()
|
1123
|
+
quit()
|
1124
|
+
|
1125
|
+
def premade_character():
|
1126
|
+
def select_character():
|
1127
|
+
selected_character = character_listbox.curselection()
|
1128
|
+
if selected_character:
|
1129
|
+
character_info = CHARACTERSLIST[selected_character[0]]
|
1130
|
+
name_entry.insert(0, character_info["name"])
|
1131
|
+
age_entry.insert(0, character_info["age"])
|
1132
|
+
height_entry.insert(0, character_info["height"])
|
1133
|
+
weight_entry.insert(0, character_info["weight(LBs)"])
|
1134
|
+
character_window.destroy()
|
1135
|
+
|
1136
|
+
character_window = tk.Toplevel(root)
|
1137
|
+
character_window.title("Select Premade Character")
|
1138
|
+
character_listbox = tk.Listbox(character_window)
|
1139
|
+
for character in CHARACTERSLIST:
|
1140
|
+
character_listbox.insert(tk.END, character["name"])
|
1141
|
+
character_listbox.pack()
|
1142
|
+
select_button = tk.Button(character_window, text="Select", command=select_character)
|
1143
|
+
select_button.pack()
|
1144
|
+
|
1145
|
+
def custom_character():
|
1146
|
+
name_entry.delete(0, tk.END)
|
1147
|
+
age_entry.delete(0, tk.END)
|
1148
|
+
height_entry.delete(0, tk.END)
|
1149
|
+
weight_entry.delete(0, tk.END)
|
1150
|
+
|
1151
|
+
root = tk.Tk()
|
1152
|
+
root.title("Character Creation")
|
1153
|
+
|
1154
|
+
tk.Label(root, text="Name:").pack()
|
1155
|
+
name_entry = tk.Entry(root)
|
1156
|
+
name_entry.pack()
|
1157
|
+
|
1158
|
+
tk.Label(root, text="Age:").pack()
|
1159
|
+
age_entry = tk.Entry(root)
|
1160
|
+
age_entry.pack()
|
1161
|
+
|
1162
|
+
tk.Label(root, text="Height:").pack()
|
1163
|
+
height_entry = tk.Entry(root)
|
1164
|
+
height_entry.pack()
|
1165
|
+
|
1166
|
+
tk.Label(root, text="Weight (LBs):").pack()
|
1167
|
+
weight_entry = tk.Entry(root)
|
1168
|
+
weight_entry.pack()
|
1169
|
+
|
1170
|
+
premade_button = tk.Button(root, text="Premade Character", command=premade_character)
|
1171
|
+
premade_button.pack()
|
1172
|
+
|
1173
|
+
custom_button = tk.Button(root, text="Custom Character", command=custom_character)
|
1174
|
+
custom_button.pack()
|
1175
|
+
|
1176
|
+
exit_button = tk.Button(root, text="Exit Game", command=exit_game)
|
1177
|
+
exit_button.pack()
|
1178
|
+
|
1179
|
+
root.mainloop()
|
1180
|
+
|
1181
|
+
create_main_menu()
|
1182
|
+
|
1115
1183
|
Standord_Player = loop_til_valid_input(
|
1116
1184
|
"Do you want to use a premade character?", "you didn't answer Y or N.", Y_N
|
1117
1185
|
).value
|
neelthee_mansion/Rooms.py
CHANGED
@@ -648,6 +648,7 @@ You notice a "
|
|
648
648
|
"directions": {
|
649
649
|
"south": Door("Basement 3"),
|
650
650
|
"east": Door("Basement 1"),
|
651
|
+
"north": Door("DND"),
|
651
652
|
},
|
652
653
|
"items": {
|
653
654
|
"torch": item("torch"),
|
@@ -659,7 +660,7 @@ You notice a "
|
|
659
660
|
"info": "You are in a dimly lit underground armoury (all the light in the room comes from 3 %*BLUE*%torch%*RESET*%es on the walls) with 2 racks full of damaged weapons,\n\
|
660
661
|
%*RED*%rack-1%*RESET*% has damaged bows and %*RED*%rack-2%*RESET*% has damaged spears.",
|
661
662
|
"map": """
|
662
|
-
|
663
|
+
██████║██
|
663
664
|
█╦ █
|
664
665
|
█ ╦█
|
665
666
|
█ █
|
@@ -805,6 +806,65 @@ You notice a "
|
|
805
806
|
'Is it just me or are the first letters of all of those book names spelling the words "He\'s watching you"',
|
806
807
|
],
|
807
808
|
},
|
809
|
+
'DND': {
|
810
|
+
'room type': 'type',
|
811
|
+
'position': (0, 0, 0),
|
812
|
+
'discovered': False,
|
813
|
+
'directions': {
|
814
|
+
'north': Door('Room name'),
|
815
|
+
'south': Door("Basement Armoury"),
|
816
|
+
},
|
817
|
+
'creatures stats': [
|
818
|
+
NPC(
|
819
|
+
"dungeon master",
|
820
|
+
1000,
|
821
|
+
100,
|
822
|
+
type=creature_type("god", "dungeon master"),
|
823
|
+
responses={
|
824
|
+
"introduction": "I see you’ve come to the next stage of your quest, player. But remember—your choices, even the smallest ones, will shape your fate.\
|
825
|
+
Oh and before I forget, If you go through the door to the north, there wil be no turning back. You will ether have to join Neel-thee or fight him.",
|
826
|
+
"map": "Oh, the map! That's the map of one of my favourite places! Sword Coast is an amazing place to be! I hope you can go there one day.",
|
827
|
+
"you": "Me? I'm a prymodrial being from beyond the stars that can alter reality. You can call me the Dungeon Master."
|
828
|
+
},
|
829
|
+
keyword_variations={
|
830
|
+
"introduction": ["hello", "hi ", "greetings", "hey"],
|
831
|
+
"map": ["the map", "map", "sword coast", "strange map"],
|
832
|
+
"you": ["you"],
|
833
|
+
},
|
834
|
+
generic_response="I will not answer that question at this time."
|
835
|
+
),
|
836
|
+
],
|
837
|
+
'containers': {
|
838
|
+
'table': container([item("unknown map", "map", "This map is of some strange land, far away. At the top of the map, it says 'Sword Coast.'")]),
|
839
|
+
},
|
840
|
+
'info': 'You are in a dimly lit room with a table in the middle of it, and a looming figure to your left. The figure has a name badge that says "%*BROWN*%dungeon master%*RESET*%".',
|
841
|
+
'map': '''
|
842
|
+
████║████
|
843
|
+
█ █
|
844
|
+
█ █
|
845
|
+
█ ┬┬┬ █
|
846
|
+
█ ┬┬┬ █
|
847
|
+
█ ┬┬┬ █
|
848
|
+
█ █
|
849
|
+
█ █
|
850
|
+
██████║██''',
|
851
|
+
'random_events': [
|
852
|
+
RandomEvent(
|
853
|
+
name='rumble',
|
854
|
+
probability=0.4, # Adjust this for the probability of the event running (e.g., 0.1 is 10% chance)
|
855
|
+
condition=lambda player: True, # Condition under which the event can occur
|
856
|
+
effect=lambda player: type_text("You hear a strange rumbling sound."), # Define the effect of the event
|
857
|
+
)
|
858
|
+
],
|
859
|
+
'random_events': [
|
860
|
+
RandomEvent(
|
861
|
+
name='fire',
|
862
|
+
probability=0.3, # Adjust this for the probability of the event running (e.g., 0.1 is 10% chance)
|
863
|
+
condition=lambda player: True, # Condition under which the event can occur
|
864
|
+
effect=lambda player: type_text("Fire comes gushing out of a crack in the roof and into the wall."), # Define the effect of the event
|
865
|
+
)
|
866
|
+
],
|
867
|
+
},
|
808
868
|
"Cavern 1": {
|
809
869
|
"room type": "cavern",
|
810
870
|
"position": (-2, 0, 0),
|
@@ -1,6 +1,6 @@
|
|
1
|
-
Metadata-Version: 2.
|
2
|
-
Name:
|
3
|
-
Version: 3.
|
1
|
+
Metadata-Version: 2.1
|
2
|
+
Name: neelthee-mansion
|
3
|
+
Version: 3.21.1
|
4
4
|
Summary: A text-based adventure game set in Neel-thee’s mansion.
|
5
5
|
Home-page: https://github.com/Flameblade375/neelthee_mansion
|
6
6
|
Author: Alexander.E.F
|
@@ -27,16 +27,6 @@ Requires-Dist: pandas
|
|
27
27
|
Requires-Dist: validators
|
28
28
|
Requires-Dist: dicttoxml
|
29
29
|
Requires-Dist: pytz
|
30
|
-
Dynamic: author
|
31
|
-
Dynamic: author-email
|
32
|
-
Dynamic: classifier
|
33
|
-
Dynamic: description
|
34
|
-
Dynamic: description-content-type
|
35
|
-
Dynamic: home-page
|
36
|
-
Dynamic: license
|
37
|
-
Dynamic: requires-dist
|
38
|
-
Dynamic: requires-python
|
39
|
-
Dynamic: summary
|
40
30
|
|
41
31
|
# Neel-thee's Mansion of Amnesia
|
42
32
|
|
@@ -0,0 +1,16 @@
|
|
1
|
+
neelthee_mansion/Books.py,sha256=Zs6GOi12vrikne-E37LdrLNRb6CyUogOCDApDGFj6Ls,26168
|
2
|
+
neelthee_mansion/Mansion_of_Amnesia.py,sha256=q1AP_t4kIUN7pbUqxEJXMyb71nNi6CLNkoIvIHUqLgw,52836
|
3
|
+
neelthee_mansion/Quests.py,sha256=pUlru2RugP57MACQORZaF_X9lsbefTdPYTSO474phgo,2791
|
4
|
+
neelthee_mansion/Rooms.py,sha256=CgenMX9ssTCWbDFopX6GHhNDnRYF5MpaDufWvt5fPwU,86025
|
5
|
+
neelthee_mansion/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
6
|
+
neelthee_mansion/__main__.py,sha256=OIAWZ04le70DyjtR4hlmK9csHej7EHxeUrMoNnM-Vjc,95
|
7
|
+
neelthee_mansion/all_game_utils.py,sha256=AasunTkFmgAqt9ZIoYmymi4R7leBe4ubW-C1ts0Qclo,351
|
8
|
+
neelthee_mansion/creatures.py,sha256=vUR8PmdiftCFBCGJbHkCT4AMUPvqwouDGQ4ye2fiPCw,20910
|
9
|
+
neelthee_mansion/items.py,sha256=--DtMCZrurDAe3S-gB5DXAul_kmG9BGB0QmBY2-Fphc,6383
|
10
|
+
neelthee_mansion/utils.py,sha256=GaCkein6dppeufYfBMk59gHAE2b4p9TJW2MsRjyyFvQ,13702
|
11
|
+
neelthee_mansion-3.21.1.dist-info/LICENSE.md,sha256=CV8XGZaCyyAMdbkYFQUjb8AjBq9vkoyqdZCq1_hetms,1105
|
12
|
+
neelthee_mansion-3.21.1.dist-info/METADATA,sha256=dnLVn1cLy-eSLH8gNeHru8CGZw-uCRtNj7qPq_A9PtU,1756
|
13
|
+
neelthee_mansion-3.21.1.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
14
|
+
neelthee_mansion-3.21.1.dist-info/entry_points.txt,sha256=j5ScTTyIidFhmT3F6hcX9pnlom4cJdDmfe26BmM6Igo,56
|
15
|
+
neelthee_mansion-3.21.1.dist-info/top_level.txt,sha256=woQImQewylhly5Rb24HwPEGMxPY6do_PaUwGd5BNLOM,17
|
16
|
+
neelthee_mansion-3.21.1.dist-info/RECORD,,
|