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.
@@ -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
2
- Name: neelthee_mansion
3
- Version: 3.20.21
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,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.8.0)
2
+ Generator: bdist_wheel (0.45.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5