bcsfe-wrapper-python 0.1.2__tar.gz → 0.1.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 (213) hide show
  1. bcsfe_wrapper_python-0.1.3/MANIFEST.in +1 -0
  2. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper_python.egg-info → bcsfe_wrapper_python-0.1.3}/PKG-INFO +1 -1
  3. bcsfe_wrapper_python-0.1.3/bcsfe_wrapper/__init__.py +9 -0
  4. bcsfe_wrapper_python-0.1.3/bcsfe_wrapper/wrapper.py +102 -0
  5. {bcsfe_wrapper_python-0.1.2 → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper_python.egg-info}/PKG-INFO +1 -1
  6. bcsfe_wrapper_python-0.1.3/bcsfe_wrapper_python.egg-info/SOURCES.txt +207 -0
  7. {bcsfe_wrapper_python-0.1.2 → bcsfe_wrapper_python-0.1.3}/setup.py +1 -1
  8. bcsfe_wrapper_python-0.1.2/MANIFEST.in +0 -1
  9. bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/__init__.py +0 -1
  10. bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/wrapper.py +0 -178
  11. bcsfe_wrapper_python-0.1.2/bcsfe_wrapper_python.egg-info/SOURCES.txt +0 -207
  12. {bcsfe_wrapper_python-0.1.2 → bcsfe_wrapper_python-0.1.3}/README.md +0 -0
  13. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/__init__.py +0 -0
  14. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/__main__.py +0 -0
  15. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/__init__.py +0 -0
  16. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/color.py +0 -0
  17. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/dialog_creator.py +0 -0
  18. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/edits/__init__.py +0 -0
  19. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/edits/aku_realm.py +0 -0
  20. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/edits/basic_items.py +0 -0
  21. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/edits/cat_editor.py +0 -0
  22. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/edits/clear_tutorial.py +0 -0
  23. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/edits/enemy_editor.py +0 -0
  24. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/edits/event_tickets.py +0 -0
  25. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/edits/fixes.py +0 -0
  26. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/edits/map.py +0 -0
  27. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/edits/max_all.py +0 -0
  28. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/edits/rare_ticket_trade.py +0 -0
  29. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/edits/storage.py +0 -0
  30. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/feature_handler.py +0 -0
  31. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/file_dialog.py +0 -0
  32. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/main.py +0 -0
  33. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/recent_saves.py +0 -0
  34. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/save_management.py +0 -0
  35. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/cli/server_cli.py +0 -0
  36. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/__init__.py +0 -0
  37. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/country_code.py +0 -0
  38. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/crypto.py +0 -0
  39. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/__init__.py +0 -0
  40. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/battle/__init__.py +0 -0
  41. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/battle/battle_items.py +0 -0
  42. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/battle/cleared_slots.py +0 -0
  43. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/battle/enemy.py +0 -0
  44. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/battle/slots.py +0 -0
  45. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/__init__.py +0 -0
  46. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/beacon_base.py +0 -0
  47. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/cat.py +0 -0
  48. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/drop_chara.py +0 -0
  49. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/gambling.py +0 -0
  50. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/gatya.py +0 -0
  51. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/gatya_item.py +0 -0
  52. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/item_pack.py +0 -0
  53. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/login_bonuses.py +0 -0
  54. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/matatabi.py +0 -0
  55. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/medals.py +0 -0
  56. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/mission.py +0 -0
  57. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/my_sale.py +0 -0
  58. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/nyanko_club.py +0 -0
  59. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/officer_pass.py +0 -0
  60. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/playtime.py +0 -0
  61. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/powerup.py +0 -0
  62. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/scheme_items.py +0 -0
  63. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/special_skill.py +0 -0
  64. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/stamp.py +0 -0
  65. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/talent_orbs.py +0 -0
  66. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/unlock_popups.py +0 -0
  67. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/upgrade.py +0 -0
  68. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/catbase/user_rank_rewards.py +0 -0
  69. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/gamoto/__init__.py +0 -0
  70. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/gamoto/base_materials.py +0 -0
  71. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/gamoto/cat_shrine.py +0 -0
  72. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/gamoto/catamins.py +0 -0
  73. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/gamoto/gamatoto.py +0 -0
  74. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/gamoto/ototo.py +0 -0
  75. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/localizable.py +0 -0
  76. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/__init__.py +0 -0
  77. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/aku.py +0 -0
  78. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/challenge.py +0 -0
  79. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/chapters.py +0 -0
  80. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/dojo.py +0 -0
  81. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/enigma.py +0 -0
  82. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/event.py +0 -0
  83. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/ex_stage.py +0 -0
  84. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/gauntlets.py +0 -0
  85. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/item_reward_stage.py +0 -0
  86. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/legend_quest.py +0 -0
  87. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/map_names.py +0 -0
  88. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/map_option.py +0 -0
  89. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/map_reset.py +0 -0
  90. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/outbreaks.py +0 -0
  91. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/story.py +0 -0
  92. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/timed_score.py +0 -0
  93. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/tower.py +0 -0
  94. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/uncanny.py +0 -0
  95. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game/map/zero_legends.py +0 -0
  96. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/game_version.py +0 -0
  97. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/__init__.py +0 -0
  98. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/adb_handler.py +0 -0
  99. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/bc_csv.py +0 -0
  100. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/command.py +0 -0
  101. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/config.py +0 -0
  102. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/data.py +0 -0
  103. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/git_handler.py +0 -0
  104. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/json_file.py +0 -0
  105. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/path.py +0 -0
  106. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/root_handler.py +0 -0
  107. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/save.py +0 -0
  108. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/thread_helper.py +0 -0
  109. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/waydroid.py +0 -0
  110. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/io/yaml.py +0 -0
  111. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/locale_handler.py +0 -0
  112. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/log.py +0 -0
  113. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/max_value_helper.py +0 -0
  114. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/server/__init__.py +0 -0
  115. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/server/client_info.py +0 -0
  116. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/server/event_data.py +0 -0
  117. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/server/game_data_getter.py +0 -0
  118. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/server/headers.py +0 -0
  119. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/server/managed_item.py +0 -0
  120. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/server/request.py +0 -0
  121. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/server/server_handler.py +0 -0
  122. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/server/updater.py +0 -0
  123. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/core/theme_handler.py +0 -0
  124. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/core/config.properties +0 -0
  125. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/core/files.properties +0 -0
  126. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/core/input.properties +0 -0
  127. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/core/locale.properties +0 -0
  128. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/core/main.properties +0 -0
  129. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/core/save.properties +0 -0
  130. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/core/server.properties +0 -0
  131. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/core/theme.properties +0 -0
  132. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/core/updater.properties +0 -0
  133. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/bannable_items.properties +0 -0
  134. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/cats.properties +0 -0
  135. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/enemy.properties +0 -0
  136. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/fixes.properties +0 -0
  137. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/gambling.properties +0 -0
  138. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/gamototo.properties +0 -0
  139. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/gatya.properties +0 -0
  140. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/gold_pass.properties +0 -0
  141. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/items.properties +0 -0
  142. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/map.properties +0 -0
  143. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/medals.properties +0 -0
  144. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/missions.properties +0 -0
  145. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/playtime.properties +0 -0
  146. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/scheme_items.properties +0 -0
  147. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/special_skills.properties +0 -0
  148. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/talent_orbs.properties +0 -0
  149. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/treasures.properties +0 -0
  150. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/en/edits/user_rank.properties +0 -0
  151. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/core/config.properties +0 -0
  152. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/core/files.properties +0 -0
  153. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/core/input.properties +0 -0
  154. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/core/locale.properties +0 -0
  155. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/core/main.properties +0 -0
  156. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/core/save.properties +0 -0
  157. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/core/server.properties +0 -0
  158. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/core/theme.properties +0 -0
  159. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/core/updater.properties +0 -0
  160. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/bannable_items.properties +0 -0
  161. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/cats.properties +0 -0
  162. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/enemy.properties +0 -0
  163. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/fixes.properties +0 -0
  164. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/gambling.properties +0 -0
  165. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/gamototo.properties +0 -0
  166. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/gatya.properties +0 -0
  167. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/gold_pass.properties +0 -0
  168. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/items.properties +0 -0
  169. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/map.properties +0 -0
  170. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/medals.properties +0 -0
  171. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/missions.properties +0 -0
  172. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/playtime.properties +0 -0
  173. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/scheme_items.properties +0 -0
  174. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/special_skills.properties +0 -0
  175. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/talent_orbs.properties +0 -0
  176. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/treasures.properties +0 -0
  177. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/edits/user_rank.properties +0 -0
  178. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/tw/metadata.json +0 -0
  179. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/core/config.properties +0 -0
  180. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/core/files.properties +0 -0
  181. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/core/input.properties +0 -0
  182. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/core/locale.properties +0 -0
  183. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/core/main.properties +0 -0
  184. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/core/save.properties +0 -0
  185. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/core/server.properties +0 -0
  186. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/core/theme.properties +0 -0
  187. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/core/updater.properties +0 -0
  188. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/bannable_items.properties +0 -0
  189. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/cats.properties +0 -0
  190. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/enemy.properties +0 -0
  191. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/fixes.properties +0 -0
  192. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/gambling.properties +0 -0
  193. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/gamototo.properties +0 -0
  194. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/gatya.properties +0 -0
  195. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/gold_pass.properties +0 -0
  196. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/items.properties +0 -0
  197. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/map.properties +0 -0
  198. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/medals.properties +0 -0
  199. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/missions.properties +0 -0
  200. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/playtime.properties +0 -0
  201. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/scheme_items.properties +0 -0
  202. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/special_skills.properties +0 -0
  203. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/talent_orbs.properties +0 -0
  204. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/treasures.properties +0 -0
  205. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/edits/user_rank.properties +0 -0
  206. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/locales/vi/metadata.json +0 -0
  207. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/max_values.json +0 -0
  208. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/themes/default.json +0 -0
  209. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/files/themes/discord.json +0 -0
  210. {bcsfe_wrapper_python-0.1.2/bcsfe_wrapper/bcsfe → bcsfe_wrapper_python-0.1.3/bcsfe_wrapper}/bcsfe/py.typed +0 -0
  211. {bcsfe_wrapper_python-0.1.2 → bcsfe_wrapper_python-0.1.3}/bcsfe_wrapper_python.egg-info/dependency_links.txt +0 -0
  212. {bcsfe_wrapper_python-0.1.2 → bcsfe_wrapper_python-0.1.3}/bcsfe_wrapper_python.egg-info/top_level.txt +0 -0
  213. {bcsfe_wrapper_python-0.1.2 → bcsfe_wrapper_python-0.1.3}/setup.cfg +0 -0
@@ -0,0 +1 @@
1
+ recursive-include bcsfe_wrapper *
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bcsfe-wrapper-python
3
- Version: 0.1.2
3
+ Version: 0.1.3
4
4
  Summary: A Python wrapper for BCSFE-Python to easily interact with Battle Cats save files.
5
5
  Home-page: https://github.com/fieryhenry/BCSFE-Python
6
6
  Author: Manus AI
@@ -0,0 +1,9 @@
1
+ import os
2
+ import sys
3
+
4
+ # パッケージ内のbcsfeをインポート可能にするためのパス調整
5
+ _current_dir = os.path.dirname(os.path.abspath(__file__))
6
+ if _current_dir not in sys.path:
7
+ sys.path.insert(0, _current_dir)
8
+
9
+ from .wrapper import BCSFEWrapper
@@ -0,0 +1,102 @@
1
+ import os
2
+ import sys
3
+ from typing import Any, List, Optional, Tuple, Dict, Union
4
+
5
+ # 内部のbcsfeを優先的にインポート
6
+ from bcsfe import core
7
+ from bcsfe.cli import edits
8
+
9
+ class BCSFEWrapper:
10
+ def __init__(self, save_path_or_data: Union[str, bytes], cc: str = "jp", gv: str = "13.1.0"):
11
+ core.core_data.init_data()
12
+ if isinstance(save_path_or_data, str):
13
+ self.save_path = core.Path(save_path_or_data)
14
+ self.save_file = core.SaveFile(self.save_path.read())
15
+ self.save_file.save_path = self.save_path
16
+ else:
17
+ self.save_file = core.SaveFile(save_path_or_data)
18
+ self.save_path = None
19
+
20
+ @classmethod
21
+ def from_server(cls, transfer_code: str, confirmation_code: str, cc: str = "jp") -> 'BCSFEWrapper':
22
+ country_code = core.CountryCode.from_code(cc)
23
+ handler = core.ServerHandler(country_code)
24
+ save_data, error = handler.download_save(transfer_code, confirmation_code)
25
+ if save_data is None:
26
+ raise RuntimeError(f"Download failed: {error}")
27
+ return cls(save_data.to_data().get_bytes(), cc=cc)
28
+
29
+ def save(self, output_path: Optional[str] = None):
30
+ path = core.Path(output_path) if output_path else self.save_path
31
+ if not path: raise ValueError("Output path must be specified.")
32
+ self.save_file.to_file(path)
33
+
34
+ def upload_to_server(self) -> Tuple[Optional[str], Optional[str]]:
35
+ handler = core.ServerHandler(self.save_file.cc)
36
+ response, error = handler.upload_save(self.save_file)
37
+ if response: return response.get("transfer_code"), response.get("confirmation_code")
38
+ return None, None
39
+
40
+ def edit_catfood(self, amount: int): self.save_file.catfood = amount
41
+ def edit_xp(self, amount: int): self.save_file.xp = amount
42
+ def edit_normal_tickets(self, amount: int): self.save_file.normal_tickets = amount
43
+ def edit_rare_tickets(self, amount: int): self.save_file.rare_tickets = amount
44
+ def edit_platinum_tickets(self, amount: int): self.save_file.platinum_tickets = amount
45
+ def edit_legend_tickets(self, amount: int): self.save_file.legend_tickets = amount
46
+ def edit_np(self, amount: int): self.save_file.np = amount
47
+ def edit_leadership(self, amount: int): self.save_file.leadership = amount
48
+ def edit_battle_items(self, amount: int):
49
+ for item in self.save_file.battle_items.items: item.amount = amount
50
+ def edit_catseyes(self, amount: int):
51
+ for i in range(len(self.save_file.catseyes)): self.save_file.catseyes[i] = amount
52
+ def edit_catfruit(self, amount: int):
53
+ for i in range(len(self.save_file.catfruit)): self.save_file.catfruit[i] = amount
54
+
55
+ def unlock_cats(self, cat_ids: List[int]):
56
+ for cid in cat_ids:
57
+ cat = self.save_file.cats.get_cat_by_id(cid)
58
+ if cat: cat.unlock(self.save_file)
59
+
60
+ def unlock_all_cats(self):
61
+ for cat in self.save_file.cats.cats: cat.unlock(self.save_file)
62
+
63
+ def upgrade_cats(self, cat_ids: List[int], base: int = 19, plus: int = 0):
64
+ for cid in cat_ids:
65
+ cat = self.save_file.cats.get_cat_by_id(cid)
66
+ if cat:
67
+ cat.upgrade.base = base
68
+ cat.upgrade.plus = plus
69
+
70
+ def upgrade_all_cats(self, base: Optional[int] = None, plus: Optional[int] = None):
71
+ for cat in self.save_file.cats.cats:
72
+ if not cat.is_unlocked(self.save_file): continue
73
+ power_up = core.PowerUpHelper(cat, self.save_file)
74
+ cat.upgrade.base = (base if base is not None else power_up.get_max_possible_base()) - 1
75
+ cat.upgrade.plus = plus if plus is not None else power_up.get_max_possible_plus()
76
+
77
+ def set_cat_form(self, cat_ids: List[int], form: int = 2):
78
+ for cid in cat_ids:
79
+ cat = self.save_file.cats.get_cat_by_id(cid)
80
+ if cat: cat.set_form(form)
81
+
82
+ def true_form_all_cats(self):
83
+ cats = self.save_file.cats.get_unlocked_cats()
84
+ self.save_file.cats.true_form_cats(self.save_file, cats, True, True)
85
+ self.save_file.cats.fourth_form_cats(self.save_file, cats, True, True)
86
+
87
+ def clear_tutorial(self): edits.clear_tutorial.clear_tutorial(self.save_file, False)
88
+ def clear_story_chapters(self, chapters: List[int] = [0, 1, 2]):
89
+ for c_id in chapters:
90
+ if c_id < len(self.save_file.story.chapters):
91
+ chapter = self.save_file.story.chapters[c_id]
92
+ chapter.clear_all(self.save_file)
93
+ for stage in chapter.stages: stage.treasure = 3
94
+
95
+ def edit_gamatoto_xp(self, xp: int): self.save_file.gamatoto.xp = xp
96
+ def edit_ototo_engineers(self, amount: int): self.save_file.ototo.engineers = amount
97
+ def unban(self):
98
+ self.save_file.show_ban_message = False
99
+ self.save_file.banned = False
100
+ def get_inquiry_code(self) -> str: return self.save_file.inquiry_code
101
+ def edit_inquiry_code(self, new_code: str): self.save_file.inquiry_code = new_code
102
+ def get_save_file(self) -> core.SaveFile: return self.save_file
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bcsfe-wrapper-python
3
- Version: 0.1.2
3
+ Version: 0.1.3
4
4
  Summary: A Python wrapper for BCSFE-Python to easily interact with Battle Cats save files.
5
5
  Home-page: https://github.com/fieryhenry/BCSFE-Python
6
6
  Author: Manus AI
@@ -0,0 +1,207 @@
1
+ MANIFEST.in
2
+ README.md
3
+ setup.py
4
+ bcsfe_wrapper/__init__.py
5
+ bcsfe_wrapper/wrapper.py
6
+ bcsfe_wrapper/bcsfe/__init__.py
7
+ bcsfe_wrapper/bcsfe/__main__.py
8
+ bcsfe_wrapper/bcsfe/py.typed
9
+ bcsfe_wrapper/bcsfe/cli/__init__.py
10
+ bcsfe_wrapper/bcsfe/cli/color.py
11
+ bcsfe_wrapper/bcsfe/cli/dialog_creator.py
12
+ bcsfe_wrapper/bcsfe/cli/feature_handler.py
13
+ bcsfe_wrapper/bcsfe/cli/file_dialog.py
14
+ bcsfe_wrapper/bcsfe/cli/main.py
15
+ bcsfe_wrapper/bcsfe/cli/recent_saves.py
16
+ bcsfe_wrapper/bcsfe/cli/save_management.py
17
+ bcsfe_wrapper/bcsfe/cli/server_cli.py
18
+ bcsfe_wrapper/bcsfe/cli/edits/__init__.py
19
+ bcsfe_wrapper/bcsfe/cli/edits/aku_realm.py
20
+ bcsfe_wrapper/bcsfe/cli/edits/basic_items.py
21
+ bcsfe_wrapper/bcsfe/cli/edits/cat_editor.py
22
+ bcsfe_wrapper/bcsfe/cli/edits/clear_tutorial.py
23
+ bcsfe_wrapper/bcsfe/cli/edits/enemy_editor.py
24
+ bcsfe_wrapper/bcsfe/cli/edits/event_tickets.py
25
+ bcsfe_wrapper/bcsfe/cli/edits/fixes.py
26
+ bcsfe_wrapper/bcsfe/cli/edits/map.py
27
+ bcsfe_wrapper/bcsfe/cli/edits/max_all.py
28
+ bcsfe_wrapper/bcsfe/cli/edits/rare_ticket_trade.py
29
+ bcsfe_wrapper/bcsfe/cli/edits/storage.py
30
+ bcsfe_wrapper/bcsfe/core/__init__.py
31
+ bcsfe_wrapper/bcsfe/core/country_code.py
32
+ bcsfe_wrapper/bcsfe/core/crypto.py
33
+ bcsfe_wrapper/bcsfe/core/game_version.py
34
+ bcsfe_wrapper/bcsfe/core/locale_handler.py
35
+ bcsfe_wrapper/bcsfe/core/log.py
36
+ bcsfe_wrapper/bcsfe/core/max_value_helper.py
37
+ bcsfe_wrapper/bcsfe/core/theme_handler.py
38
+ bcsfe_wrapper/bcsfe/core/game/__init__.py
39
+ bcsfe_wrapper/bcsfe/core/game/localizable.py
40
+ bcsfe_wrapper/bcsfe/core/game/battle/__init__.py
41
+ bcsfe_wrapper/bcsfe/core/game/battle/battle_items.py
42
+ bcsfe_wrapper/bcsfe/core/game/battle/cleared_slots.py
43
+ bcsfe_wrapper/bcsfe/core/game/battle/enemy.py
44
+ bcsfe_wrapper/bcsfe/core/game/battle/slots.py
45
+ bcsfe_wrapper/bcsfe/core/game/catbase/__init__.py
46
+ bcsfe_wrapper/bcsfe/core/game/catbase/beacon_base.py
47
+ bcsfe_wrapper/bcsfe/core/game/catbase/cat.py
48
+ bcsfe_wrapper/bcsfe/core/game/catbase/drop_chara.py
49
+ bcsfe_wrapper/bcsfe/core/game/catbase/gambling.py
50
+ bcsfe_wrapper/bcsfe/core/game/catbase/gatya.py
51
+ bcsfe_wrapper/bcsfe/core/game/catbase/gatya_item.py
52
+ bcsfe_wrapper/bcsfe/core/game/catbase/item_pack.py
53
+ bcsfe_wrapper/bcsfe/core/game/catbase/login_bonuses.py
54
+ bcsfe_wrapper/bcsfe/core/game/catbase/matatabi.py
55
+ bcsfe_wrapper/bcsfe/core/game/catbase/medals.py
56
+ bcsfe_wrapper/bcsfe/core/game/catbase/mission.py
57
+ bcsfe_wrapper/bcsfe/core/game/catbase/my_sale.py
58
+ bcsfe_wrapper/bcsfe/core/game/catbase/nyanko_club.py
59
+ bcsfe_wrapper/bcsfe/core/game/catbase/officer_pass.py
60
+ bcsfe_wrapper/bcsfe/core/game/catbase/playtime.py
61
+ bcsfe_wrapper/bcsfe/core/game/catbase/powerup.py
62
+ bcsfe_wrapper/bcsfe/core/game/catbase/scheme_items.py
63
+ bcsfe_wrapper/bcsfe/core/game/catbase/special_skill.py
64
+ bcsfe_wrapper/bcsfe/core/game/catbase/stamp.py
65
+ bcsfe_wrapper/bcsfe/core/game/catbase/talent_orbs.py
66
+ bcsfe_wrapper/bcsfe/core/game/catbase/unlock_popups.py
67
+ bcsfe_wrapper/bcsfe/core/game/catbase/upgrade.py
68
+ bcsfe_wrapper/bcsfe/core/game/catbase/user_rank_rewards.py
69
+ bcsfe_wrapper/bcsfe/core/game/gamoto/__init__.py
70
+ bcsfe_wrapper/bcsfe/core/game/gamoto/base_materials.py
71
+ bcsfe_wrapper/bcsfe/core/game/gamoto/cat_shrine.py
72
+ bcsfe_wrapper/bcsfe/core/game/gamoto/catamins.py
73
+ bcsfe_wrapper/bcsfe/core/game/gamoto/gamatoto.py
74
+ bcsfe_wrapper/bcsfe/core/game/gamoto/ototo.py
75
+ bcsfe_wrapper/bcsfe/core/game/map/__init__.py
76
+ bcsfe_wrapper/bcsfe/core/game/map/aku.py
77
+ bcsfe_wrapper/bcsfe/core/game/map/challenge.py
78
+ bcsfe_wrapper/bcsfe/core/game/map/chapters.py
79
+ bcsfe_wrapper/bcsfe/core/game/map/dojo.py
80
+ bcsfe_wrapper/bcsfe/core/game/map/enigma.py
81
+ bcsfe_wrapper/bcsfe/core/game/map/event.py
82
+ bcsfe_wrapper/bcsfe/core/game/map/ex_stage.py
83
+ bcsfe_wrapper/bcsfe/core/game/map/gauntlets.py
84
+ bcsfe_wrapper/bcsfe/core/game/map/item_reward_stage.py
85
+ bcsfe_wrapper/bcsfe/core/game/map/legend_quest.py
86
+ bcsfe_wrapper/bcsfe/core/game/map/map_names.py
87
+ bcsfe_wrapper/bcsfe/core/game/map/map_option.py
88
+ bcsfe_wrapper/bcsfe/core/game/map/map_reset.py
89
+ bcsfe_wrapper/bcsfe/core/game/map/outbreaks.py
90
+ bcsfe_wrapper/bcsfe/core/game/map/story.py
91
+ bcsfe_wrapper/bcsfe/core/game/map/timed_score.py
92
+ bcsfe_wrapper/bcsfe/core/game/map/tower.py
93
+ bcsfe_wrapper/bcsfe/core/game/map/uncanny.py
94
+ bcsfe_wrapper/bcsfe/core/game/map/zero_legends.py
95
+ bcsfe_wrapper/bcsfe/core/io/__init__.py
96
+ bcsfe_wrapper/bcsfe/core/io/adb_handler.py
97
+ bcsfe_wrapper/bcsfe/core/io/bc_csv.py
98
+ bcsfe_wrapper/bcsfe/core/io/command.py
99
+ bcsfe_wrapper/bcsfe/core/io/config.py
100
+ bcsfe_wrapper/bcsfe/core/io/data.py
101
+ bcsfe_wrapper/bcsfe/core/io/git_handler.py
102
+ bcsfe_wrapper/bcsfe/core/io/json_file.py
103
+ bcsfe_wrapper/bcsfe/core/io/path.py
104
+ bcsfe_wrapper/bcsfe/core/io/root_handler.py
105
+ bcsfe_wrapper/bcsfe/core/io/save.py
106
+ bcsfe_wrapper/bcsfe/core/io/thread_helper.py
107
+ bcsfe_wrapper/bcsfe/core/io/waydroid.py
108
+ bcsfe_wrapper/bcsfe/core/io/yaml.py
109
+ bcsfe_wrapper/bcsfe/core/server/__init__.py
110
+ bcsfe_wrapper/bcsfe/core/server/client_info.py
111
+ bcsfe_wrapper/bcsfe/core/server/event_data.py
112
+ bcsfe_wrapper/bcsfe/core/server/game_data_getter.py
113
+ bcsfe_wrapper/bcsfe/core/server/headers.py
114
+ bcsfe_wrapper/bcsfe/core/server/managed_item.py
115
+ bcsfe_wrapper/bcsfe/core/server/request.py
116
+ bcsfe_wrapper/bcsfe/core/server/server_handler.py
117
+ bcsfe_wrapper/bcsfe/core/server/updater.py
118
+ bcsfe_wrapper/bcsfe/files/max_values.json
119
+ bcsfe_wrapper/bcsfe/files/locales/en/core/config.properties
120
+ bcsfe_wrapper/bcsfe/files/locales/en/core/files.properties
121
+ bcsfe_wrapper/bcsfe/files/locales/en/core/input.properties
122
+ bcsfe_wrapper/bcsfe/files/locales/en/core/locale.properties
123
+ bcsfe_wrapper/bcsfe/files/locales/en/core/main.properties
124
+ bcsfe_wrapper/bcsfe/files/locales/en/core/save.properties
125
+ bcsfe_wrapper/bcsfe/files/locales/en/core/server.properties
126
+ bcsfe_wrapper/bcsfe/files/locales/en/core/theme.properties
127
+ bcsfe_wrapper/bcsfe/files/locales/en/core/updater.properties
128
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/bannable_items.properties
129
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/cats.properties
130
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/enemy.properties
131
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/fixes.properties
132
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/gambling.properties
133
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/gamototo.properties
134
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/gatya.properties
135
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/gold_pass.properties
136
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/items.properties
137
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/map.properties
138
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/medals.properties
139
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/missions.properties
140
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/playtime.properties
141
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/scheme_items.properties
142
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/special_skills.properties
143
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/talent_orbs.properties
144
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/treasures.properties
145
+ bcsfe_wrapper/bcsfe/files/locales/en/edits/user_rank.properties
146
+ bcsfe_wrapper/bcsfe/files/locales/tw/metadata.json
147
+ bcsfe_wrapper/bcsfe/files/locales/tw/core/config.properties
148
+ bcsfe_wrapper/bcsfe/files/locales/tw/core/files.properties
149
+ bcsfe_wrapper/bcsfe/files/locales/tw/core/input.properties
150
+ bcsfe_wrapper/bcsfe/files/locales/tw/core/locale.properties
151
+ bcsfe_wrapper/bcsfe/files/locales/tw/core/main.properties
152
+ bcsfe_wrapper/bcsfe/files/locales/tw/core/save.properties
153
+ bcsfe_wrapper/bcsfe/files/locales/tw/core/server.properties
154
+ bcsfe_wrapper/bcsfe/files/locales/tw/core/theme.properties
155
+ bcsfe_wrapper/bcsfe/files/locales/tw/core/updater.properties
156
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/bannable_items.properties
157
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/cats.properties
158
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/enemy.properties
159
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/fixes.properties
160
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/gambling.properties
161
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/gamototo.properties
162
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/gatya.properties
163
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/gold_pass.properties
164
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/items.properties
165
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/map.properties
166
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/medals.properties
167
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/missions.properties
168
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/playtime.properties
169
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/scheme_items.properties
170
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/special_skills.properties
171
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/talent_orbs.properties
172
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/treasures.properties
173
+ bcsfe_wrapper/bcsfe/files/locales/tw/edits/user_rank.properties
174
+ bcsfe_wrapper/bcsfe/files/locales/vi/metadata.json
175
+ bcsfe_wrapper/bcsfe/files/locales/vi/core/config.properties
176
+ bcsfe_wrapper/bcsfe/files/locales/vi/core/files.properties
177
+ bcsfe_wrapper/bcsfe/files/locales/vi/core/input.properties
178
+ bcsfe_wrapper/bcsfe/files/locales/vi/core/locale.properties
179
+ bcsfe_wrapper/bcsfe/files/locales/vi/core/main.properties
180
+ bcsfe_wrapper/bcsfe/files/locales/vi/core/save.properties
181
+ bcsfe_wrapper/bcsfe/files/locales/vi/core/server.properties
182
+ bcsfe_wrapper/bcsfe/files/locales/vi/core/theme.properties
183
+ bcsfe_wrapper/bcsfe/files/locales/vi/core/updater.properties
184
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/bannable_items.properties
185
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/cats.properties
186
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/enemy.properties
187
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/fixes.properties
188
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/gambling.properties
189
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/gamototo.properties
190
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/gatya.properties
191
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/gold_pass.properties
192
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/items.properties
193
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/map.properties
194
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/medals.properties
195
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/missions.properties
196
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/playtime.properties
197
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/scheme_items.properties
198
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/special_skills.properties
199
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/talent_orbs.properties
200
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/treasures.properties
201
+ bcsfe_wrapper/bcsfe/files/locales/vi/edits/user_rank.properties
202
+ bcsfe_wrapper/bcsfe/files/themes/default.json
203
+ bcsfe_wrapper/bcsfe/files/themes/discord.json
204
+ bcsfe_wrapper_python.egg-info/PKG-INFO
205
+ bcsfe_wrapper_python.egg-info/SOURCES.txt
206
+ bcsfe_wrapper_python.egg-info/dependency_links.txt
207
+ bcsfe_wrapper_python.egg-info/top_level.txt
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name='bcsfe-wrapper-python',
5
- version='0.1.2',
5
+ version='0.1.3',
6
6
  packages=find_packages(), include_package_data=True,
7
7
  install_requires=[
8
8
  # 依存関係があればここに記述
@@ -1 +0,0 @@
1
- recursive-include bcsfe_wrapper/bcsfe *
@@ -1 +0,0 @@
1
- from .wrapper import BCSFEWrapper
@@ -1,178 +0,0 @@
1
- import os
2
- import sys
3
- from typing import Any, List, Optional, Tuple, Dict, Union
4
-
5
- # bcsfeモジュールをインポートできるようにパスを追加
6
- sys.path.insert(0, os.path.abspath(os.path.dirname(__file__)))
7
-
8
- from .bcsfe.bcsfe import core
9
- from .bcsfe.bcsfe.cli import edits
10
-
11
- class BCSFEWrapper:
12
- """
13
- BCSFE-Pythonの全機能をPythonから呼び出すための包括的ラッパークラス。
14
- """
15
-
16
- def __init__(self, save_path_or_data: Union[str, bytes], cc: str = "jp", gv: str = "13.1.0"):
17
- """
18
- 初期化処理。
19
-
20
- :param save_path_or_data: セーブファイルのパスまたはバイナリデータ
21
- :param cc: 国コード (jp, en, kr, tw)
22
- :param gv: ゲームバージョン (例: 13.1.0)
23
- """
24
- core.core_data.init_data()
25
-
26
- if isinstance(save_path_or_data, str):
27
- self.save_path = core.Path(save_path_or_data)
28
- self.save_file = core.SaveFile(self.save_path.read())
29
- self.save_file.save_path = self.save_path
30
- else:
31
- self.save_file = core.SaveFile(save_path_or_data)
32
- self.save_path = None
33
-
34
- @classmethod
35
- def from_server(cls, transfer_code: str, confirmation_code: str, cc: str = "jp") -> 'BCSFEWrapper':
36
- """
37
- サーバーからセーブデータをダウンロードしてインスタンスを作成します。
38
- """
39
- country_code = core.CountryCode.from_code(cc)
40
- handler = core.ServerHandler(country_code)
41
- save_data, error = handler.download_save(transfer_code, confirmation_code)
42
- if save_data is None:
43
- raise RuntimeError(f"Download failed: {error}")
44
- return cls(save_data.to_data().get_bytes(), cc=cc)
45
-
46
- def save(self, output_path: Optional[str] = None):
47
- """現在の状態をファイルに保存します。"""
48
- path = core.Path(output_path) if output_path else self.save_path
49
- if not path:
50
- raise ValueError("Output path must be specified.")
51
- self.save_file.to_file(path)
52
-
53
- def upload_to_server(self) -> Tuple[Optional[str], Optional[str]]:
54
- """現在のセーブデータをサーバーにアップロードし、引き継ぎコードと認証番号を返します。"""
55
- handler = core.ServerHandler(self.save_file.cc)
56
- response, error = handler.upload_save(self.save_file)
57
- if response:
58
- return response.get("transfer_code"), response.get("confirmation_code")
59
- return None, None
60
-
61
- # --- 基本アイテム編集 (edits.basic_items) ---
62
-
63
- def edit_catfood(self, amount: int):
64
- self.save_file.catfood = amount
65
-
66
- def edit_xp(self, amount: int):
67
- self.save_file.xp = amount
68
-
69
- def edit_normal_tickets(self, amount: int):
70
- self.save_file.normal_tickets = amount
71
-
72
- def edit_rare_tickets(self, amount: int):
73
- self.save_file.rare_tickets = amount
74
-
75
- def edit_platinum_tickets(self, amount: int):
76
- self.save_file.platinum_tickets = amount
77
-
78
- def edit_legend_tickets(self, amount: int):
79
- self.save_file.legend_tickets = amount
80
-
81
- def edit_np(self, amount: int):
82
- self.save_file.np = amount
83
-
84
- def edit_leadership(self, amount: int):
85
- self.save_file.leadership = amount
86
-
87
- def edit_battle_items(self, amount: int):
88
- for item in self.save_file.battle_items.items:
89
- item.amount = amount
90
-
91
- def edit_catseyes(self, amount: int):
92
- for i in range(len(self.save_file.catseyes)):
93
- self.save_file.catseyes[i] = amount
94
-
95
- def edit_catfruit(self, amount: int):
96
- for i in range(len(self.save_file.catfruit)):
97
- self.save_file.catfruit[i] = amount
98
-
99
- # --- キャラクター編集 (edits.cat_editor) ---
100
-
101
- def unlock_cats(self, cat_ids: List[int]):
102
- """指定したIDのキャラを解放します。"""
103
- for cid in cat_ids:
104
- cat = self.save_file.cats.get_cat_by_id(cid)
105
- if cat: cat.unlock(self.save_file)
106
-
107
- def unlock_all_cats(self):
108
- """全キャラを解放します。"""
109
- for cat in self.save_file.cats.cats:
110
- cat.unlock(self.save_file)
111
-
112
- def upgrade_cats(self, cat_ids: List[int], base: int = 19, plus: int = 0):
113
- """指定したキャラのレベルを設定します。"""
114
- for cid in cat_ids:
115
- cat = self.save_file.cats.get_cat_by_id(cid)
116
- if cat:
117
- cat.upgrade.base = base
118
- cat.upgrade.plus = plus
119
-
120
- def upgrade_all_cats(self, base: Optional[int] = None, plus: Optional[int] = None):
121
- """全キャラをレベル最大にします。"""
122
- for cat in self.save_file.cats.cats:
123
- if not cat.is_unlocked(self.save_file): continue
124
- power_up = core.PowerUpHelper(cat, self.save_file)
125
- cat.upgrade.base = (base if base is not None else power_up.get_max_possible_base()) - 1
126
- cat.upgrade.plus = plus if plus is not None else power_up.get_max_possible_plus()
127
-
128
- def set_cat_form(self, cat_ids: List[int], form: int = 2):
129
- """指定したキャラの形態を設定します (0:第1, 1:第2, 2:第3, 3:第4)。"""
130
- for cid in cat_ids:
131
- cat = self.save_file.cats.get_cat_by_id(cid)
132
- if cat: cat.set_form(form)
133
-
134
- def true_form_all_cats(self):
135
- """全キャラを第3形態以上にします。"""
136
- cats = self.save_file.cats.get_unlocked_cats()
137
- self.save_file.cats.true_form_cats(self.save_file, cats, True, True)
138
- self.save_file.cats.fourth_form_cats(self.save_file, cats, True, True)
139
-
140
- # --- ステージ編集 (edits.clear_tutorial, edits.map) ---
141
-
142
- def clear_tutorial(self):
143
- edits.clear_tutorial.clear_tutorial(self.save_file, False)
144
-
145
- def clear_story_chapters(self, chapters: List[int] = [0, 1, 2]):
146
- """指定したストーリー章をクリアし、お宝を最高にします。"""
147
- for c_id in chapters:
148
- if c_id < len(self.save_file.story.chapters):
149
- chapter = self.save_file.story.chapters[c_id]
150
- chapter.clear_all(self.save_file)
151
- for stage in chapter.stages:
152
- stage.treasure = 3
153
-
154
- # --- ガマトト・オトト (edits.basic_items) ---
155
-
156
- def edit_gamatoto_xp(self, xp: int):
157
- self.save_file.gamatoto.xp = xp
158
-
159
- def edit_ototo_engineers(self, amount: int):
160
- self.save_file.ototo.engineers = amount
161
-
162
- # --- その他・アカウント (edits.fixes, edits.basic_items) ---
163
-
164
- def unban(self):
165
- """BANメッセージを非表示にし、フラグをリセットします。"""
166
- self.save_file.show_ban_message = False
167
- self.save_file.banned = False
168
-
169
- def get_inquiry_code(self) -> str:
170
- return self.save_file.inquiry_code
171
-
172
- def edit_inquiry_code(self, new_code: str):
173
- self.save_file.inquiry_code = new_code
174
-
175
- # --- 低レイヤーアクセス ---
176
- def get_save_file(self) -> core.SaveFile:
177
- """生のSaveFileオブジェクトを取得して、より詳細な編集を可能にします。"""
178
- return self.save_file