smrpgpatchbuilder 5.0.1__tar.gz → 5.0.3__tar.gz

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 (245) hide show
  1. {smrpgpatchbuilder-5.0.1/src/smrpgpatchbuilder.egg-info → smrpgpatchbuilder-5.0.3}/PKG-INFO +1 -1
  2. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/pyproject.toml +1 -1
  3. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/levels/room_collection.py +4 -21
  4. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/packet.py +47 -39
  5. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/animationdisassembler.py +16 -16
  6. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3/src/smrpgpatchbuilder.egg-info}/PKG-INFO +1 -1
  7. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/LICENSE +0 -0
  8. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/MANIFEST.in +0 -0
  9. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/README.md +0 -0
  10. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/setup.cfg +0 -0
  11. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/__init__.py +0 -0
  12. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/__init__.py +0 -0
  13. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/allies/__init__.py +0 -0
  14. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/allies/ally.py +0 -0
  15. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/allies/ally_collection.py +0 -0
  16. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/__init__.py +0 -0
  17. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/arguments/__init__.py +0 -0
  18. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/arguments/battle_targets.py +0 -0
  19. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/arguments/bonus_messages.py +0 -0
  20. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/arguments/flash_colours.py +0 -0
  21. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/arguments/layer_priority_type.py +0 -0
  22. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/arguments/mask_effects.py +0 -0
  23. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/arguments/message_type.py +0 -0
  24. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/arguments/origins.py +0 -0
  25. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/arguments/pause_until.py +0 -0
  26. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/arguments/shift_type.py +0 -0
  27. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/arguments/types/__init__.py +0 -0
  28. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/arguments/types/classes.py +0 -0
  29. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/arguments/wave_effect.py +0 -0
  30. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/commands/__init__.py +0 -0
  31. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/commands/commands.py +0 -0
  32. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/commands/types/__init__.py +0 -0
  33. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/commands/types/classes.py +0 -0
  34. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/ids/__init__.py +0 -0
  35. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/ids/monster_entrances.py +0 -0
  36. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battle_animation_scripts/types.py +0 -0
  37. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battles/__init__.py +0 -0
  38. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battles/battle_dialog_collection.py +0 -0
  39. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battles/enums.py +0 -0
  40. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battles/formations_packs/types/__init__.py +0 -0
  41. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battles/formations_packs/types/classes.py +0 -0
  42. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battles/ids/__init__.py +0 -0
  43. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battles/ids/misc.py +0 -0
  44. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battles/music.py +0 -0
  45. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battles/types/__init__.py +0 -0
  46. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/battles/types/classes.py +0 -0
  47. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/characters/__init__.py +0 -0
  48. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/characters/classes.py +0 -0
  49. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/characters/constants.py +0 -0
  50. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/characters/enums.py +0 -0
  51. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/dialogs/__init__.py +0 -0
  52. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/dialogs/classes.py +0 -0
  53. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/dialogs/formatter.py +0 -0
  54. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/dialogs/ids/__init__.py +0 -0
  55. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/dialogs/ids/dialog_bank_ids.py +0 -0
  56. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/dialogs/ids/misc.py +0 -0
  57. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/dialogs/ids/types/__init__.py +0 -0
  58. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/dialogs/ids/types/classes.py +0 -0
  59. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/dialogs/utils.py +0 -0
  60. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/enemies/__init__.py +0 -0
  61. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/enemies/classes.py +0 -0
  62. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/enemies/constants.py +0 -0
  63. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/enemies/enums.py +0 -0
  64. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/enemy_attacks/__init__.py +0 -0
  65. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/enemy_attacks/classes.py +0 -0
  66. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/enemy_attacks/constants.py +0 -0
  67. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/graphics/__init__.py +0 -0
  68. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/graphics/classes.py +0 -0
  69. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/items/__init__.py +0 -0
  70. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/items/classes.py +0 -0
  71. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/items/constants.py +0 -0
  72. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/items/encoding.py +0 -0
  73. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/items/enums.py +0 -0
  74. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/levels/classes.py +0 -0
  75. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/monster_scripts/__init__.py +0 -0
  76. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/monster_scripts/arguments/__init__.py +0 -0
  77. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/monster_scripts/arguments/command_types.py +0 -0
  78. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/monster_scripts/arguments/targets.py +0 -0
  79. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/monster_scripts/arguments/types/__init__.py +0 -0
  80. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/monster_scripts/arguments/types/classes.py +0 -0
  81. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/monster_scripts/commands/__init__.py +0 -0
  82. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/monster_scripts/commands/commands.py +0 -0
  83. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/monster_scripts/commands/types/__init__.py +0 -0
  84. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/monster_scripts/commands/types/classes.py +0 -0
  85. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/monster_scripts/ids/__init__.py +0 -0
  86. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/monster_scripts/ids/misc.py +0 -0
  87. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/monster_scripts/types.py +0 -0
  88. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/numbers/__init__.py +0 -0
  89. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/numbers/classes.py +0 -0
  90. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/__init__.py +0 -0
  91. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/action_scripts/__init__.py +0 -0
  92. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/action_scripts/arguments/__init__.py +0 -0
  93. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/action_scripts/arguments/sequence_speeds.py +0 -0
  94. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/action_scripts/arguments/types/__init__.py +0 -0
  95. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/action_scripts/arguments/types/classes.py +0 -0
  96. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/action_scripts/arguments/vram_priority.py +0 -0
  97. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/action_scripts/classes.py +0 -0
  98. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/action_scripts/commands/__init__.py +0 -0
  99. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/action_scripts/commands/commands.py +0 -0
  100. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/action_scripts/commands/types/__init__.py +0 -0
  101. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/action_scripts/commands/types/classes.py +0 -0
  102. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/action_scripts/ids/__init__.py +0 -0
  103. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/action_scripts/ids/misc.py +0 -0
  104. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/__init__.py +0 -0
  105. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/area_objects.py +0 -0
  106. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/colours.py +0 -0
  107. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/controller_inputs.py +0 -0
  108. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/coords.py +0 -0
  109. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/directions.py +0 -0
  110. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/intro_title_text.py +0 -0
  111. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/layers.py +0 -0
  112. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/palette_rows.py +0 -0
  113. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/palette_types.py +0 -0
  114. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/scenes.py +0 -0
  115. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/tutorials.py +0 -0
  116. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/__init__.py +0 -0
  117. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/area_object.py +0 -0
  118. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/battlefield.py +0 -0
  119. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/byte_var.py +0 -0
  120. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/colour.py +0 -0
  121. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/controller_input.py +0 -0
  122. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/coord.py +0 -0
  123. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/direction.py +0 -0
  124. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/flag.py +0 -0
  125. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/intro_title_text.py +0 -0
  126. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/layer.py +0 -0
  127. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/palette_row.py +0 -0
  128. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/palette_type.py +0 -0
  129. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/party_character.py +0 -0
  130. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/scene.py +0 -0
  131. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/short_var.py +0 -0
  132. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/arguments/types/tutorial.py +0 -0
  133. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/event_scripts/__init__.py +0 -0
  134. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/event_scripts/classes.py +0 -0
  135. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/event_scripts/commands/__init__.py +0 -0
  136. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/event_scripts/commands/commands.py +0 -0
  137. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/event_scripts/commands/types/__init__.py +0 -0
  138. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/event_scripts/commands/types/classes.py +0 -0
  139. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/event_scripts/ids/__init__.py +0 -0
  140. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/event_scripts/ids/misc.py +0 -0
  141. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/ids/__init__.py +0 -0
  142. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/overworld_scripts/ids/misc.py +0 -0
  143. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/scripts_common/__init__.py +0 -0
  144. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/scripts_common/classes.py +0 -0
  145. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/shops/__init__.py +0 -0
  146. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/shops/classes.py +0 -0
  147. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/spells/__init__.py +0 -0
  148. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/spells/arguments/__init__.py +0 -0
  149. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/spells/arguments/damage_modifiers.py +0 -0
  150. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/spells/arguments/timing_properties.py +0 -0
  151. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/spells/arguments/types/__init__.py +0 -0
  152. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/spells/arguments/types/classes.py +0 -0
  153. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/spells/classes.py +0 -0
  154. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/spells/enums.py +0 -0
  155. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/spells/ids/__init__.py +0 -0
  156. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/spells/ids/misc.py +0 -0
  157. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/sprites/__init__.py +0 -0
  158. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/sprites/ally_palettes.py +0 -0
  159. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/sprites/collection.py +0 -0
  160. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/sprites/disassembler.py +0 -0
  161. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/sprites/exceptions.py +0 -0
  162. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/sprites/ids/__init__.py +0 -0
  163. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/sprites/ids/event_palettes.py +0 -0
  164. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/sprites/ids/misc.py +0 -0
  165. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/sprites/ids/sprite_palettes.py +0 -0
  166. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/sprites/palette.py +0 -0
  167. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/sprites/sprite.py +0 -0
  168. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/world_map_locations/__init__.py +0 -0
  169. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/datatypes/world_map_locations/classes.py +0 -0
  170. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/manage.py +0 -0
  171. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/allyassembler.py +0 -0
  172. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/allydisassembler.py +0 -0
  173. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/animationassembler.py +0 -0
  174. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/battleassembler.py +0 -0
  175. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/battledialogassembler.py +0 -0
  176. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/battledialogdisassembler.py +0 -0
  177. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/battledisassembler.py +0 -0
  178. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/bowser_tile_rearranger.py +0 -0
  179. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/comboassembler.py +0 -0
  180. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/combodisassembler.py +0 -0
  181. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/dialogassembler.py +0 -0
  182. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/dialogdisassembler.py +0 -0
  183. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/enemyassembler.py +0 -0
  184. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/enemyattackassembler.py +0 -0
  185. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/enemyattackdisassembler.py +0 -0
  186. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/enemydisassembler.py +0 -0
  187. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/eventassembler.py +0 -0
  188. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/eventconverter.py +0 -0
  189. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/eventidentifieraudit.py +0 -0
  190. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/eventpalettedisassembler.py +0 -0
  191. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/generatesample.py +0 -0
  192. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/graphicsassembler.py +0 -0
  193. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/graphicsdisassembler.py +0 -0
  194. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/input_file_parser.py +0 -0
  195. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/itemassembler.py +0 -0
  196. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/itemdisassembler.py +0 -0
  197. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/legacy/__init__.py +0 -0
  198. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/legacy/docstrings.py +0 -0
  199. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/legacy/eventdisassembler.py +0 -0
  200. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/legacy/eventtables.py +0 -0
  201. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/legacy/objectsequenceassembler.py +0 -0
  202. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/legacy/objectsequencedisassembler.py +0 -0
  203. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/legacy/objectsequencetables.py +0 -0
  204. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/make_seed.py +0 -0
  205. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/move_spell_gfx.py +0 -0
  206. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/npcmodelassembler.py +0 -0
  207. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/npcmodeldisassembler.py +0 -0
  208. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/objectassembler.py +0 -0
  209. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/objectdisassembler.py +0 -0
  210. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/packassembler.py +0 -0
  211. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/packdisassembler.py +0 -0
  212. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/packetassembler.py +0 -0
  213. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/packetdisassembler.py +0 -0
  214. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/palettebytes.py +0 -0
  215. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/partitionanalyzer.py +0 -0
  216. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/roomassembler.py +0 -0
  217. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/roomconverter.py +0 -0
  218. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/roomdisassembler.py +0 -0
  219. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/shopassembler.py +0 -0
  220. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/shopdisassembler.py +0 -0
  221. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/space_reassigner.py +0 -0
  222. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/spellassembler.py +0 -0
  223. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/spelldisassembler.py +0 -0
  224. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/spritepalettedisassembler.py +0 -0
  225. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/unused_gfx_finder.py +0 -0
  226. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/unused_gfx_remover old.py +0 -0
  227. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/unused_gfx_remover.py +0 -0
  228. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/variableparser.py +0 -0
  229. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/worldmaplocationassembler.py +0 -0
  230. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/commands/worldmaplocationdisassembler.py +0 -0
  231. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/management/django/settings.py +0 -0
  232. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/utils/disassembler_common.py +0 -0
  233. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/utils/npcs.py +0 -0
  234. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/utils/number.py +0 -0
  235. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder/utils/strings.py +0 -0
  236. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder.egg-info/SOURCES.txt +0 -0
  237. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder.egg-info/dependency_links.txt +0 -0
  238. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder.egg-info/requires.txt +0 -0
  239. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/smrpgpatchbuilder.egg-info/top_level.txt +0 -0
  240. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/tests/animations/test_animationscripts.py +0 -0
  241. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/tests/dialogs/__init__.py +0 -0
  242. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/tests/dialogs/test_formatter.py +0 -0
  243. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/tests/monsters/test_ai.py +0 -0
  244. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/tests/overworld/test_actionscripts.py +0 -0
  245. {smrpgpatchbuilder-5.0.1 → smrpgpatchbuilder-5.0.3}/src/tests/overworld/test_eventscripts.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: smrpgpatchbuilder
3
- Version: 5.0.1
3
+ Version: 5.0.3
4
4
  Summary: Patchable base class support for some SMRPG concepts similar to their definitions in Lazy Shell
5
5
  Author-email: pidgezero_one <s.kischak@gmail.com>
6
6
  License-Expression: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "smrpgpatchbuilder"
7
- version = "5.0.1"
7
+ version = "5.0.3"
8
8
  authors = [
9
9
  { name="pidgezero_one", email="s.kischak@gmail.com" },
10
10
  ]
@@ -335,7 +335,10 @@ class RoomCollection:
335
335
  # We need ALL signatures here because a signature might appear in a clone group in one room
336
336
  # but as a standalone object in another room
337
337
  global_fallback_mapping = {}
338
- for sig in sorted(all_signatures, key=lambda t: tuple((0,) if x is None else (1, x) for x in t)):
338
+ for sig in sorted(
339
+ all_signatures,
340
+ key=lambda t: tuple((0,) if x is None else (1, x) for x in t),
341
+ ):
339
342
  # Check if this signature was placed via force_id
340
343
  if sig in sig_to_forced_index:
341
344
  global_fallback_mapping[sig] = sig_to_forced_index[sig]
@@ -586,12 +589,6 @@ class RoomCollection:
586
589
  for idx, npc in enumerate(unique_npcs):
587
590
  offset = npc_start + (idx * 7)
588
591
  patches[offset] = self._render_npc(npc)
589
- # Debug: find NPCs with dimensions 5/5/10 or 3/3/11
590
- if (npc.acute_axis == 5 and npc.obtuse_axis == 5 and npc.height == 10) or \
591
- (npc.acute_axis == 3 and npc.obtuse_axis == 3 and npc.height == 11):
592
- import sys
593
- print(f"DEBUG NPC table idx {idx}: sprite_id={npc.sprite_id}, dims={npc.acute_axis}/{npc.obtuse_axis}/{npc.height}")
594
- sys.stdout.flush()
595
592
 
596
593
  # Fill remaining NPC slots with 0xFF
597
594
  # End address depends on whether we're using large partition table
@@ -837,20 +834,6 @@ class RoomCollection:
837
834
 
838
835
  npc_index = sig_to_index[obj_sig]
839
836
 
840
- # Debug: trace room 325 NPC 3
841
- if room_idx == 325 and obj_idx == 3:
842
- import sys
843
- print(f"DEBUG Room 325 NPC 3:")
844
- print(f" obj._npc sprite_id: {obj._npc.sprite_id}")
845
- print(f" obj._npc dimensions: {obj._npc.acute_axis}/{obj._npc.obtuse_axis}/{obj._npc.height}")
846
- print(f" room_obj override acute_axis: {obj.acute_axis}")
847
- print(f" room_obj override obtuse_axis: {obj.obtuse_axis}")
848
- print(f" room_obj override height: {obj.height}")
849
- print(f" signature (first 10 elements): {obj_sig[:10]}")
850
- print(f" signature override portion (elements 21-26): {obj_sig[21:27] if len(obj_sig) > 26 else 'N/A'}")
851
- print(f" npc_index from lookup: {npc_index}")
852
- sys.stdout.flush()
853
-
854
837
  if isinstance(obj, Clone):
855
838
  # Clone: 4 bytes
856
839
  # Follows disassembler lines 744-784
@@ -1,5 +1,3 @@
1
-
2
-
3
1
  from smrpgpatchbuilder.datatypes.numbers.classes import UInt8, UInt16
4
2
 
5
3
  # Constants to avoid circular imports
@@ -20,7 +18,7 @@ class Packet:
20
18
 
21
19
  Structure (5 bytes total at 0x1DB000 + packet_id * 5):
22
20
  - Byte 0: sprite (bits 0-5), b0 (bits 6-7)
23
- - Byte 1: b1a (bits 0-2), b1b (bits 3-4), b1c (bits 5-7)
21
+ - Byte 1: vram_size (bits 0-2), sprite_priority (bits 3-4), layer_priority (bits 5-7)
24
22
  - Byte 2: bits 0-1 unused, b2b2 (bit 2), b2b3 (bit 3), b2b4 (bit 4), show_shadow (bit 5), b2 (bits 6-7)
25
23
  - Bytes 3-4: action_script_id (bits 0-9), b4 (byte 4 bits 4-7)
26
24
 
@@ -30,9 +28,9 @@ class Packet:
30
28
  _packet_id: UInt8 = UInt8(0)
31
29
  _sprite_id: UInt16 = UInt16(PACKET_SPRITE_BASE) # Sprite ID (any valid sprite)
32
30
  _b0: UInt8 = UInt8(0) # B0,b6-7: bits 6-7 of byte 0 (0-3)
33
- _b1a: UInt8 = UInt8(0) # B1,b0-2: bits 0-2 of byte 1 (0-7)
34
- _b1b: UInt8 = UInt8(0) # B1,b3-4: bits 3-4 of byte 1 (0-3)
35
- _b1c: UInt8 = UInt8(0) # B1,b5-7: bits 5-7 of byte 1 (0-7)
31
+ _vram_size: UInt8 = UInt8(0) # B1,b0-2: bits 0-2 of byte 1 (0-7)
32
+ _sprite_priority: UInt8 = UInt8(0) # B1,b3-4: bits 3-4 of byte 1 (0-3)
33
+ _layer_priority: UInt8 = UInt8(0) # B1,b5-7: bits 5-7 of byte 1 (0-7)
36
34
  _b2b2: bool = False # B2,b2: bit 2 of byte 2
37
35
  _b2b3: bool = False # B2,b3: bit 3 of byte 2
38
36
  _b2b4: bool = False # B2,b4: bit 4 of byte 2
@@ -55,8 +53,9 @@ class Packet:
55
53
  """Set the sprite ID for the packet.
56
54
  Any valid sprite ID (0-1023) is accepted. During render(), only the
57
55
  lower 6 bits are used, so sprites are effectively grouped in ranges of 64."""
58
- assert 0 <= sprite_id < TOTAL_SPRITES, \
59
- f"sprite_id must be 0-{TOTAL_SPRITES-1}, got {sprite_id}"
56
+ assert (
57
+ 0 <= sprite_id < TOTAL_SPRITES
58
+ ), f"sprite_id must be 0-{TOTAL_SPRITES-1}, got {sprite_id}"
60
59
  self._sprite_id = UInt16(sprite_id)
61
60
 
62
61
  @property
@@ -70,34 +69,38 @@ class Packet:
70
69
  self._b0 = UInt8(b0)
71
70
 
72
71
  @property
73
- def b1a(self) -> UInt8:
72
+ def vram_size(self) -> UInt8:
74
73
  """B1,b0-2: bits 0-2 of byte 1 (0-7)."""
75
- return self._b1a
74
+ return self._vram_size
76
75
 
77
- def _set_b1a(self, b1a: int) -> None:
76
+ def _set_vram_size(self, vram_size: int) -> None:
78
77
  """Set B1,b0-2 (0-7)."""
79
- assert 0 <= b1a <= 7, f"b1a must be 0-7, got {b1a}"
80
- self._b1a = UInt8(b1a)
78
+ assert 0 <= vram_size <= 7, f"vram_size must be 0-7, got {vram_size}"
79
+ self._vram_size = UInt8(vram_size)
81
80
 
82
81
  @property
83
- def b1b(self) -> UInt8:
82
+ def sprite_priority(self) -> UInt8:
84
83
  """B1,b3-4: bits 3-4 of byte 1 (0-3)."""
85
- return self._b1b
84
+ return self._sprite_priority
86
85
 
87
- def _set_b1b(self, b1b: int) -> None:
86
+ def _set_sprite_priority(self, sprite_priority: int) -> None:
88
87
  """Set B1,b3-4 (0-3)."""
89
- assert 0 <= b1b <= 3, f"b1b must be 0-3, got {b1b}"
90
- self._b1b = UInt8(b1b)
88
+ assert (
89
+ 0 <= sprite_priority <= 3
90
+ ), f"sprite_priority must be 0-3, got {sprite_priority}"
91
+ self._sprite_priority = UInt8(sprite_priority)
91
92
 
92
93
  @property
93
- def b1c(self) -> UInt8:
94
+ def layer_priority(self) -> UInt8:
94
95
  """B1,b5-7: bits 5-7 of byte 1 (0-7)."""
95
- return self._b1c
96
+ return self._layer_priority
96
97
 
97
- def _set_b1c(self, b1c: int) -> None:
98
+ def _set_layer_priority(self, layer_priority: int) -> None:
98
99
  """Set B1,b5-7 (0-7)."""
99
- assert 0 <= b1c <= 7, f"b1c must be 0-7, got {b1c}"
100
- self._b1c = UInt8(b1c)
100
+ assert (
101
+ 0 <= layer_priority <= 7
102
+ ), f"layer_priority must be 0-7, got {layer_priority}"
103
+ self._layer_priority = UInt8(layer_priority)
101
104
 
102
105
  @property
103
106
  def b2b2(self) -> bool:
@@ -153,8 +156,9 @@ class Packet:
153
156
  def _set_action_script_id(self, action_script_id: int) -> None:
154
157
  """Set the action script for this packet to run when spawned.
155
158
  It is recommended to use action script ID constant names for this."""
156
- assert 0 <= action_script_id <= 1023, \
157
- f"action_script_id must be 0-1023, got {action_script_id}"
159
+ assert (
160
+ 0 <= action_script_id <= 1023
161
+ ), f"action_script_id must be 0-1023, got {action_script_id}"
158
162
  self._action_script_id = UInt16(action_script_id)
159
163
 
160
164
  @property
@@ -173,9 +177,9 @@ class Packet:
173
177
  sprite_id: int = PACKET_SPRITE_BASE,
174
178
  action_script_id: int = 0,
175
179
  b0: int = 0,
176
- b1a: int = 0,
177
- b1b: int = 0,
178
- b1c: int = 0,
180
+ vram_size: int = 0,
181
+ sprite_priority: int = 0,
182
+ layer_priority: int = 0,
179
183
  b2b2: bool = False,
180
184
  b2b3: bool = False,
181
185
  b2b4: bool = False,
@@ -187,9 +191,9 @@ class Packet:
187
191
  self._set_sprite_id(sprite_id)
188
192
  self._set_action_script_id(action_script_id)
189
193
  self._set_b0(b0)
190
- self._set_b1a(b1a)
191
- self._set_b1b(b1b)
192
- self._set_b1c(b1c)
194
+ self._set_vram_size(vram_size)
195
+ self._set_sprite_priority(sprite_priority)
196
+ self._set_layer_priority(layer_priority)
193
197
  self._set_b2b2(b2b2)
194
198
  self._set_b2b3(b2b3)
195
199
  self._set_b2b4(b2b4)
@@ -202,7 +206,7 @@ class Packet:
202
206
 
203
207
  Structure:
204
208
  - Byte 0: sprite offset (bits 0-5) | b0 (bits 6-7)
205
- - Byte 1: b1a (bits 0-2) | b1b (bits 3-4) | b1c (bits 5-7)
209
+ - Byte 1: vram_size (bits 0-2) | sprite_priority (bits 3-4) | layer_priority (bits 5-7)
206
210
  - Byte 2: b2b2 (bit 2) | b2b3 (bit 3) | b2b4 (bit 4) | show_shadow (bit 5) | b2 (bits 6-7)
207
211
  - Byte 3: action_script_id low byte
208
212
  - Byte 4: action_script_id high bits (bits 0-1) | b4 (bits 4-7)
@@ -214,16 +218,20 @@ class Packet:
214
218
  sprite_offset = self.sprite_id & 0x3F
215
219
  output[0] = sprite_offset | (self.b0 << 6)
216
220
 
217
- # Byte 1: b1a (bits 0-2), b1b (bits 3-4), b1c (bits 5-7)
218
- output[1] = (self.b1a & 0x07) | ((self.b1b & 0x03) << 3) | ((self.b1c & 0x07) << 5)
221
+ # Byte 1: vram_size (bits 0-2), sprite_priority (bits 3-4), layer_priority (bits 5-7)
222
+ output[1] = (
223
+ (self.vram_size & 0x07)
224
+ | ((self.sprite_priority & 0x03) << 3)
225
+ | ((self.layer_priority & 0x07) << 5)
226
+ )
219
227
 
220
228
  # Byte 2: b2b2 (bit 2), b2b3 (bit 3), b2b4 (bit 4), show_shadow (bit 5), b2 (bits 6-7)
221
229
  output[2] = (
222
- ((1 if self.b2b2 else 0) << 2) |
223
- ((1 if self.b2b3 else 0) << 3) |
224
- ((1 if self.b2b4 else 0) << 4) |
225
- ((1 if self.show_shadow else 0) << 5) |
226
- ((self.b2 & 0x03) << 6)
230
+ ((1 if self.b2b2 else 0) << 2)
231
+ | ((1 if self.b2b3 else 0) << 3)
232
+ | ((1 if self.b2b4 else 0) << 4)
233
+ | ((1 if self.show_shadow else 0) << 5)
234
+ | ((self.b2 & 0x03) << 6)
227
235
  )
228
236
 
229
237
  # Byte 3: action_script_id low 8 bits
@@ -1098,7 +1098,7 @@ class Command(BaseCommand):
1098
1098
  cls = "SetAMEM8BitToConst"
1099
1099
  args["value"] = str(shortify(cmd, 2))
1100
1100
  elif byte2 == 0x10:
1101
- cls = "SetAMEM8BitTo7E1x"
1101
+ cls = "SetAMEM8BitToAbsolute7E"
1102
1102
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1103
1103
  elif byte2 == 0x20:
1104
1104
  cls = "SetAMEM8BitTo7F"
@@ -1134,7 +1134,7 @@ class Command(BaseCommand):
1134
1134
  cls = "SetAMEM16BitToConst"
1135
1135
  args["value"] = str(shortify(cmd, 2))
1136
1136
  elif byte2 == 0x10:
1137
- cls = "SetAMEM16BitTo7E1x"
1137
+ cls = "SetAMEM16BitToAbsolute7E"
1138
1138
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1139
1139
  elif byte2 == 0x20:
1140
1140
  cls = "SetAMEM16BitTo7F"
@@ -1166,7 +1166,7 @@ class Command(BaseCommand):
1166
1166
  raise Exception("invalid amem shift type: %r" % command)
1167
1167
  elif opcode == 0x22:
1168
1168
  if byte2 == 0x10:
1169
- cls = "Set7E1xToAMEM8Bit"
1169
+ cls = "SetAbsolute7EToAMEM8Bit"
1170
1170
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1171
1171
  elif byte2 == 0x20:
1172
1172
  cls = "Set7FToAMEM8Bit"
@@ -1199,7 +1199,7 @@ class Command(BaseCommand):
1199
1199
  args["amem"] = f"0x{((cmd[1] & 0x0F) + 0x60):02X}"
1200
1200
  elif opcode == 0x23:
1201
1201
  if byte2 == 0x10:
1202
- cls = "Set7E1xToAMEM16Bit"
1202
+ cls = "SetAbsolute7EToAMEM16Bit"
1203
1203
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1204
1204
  elif byte2 == 0x20:
1205
1205
  cls = "Set7FToAMEM16Bit"
@@ -1236,7 +1236,7 @@ class Command(BaseCommand):
1236
1236
  cls = "JmpIfAMEM8BitEqualsConst"
1237
1237
  args["value"] = str(shortify(cmd, 2))
1238
1238
  elif byte2 == 0x10:
1239
- cls = "JmpIfAMEM8BitEquals7E1x"
1239
+ cls = "JmpIfAMEM8BitEqualsAbsolute7E"
1240
1240
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1241
1241
  elif byte2 == 0x20:
1242
1242
  cls = "JmpIfAMEM8BitEquals7F"
@@ -1271,7 +1271,7 @@ class Command(BaseCommand):
1271
1271
  cls = "JmpIfAMEM16BitEqualsConst"
1272
1272
  args["value"] = str(shortify(cmd, 2))
1273
1273
  elif byte2 == 0x10:
1274
- cls = "JmpIfAMEM16BitEquals7E1x"
1274
+ cls = "JmpIfAMEM16BitEqualsAbsolute7E"
1275
1275
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1276
1276
  elif byte2 == 0x20:
1277
1277
  cls = "JmpIfAMEM16BitEquals7F"
@@ -1308,7 +1308,7 @@ class Command(BaseCommand):
1308
1308
  cls = "JmpIfAMEM8BitNotEqualsConst"
1309
1309
  args["value"] = str(shortify(cmd, 2))
1310
1310
  elif byte2 == 0x10:
1311
- cls = "JmpIfAMEM8BitNotEquals7E1x"
1311
+ cls = "JmpIfAMEM8BitNotEqualsAbsolute7E"
1312
1312
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1313
1313
  elif byte2 == 0x20:
1314
1314
  cls = "JmpIfAMEM8BitNotEquals7F"
@@ -1345,7 +1345,7 @@ class Command(BaseCommand):
1345
1345
  cls = "JmpIfAMEM16BitNotEqualsConst"
1346
1346
  args["value"] = str(shortify(cmd, 2))
1347
1347
  elif byte2 == 0x10:
1348
- cls = "JmpIfAMEM16BitNotEquals7E1x"
1348
+ cls = "JmpIfAMEM16BitNotEqualsAbsolute7E"
1349
1349
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1350
1350
  elif byte2 == 0x20:
1351
1351
  cls = "JmpIfAMEM16BitNotEquals7F"
@@ -1382,7 +1382,7 @@ class Command(BaseCommand):
1382
1382
  cls = "JmpIfAMEM8BitLessThanConst"
1383
1383
  args["value"] = str(shortify(cmd, 2))
1384
1384
  elif byte2 == 0x10:
1385
- cls = "JmpIfAMEM8BitLessThan7E1x"
1385
+ cls = "JmpIfAMEM8BitLessThanAbsolute7E"
1386
1386
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1387
1387
  elif byte2 == 0x20:
1388
1388
  cls = "JmpIfAMEM8BitLessThan7F"
@@ -1419,7 +1419,7 @@ class Command(BaseCommand):
1419
1419
  cls = "JmpIfAMEM16BitLessThanConst"
1420
1420
  args["value"] = str(shortify(cmd, 2))
1421
1421
  elif byte2 == 0x10:
1422
- cls = "JmpIfAMEM16BitLessThan7E1x"
1422
+ cls = "JmpIfAMEM16BitLessThanAbsolute7E"
1423
1423
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1424
1424
  elif byte2 == 0x20:
1425
1425
  cls = "JmpIfAMEM16BitLessThan7F"
@@ -1456,7 +1456,7 @@ class Command(BaseCommand):
1456
1456
  cls = "JmpIfAMEM8BitGreaterOrEqualThanConst"
1457
1457
  args["value"] = str(shortify(cmd, 2))
1458
1458
  elif byte2 == 0x10:
1459
- cls = "JmpIfAMEM8BitGreaterOrEqualThan7E1x"
1459
+ cls = "JmpIfAMEM8BitGreaterOrEqualThanAbsolute7E"
1460
1460
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1461
1461
  elif byte2 == 0x20:
1462
1462
  cls = "JmpIfAMEM8BitGreaterOrEqualThan7F"
@@ -1493,7 +1493,7 @@ class Command(BaseCommand):
1493
1493
  cls = "JmpIfAMEM16BitGreaterOrEqualThanConst"
1494
1494
  args["value"] = str(shortify(cmd, 2))
1495
1495
  elif byte2 == 0x10:
1496
- cls = "JmpIfAMEM16BitGreaterOrEqualThan7E1x"
1496
+ cls = "JmpIfAMEM16BitGreaterOrEqualThanAbsolute7E"
1497
1497
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1498
1498
  elif byte2 == 0x20:
1499
1499
  cls = "JmpIfAMEM16BitGreaterOrEqualThan7F"
@@ -1530,7 +1530,7 @@ class Command(BaseCommand):
1530
1530
  cls = "IncAMEM8BitByConst"
1531
1531
  args["value"] = str(shortify(cmd, 2))
1532
1532
  elif byte2 == 0x10:
1533
- cls = "IncAMEM8BitBy7E1x"
1533
+ cls = "IncAMEM8BitByAbsolute7E"
1534
1534
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1535
1535
  elif byte2 == 0x20:
1536
1536
  cls = "IncAMEM8BitBy7F"
@@ -1566,7 +1566,7 @@ class Command(BaseCommand):
1566
1566
  cls = "IncAMEM16BitByConst"
1567
1567
  args["value"] = str(shortify(cmd, 2))
1568
1568
  elif byte2 == 0x10:
1569
- cls = "IncAMEM16BitBy7E1x"
1569
+ cls = "IncAMEM16BitByAbsolute7E"
1570
1570
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1571
1571
  elif byte2 == 0x20:
1572
1572
  cls = "IncAMEM16BitBy7F"
@@ -1602,7 +1602,7 @@ class Command(BaseCommand):
1602
1602
  cls = "DecAMEM8BitByConst"
1603
1603
  args["value"] = str(shortify(cmd, 2))
1604
1604
  elif byte2 == 0x10:
1605
- cls = "DecAMEM8BitBy7E1x"
1605
+ cls = "DecAMEM8BitByAbsolute7E"
1606
1606
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1607
1607
  elif byte2 == 0x20:
1608
1608
  cls = "DecAMEM8BitBy7F"
@@ -1638,7 +1638,7 @@ class Command(BaseCommand):
1638
1638
  cls = "DecAMEM16BitByConst"
1639
1639
  args["value"] = str(shortify(cmd, 2))
1640
1640
  elif byte2 == 0x10:
1641
- cls = "DecAMEM16BitBy7E1x"
1641
+ cls = "DecAMEM16BitByAbsolute7E"
1642
1642
  args["address"] = f"0x7E{shortify(cmd, 2):04X}"
1643
1643
  elif byte2 == 0x20:
1644
1644
  cls = "DecAMEM16BitBy7F"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: smrpgpatchbuilder
3
- Version: 5.0.1
3
+ Version: 5.0.3
4
4
  Summary: Patchable base class support for some SMRPG concepts similar to their definitions in Lazy Shell
5
5
  Author-email: pidgezero_one <s.kischak@gmail.com>
6
6
  License-Expression: MIT