mcdex 0.1.0.dev0__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.
Files changed (161) hide show
  1. mcdex/__init__.py +281 -0
  2. mcdex/advancements/__init__.py +16 -0
  3. mcdex/advancements/_mc_advancements.py +3558 -0
  4. mcdex/advancements/advancements.json +12101 -0
  5. mcdex/attributes/__init__.py +16 -0
  6. mcdex/attributes/_mc_attributes.py +83 -0
  7. mcdex/attributes/attributes.json +289 -0
  8. mcdex/banner_patterns/__init__.py +16 -0
  9. mcdex/banner_patterns/_mc_banner_patterns.py +86 -0
  10. mcdex/banner_patterns/banner_patterns.json +310 -0
  11. mcdex/base/__init__.py +146 -0
  12. mcdex/base/_advancement_id.py +22 -0
  13. mcdex/base/_attribute_id.py +22 -0
  14. mcdex/base/_banner_pattern_id.py +26 -0
  15. mcdex/base/_biome_id.py +22 -0
  16. mcdex/base/_block_entity_id.py +22 -0
  17. mcdex/base/_block_id.py +35 -0
  18. mcdex/base/_cat_sound_variant_id.py +23 -0
  19. mcdex/base/_cat_variant_id.py +22 -0
  20. mcdex/base/_catalogue_meta.py +38 -0
  21. mcdex/base/_chicken_sound_variant_id.py +23 -0
  22. mcdex/base/_chicken_variant_id.py +23 -0
  23. mcdex/base/_cow_sound_variant_id.py +23 -0
  24. mcdex/base/_cow_variant_id.py +22 -0
  25. mcdex/base/_damage_type_id.py +21 -0
  26. mcdex/base/_dimension_id.py +21 -0
  27. mcdex/base/_effect_id.py +21 -0
  28. mcdex/base/_enchantment_id.py +22 -0
  29. mcdex/base/_entity_id.py +35 -0
  30. mcdex/base/_equipment_slot.py +34 -0
  31. mcdex/base/_frog_variant_id.py +22 -0
  32. mcdex/base/_game_id.py +88 -0
  33. mcdex/base/_game_rule_id.py +21 -0
  34. mcdex/base/_item_id.py +98 -0
  35. mcdex/base/_mc_thing.py +289 -0
  36. mcdex/base/_mc_version.py +140 -0
  37. mcdex/base/_music_id.py +25 -0
  38. mcdex/base/_not_in_version.py +68 -0
  39. mcdex/base/_painting_variant_id.py +23 -0
  40. mcdex/base/_particle_id.py +21 -0
  41. mcdex/base/_pig_sound_variant_id.py +23 -0
  42. mcdex/base/_pig_variant_id.py +22 -0
  43. mcdex/base/_potion_id.py +25 -0
  44. mcdex/base/_potion_modifier.py +30 -0
  45. mcdex/base/_sound_id.py +21 -0
  46. mcdex/base/_statistic_id.py +22 -0
  47. mcdex/base/_structure_id.py +21 -0
  48. mcdex/base/_trim_material_id.py +26 -0
  49. mcdex/base/_trim_pattern_id.py +25 -0
  50. mcdex/base/_version.py +188 -0
  51. mcdex/base/_villager_profession_id.py +24 -0
  52. mcdex/base/_villager_type_id.py +25 -0
  53. mcdex/base/_wolf_sound_variant_id.py +23 -0
  54. mcdex/base/_wolf_variant_id.py +22 -0
  55. mcdex/base/_zombie_nautilus_variant_id.py +23 -0
  56. mcdex/biomes/__init__.py +16 -0
  57. mcdex/biomes/_mc_biomes.py +137 -0
  58. mcdex/biomes/biomes.json +652 -0
  59. mcdex/block_entities/__init__.py +16 -0
  60. mcdex/block_entities/_mc_block_entities.py +95 -0
  61. mcdex/block_entities/block_entities.json +331 -0
  62. mcdex/blocks/__init__.py +16 -0
  63. mcdex/blocks/_mc_blocks.py +1338 -0
  64. mcdex/blocks/blocks.json +7770 -0
  65. mcdex/cat_sound_variants/__init__.py +16 -0
  66. mcdex/cat_sound_variants/_mc_cat_sound_variants.py +47 -0
  67. mcdex/cat_sound_variants/cat_sound_variants.json +25 -0
  68. mcdex/cat_variants/__init__.py +16 -0
  69. mcdex/cat_variants/_mc_cat_variants.py +54 -0
  70. mcdex/cat_variants/cat_variants.json +91 -0
  71. mcdex/chicken_sound_variants/__init__.py +17 -0
  72. mcdex/chicken_sound_variants/_mc_chicken_sound_variants.py +48 -0
  73. mcdex/chicken_sound_variants/chicken_sound_variants.json +24 -0
  74. mcdex/chicken_variants/__init__.py +16 -0
  75. mcdex/chicken_variants/_mc_chicken_variants.py +47 -0
  76. mcdex/chicken_variants/chicken_variants.json +30 -0
  77. mcdex/cow_sound_variants/__init__.py +16 -0
  78. mcdex/cow_sound_variants/_mc_cow_sound_variants.py +47 -0
  79. mcdex/cow_sound_variants/cow_sound_variants.json +24 -0
  80. mcdex/cow_variants/__init__.py +16 -0
  81. mcdex/cow_variants/_mc_cow_variants.py +47 -0
  82. mcdex/cow_variants/cow_variants.json +30 -0
  83. mcdex/damage_types/__init__.py +16 -0
  84. mcdex/damage_types/_mc_damage_types.py +94 -0
  85. mcdex/damage_types/damage_types.json +317 -0
  86. mcdex/dimensions/__init__.py +16 -0
  87. mcdex/dimensions/_mc_dimensions.py +46 -0
  88. mcdex/dimensions/dimensions.json +29 -0
  89. mcdex/effects/__init__.py +16 -0
  90. mcdex/effects/_mc_effects.py +83 -0
  91. mcdex/effects/effects.json +251 -0
  92. mcdex/enchantments/__init__.py +16 -0
  93. mcdex/enchantments/_mc_enchantments.py +86 -0
  94. mcdex/enchantments/enchantments.json +270 -0
  95. mcdex/entities/__init__.py +16 -0
  96. mcdex/entities/_mc_entities.py +206 -0
  97. mcdex/entities/entities.json +1042 -0
  98. mcdex/frog_variants/__init__.py +16 -0
  99. mcdex/frog_variants/_mc_frog_variants.py +47 -0
  100. mcdex/frog_variants/frog_variants.json +29 -0
  101. mcdex/game_rules/__init__.py +16 -0
  102. mcdex/game_rules/_mc_game_rules.py +110 -0
  103. mcdex/game_rules/game_rules.json +436 -0
  104. mcdex/items/__init__.py +16 -0
  105. mcdex/items/_mc_items.py +1842 -0
  106. mcdex/items/items.json +20060 -0
  107. mcdex/music/__init__.py +16 -0
  108. mcdex/music/_music.py +65 -0
  109. mcdex/music/music.json +143 -0
  110. mcdex/painting_variants/__init__.py +16 -0
  111. mcdex/painting_variants/_mc_painting_variants.py +96 -0
  112. mcdex/painting_variants/painting_variants.json +369 -0
  113. mcdex/particles/__init__.py +16 -0
  114. mcdex/particles/_mc_particles.py +184 -0
  115. mcdex/particles/particles.json +917 -0
  116. mcdex/pig_sound_variants/__init__.py +16 -0
  117. mcdex/pig_sound_variants/_mc_pig_sound_variants.py +48 -0
  118. mcdex/pig_sound_variants/pig_sound_variants.json +30 -0
  119. mcdex/pig_variants/__init__.py +16 -0
  120. mcdex/pig_variants/_mc_pig_variants.py +46 -0
  121. mcdex/pig_variants/pig_variants.json +30 -0
  122. mcdex/potions/__init__.py +20 -0
  123. mcdex/potions/_mc_potions.py +101 -0
  124. mcdex/potions/_modified_potion.py +129 -0
  125. mcdex/potions/potions.json +297 -0
  126. mcdex/py.typed +0 -0
  127. mcdex/sounds/__init__.py +16 -0
  128. mcdex/sounds/_mc_sounds.py +2395 -0
  129. mcdex/sounds/sounds.json +13077 -0
  130. mcdex/statistics/__init__.py +16 -0
  131. mcdex/statistics/_mc_statistics.py +123 -0
  132. mcdex/statistics/statistics.json +521 -0
  133. mcdex/structures/__init__.py +16 -0
  134. mcdex/structures/_mc_structures.py +99 -0
  135. mcdex/structures/structures.json +367 -0
  136. mcdex/trim_materials/__init__.py +16 -0
  137. mcdex/trim_materials/_mc_trim_materials.py +54 -0
  138. mcdex/trim_materials/trim_materials.json +77 -0
  139. mcdex/trim_patterns/__init__.py +16 -0
  140. mcdex/trim_patterns/_mc_trim_patterns.py +61 -0
  141. mcdex/trim_patterns/trim_patterns.json +119 -0
  142. mcdex/villager_professions/__init__.py +17 -0
  143. mcdex/villager_professions/_mc_villager_professions.py +61 -0
  144. mcdex/villager_professions/villager_professions.json +125 -0
  145. mcdex/villager_types/__init__.py +16 -0
  146. mcdex/villager_types/_mc_villager_types.py +52 -0
  147. mcdex/villager_types/villager_types.json +54 -0
  148. mcdex/wolf_sound_variants/__init__.py +17 -0
  149. mcdex/wolf_sound_variants/_mc_wolf_sound_variants.py +53 -0
  150. mcdex/wolf_sound_variants/wolf_sound_variants.json +54 -0
  151. mcdex/wolf_variants/__init__.py +16 -0
  152. mcdex/wolf_variants/_mc_wolf_variants.py +53 -0
  153. mcdex/wolf_variants/wolf_variants.json +66 -0
  154. mcdex/zombie_nautilus_variants/__init__.py +17 -0
  155. mcdex/zombie_nautilus_variants/_mc_zombie_nautilus_variants.py +48 -0
  156. mcdex/zombie_nautilus_variants/zombie_nautilus_variants.json +23 -0
  157. mcdex-0.1.0.dev0.dist-info/METADATA +1285 -0
  158. mcdex-0.1.0.dev0.dist-info/RECORD +161 -0
  159. mcdex-0.1.0.dev0.dist-info/WHEEL +5 -0
  160. mcdex-0.1.0.dev0.dist-info/licenses/LICENSE +201 -0
  161. mcdex-0.1.0.dev0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,206 @@
1
+ """
2
+ MCEntities is the catalogue of the game's entities: an enumeration with one
3
+ member for every entity of the data file that ships with mcdex, each the
4
+ same entity in every version, with the id each version knows it by:
5
+ what /summon takes.
6
+ """
7
+ # Apache-2.0 license
8
+ # Copyright (c) 2026 Asger Jon Vistisen
9
+ from __future__ import annotations
10
+
11
+ from worktoy.keenum import Kee
12
+
13
+ from ..base import EntityId, MCThing
14
+
15
+
16
+ class MCEntities(MCThing):
17
+ """
18
+ The catalogue of the game's entities, each a member, found by its name in
19
+ capitals, in any case, or by its unique name:
20
+
21
+ witherSkeleton = MCEntities.WITHER_SKELETON
22
+ witherSkeleton is MCEntities['wither_skeleton'] # True
23
+ witherSkeleton['1.10.2']
24
+ # EntityId('wither_skeleton', 'Skeleton{SkeletonType:1}')
25
+ len(MCEntities)
26
+
27
+ Implementation
28
+ --------------
29
+
30
+ All of it is 'MCThing's, reading 'entities.json' beside this module.
31
+ mcdex's tools write the members, one for every name of that file.
32
+ """
33
+
34
+ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
35
+ # NAMESPACE # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
36
+ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
37
+
38
+ # Class Variables
39
+ __data_file__ = 'entities.json'
40
+ __data_key__ = 'entities'
41
+ __id_class__ = EntityId
42
+ __kind__ = 'entity'
43
+
44
+ # Members, one for every name of 'entities.json'
45
+ ACACIA_BOAT = Kee[str]('acacia_boat')
46
+ ACACIA_CHEST_BOAT = Kee[str]('acacia_chest_boat')
47
+ ALLAY = Kee[str]('allay')
48
+ AREA_EFFECT_CLOUD = Kee[str]('area_effect_cloud')
49
+ ARMADILLO = Kee[str]('armadillo')
50
+ ARMOR_STAND = Kee[str]('armor_stand')
51
+ ARROW = Kee[str]('arrow')
52
+ AXOLOTL = Kee[str]('axolotl')
53
+ BAMBOO_CHEST_RAFT = Kee[str]('bamboo_chest_raft')
54
+ BAMBOO_RAFT = Kee[str]('bamboo_raft')
55
+ BAT = Kee[str]('bat')
56
+ BEE = Kee[str]('bee')
57
+ BIRCH_BOAT = Kee[str]('birch_boat')
58
+ BIRCH_CHEST_BOAT = Kee[str]('birch_chest_boat')
59
+ BLAZE = Kee[str]('blaze')
60
+ BLOCK_DISPLAY = Kee[str]('block_display')
61
+ BOGGED = Kee[str]('bogged')
62
+ BREEZE = Kee[str]('breeze')
63
+ BREEZE_WIND_CHARGE = Kee[str]('breeze_wind_charge')
64
+ CAMEL = Kee[str]('camel')
65
+ CAMEL_HUSK = Kee[str]('camel_husk')
66
+ CAT = Kee[str]('cat')
67
+ CAVE_SPIDER = Kee[str]('cave_spider')
68
+ CHERRY_BOAT = Kee[str]('cherry_boat')
69
+ CHERRY_CHEST_BOAT = Kee[str]('cherry_chest_boat')
70
+ CHEST_MINECART = Kee[str]('chest_minecart')
71
+ CHICKEN = Kee[str]('chicken')
72
+ COD = Kee[str]('cod')
73
+ COMMAND_BLOCK_MINECART = Kee[str]('command_block_minecart')
74
+ COPPER_GOLEM = Kee[str]('copper_golem')
75
+ COW = Kee[str]('cow')
76
+ CREAKING = Kee[str]('creaking')
77
+ CREAKING_TRANSIENT = Kee[str]('creaking_transient')
78
+ CREEPER = Kee[str]('creeper')
79
+ CUSHION = Kee[str]('cushion')
80
+ DARK_OAK_BOAT = Kee[str]('dark_oak_boat')
81
+ DARK_OAK_CHEST_BOAT = Kee[str]('dark_oak_chest_boat')
82
+ DOLPHIN = Kee[str]('dolphin')
83
+ DONKEY = Kee[str]('donkey')
84
+ DRAGON_FIREBALL = Kee[str]('dragon_fireball')
85
+ DROWNED = Kee[str]('drowned')
86
+ EGG = Kee[str]('egg')
87
+ ELDER_GUARDIAN = Kee[str]('elder_guardian')
88
+ END_CRYSTAL = Kee[str]('end_crystal')
89
+ ENDER_DRAGON = Kee[str]('ender_dragon')
90
+ ENDER_PEARL = Kee[str]('ender_pearl')
91
+ ENDERMAN = Kee[str]('enderman')
92
+ ENDERMITE = Kee[str]('endermite')
93
+ EVOKER = Kee[str]('evoker')
94
+ EVOKER_FANGS = Kee[str]('evoker_fangs')
95
+ EXPERIENCE_BOTTLE = Kee[str]('experience_bottle')
96
+ EXPERIENCE_ORB = Kee[str]('experience_orb')
97
+ EYE_OF_ENDER = Kee[str]('eye_of_ender')
98
+ FALLING_BLOCK = Kee[str]('falling_block')
99
+ FIREBALL = Kee[str]('fireball')
100
+ FIREWORK_ROCKET = Kee[str]('firework_rocket')
101
+ FISHING_BOBBER = Kee[str]('fishing_bobber')
102
+ FOX = Kee[str]('fox')
103
+ FROG = Kee[str]('frog')
104
+ FURNACE_MINECART = Kee[str]('furnace_minecart')
105
+ GHAST = Kee[str]('ghast')
106
+ GIANT = Kee[str]('giant')
107
+ GLOW_ITEM_FRAME = Kee[str]('glow_item_frame')
108
+ GLOW_SQUID = Kee[str]('glow_squid')
109
+ GOAT = Kee[str]('goat')
110
+ GUARDIAN = Kee[str]('guardian')
111
+ HAPPY_GHAST = Kee[str]('happy_ghast')
112
+ HOGLIN = Kee[str]('hoglin')
113
+ HOPPER_MINECART = Kee[str]('hopper_minecart')
114
+ HORSE = Kee[str]('horse')
115
+ HUSK = Kee[str]('husk')
116
+ ILLUSIONER = Kee[str]('illusioner')
117
+ INTERACTION = Kee[str]('interaction')
118
+ IRON_GOLEM = Kee[str]('iron_golem')
119
+ ITEM = Kee[str]('item')
120
+ ITEM_DISPLAY = Kee[str]('item_display')
121
+ ITEM_FRAME = Kee[str]('item_frame')
122
+ JUNGLE_BOAT = Kee[str]('jungle_boat')
123
+ JUNGLE_CHEST_BOAT = Kee[str]('jungle_chest_boat')
124
+ LEASH_KNOT = Kee[str]('leash_knot')
125
+ LIGHTNING_BOLT = Kee[str]('lightning_bolt')
126
+ LINGERING_POTION = Kee[str]('lingering_potion')
127
+ LLAMA = Kee[str]('llama')
128
+ LLAMA_SPIT = Kee[str]('llama_spit')
129
+ MAGMA_CUBE = Kee[str]('magma_cube')
130
+ MANGROVE_BOAT = Kee[str]('mangrove_boat')
131
+ MANGROVE_CHEST_BOAT = Kee[str]('mangrove_chest_boat')
132
+ MANNEQUIN = Kee[str]('mannequin')
133
+ MARKER = Kee[str]('marker')
134
+ MINECART = Kee[str]('minecart')
135
+ MOOSHROOM = Kee[str]('mooshroom')
136
+ MULE = Kee[str]('mule')
137
+ NAUTILUS = Kee[str]('nautilus')
138
+ OAK_BOAT = Kee[str]('oak_boat')
139
+ OAK_CHEST_BOAT = Kee[str]('oak_chest_boat')
140
+ OCELOT = Kee[str]('ocelot')
141
+ OMINOUS_ITEM_SPAWNER = Kee[str]('ominous_item_spawner')
142
+ PAINTING = Kee[str]('painting')
143
+ PALE_OAK_BOAT = Kee[str]('pale_oak_boat')
144
+ PALE_OAK_CHEST_BOAT = Kee[str]('pale_oak_chest_boat')
145
+ PANDA = Kee[str]('panda')
146
+ PARCHED = Kee[str]('parched')
147
+ PARROT = Kee[str]('parrot')
148
+ PHANTOM = Kee[str]('phantom')
149
+ PIG = Kee[str]('pig')
150
+ PIGLIN = Kee[str]('piglin')
151
+ PIGLIN_BRUTE = Kee[str]('piglin_brute')
152
+ PILLAGER = Kee[str]('pillager')
153
+ PLAYER = Kee[str]('player')
154
+ POLAR_BEAR = Kee[str]('polar_bear')
155
+ POPLAR_BOAT = Kee[str]('poplar_boat')
156
+ POPLAR_CHEST_BOAT = Kee[str]('poplar_chest_boat')
157
+ PUFFERFISH = Kee[str]('pufferfish')
158
+ RABBIT = Kee[str]('rabbit')
159
+ RAVAGER = Kee[str]('ravager')
160
+ SALMON = Kee[str]('salmon')
161
+ SHEEP = Kee[str]('sheep')
162
+ SHULKER = Kee[str]('shulker')
163
+ SHULKER_BULLET = Kee[str]('shulker_bullet')
164
+ SILVERFISH = Kee[str]('silverfish')
165
+ SKELETON = Kee[str]('skeleton')
166
+ SKELETON_HORSE = Kee[str]('skeleton_horse')
167
+ SLIME = Kee[str]('slime')
168
+ SMALL_FIREBALL = Kee[str]('small_fireball')
169
+ SNIFFER = Kee[str]('sniffer')
170
+ SNOW_GOLEM = Kee[str]('snow_golem')
171
+ SNOWBALL = Kee[str]('snowball')
172
+ SPAWNER_MINECART = Kee[str]('spawner_minecart')
173
+ SPECTRAL_ARROW = Kee[str]('spectral_arrow')
174
+ SPIDER = Kee[str]('spider')
175
+ SPLASH_POTION = Kee[str]('splash_potion')
176
+ SPRUCE_BOAT = Kee[str]('spruce_boat')
177
+ SPRUCE_CHEST_BOAT = Kee[str]('spruce_chest_boat')
178
+ SQUID = Kee[str]('squid')
179
+ STRAY = Kee[str]('stray')
180
+ STRIDER = Kee[str]('strider')
181
+ SULFUR_CUBE = Kee[str]('sulfur_cube')
182
+ TADPOLE = Kee[str]('tadpole')
183
+ TEXT_DISPLAY = Kee[str]('text_display')
184
+ TNT = Kee[str]('tnt')
185
+ TNT_MINECART = Kee[str]('tnt_minecart')
186
+ TRADER_LLAMA = Kee[str]('trader_llama')
187
+ TRIDENT = Kee[str]('trident')
188
+ TROPICAL_FISH = Kee[str]('tropical_fish')
189
+ TURTLE = Kee[str]('turtle')
190
+ VEX = Kee[str]('vex')
191
+ VILLAGER = Kee[str]('villager')
192
+ VINDICATOR = Kee[str]('vindicator')
193
+ WANDERING_TRADER = Kee[str]('wandering_trader')
194
+ WARDEN = Kee[str]('warden')
195
+ WIND_CHARGE = Kee[str]('wind_charge')
196
+ WITCH = Kee[str]('witch')
197
+ WITHER = Kee[str]('wither')
198
+ WITHER_SKELETON = Kee[str]('wither_skeleton')
199
+ WITHER_SKULL = Kee[str]('wither_skull')
200
+ WOLF = Kee[str]('wolf')
201
+ ZOGLIN = Kee[str]('zoglin')
202
+ ZOMBIE = Kee[str]('zombie')
203
+ ZOMBIE_HORSE = Kee[str]('zombie_horse')
204
+ ZOMBIE_NAUTILUS = Kee[str]('zombie_nautilus')
205
+ ZOMBIE_VILLAGER = Kee[str]('zombie_villager')
206
+ ZOMBIFIED_PIGLIN = Kee[str]('zombified_piglin')