ksaa 2025.7.5.0__tar.gz → 2025.7.9.0__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.
- {ksaa-2025.7.5.0/ksaa.egg-info → ksaa-2025.7.9.0}/PKG-INFO +1 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/WHATS_NEW.md +49 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/bot.py +13 -2
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/context/context.py +42 -9
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/config/base_config.py +2 -0
- ksaa-2025.7.9.0/kotonebot/kaa/common.py +22 -0
- ksaa-2025.7.9.0/kotonebot/kaa/config/__init__.py +62 -0
- ksaa-2025.7.9.0/kotonebot/kaa/config/const.py +255 -0
- ksaa-2025.7.9.0/kotonebot/kaa/config/migrations/__init__.py +28 -0
- ksaa-2025.7.9.0/kotonebot/kaa/config/migrations/_idol.py +106 -0
- ksaa-2025.7.9.0/kotonebot/kaa/config/migrations/_v1_to_v2.py +203 -0
- ksaa-2025.7.9.0/kotonebot/kaa/config/migrations/_v2_to_v3.py +126 -0
- ksaa-2025.7.9.0/kotonebot/kaa/config/migrations/_v3_to_v4.py +29 -0
- ksaa-2025.7.9.0/kotonebot/kaa/config/migrations/_v4_to_v5.py +26 -0
- ksaa-2025.7.9.0/kotonebot/kaa/config/migrations/_v5_to_v6.py +134 -0
- ksaa-2025.7.9.0/kotonebot/kaa/config/produce.py +255 -0
- ksaa-2025.7.9.0/kotonebot/kaa/config/schema.py +236 -0
- ksaa-2025.7.9.0/kotonebot/kaa/config/upgrade.py +63 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/game_ui/commu_event_buttons.py +3 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/game_ui/schedule.py +1 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/main/gr.py +841 -176
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/main/kaa.py +39 -12
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/metadata.py +49 -0
- ksaa-2025.7.9.0/kotonebot/kaa/resources/__pycache__/__init__.cpython-310.pyc +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/game.db +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/resources/game_ver.txt +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-3-001_0.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-3-001_1.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-007_0.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-007_1.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/sprites/0d9ac648-eefa-4869-ac99-1b0c83649681.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/sprites/185f7838-92a7-460b-9340-f60858948ce9.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/sprites/213016c2-c3a2-43d8-86a3-ab4d27666ced.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/sprites/24dc7158-036c-4a66-9280-e934f470be53.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/sprites/3942ae40-7f22-412c-aebe-4b064f68db9b.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/sprites/5031808b-5525-4118-92b4-317ec8bda985.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/sprites/5d36b880-7b3f-49b1-a018-7de59867d376.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/sprites/81c97cd3-df53-44d3-bf3d-1eb4dc67b62a.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/sprites/8f8b7b46-53bb-42ab-907a-4ea87eb09ab4.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/sprites/921eefeb-730e-46fc-9924-d338fb286592.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/sprites/ae9fe233-9acc-4e96-ba8e-1fb1d9bc2ea5.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/sprites/cb3d0ca7-8d14-408a-a2f5-2e25f7b86d6c.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/sprites/cc60b509-2ed5-493d-bb9f-333c6d2a6006.png +0 -0
- ksaa-2025.7.9.0/kotonebot/kaa/tasks/R.py +578 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/daily/acquire_activity_funds.py +13 -11
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/daily/acquire_presents.py +1 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/daily/assignment.py +1 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/daily/capsule_toys.py +1 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/daily/club_reward.py +1 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/daily/contest.py +1 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/daily/mission_reward.py +1 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/daily/purchase.py +53 -29
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/daily/upgrade_support_card.py +1 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/end_game.py +1 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/produce/cards.py +1 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/produce/common.py +3 -2
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/produce/in_purodyuusu.py +9 -7
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/produce/non_lesson_actions.py +3 -2
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/produce/produce.py +27 -22
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/start_game.py +1 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0/ksaa.egg-info}/PKG-INFO +1 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/ksaa.egg-info/SOURCES.txt +155 -141
- ksaa-2025.7.9.0/version +1 -0
- ksaa-2025.7.5.0/kotonebot/kaa/common.py +0 -988
- ksaa-2025.7.5.0/kotonebot/kaa/resources/__pycache__/__init__.cpython-310.pyc +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/resources/game_ver.txt +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/135ee57a-d30d-4ba8-83f0-9f1681a49ff7.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/18a02cbe-5d07-487c-866b-62b9609ee02f.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/1c53ee9f-9dda-43bb-b788-de675c7ebfbe.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/278b7d9c-707e-4392-9677-74574b5cdf42.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/2bc00520-0afe-40e5-8743-d33fc6b2945a.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/3a234f56-2287-4ced-8093-253ece372af2.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/6720b6e8-ae80-4cc0-a885-518efe12b707.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/68f109c1-297e-4aa8-b472-372f1d689b33.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/74ff07b3-d91c-4579-80cd-379ed7020622.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/7669d1f5-d778-4694-87ae-9bb08e7f1265.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/868b97a9-492e-4712-b47f-82b97495b019.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/9d21d43f-4bf9-4081-951f-d208e0273e1f.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/a7f5abf1-982f-4a55-8d41-3ad6f56798e0.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/afa06fdc-a345-4384-b25d-b16540830256.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/sprites/d15959bf-d07b-4f07-948a-c0aeaf17756a.png +0 -0
- ksaa-2025.7.5.0/kotonebot/kaa/tasks/R.py +0 -586
- ksaa-2025.7.5.0/version +0 -1
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/LICENSE +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/MANIFEST.in +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/README.md +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/color.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/context/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/context/task_action.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/core.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/debug/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/debug/entry.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/debug/mock.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/debug/server.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/debug/vars.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/dispatch.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/flow_controller.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/image.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/loop.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/ocr.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/backend/preprocessor.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/device.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/fast_screenshot.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/host/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/host/adb_common.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/host/custom.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/host/leidian_host.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/host/mumu12_host.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/host/protocol.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/host/windows_common.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/implements/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/implements/adb.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/implements/adb_raw.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/implements/nemu_ipc/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/implements/nemu_ipc/external_renderer_ipc.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/implements/nemu_ipc/nemu_ipc.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/implements/remote_windows.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/implements/uiautomator2.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/implements/windows.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/protocol.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/client/registration.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/config/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/config/manager.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/debug_entry.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/errors.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/interop/win/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/interop/win/reg.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/db/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/db/constants.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/db/idol_card.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/db/sqlite.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/game_ui/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/game_ui/badge.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/game_ui/common.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/game_ui/dialog.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/game_ui/idols_overview.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/game_ui/primary_button.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/game_ui/scrollable.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/game_ui/toolbar.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/image_db/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/image_db/db.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/image_db/descriptors/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/image_db/descriptors/hist.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/kaa_context.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/main/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/main/cli.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/main/dmm_host.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-1-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-1-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-1-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-1-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-2-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-2-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-002_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-002_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-003_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-003_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-005_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-005_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-006_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-006_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-007_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-007_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-008_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-008_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-009_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-009_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-010_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-010_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-011_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-011_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-012_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-012_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-1-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-1-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-1-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-1-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-2-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-2-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-002_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-002_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-003_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-003_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-005_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-005_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-006_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-006_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-007_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-007_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-008_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-008_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-009_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-009_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-010_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-010_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-011_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-011_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-012_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-012_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-014_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-014_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-1-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-1-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-1-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-1-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-2-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-2-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-3-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-3-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-3-005_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-3-005_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-1-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-1-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-1-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-1-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-2-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-2-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-002_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-002_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-003_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-003_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-004_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-004_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-005_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-005_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-006_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-006_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-007_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-007_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-008_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-008_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-009_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-009_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-010_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-010_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-011_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-011_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-012_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-012_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-1-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-1-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-1-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-1-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-2-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-2-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-002_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-002_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-003_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-003_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-005_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-005_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-006_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-006_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-007_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-007_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-008_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-008_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-009_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-009_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-010_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-010_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-011_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-011_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-012_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-012_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-013_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-013_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-1-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-1-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-1-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-1-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-2-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-2-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-002_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-002_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-004_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-004_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-005_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-005_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-006_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-006_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-011_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-011_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-013_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-013_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-1-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-1-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-1-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-1-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-2-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-2-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-002_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-002_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-003_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-003_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-004_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-004_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-005_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-005_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-006_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-006_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-010_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-010_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-012_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-012_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-1-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-1-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-1-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-1-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-2-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-2-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-002_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-002_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-003_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-003_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-004_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-004_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-005_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-005_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-006_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-006_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-007_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-007_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-008_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-008_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-009_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-009_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-010_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-010_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-011_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-011_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-012_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-012_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-1-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-1-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-1-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-1-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-2-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-2-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-002_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-002_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-004_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-004_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-005_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-005_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-006_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-006_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-007_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-007_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-008_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-008_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-009_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-009_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-010_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-010_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-011_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-011_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-012_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-012_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-1-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-1-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-1-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-1-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-2-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-2-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-002_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-002_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-003_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-003_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-004_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-004_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-006_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-006_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-007_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-007_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-008_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-008_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-009_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-009_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-010_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-010_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-011_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-011_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-013_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-013_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-1-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-1-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-1-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-1-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-2-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-2-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-002_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-002_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-003_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-003_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-005_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-005_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-006_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-006_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-007_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-007_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-008_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-008_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-009_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-009_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-010_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-010_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-011_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-011_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-012_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-012_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-013_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-013_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-1-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-1-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-1-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-1-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-2-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-2-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-000_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-000_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-001_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-001_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-002_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-002_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-003_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-003_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-004_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-004_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-006_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-006_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-007_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-007_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-008_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-008_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-009_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-009_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-010_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-010_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-011_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-011_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-012_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-012_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-013_0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-013_1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/00551158-fee9-483f-b034-549139a96f58.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/e6f0ca18-546c-4463-96b6-5866fe4d1ff2.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/02cf0df9-37d6-4387-b8eb-c92589264c2a.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/d8caa8b8-6f45-4bcc-89c6-4d4522db14c0.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/02d4e179-912e-4e1f-ba7d-ea37fe87279e.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/ffacd169-0e30-4e43-a4dc-46dd85711ba7.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/037cb117-8521-4670-b3ec-ee0e260c1d62.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/de87abe3-482a-4fc0-ace2-bc436036ddf5.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/04be14b5-4169-4b3e-ab14-224db52c9a39.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/05890a1b-8764-4e9f-9d21-65d292c22e13.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/9aabd1cd-fa2f-4b4d-9ca0-5cd0a02cdeeb.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/06bb9a6e-1dbe-48db-91d7-51d9fc3ffcce.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/6f72ab34-1c37-42d8-81c0-d0e0e573fc80.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/08444afd-90d4-43ac-b3ee-128a5bdef4a2.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/2ad5f996-e825-4c91-bf84-b3a139d7f1e9.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/0910c5f3-7f72-4385-967c-4bf226c9861b.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/0949c622-9067-4f0d-bac2-3f938a1d2ed2.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/bdd7e868-0cb2-4da2-9055-6cf9eae5869b.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/0b332c2c-aa57-4f10-aa55-8e981f2e7c27.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/0bf5e34e-afc6-4447-bbac-67026ce2ad26.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/0c0627be-4a09-4450-a078-1858d3ace532.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/46800ab2-388f-4945-941a-3e18607c9676.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/0c4ee900-3e44-4e37-a199-32d66daa2025.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/10e06d0b-9cef-489c-8468-adad39067d8a.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/0cfd52cc-1f38-4804-bc1f-8da9cc51d969.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/0f7d581d-cea3-4039-9205-732e4cd29293.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/78c1bd53-771f-4809-bbda-39f8dd6395c1.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/131d5c1b-70b3-47d3-b6d6-318045629037.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/80feee6f-d7dd-499c-bd91-cc1e191dd945.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/133dbdd9-23fa-4157-9f9e-fd1728207bd0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/1652f06a-5417-49ef-8949-4854772d9ab7.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/16fbc93d-b294-4001-b4e9-ee2af181415f.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/b64f8cc6-4ef9-4f43-95e6-d508364faff1.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/17d2730b-e56e-4956-973d-5f822490a2c5.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/1926f2f9-4bd7-48eb-9eba-28ec4efb0606.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/482b5f67-1680-4a93-8bb2-2a357dfd8d8d.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/231b3e86-cfc5-4e08-803b-63ed680ab1ad.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/23d88465-65d9-4718-8725-8dbf0a98a5a4.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/24e99232-9434-457f-a9a0-69dd7ecf675f.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/2a08cc2b-5cba-4771-a351-94121c52308c.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/2569011c-3bad-416c-b358-ceaf313507e8.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/25f00ee3-8dfe-42d1-a67e-191fa5c3df4b.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/6be7624f-c0ac-4605-b8ba-56f8b07d7de0.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/26dd326a-a6da-4350-8140-217e9d6a6109.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/3305dc0c-d721-4e82-a5f8-4b8d96eea228.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/29119167-eb9c-4c35-9c63-9c9967f85163.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/cae49b6a-cc4e-49d9-9dd6-d528510bd262.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/2b8385d8-ea7e-4675-9d16-57b905a18d90.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/2bd6fe88-99fa-443d-8e42-bb3de5881213.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/9fb5da56-41a8-4a83-8ae8-338a124ecd03.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/2cd2047f-91af-4632-8cb2-eb2fc4b4c808.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/2ededcf5-1d80-4e2a-9c83-2a31998331ce.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/303cccc1-c674-4d3a-8c89-19ea729fdbef.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/30a6f399-6999-4f04-bb77-651e0214112f.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/bd408633-6ca9-4cb0-9b11-695616496b48.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/314bc3ab-8c73-4517-ae7c-75d21ac61448.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/d09a9154-0280-40f9-9802-2d2fa01c03df.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/33e4e6c9-d245-4174-8303-04019ce20136.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/c4cc6dcd-6301-4d02-942e-8e49475ec3e9.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/34cce4b7-53fe-4ea2-82d8-d31fe7b9abcd.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/2cf84d6e-5212-4da5-8a01-cfdab00a8d1b.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/3820d53e-5b87-4a35-9472-e90498225853.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/d25bd995-1139-4909-84e2-85260a27d46f.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/38e35291-2a94-4261-9b58-80d7b17165c9.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/24a955bb-feff-4ace-a38c-8a6c3e6d4e95.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/3ae6e096-42e4-4ac4-ad79-6f2529925c16.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/3b473fe6-e147-477f-b088-9b8fb042a4f6.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/e8e1bb95-6260-4e60-aa5a-972869fa2791.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/3c41fb45-6400-4818-9066-e03d60d2a895.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/3c8b477a-8eda-407e-9e9f-7540c8808f89.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/e2929240-db44-42fb-be5a-3a397c2fe2ac.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/3e9adf0f-f6c5-4d68-9667-97ea2f82bb51.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/593442ad-94f8-4d68-b986-8cf92e74e76d.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/3ef649e7-c03a-40d1-9a76-653faaf799df.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/3f637e86-6b74-4693-9131-1fe411fc21e5.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/4096cffa-a889-4622-852e-760fc7022d93.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/f22e46af-f72e-4978-a4be-8cfa68e4e85e.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/43226a61-3d61-4acb-afbb-812bf9e97843.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/09934d4f-a1a1-47c6-8127-32247b3144a6.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/443a5dbf-e2fb-4d34-bb09-c21e1437f715.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/447d0e44-5d87-4b7c-8e60-edb111fe1639.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/44ba8515-4a60-42c9-8878-b42e4e34ee15.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/4503db6b-7224-4b81-9971-e7cfa56e10f2.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/c1e18236-0488-4025-b2f6-ce75d13b861f.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/459851f5-fa20-45c4-a6d2-1018b3976fcd.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/4695f96b-c4f5-4bb6-a021-a13b6ceb2883.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/5365f6d2-17e2-4d51-a2c0-535007949cb3.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/46c520e7-7b97-43be-8cc2-21e478b5d844.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/a9c95639-fb97-4d1c-8f8c-53337570c7a7.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/4867e835-c805-463e-9a53-1e677e3d140f.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/4883c564-f950-4a29-9f5f-6f924123cd22.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/0ab2fef6-759e-41a7-a078-c71a09acc829.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/48ebb790-2310-436d-a31c-dba4db034cbc.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/561b20a8-1faa-4be9-8861-7132ce1836ed.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/4b8ebe86-7a0d-474a-abac-b4a45fda5e88.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/b5e1e9ee-eab0-476c-8e35-e9760935942c.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/4c235498-622f-4f74-9ebb-df3fcd3306ab.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/4d78add6-1027-4939-bb51-f99fca7db2ce.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/6f3a4ad7-0949-4a1d-a0ea-1daa4148b9c9.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/4f3d2710-5626-4471-9b21-cd01b8c542d1.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/8fd4ee16-be10-438d-b0e0-b728723961fe.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/4f4e3cf3-b1d9-436b-9477-5f2244c20d6b.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/ced15f67-03ed-48a7-a0a5-24d29ec9a8f9.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/4f891dc4-71c0-4492-a8d1-0c52978e75e1.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/1bc32bd5-c429-490f-8a52-fd52d4e27ff8.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/4ff46fa5-fe9e-4103-8012-451adc14dc43.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/50e23c8a-7ba2-4c9c-9cfb-196c260fa1d5.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/7d9c26a1-69e3-4c28-b794-66c81ee171d5.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/5399e464-1ee6-406b-acab-7826e30f3fd9.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/a8e36d55-5095-485e-a1f1-283c362352f1.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/540a64f4-8111-4df4-abfe-0e62e0f8c7af.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/34dc26b6-237e-4932-a009-8c03f4a4841f.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/5422d945-aa90-443e-bf79-f8ab93ec9411.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/55f7db71-0a18-4b3d-b847-57959b8d2e32.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/582d36c0-0916-4706-9833-4fbc026701f5.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/b54448c1-460d-4ab3-b220-ff4c82e7cea5.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/585c7846-f353-448f-8eb9-1ceafec94555.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/3ed00c80-7b46-4eba-9df7-89de8161150f.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/5a87228a-ec5d-4ffc-951a-1454c9c03bdc.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/511408bd-a212-4261-b4f1-b6c592e44c52.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/5b14a452-ea54-4804-8ec0-3cd916cd8e88.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/1062488e-eb7c-42e0-bb3d-675d88992dc5.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/5cc8ccda-2cf7-4956-b67d-15327bc75ed6.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/8b9fddd0-4a17-4bc3-ac8f-cd6fa21058b2.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/5e27d1c5-cc3f-4aee-8d79-69c09206fa3d.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/5ebcde3b-f0fd-4e5d-b3de-ada8f0b5e03b.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/068d9a7a-2920-44ab-8fe4-b48bec98b837.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/64938ad2-442f-41eb-a544-4d2611e8012f.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/13f72533-c91e-412d-8b43-208e2128cd16.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/65223004-722e-4003-af09-c7769e8a7cb2.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/31fedc14-7e32-4547-a97d-4b76aa8e9ca5.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/659a1775-7001-4add-96e9-292693a26b60.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/ac3f3385-0281-4e45-87fa-e9b4fcf81688.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/6626694b-1394-44af-b76b-791c5bb2428b.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/fd5890f6-f437-47cc-85d6-54745864075c.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/6a202eb6-dd41-4675-a840-99dde2b2efa4.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/23d99912-0b9f-434c-bd90-9ab71e70e6f4.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/6b2e887b-e113-4280-9779-6795c2782c58.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/6b58d90d-2e5e-4b7f-bc01-941f2633de89.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/6cd80be8-c9b3-4ba5-bf17-3ffc9b000743.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/3d2ce9cb-39a0-4b2f-ab96-39ded89a67c3.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/6eb959e1-ee64-4fa6-a20f-8ee4e51f2c6a.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/3a5b5966-b641-42b1-816e-aa0ae465ad66.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/7098fbf7-b8cc-4933-bfec-12a2ac98e38c.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/736def6e-bb5e-445b-b2a6-7b8670c7cbb3.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/712e9223-4dd2-4ff6-887b-4182fd243d78.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/fa57193f-5654-4b9d-8a9a-67211e7b5aff.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/7256a95e-24b8-40fd-bd8e-73a1572c3f93.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/aaa4ac00-3da2-468d-b2c3-f69b0ccaff2c.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/73f89439-c4e3-4263-8fa7-229cde98aa99.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/74ec3510-583d-4a76-ac69-38480fbf1387.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/2a07a1e9-8033-492a-80de-8269a94abc85.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/74efd362-4cc1-4b9f-8032-e5bc45c2af5c.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/86584eea-2d90-4ab5-916a-0d29ec4edcde.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/756ac796-ce43-4ddb-989e-13bf07cbe3b7.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/b6040e31-b183-4520-ad2a-966612c60f86.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/77193249-7e2a-4652-ab6d-a463350ca226.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/ec96a180-1c0f-4bd2-8b21-6b31eac39ef5.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/784a91b2-4d24-461f-8bd3-2f02b9bc193f.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/79abd239-5eed-4195-9fa8-d729daa874ca.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/835489e2-b29b-426c-b4c9-3bb9f8eb6195.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/b0a9ad98-2e2c-4dbb-b1e6-c93a4f6f92d4.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/83c67f2a-0f73-4238-a5a8-8ebb839ed99a.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/83d0a033-466c-463a-bb8c-be0f2953e9b2.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/8424ecdd-8857-4764-9fd0-d4bfa440c128.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/acb66482-748f-487f-bcd3-a400fb9b70ba.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/86b3bab1-c5f6-48b2-b810-c3ec55c32314.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/a97fe010-f776-4ab4-88f5-4d0cceecc7ba.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/872838c5-47c6-4f78-b105-0a72b5459f16.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/8c179a21-be6f-4db8-a9b0-9afeb5c36b1c.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/8ded6c98-85ea-4858-a66d-4fc8caecb7c5.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/9340b854-025c-40da-9387-385d38433bef.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/877b36cd-07f9-425c-be1d-5e1925dc2f4f.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/93f03304-5609-4f4f-9ac8-a46e7b883960.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/bfa32df6-16ba-406a-be3c-7e5248d9cd0c.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/97e96ecf-e51b-4a09-ab11-3c164196747f.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/9b8ebc2e-a8a3-458a-a840-54c7a5ad0119.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/992473c3-df0a-4c72-8134-f2aac9e7b0f6.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/57f56121-cdc4-4c29-8fcd-9d4f872c98e7.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/9d86ab77-de0b-433d-9b0e-5aba283309a6.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/da8f3c98-de95-4be0-88e7-de5e7ef90649.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/9eb202c8-c61a-4918-beb9-b0f03739b0b3.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/9fd0753f-c607-4d49-82d1-40bda27e014f.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/a0bd6a5f-784d-4f0a-9d66-10f4b80c8d3e.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/a1df3af1-a3e7-4521-a085-e4dc3cd1cc57.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/a48324ae-7c1a-489e-b3c4-93d12267f88d.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/c689a3e0-d0ad-49e7-b5d9-66ff7e34fd2a.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/a4e02797-2c5d-4860-aaa4-c20c43be7500.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/25bf9c17-099b-437e-ae0f-8226c7c0faa9.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/a5c582f5-3627-44be-b574-a4e4287376e0.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/59067ba8-2bfe-4bc8-b028-90ccb1acf5f6.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/a914da74-9752-42be-913b-86514eb4b589.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/a9fcaf04-0c1f-4b0f-bb5b-ede9da96180f.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/6514f807-0a12-4338-a3be-9f0a2bc22e7e.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/aacb651b-9a3d-42a1-9fc0-9187dc8cded7.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/adc533a7-970b-4c5b-a037-2181531a35d6.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/304df45b-b744-427e-ba79-9f57a2313776.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/ae146d94-5e69-4970-b175-d7c8c4f9a9cd.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/ed82be6d-7c5d-42fd-bdd1-8ad20076f480.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/ae57e1fb-c42f-4401-93a1-76d4591b5fad.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/b0283997-7931-476d-a92f-d7569f6ea34c.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/b0404967-c93e-4900-beeb-26717ae13c4a.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/b1878d2b-4908-4342-b395-864aafa5c54b.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/e26d7a9a-f8fe-4092-b3fc-0647b34c984e.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/b26e3c78-a6be-4ad1-8992-c3245b1a6f9b.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/b2af59e9-60e3-4d97-8c72-c7ba092113a3.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/b2e1bf3c-2c36-4fb5-9db7-c10a29563a37.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/da1a9ce5-0032-413c-ae26-2a5d27efe7ef.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/b3a41d58-f375-4882-bebb-57f72322d016.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/cc6e472b-7f6f-4f34-8fb4-c2c15913cda5.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/b4905122-7d97-4561-a14a-b8a9a5cd9227.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/e3e6fe61-afa3-4a6b-810b-c87d599f5868.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/b534423c-2024-4234-9886-f49e17dd96e7.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/b62bf889-da3c-495a-8707-f3bde73efe92.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/c7fb79d2-9335-4d86-afaf-abc537394cbf.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/b6680d31-8552-4111-bc39-0867c06bf94a.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/b6b94f21-ef4b-4425-9c7e-ca2b574b0add.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/7cf3da78-a825-4e5e-8210-d6ebc3e7ab6b.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/b6c637bf-5fdd-4e68-b4d8-b403bf611f3b.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/a010517f-6ee1-4924-8385-1f5fb879e08f.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/b9e19bda-3793-4cf4-928a-fc43642b32e6.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/bab6c393-692c-4681-ac0d-76c0d9dabea6.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/09ea0d24-9412-4f0e-bbe8-9227687b9cb5.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/bc1c640a-87d8-47af-9fcc-8681acac7b27.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/dbc0975e-e9f2-4db8-a0df-f16711606165.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/bc25ed87-50a7-4aa8-b743-505450677b00.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/bc7155ac-18c9-4335-9ec2-c8762d37a057.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/a7c14f96-6b0e-4065-96e7-04058c0ab1c0.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/bcf2f87a-de7f-4fb9-aa6c-0b4f6bff921e.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/9d99fa4f-ca9e-4e19-97b2-7cbef502b73c.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/bdd0e8f8-3d35-48e8-b735-66eaf2ece2e6.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/c07de7e7-263b-4b82-ab04-e31bec40b524.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/bec6c0cf-40f6-446d-85b3-c692d3322a51.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/a57a3a56-8509-4e98-b438-0848e6fe091a.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/bf19069d-e044-4f76-93f7-f2ecd3214e47.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/a4128c6e-4a40-4d2d-aa1d-597e70e718fb.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/c1274e01-2cc7-432f-b244-65ffe8269656.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/c3f536d6-a04a-4651-b3f9-dd2c22593f7f.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/c5b7d67e-7260-4f08-a0e9-4d31ce9bbecf.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/60a3bc3c-099b-4090-9f6f-253c963e9fa4.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/c65d71af-ffb3-4992-b954-c59ae48615b8.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/22672fe7-40d8-425f-a465-b19af092cb2f.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/c67852a2-30a9-4fd6-a4c2-83870a658998.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/07ffe5a8-f817-4087-a7ce-da19516b9f55.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/c705eece-67d8-4017-a4d9-a7f1337f67be.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/c78c38cc-7b61-4dc4-820d-0a5b684ef52e.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/a8efadec-4461-4a34-bf20-801ba7a545aa.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/c86a3385-407e-40d5-b519-1927406d5b09.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/c948f136-416f-447e-8152-54a1cd1d1329.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/c954e153-d3e9-4488-869f-d00cfdfac5ee.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/e81bb7c7-aae0-4280-86e7-2c15fba205f1.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/ca42ca0c-3829-4e43-88c9-db4939cfa982.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/f87af019-34ee-428d-8d11-dc77a2c41be5.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/cba7528d-ae17-4a37-b388-6f86e1a590f4.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/cbf4ce9c-f8d8-4fb7-a197-15bb9847df04.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/f7c89d72-ca8e-46a9-ab49-b7775dfbf37f.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/cc1767ec-77db-49ac-8c9e-f48d1fb7b071.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/cc8a495d-330d-447d-8a80-a8a6ecc409c5.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/ccbcb114-7f73-43d1-904a-3a7ae660c531.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/ce1d1d6f-38f2-48bf-98bd-6e091c7ca5b8.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/38018b98-4f03-43f5-8fa2-ba739a1edd7e.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/ce282e51-7067-4293-ad26-24dbba172a08.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/cfc9c8e8-cbe1-49f0-9afa-ead7f9455a2e.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/d04c4883-0d15-4bd8-918e-065db19bf145.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/d1e5672d-df91-4316-984c-48550c5d1931.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/d271a24f-efe8-424d-8fd5-f6b3756ba4ca.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/ab01298b-f04f-4b12-a256-efd1122f5fdc.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/d2d99405-7927-47fc-be4c-a7591b339a6c.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/d3424d31-0502-4623-996e-f0194e5085ce.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/8c3c7599-0cbd-4ba8-9635-23eb6bb965b1.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/d356fc84-a8c0-4d0f-a3ed-c7ff5ccd276c.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/d3cc3323-51af-4882-ae12-49e7384b746d.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/45353fcd-59ea-4b15-93f7-8591adfa7af8.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/d477e49c-37cc-4e71-a8e6-6633f044260a.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/063825e2-f4c7-4047-8958-7cc0a8cf32fb.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/d4b1e48b-bf9c-4f44-9ddb-3af8eb4ea464.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/d6b64759-26b7-45b1-bf8e-5c0d98611e0d.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/815d0dc2-5aa1-43be-8316-88d24c4c8c81.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/d6d6229a-2345-4fe7-b2c5-109fcdb37c39.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/d7667903-7149-4f2f-9c15-d8a4b5f4d347.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/d83f338d-dde3-494b-9bea-cae511e3517c.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/112c76ba-0409-4ba9-b485-19500003a60b.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/d953cdee-08b5-45fb-908b-2644220b0f07.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/d982d2b5-4bc0-4ae9-a516-f29c2848d64b.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/da439e8c-3b74-4371-9657-0736d826c7d1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/daf3d823-b7f1-4584-acf3-90b9d880332c.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/db7d3f03-1f7f-43bf-8125-f7c2d345fca2.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/0ae22f69-b9e4-43c5-8c95-53360c0d4b35.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/de069910-6085-45a9-ba96-64bc7aeead77.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/de325534-3fd3-480a-9eb8-eb47960a753a.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/61feefa4-f5ec-4a99-b8fc-19deefa8d1cd.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/dea4c704-5739-423f-a15c-f31a4a93d64f.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/90356864-a48e-4d0a-8ca3-8443524ac414.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/debc6a94-9bf1-46d7-b0b0-0c55cb367f12.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/df991b42-ed8e-4f2c-bf0c-aa7522f147b6.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/901fd5e9-a0d6-4774-bafe-4b3f6dedf006.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/e0555145-9446-4ebe-965b-f46b458e5681.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/dc826aa1-4d2f-49f0-9c78-cec45b77f49d.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/e19c5f10-5f93-4431-9bf3-4f92512eab6e.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/60b5e390-c956-4e7b-9a3c-3db0c2481d5b.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/e353b4cb-ea6d-4fc4-91ec-c19582e9507c.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/e4683def-8d1d-472b-a5ab-bb3885c0c98e.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/e5e84f9e-28da-4cf4-bcba-c9145fe39b07.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/2919b90c-64b6-4961-b2a9-edea29cda27b.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/e6554fee-c6fd-49ee-8c32-b4932fc701da.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/e6b45405-cd9f-4c6e-a9f1-6ec953747c65.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/e88c9ad1-ec37-4fcd-b086-862e1e7ce8fd.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/7c4fcaae-44c8-429b-989c-d17fd07734f9.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/e916a5ca-287c-4cbe-93ca-22b439c5ffab.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/e9ee330d-dfca-440e-8b8c-0a3b4e8c8730.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/ea1ba124-9cb3-4427-969a-bacd47e7d920.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/eaba6ebe-f0df-4918-aee5-ef4e3ffedcf0.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/67cce3d0-3c80-44a0-9193-18d00f9712af.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/ed4a2db1-ab2e-4b36-8d6f-5b7961501475.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/866b2bda-fdfd-4cde-b6a5-8dc396d7bef3.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/ed4a318e-f69a-4fb9-9853-9746f01c6015.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/ee4e512b-4982-49b6-9c71-31984b58e1d0.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/eef25cf9-afd0-43b1-b9c5-fbd997bd5fe0.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/ceb65e4a-c59b-4580-9360-ba1fd600846a.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/efe68984-8dbc-417e-924c-87c6860c58ef.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/e61a092f-1717-4672-943b-71f061ce2717.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/f165bf01-9e9d-4afb-87d9-4a26318140cf.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/f1f21925-3e22-4dd1-b53b-bb52bcf26c2b.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/7609a3df-963d-4c1a-ae2d-3bc6bc7a05b9.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/f2846992-402e-4f50-b74e-91d6f3b8994d.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/5568e31d-9d55-4435-8cef-ef8b6fc8d2d8.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/f4227a80-f62d-4daf-83d0-c7b5500088ee.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/f43c313b-8a7b-467b-8442-fc5bcb8b4388.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/a7755ce2-9f05-455b-8c8f-e3cf803d03de.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/f496a454-5cf5-4b6b-aedb-1dad58c85035.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/cdb09691-5c2a-4bb4-8ae8-01fd865ba3e6.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/f4af8fb2-6270-4b75-8b24-d0e49daebac1.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/f5c16d2f-ebc5-4617-9b96-971696af7c52.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/9a57d7b4-722a-4f77-9f5f-635092154ec3.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/f60c40a1-750b-41ac-9d24-2d7ffce44166.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/f188d7ad-cd46-4342-ae70-cc2d5abb87d9.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/f6c3bd48-fe1e-4fe3-bf58-13422b5b4a99.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/f6ca6bd3-543f-4779-8367-c5c883f04b95.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/sprites/fad5eec2-5fd5-412f-9abb-987a3087dc54.png +0 -0
- /ksaa-2025.7.5.0/kotonebot/kaa/sprites/7ceec350-8f7d-4786-a477-2f0ea6b81748.png → /ksaa-2025.7.9.0/kotonebot/kaa/sprites/ffaffa14-22dd-4397-8dc1-7b94fd4cf06b.png +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/actions/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/actions/commu.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/actions/loading.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/actions/scenes.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/actions/stats.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/clear_logs.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/daily/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/produce/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/tasks/produce/p_drink.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/util/paths.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/kaa/util/trace.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/logging/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/logging/log.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/primitives/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/primitives/geometry.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/primitives/visual.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/tools/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/tools/mirror.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/ui/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/ui/file_host/sensio.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/ui/file_host/tmp_send.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/ui/pushkit/__init__.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/ui/pushkit/image_host.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/ui/pushkit/protocol.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/ui/pushkit/wxpusher.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/ui/user.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/kotonebot/util.py +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/ksaa.egg-info/dependency_links.txt +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/ksaa.egg-info/entry_points.txt +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/ksaa.egg-info/requires.txt +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/ksaa.egg-info/top_level.txt +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/pyproject.toml +0 -0
- {ksaa-2025.7.5.0 → ksaa-2025.7.9.0}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ksaa
|
|
3
|
-
Version: 2025.7.
|
|
3
|
+
Version: 2025.7.9.0
|
|
4
4
|
Summary: Kotones Auto Assistant(kaa) is a script for game 'Gakuen Idol M@ster' that automates the dailies and produces.
|
|
5
5
|
Requires-Python: ~=3.10
|
|
6
6
|
Description-Content-Type: text/markdown
|
|
@@ -1,5 +1,54 @@
|
|
|
1
1
|
# 更新日志
|
|
2
2
|
## kaa
|
|
3
|
+
### v2025.7.9.0
|
|
4
|
+
脚本:
|
|
5
|
+
* [新增] 配置中支持储存多个培育方案并支持来回切换(#41e7c8b)
|
|
6
|
+
* [重构] 将配置数据中的常量移动到单独一个文件中(#4e4b91d)
|
|
7
|
+
* [重构] 配置迁移代码移动到单独的模块(#c7d5cd8)
|
|
8
|
+
* [重构] 将配置文件类从 kotonebot.kaa.common 中移动到专门的模块 kotonebot.kaa.config(#e0549c6)
|
|
9
|
+
* [修复] 尝试修复周数 OCR 失败问题(#e548518)
|
|
10
|
+
* [修复] 修复某些情况下培育会卡在初始饮料技能卡二选一上(#0651d94)
|
|
11
|
+
* [修复] 修复部分日志缺失的问题(#497561c)
|
|
12
|
+
|
|
13
|
+
* [重构] 配置迁移代码移动到单独的模块(#c7d5cd8)
|
|
14
|
+
* [重构] 将配置文件类从 kotonebot.kaa.common 中移动到专门的模块 kotonebot.kaa.config(#e0549c6)
|
|
15
|
+
* [修复] 尝试修复周数 OCR 失败问题(#e548518)
|
|
16
|
+
* [修复] 修复某些情况下培育会卡在初始饮料技能卡二选一上(#0651d94)
|
|
17
|
+
* [修复] 修复部分日志缺失的问题(#497561c)
|
|
18
|
+
|
|
19
|
+
* [修复] 修复部分日志缺失的问题(#497561c)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
界面:
|
|
23
|
+
* [新增] 为新的培育方案增加 UI(#68b0cbd)
|
|
24
|
+
* [新增] 新增快速功能启停(#c3d2401)
|
|
25
|
+
* [修复] 修复修改设置后需要重启才能生效的问题(#6dd2b35)
|
|
26
|
+
|
|
27
|
+
框架:
|
|
28
|
+
* [新增] ContextOcr 类支持设置 OCR 语言(#a0d3c31)
|
|
29
|
+
|
|
30
|
+
其他:
|
|
31
|
+
* [单测] 为新的培育方案编写单元测试(#ca83fec)
|
|
32
|
+
* [其他] v5 到 v6 配置迁移脚本(#ef725b4)
|
|
33
|
+
|
|
34
|
+
### v2025.7.7.0
|
|
35
|
+
脚本:
|
|
36
|
+
* [修复] 修复 AP 商店购买时点击坐标偏移问题(#b8b56bb)
|
|
37
|
+
* [修复] 修复商店购买时无法识别部分偶像碎片的问题(#353fa3f)
|
|
38
|
+
* [修复] 修复 DMM 版购买时无法进入 AP 商店的问题(#f5a4e50)
|
|
39
|
+
* [修复] 修复商店购买有几率卡在确认购买对话框上(#cf1605d)
|
|
40
|
+
* [修复] 修复某些情况下无法自动关闭领取活动费后的弹窗(#3b3aac6)
|
|
41
|
+
* [新增] 金币商店可选使用每日刷新次数(#68dbc48)
|
|
42
|
+
|
|
43
|
+
界面:
|
|
44
|
+
* [新增] UI 支持向局域网开放(#9b37bcf)
|
|
45
|
+
|
|
46
|
+
框架:
|
|
47
|
+
* [新增] 新增目标截图间隔功能(#c8fbf80)
|
|
48
|
+
|
|
49
|
+
其他:
|
|
50
|
+
* [其他] 删除一些无用 Sprite 资源(#03aa2b5)
|
|
51
|
+
|
|
3
52
|
### v2025.7.5.0
|
|
4
53
|
脚本:
|
|
5
54
|
* [修复] 修复有几率无法识别到进行中培育的问题(#50d1403)
|
|
@@ -145,6 +145,18 @@ class KotoneBot:
|
|
|
145
145
|
"""
|
|
146
146
|
raise NotImplementedError('Implement `_create_device` before using Kotonebot.')
|
|
147
147
|
|
|
148
|
+
def _on_init_context(self) -> None:
|
|
149
|
+
"""
|
|
150
|
+
初始化 Context 的钩子方法。子类可以重写此方法来自定义初始化逻辑。
|
|
151
|
+
默认实现调用 init_context 而不传入 target_screenshot_interval。
|
|
152
|
+
"""
|
|
153
|
+
d = self._on_create_device()
|
|
154
|
+
init_context(
|
|
155
|
+
config_path=self.config_path,
|
|
156
|
+
config_type=self.config_type,
|
|
157
|
+
target_device=d
|
|
158
|
+
)
|
|
159
|
+
|
|
148
160
|
def _on_after_init_context(self):
|
|
149
161
|
"""
|
|
150
162
|
抽象方法,在 init_context() 被调用后立即执行。
|
|
@@ -155,8 +167,7 @@ class KotoneBot:
|
|
|
155
167
|
"""
|
|
156
168
|
按优先级顺序运行所有任务。
|
|
157
169
|
"""
|
|
158
|
-
|
|
159
|
-
init_context(config_path=self.config_path, config_type=self.config_type, target_device=d)
|
|
170
|
+
self._on_init_context()
|
|
160
171
|
self._on_after_init_context()
|
|
161
172
|
vars.flow.clear_interrupt()
|
|
162
173
|
|
|
@@ -27,6 +27,7 @@ from cv2.typing import MatLike
|
|
|
27
27
|
|
|
28
28
|
from kotonebot.client.device import Device, AndroidDevice, WindowsDevice
|
|
29
29
|
from kotonebot.backend.flow_controller import FlowController
|
|
30
|
+
from kotonebot.util import Interval
|
|
30
31
|
import kotonebot.backend.image as raw_image
|
|
31
32
|
from kotonebot.backend.image import (
|
|
32
33
|
TemplateMatchResult,
|
|
@@ -284,11 +285,17 @@ class ContextOcr:
|
|
|
284
285
|
self.context = context
|
|
285
286
|
self.__engine = jp()
|
|
286
287
|
|
|
287
|
-
def
|
|
288
|
+
def _get_engine(self, lang: OcrLanguage | None = None) -> Ocr:
|
|
289
|
+
"""获取指定语言的OCR引擎,如果lang为None则使用默认引擎。"""
|
|
290
|
+
return self.__engine if lang is None else self.raw(lang)
|
|
291
|
+
|
|
292
|
+
def raw(self, lang: OcrLanguage | None = None) -> Ocr:
|
|
288
293
|
"""
|
|
289
294
|
返回 `kotonebot.backend.ocr` 中的 Ocr 对象。\n
|
|
290
295
|
Ocr 对象与此对象(ContextOcr)的区别是,此对象会自动截图,而 Ocr 对象需要手动传入图像参数。
|
|
291
296
|
"""
|
|
297
|
+
if lang is None:
|
|
298
|
+
lang = 'jp'
|
|
292
299
|
match lang:
|
|
293
300
|
case 'jp':
|
|
294
301
|
return jp()
|
|
@@ -300,9 +307,11 @@ class ContextOcr:
|
|
|
300
307
|
def ocr(
|
|
301
308
|
self,
|
|
302
309
|
rect: Rect | None = None,
|
|
310
|
+
lang: OcrLanguage | None = None,
|
|
303
311
|
) -> OcrResultList:
|
|
304
312
|
"""OCR 当前设备画面或指定图像。"""
|
|
305
|
-
|
|
313
|
+
engine = self._get_engine(lang)
|
|
314
|
+
return engine.ocr(ContextStackVars.ensure_current().screenshot, rect=rect)
|
|
306
315
|
|
|
307
316
|
def find(
|
|
308
317
|
self,
|
|
@@ -310,9 +319,11 @@ class ContextOcr:
|
|
|
310
319
|
*,
|
|
311
320
|
hint: HintBox | None = None,
|
|
312
321
|
rect: Rect | None = None,
|
|
322
|
+
lang: OcrLanguage | None = None,
|
|
313
323
|
) -> OcrResult | None:
|
|
314
324
|
"""检查当前设备画面是否包含指定文本。"""
|
|
315
|
-
|
|
325
|
+
engine = self._get_engine(lang)
|
|
326
|
+
ret = engine.find(
|
|
316
327
|
ContextStackVars.ensure_current().screenshot,
|
|
317
328
|
pattern,
|
|
318
329
|
hint=hint,
|
|
@@ -327,9 +338,10 @@ class ContextOcr:
|
|
|
327
338
|
*,
|
|
328
339
|
hint: HintBox | None = None,
|
|
329
340
|
rect: Rect | None = None,
|
|
330
|
-
|
|
341
|
+
lang: OcrLanguage | None = None,
|
|
331
342
|
) -> list[OcrResult | None]:
|
|
332
|
-
|
|
343
|
+
engine = self._get_engine(lang)
|
|
344
|
+
return engine.find_all(
|
|
333
345
|
ContextStackVars.ensure_current().screenshot,
|
|
334
346
|
list(patterns),
|
|
335
347
|
hint=hint,
|
|
@@ -342,6 +354,7 @@ class ContextOcr:
|
|
|
342
354
|
*,
|
|
343
355
|
rect: Rect | None = None,
|
|
344
356
|
hint: HintBox | None = None,
|
|
357
|
+
lang: OcrLanguage | None = None,
|
|
345
358
|
) -> OcrResult:
|
|
346
359
|
|
|
347
360
|
"""
|
|
@@ -349,7 +362,8 @@ class ContextOcr:
|
|
|
349
362
|
|
|
350
363
|
与 `find()` 的区别在于,`expect()` 未找到时会抛出异常。
|
|
351
364
|
"""
|
|
352
|
-
|
|
365
|
+
engine = self._get_engine(lang)
|
|
366
|
+
ret = engine.expect(ContextStackVars.ensure_current().screenshot, pattern, rect=rect, hint=hint)
|
|
353
367
|
self.context.device.last_find = ret.original_rect if ret else None
|
|
354
368
|
return ret
|
|
355
369
|
|
|
@@ -718,8 +732,20 @@ class Forwarded:
|
|
|
718
732
|
|
|
719
733
|
T_Device = TypeVar('T_Device', bound=Device)
|
|
720
734
|
class ContextDevice(Generic[T_Device], Device):
|
|
721
|
-
def __init__(self, device: T_Device):
|
|
735
|
+
def __init__(self, device: T_Device, target_screenshot_interval: float | None = None):
|
|
736
|
+
"""
|
|
737
|
+
:param device: 目标设备。
|
|
738
|
+
:param target_screenshot_interval: 见 `ContextDevice.target_screenshot_interval`。
|
|
739
|
+
"""
|
|
722
740
|
self._device = device
|
|
741
|
+
self.target_screenshot_interval: float | None = target_screenshot_interval
|
|
742
|
+
"""
|
|
743
|
+
目标截图间隔,可用于限制截图速度。若两次截图实际间隔小于该值,则会自动等待。
|
|
744
|
+
为 None 时不限制截图速度。
|
|
745
|
+
"""
|
|
746
|
+
self._screenshot_interval: Interval | None = None
|
|
747
|
+
if self.target_screenshot_interval is not None:
|
|
748
|
+
self._screenshot_interval = Interval(self.target_screenshot_interval)
|
|
723
749
|
|
|
724
750
|
def screenshot(self, *, force: bool = False):
|
|
725
751
|
"""
|
|
@@ -734,6 +760,9 @@ class ContextDevice(Generic[T_Device], Device):
|
|
|
734
760
|
img = current._inherit_screenshot
|
|
735
761
|
current._inherit_screenshot = None
|
|
736
762
|
else:
|
|
763
|
+
if self._screenshot_interval is not None:
|
|
764
|
+
self._screenshot_interval.wait()
|
|
765
|
+
|
|
737
766
|
if next_wait == 'screenshot':
|
|
738
767
|
delta = time.time() - last_screenshot_time
|
|
739
768
|
if delta < next_wait_time:
|
|
@@ -780,7 +809,8 @@ class Context(Generic[T]):
|
|
|
780
809
|
self,
|
|
781
810
|
config_path: str,
|
|
782
811
|
config_type: Type[T],
|
|
783
|
-
device: Device
|
|
812
|
+
device: Device,
|
|
813
|
+
target_screenshot_interval: float | None = None
|
|
784
814
|
):
|
|
785
815
|
self.__ocr = ContextOcr(self)
|
|
786
816
|
self.__image = ContextImage(self)
|
|
@@ -788,7 +818,7 @@ class Context(Generic[T]):
|
|
|
788
818
|
self.__vars = ContextGlobalVars()
|
|
789
819
|
self.__debug = ContextDebug(self)
|
|
790
820
|
self.__config = ContextConfig[T](self, config_path, config_type)
|
|
791
|
-
self.__device = ContextDevice(device)
|
|
821
|
+
self.__device = ContextDevice(device, target_screenshot_interval)
|
|
792
822
|
|
|
793
823
|
def inject(
|
|
794
824
|
self,
|
|
@@ -900,6 +930,7 @@ def init_context(
|
|
|
900
930
|
config_type: Type[T] = dict[str, Any],
|
|
901
931
|
force: bool = False,
|
|
902
932
|
target_device: Device,
|
|
933
|
+
target_screenshot_interval: float | None = None,
|
|
903
934
|
):
|
|
904
935
|
"""
|
|
905
936
|
初始化 Context 模块。
|
|
@@ -911,6 +942,7 @@ def init_context(
|
|
|
911
942
|
:param force: 是否强制重新初始化。
|
|
912
943
|
若为 `True`,则忽略已存在的 Context 实例,并重新创建一个新的实例。
|
|
913
944
|
:param target_device: 目标设备
|
|
945
|
+
:param target_screenshot_interval: 见 `ContextDevice.target_screenshot_interval`。
|
|
914
946
|
"""
|
|
915
947
|
global _c, device, ocr, image, color, vars, debug, config
|
|
916
948
|
if _c is not None and not force:
|
|
@@ -919,6 +951,7 @@ def init_context(
|
|
|
919
951
|
config_path=config_path,
|
|
920
952
|
config_type=config_type,
|
|
921
953
|
device=target_device,
|
|
954
|
+
target_screenshot_interval=target_screenshot_interval,
|
|
922
955
|
)
|
|
923
956
|
device._FORWARD_getter = lambda: _c.device # type: ignore
|
|
924
957
|
ocr._FORWARD_getter = lambda: _c.ocr # type: ignore
|
|
@@ -50,6 +50,8 @@ class BackendConfig(ConfigBaseModel):
|
|
|
50
50
|
"""Windows 截图方式的 AutoHotkey 可执行文件路径,为 None 时使用默认路径"""
|
|
51
51
|
mumu_background_mode: bool = False
|
|
52
52
|
"""MuMu12 模拟器后台保活模式"""
|
|
53
|
+
target_screenshot_interval: float | None = None
|
|
54
|
+
"""最小截图间隔,单位为秒。为 None 时不限制截图速度。"""
|
|
53
55
|
|
|
54
56
|
class PushConfig(ConfigBaseModel):
|
|
55
57
|
"""推送配置。"""
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import json
|
|
3
|
+
import shutil
|
|
4
|
+
from importlib import resources
|
|
5
|
+
from typing import Literal, TypeVar, Any, Sequence
|
|
6
|
+
from typing_extensions import assert_never
|
|
7
|
+
from enum import IntEnum, Enum
|
|
8
|
+
|
|
9
|
+
from pydantic import BaseModel, ConfigDict
|
|
10
|
+
|
|
11
|
+
# TODO: from kotonebot import config (context) 会和 kotonebot.config 冲突
|
|
12
|
+
from kotonebot import logging
|
|
13
|
+
from kotonebot.backend.context import config
|
|
14
|
+
from kotonebot.kaa.config.schema import BaseConfig
|
|
15
|
+
|
|
16
|
+
logger = logging.getLogger(__name__)
|
|
17
|
+
|
|
18
|
+
def sprite_path(path: str) -> str:
|
|
19
|
+
standalone = os.path.join('kotonebot/kaa/sprites', path)
|
|
20
|
+
if os.path.exists(standalone):
|
|
21
|
+
return standalone
|
|
22
|
+
return str(resources.files('kotonebot.kaa.sprites') / path)
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
from .schema import (
|
|
2
|
+
BaseConfig,
|
|
3
|
+
PurchaseConfig,
|
|
4
|
+
ActivityFundsConfig,
|
|
5
|
+
PresentsConfig,
|
|
6
|
+
AssignmentConfig,
|
|
7
|
+
ContestConfig,
|
|
8
|
+
ProduceConfig,
|
|
9
|
+
MissionRewardConfig,
|
|
10
|
+
ClubRewardConfig,
|
|
11
|
+
UpgradeSupportCardConfig,
|
|
12
|
+
CapsuleToysConfig,
|
|
13
|
+
TraceConfig,
|
|
14
|
+
StartGameConfig,
|
|
15
|
+
EndGameConfig,
|
|
16
|
+
MiscConfig,
|
|
17
|
+
conf,
|
|
18
|
+
)
|
|
19
|
+
from .const import (
|
|
20
|
+
ConfigEnum,
|
|
21
|
+
Priority,
|
|
22
|
+
APShopItems,
|
|
23
|
+
DailyMoneyShopItems,
|
|
24
|
+
ProduceAction,
|
|
25
|
+
RecommendCardDetectionMode,
|
|
26
|
+
)
|
|
27
|
+
|
|
28
|
+
# 配置升级逻辑
|
|
29
|
+
from .upgrade import upgrade_config
|
|
30
|
+
from .migrations import MIGRATION_REGISTRY, LATEST_VERSION
|
|
31
|
+
|
|
32
|
+
__all__ = [
|
|
33
|
+
# schema 导出
|
|
34
|
+
"BaseConfig",
|
|
35
|
+
"PurchaseConfig",
|
|
36
|
+
"ActivityFundsConfig",
|
|
37
|
+
"PresentsConfig",
|
|
38
|
+
"AssignmentConfig",
|
|
39
|
+
"ContestConfig",
|
|
40
|
+
"ProduceConfig",
|
|
41
|
+
"MissionRewardConfig",
|
|
42
|
+
"ClubRewardConfig",
|
|
43
|
+
"UpgradeSupportCardConfig",
|
|
44
|
+
"CapsuleToysConfig",
|
|
45
|
+
"TraceConfig",
|
|
46
|
+
"StartGameConfig",
|
|
47
|
+
"EndGameConfig",
|
|
48
|
+
"MiscConfig",
|
|
49
|
+
"conf",
|
|
50
|
+
# const 导出
|
|
51
|
+
"ConfigEnum",
|
|
52
|
+
"Priority",
|
|
53
|
+
"APShopItems",
|
|
54
|
+
"DailyMoneyShopItems",
|
|
55
|
+
"ProduceAction",
|
|
56
|
+
"RecommendCardDetectionMode",
|
|
57
|
+
# upgrade 导出
|
|
58
|
+
"upgrade_config",
|
|
59
|
+
"migrations",
|
|
60
|
+
"MIGRATION_REGISTRY",
|
|
61
|
+
"LATEST_VERSION",
|
|
62
|
+
]
|
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
from enum import IntEnum, Enum
|
|
2
|
+
from typing_extensions import assert_never
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class ConfigEnum(Enum):
|
|
6
|
+
def display(self) -> str:
|
|
7
|
+
return self.value[1]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Priority(IntEnum):
|
|
11
|
+
"""
|
|
12
|
+
任务优先级。数字越大,优先级越高,越先执行。
|
|
13
|
+
"""
|
|
14
|
+
START_GAME = 1
|
|
15
|
+
DEFAULT = 0
|
|
16
|
+
CLAIM_MISSION_REWARD = -1
|
|
17
|
+
END_GAME = -2
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class APShopItems(IntEnum):
|
|
21
|
+
PRODUCE_PT_UP = 0
|
|
22
|
+
"""获取支援强化 Pt 提升"""
|
|
23
|
+
PRODUCE_NOTE_UP = 1
|
|
24
|
+
"""获取笔记数提升"""
|
|
25
|
+
RECHALLENGE = 2
|
|
26
|
+
"""再挑战券"""
|
|
27
|
+
REGENERATE_MEMORY = 3
|
|
28
|
+
"""回忆再生成券"""
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class DailyMoneyShopItems(IntEnum):
|
|
32
|
+
"""日常商店物品"""
|
|
33
|
+
Recommendations = -1
|
|
34
|
+
"""所有推荐商品"""
|
|
35
|
+
LessonNote = 0
|
|
36
|
+
"""レッスンノート"""
|
|
37
|
+
VeteranNote = 1
|
|
38
|
+
"""ベテランノート"""
|
|
39
|
+
SupportEnhancementPt = 2
|
|
40
|
+
"""サポート強化Pt 支援强化Pt"""
|
|
41
|
+
SenseNoteVocal = 3
|
|
42
|
+
"""センスノート(ボーカル)感性笔记(声乐)"""
|
|
43
|
+
SenseNoteDance = 4
|
|
44
|
+
"""センスノート(ダンス)感性笔记(舞蹈)"""
|
|
45
|
+
SenseNoteVisual = 5
|
|
46
|
+
"""センスノート(ビジュアル)感性笔记(形象)"""
|
|
47
|
+
LogicNoteVocal = 6
|
|
48
|
+
"""ロジックノート(ボーカル)理性笔记(声乐)"""
|
|
49
|
+
LogicNoteDance = 7
|
|
50
|
+
"""ロジックノート(ダンス)理性笔记(舞蹈)"""
|
|
51
|
+
LogicNoteVisual = 8
|
|
52
|
+
"""ロジックノート(ビジュアル)理性笔记(形象)"""
|
|
53
|
+
AnomalyNoteVocal = 9
|
|
54
|
+
"""アノマリーノート(ボーカル)非凡笔记(声乐)"""
|
|
55
|
+
AnomalyNoteDance = 10
|
|
56
|
+
"""アノマリーノート(ダンス)非凡笔记(舞蹈)"""
|
|
57
|
+
AnomalyNoteVisual = 11
|
|
58
|
+
"""アノマリーノート(ビジュアル)非凡笔记(形象)"""
|
|
59
|
+
RechallengeTicket = 12
|
|
60
|
+
"""再挑戦チケット 重新挑战券"""
|
|
61
|
+
RecordKey = 13
|
|
62
|
+
"""記録の鍵 解锁交流的物品"""
|
|
63
|
+
|
|
64
|
+
# 碎片
|
|
65
|
+
IdolPiece_倉本千奈_WonderScale = 14
|
|
66
|
+
"""倉本千奈 WonderScale 碎片"""
|
|
67
|
+
IdolPiece_篠泽广_光景 = 15
|
|
68
|
+
"""篠泽广 光景 碎片"""
|
|
69
|
+
IdolPiece_紫云清夏_TameLieOneStep = 16
|
|
70
|
+
"""紫云清夏 Tame-Lie-One-Step 碎片"""
|
|
71
|
+
IdolPiece_葛城リーリヤ_白線 = 17
|
|
72
|
+
"""葛城リーリヤ 白線 碎片"""
|
|
73
|
+
IdolPiece_姬崎莉波_clumsy_trick = 18
|
|
74
|
+
"""姫崎薪波 cIclumsy trick 碎片"""
|
|
75
|
+
IdolPiece_花海咲季_FightingMyWay = 19
|
|
76
|
+
"""花海咲季 FightingMyWay 碎片"""
|
|
77
|
+
IdolPiece_藤田ことね_世界一可愛い私 = 20
|
|
78
|
+
"""藤田ことね 世界一可愛い私 碎片"""
|
|
79
|
+
IdolPiece_花海佑芽_TheRollingRiceball = 21
|
|
80
|
+
"""花海佑芽 The Rolling Riceball 碎片"""
|
|
81
|
+
IdolPiece_月村手毬_LunaSayMaybe = 22
|
|
82
|
+
"""月村手毬 Luna say maybe 碎片"""
|
|
83
|
+
IdolPiece_有村麻央_Fluorite = 23
|
|
84
|
+
"""有村麻央 Fluorite 碎片"""
|
|
85
|
+
|
|
86
|
+
@classmethod
|
|
87
|
+
def to_ui_text(cls, item: "DailyMoneyShopItems") -> str:
|
|
88
|
+
"""获取枚举值对应的UI显示文本"""
|
|
89
|
+
match item:
|
|
90
|
+
case cls.Recommendations:
|
|
91
|
+
return "所有推荐商品"
|
|
92
|
+
case cls.LessonNote:
|
|
93
|
+
return "课程笔记"
|
|
94
|
+
case cls.VeteranNote:
|
|
95
|
+
return "老手笔记"
|
|
96
|
+
case cls.SupportEnhancementPt:
|
|
97
|
+
return "支援强化点数"
|
|
98
|
+
case cls.SenseNoteVocal:
|
|
99
|
+
return "感性笔记(声乐)"
|
|
100
|
+
case cls.SenseNoteDance:
|
|
101
|
+
return "感性笔记(舞蹈)"
|
|
102
|
+
case cls.SenseNoteVisual:
|
|
103
|
+
return "感性笔记(形象)"
|
|
104
|
+
case cls.LogicNoteVocal:
|
|
105
|
+
return "理性笔记(声乐)"
|
|
106
|
+
case cls.LogicNoteDance:
|
|
107
|
+
return "理性笔记(舞蹈)"
|
|
108
|
+
case cls.LogicNoteVisual:
|
|
109
|
+
return "理性笔记(形象)"
|
|
110
|
+
case cls.AnomalyNoteVocal:
|
|
111
|
+
return "非凡笔记(声乐)"
|
|
112
|
+
case cls.AnomalyNoteDance:
|
|
113
|
+
return "非凡笔记(舞蹈)"
|
|
114
|
+
case cls.AnomalyNoteVisual:
|
|
115
|
+
return "非凡笔记(形象)"
|
|
116
|
+
case cls.RechallengeTicket:
|
|
117
|
+
return "重新挑战券"
|
|
118
|
+
case cls.RecordKey:
|
|
119
|
+
return "记录钥匙"
|
|
120
|
+
case cls.IdolPiece_倉本千奈_WonderScale:
|
|
121
|
+
return "倉本千奈 WonderScale 碎片"
|
|
122
|
+
case cls.IdolPiece_篠泽广_光景:
|
|
123
|
+
return "篠泽广 光景 碎片"
|
|
124
|
+
case cls.IdolPiece_紫云清夏_TameLieOneStep:
|
|
125
|
+
return "紫云清夏 Tame-Lie-One-Step 碎片"
|
|
126
|
+
case cls.IdolPiece_葛城リーリヤ_白線:
|
|
127
|
+
return "葛城リーリヤ 白線 碎片"
|
|
128
|
+
case cls.IdolPiece_姬崎莉波_clumsy_trick:
|
|
129
|
+
return "姫崎薪波 clumsy trick 碎片"
|
|
130
|
+
case cls.IdolPiece_花海咲季_FightingMyWay:
|
|
131
|
+
return "花海咲季 FightingMyWay 碎片"
|
|
132
|
+
case cls.IdolPiece_藤田ことね_世界一可愛い私:
|
|
133
|
+
return "藤田ことね 世界一可愛い私 碎片"
|
|
134
|
+
case cls.IdolPiece_花海佑芽_TheRollingRiceball:
|
|
135
|
+
return "花海佑芽 The Rolling Riceball 碎片"
|
|
136
|
+
case cls.IdolPiece_月村手毬_LunaSayMaybe:
|
|
137
|
+
return "月村手毬 Luna say maybe 碎片"
|
|
138
|
+
case cls.IdolPiece_有村麻央_Fluorite:
|
|
139
|
+
return "有村麻央 Fluorite 碎片"
|
|
140
|
+
case _:
|
|
141
|
+
assert_never(item)
|
|
142
|
+
|
|
143
|
+
@classmethod
|
|
144
|
+
def all(cls) -> list[tuple[str, 'DailyMoneyShopItems']]:
|
|
145
|
+
"""获取所有枚举值及其对应的UI显示文本"""
|
|
146
|
+
return [(cls.to_ui_text(item), item) for item in cls]
|
|
147
|
+
|
|
148
|
+
@classmethod
|
|
149
|
+
def _is_note(cls, item: 'DailyMoneyShopItems') -> bool:
|
|
150
|
+
"""判断是否为笔记"""
|
|
151
|
+
return 'Note' in item.name and not item.name.startswith('Note') and not item.name.endswith('Note')
|
|
152
|
+
|
|
153
|
+
@classmethod
|
|
154
|
+
def note_items(cls) -> list[tuple[str, 'DailyMoneyShopItems']]:
|
|
155
|
+
"""获取所有枚举值及其对应的UI显示文本"""
|
|
156
|
+
return [(cls.to_ui_text(item), item) for item in cls if cls._is_note(item)]
|
|
157
|
+
|
|
158
|
+
def to_resource(self):
|
|
159
|
+
from kotonebot.kaa.tasks import R
|
|
160
|
+
match self:
|
|
161
|
+
case DailyMoneyShopItems.Recommendations:
|
|
162
|
+
return R.Daily.TextShopRecommended
|
|
163
|
+
case DailyMoneyShopItems.LessonNote:
|
|
164
|
+
return R.Shop.ItemLessonNote
|
|
165
|
+
case DailyMoneyShopItems.VeteranNote:
|
|
166
|
+
return R.Shop.ItemVeteranNote
|
|
167
|
+
case DailyMoneyShopItems.SupportEnhancementPt:
|
|
168
|
+
return R.Shop.ItemSupportEnhancementPt
|
|
169
|
+
case DailyMoneyShopItems.SenseNoteVocal:
|
|
170
|
+
return R.Shop.ItemSenseNoteVocal
|
|
171
|
+
case DailyMoneyShopItems.SenseNoteDance:
|
|
172
|
+
return R.Shop.ItemSenseNoteDance
|
|
173
|
+
case DailyMoneyShopItems.SenseNoteVisual:
|
|
174
|
+
return R.Shop.ItemSenseNoteVisual
|
|
175
|
+
case DailyMoneyShopItems.LogicNoteVocal:
|
|
176
|
+
return R.Shop.ItemLogicNoteVocal
|
|
177
|
+
case DailyMoneyShopItems.LogicNoteDance:
|
|
178
|
+
return R.Shop.ItemLogicNoteDance
|
|
179
|
+
case DailyMoneyShopItems.LogicNoteVisual:
|
|
180
|
+
return R.Shop.ItemLogicNoteVisual
|
|
181
|
+
case DailyMoneyShopItems.AnomalyNoteVocal:
|
|
182
|
+
return R.Shop.ItemAnomalyNoteVocal
|
|
183
|
+
case DailyMoneyShopItems.AnomalyNoteDance:
|
|
184
|
+
return R.Shop.ItemAnomalyNoteDance
|
|
185
|
+
case DailyMoneyShopItems.AnomalyNoteVisual:
|
|
186
|
+
return R.Shop.ItemAnomalyNoteVisual
|
|
187
|
+
case DailyMoneyShopItems.RechallengeTicket:
|
|
188
|
+
return R.Shop.ItemRechallengeTicket
|
|
189
|
+
case DailyMoneyShopItems.RecordKey:
|
|
190
|
+
return R.Shop.ItemRecordKey
|
|
191
|
+
case DailyMoneyShopItems.IdolPiece_倉本千奈_WonderScale:
|
|
192
|
+
return R.Shop.IdolPiece.倉本千奈_WonderScale
|
|
193
|
+
case DailyMoneyShopItems.IdolPiece_篠泽广_光景:
|
|
194
|
+
return R.Shop.IdolPiece.篠泽广_光景
|
|
195
|
+
case DailyMoneyShopItems.IdolPiece_紫云清夏_TameLieOneStep:
|
|
196
|
+
return R.Shop.IdolPiece.紫云清夏_TameLieOneStep
|
|
197
|
+
case DailyMoneyShopItems.IdolPiece_葛城リーリヤ_白線:
|
|
198
|
+
return R.Shop.IdolPiece.葛城リーリヤ_白線
|
|
199
|
+
case DailyMoneyShopItems.IdolPiece_姬崎莉波_clumsy_trick:
|
|
200
|
+
return R.Shop.IdolPiece.姬崎莉波_clumsy_trick
|
|
201
|
+
case DailyMoneyShopItems.IdolPiece_花海咲季_FightingMyWay:
|
|
202
|
+
return R.Shop.IdolPiece.花海咲季_FightingMyWay
|
|
203
|
+
case DailyMoneyShopItems.IdolPiece_藤田ことね_世界一可愛い私:
|
|
204
|
+
return R.Shop.IdolPiece.藤田ことね_世界一可愛い私
|
|
205
|
+
case DailyMoneyShopItems.IdolPiece_花海佑芽_TheRollingRiceball:
|
|
206
|
+
return R.Shop.IdolPiece.花海佑芽_TheRollingRiceball
|
|
207
|
+
case DailyMoneyShopItems.IdolPiece_月村手毬_LunaSayMaybe:
|
|
208
|
+
return R.Shop.IdolPiece.月村手毬_LunaSayMaybe
|
|
209
|
+
case DailyMoneyShopItems.IdolPiece_有村麻央_Fluorite:
|
|
210
|
+
return R.Shop.IdolPiece.有村麻央_Fluorite
|
|
211
|
+
case _:
|
|
212
|
+
assert_never(self)
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
class ProduceAction(Enum):
|
|
216
|
+
RECOMMENDED = 'recommended'
|
|
217
|
+
VISUAL = 'visual'
|
|
218
|
+
VOCAL = 'vocal'
|
|
219
|
+
DANCE = 'dance'
|
|
220
|
+
# VISUAL_SP = 'visual_sp'
|
|
221
|
+
# VOCAL_SP = 'vocal_sp'
|
|
222
|
+
# DANCE_SP = 'dance_sp'
|
|
223
|
+
OUTING = 'outing'
|
|
224
|
+
STUDY = 'study'
|
|
225
|
+
ALLOWANCE = 'allowance'
|
|
226
|
+
REST = 'rest'
|
|
227
|
+
CONSULT = 'consult'
|
|
228
|
+
|
|
229
|
+
@property
|
|
230
|
+
def display_name(self):
|
|
231
|
+
MAP = {
|
|
232
|
+
ProduceAction.RECOMMENDED: '推荐行动',
|
|
233
|
+
ProduceAction.VISUAL: '形象课程',
|
|
234
|
+
ProduceAction.VOCAL: '声乐课程',
|
|
235
|
+
ProduceAction.DANCE: '舞蹈课程',
|
|
236
|
+
ProduceAction.OUTING: '外出(おでかけ)',
|
|
237
|
+
ProduceAction.STUDY: '文化课(授業)',
|
|
238
|
+
ProduceAction.ALLOWANCE: '活动支给(活動支給)',
|
|
239
|
+
ProduceAction.REST: '休息',
|
|
240
|
+
ProduceAction.CONSULT: '咨询(相談)',
|
|
241
|
+
}
|
|
242
|
+
return MAP[self]
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
class RecommendCardDetectionMode(Enum):
|
|
246
|
+
NORMAL = 'normal'
|
|
247
|
+
STRICT = 'strict'
|
|
248
|
+
|
|
249
|
+
@property
|
|
250
|
+
def display_name(self):
|
|
251
|
+
MAP = {
|
|
252
|
+
RecommendCardDetectionMode.NORMAL: '正常模式',
|
|
253
|
+
RecommendCardDetectionMode.STRICT: '严格模式',
|
|
254
|
+
}
|
|
255
|
+
return MAP[self]
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
from typing import Callable, Any, Dict
|
|
2
|
+
|
|
3
|
+
# 迁移函数类型:接收单个 user_config(dict),就地修改并返回提示信息
|
|
4
|
+
Migration = Callable[[dict[str, Any]], str | None]
|
|
5
|
+
|
|
6
|
+
# 导入各版本迁移实现
|
|
7
|
+
from . import _v1_to_v2
|
|
8
|
+
from . import _v2_to_v3
|
|
9
|
+
from . import _v3_to_v4
|
|
10
|
+
from . import _v4_to_v5
|
|
11
|
+
from . import _v5_to_v6
|
|
12
|
+
|
|
13
|
+
# 注册表:键为旧版本号,值为迁移函数
|
|
14
|
+
MIGRATION_REGISTRY: Dict[int, Migration] = {
|
|
15
|
+
1: _v1_to_v2.migrate,
|
|
16
|
+
2: _v2_to_v3.migrate,
|
|
17
|
+
3: _v3_to_v4.migrate,
|
|
18
|
+
4: _v4_to_v5.migrate,
|
|
19
|
+
5: _v5_to_v6.migrate,
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
# 当前最新配置版本
|
|
23
|
+
LATEST_VERSION: int = 6
|
|
24
|
+
|
|
25
|
+
__all__ = [
|
|
26
|
+
"MIGRATION_REGISTRY",
|
|
27
|
+
"LATEST_VERSION",
|
|
28
|
+
]
|