ksaa 2025.7.13.0__tar.gz → 2025.7.27.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.13.0/ksaa.egg-info → ksaa-2025.7.27.0}/PKG-INFO +2 -1
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/WHATS_NEW.md +26 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/bot.py +60 -12
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/context/task_action.py +9 -46
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/dispatch.py +1 -104
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/flow_controller.py +3 -1
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/errors.py +37 -2
- ksaa-2025.7.27.0/kotonebot/interop/win/message_box.py +314 -0
- ksaa-2025.7.27.0/kotonebot/interop/win/task_dialog.py +469 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/config/produce.py +8 -6
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/config/schema.py +2 -0
- ksaa-2025.7.27.0/kotonebot/kaa/errors.py +38 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/main/gr.py +135 -34
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/main/kaa.py +0 -1
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/metadata.py +26 -0
- ksaa-2025.7.27.0/kotonebot/kaa/resources/__pycache__/__init__.cpython-310.pyc +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/game.db +0 -0
- ksaa-2025.7.27.0/kotonebot/kaa/resources/game_ver.txt +0 -0
- ksaa-2025.7.27.0/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-012_0.png +0 -0
- ksaa-2025.7.27.0/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-012_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/R.py +126 -126
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/daily/contest.py +39 -8
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/daily/purchase.py +3 -3
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/end_game.py +4 -3
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/produce/in_purodyuusu.py +35 -32
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/produce/produce.py +2 -1
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/start_game.py +2 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/ui/user.py +43 -13
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0/ksaa.egg-info}/PKG-INFO +2 -1
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/ksaa.egg-info/SOURCES.txt +131 -126
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/ksaa.egg-info/requires.txt +1 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/pyproject.toml +1 -0
- ksaa-2025.7.27.0/version +1 -0
- ksaa-2025.7.13.0/kotonebot/kaa/resources/__pycache__/__init__.cpython-310.pyc +0 -0
- ksaa-2025.7.13.0/kotonebot/kaa/resources/game_ver.txt +0 -0
- ksaa-2025.7.13.0/version +0 -1
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/LICENSE +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/MANIFEST.in +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/README.md +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/color.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/context/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/context/context.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/core.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/debug/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/debug/entry.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/debug/mock.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/debug/server.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/debug/vars.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/image.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/loop.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/ocr.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/backend/preprocessor.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/device.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/fast_screenshot.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/host/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/host/adb_common.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/host/custom.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/host/leidian_host.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/host/mumu12_host.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/host/protocol.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/host/windows_common.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/implements/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/implements/adb.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/implements/adb_raw.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/implements/nemu_ipc/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/implements/nemu_ipc/external_renderer_ipc.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/implements/nemu_ipc/nemu_ipc.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/implements/remote_windows.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/implements/uiautomator2.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/implements/windows.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/protocol.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/client/registration.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/config/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/config/base_config.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/config/manager.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/debug_entry.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/interop/win/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/interop/win/reg.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/common.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/config/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/config/const.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/config/migrations/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/config/migrations/_idol.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/config/migrations/_v1_to_v2.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/config/migrations/_v2_to_v3.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/config/migrations/_v3_to_v4.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/config/migrations/_v4_to_v5.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/config/migrations/_v5_to_v6.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/config/upgrade.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/db/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/db/constants.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/db/idol_card.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/db/sqlite.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/game_ui/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/game_ui/badge.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/game_ui/common.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/game_ui/commu_event_buttons.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/game_ui/dialog.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/game_ui/idols_overview.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/game_ui/primary_button.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/game_ui/schedule.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/game_ui/scrollable.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/game_ui/toolbar.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/image_db/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/image_db/db.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/image_db/descriptors/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/image_db/descriptors/hist.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/kaa_context.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/main/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/main/cli.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/main/dmm_host.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-1-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-1-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-1-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-1-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-2-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-2-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-002_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-002_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-003_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-003_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-005_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-005_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-006_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-006_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-007_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-007_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-008_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-008_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-009_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-009_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-010_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-010_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-011_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-011_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-012_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-amao-3-012_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-1-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-1-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-1-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-1-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-2-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-2-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-002_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-002_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-003_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-003_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-005_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-005_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-006_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-006_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-007_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-007_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-008_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-008_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-009_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-009_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-010_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-010_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-011_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-011_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-012_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-012_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-014_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-014_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-1-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-1-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-1-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-1-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-2-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-2-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-3-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-3-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-3-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-3-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-3-005_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hmsz-3-005_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-1-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-1-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-1-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-1-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-2-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-2-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-002_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-002_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-003_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-003_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-004_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-004_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-005_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-005_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-006_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-006_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-007_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-007_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-008_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-008_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-009_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-009_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-010_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-010_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-011_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-011_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-012_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hrnm-3-012_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-1-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-1-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-1-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-1-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-2-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-2-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-002_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-002_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-003_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-003_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-005_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-005_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-006_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-006_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-007_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-007_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-008_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-008_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-009_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-009_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-010_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-010_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-011_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-011_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-012_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-012_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-013_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hski-3-013_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-1-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-1-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-1-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-1-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-2-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-2-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-002_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-002_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-004_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-004_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-005_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-005_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-006_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-006_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-011_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-011_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-013_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-hume-3-013_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-1-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-1-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-1-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-1-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-2-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-2-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-002_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-002_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-003_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-003_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-004_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-004_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-005_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-005_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-006_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-006_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-007_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-007_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-010_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-010_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-012_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-012_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-1-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-1-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-1-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-1-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-2-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-2-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-002_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-002_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-003_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-003_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-004_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-004_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-005_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-005_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-006_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-006_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-007_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-007_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-008_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-008_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-009_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-009_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-010_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-010_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-011_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-011_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-012_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-012_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-1-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-1-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-1-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-1-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-2-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-2-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-002_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-002_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-004_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-004_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-005_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-005_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-006_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-006_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-007_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-007_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-008_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-008_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-009_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-009_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-010_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-010_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-011_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-011_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-012_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-012_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-1-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-1-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-1-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-1-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-2-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-2-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-002_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-002_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-003_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-003_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-004_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-004_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-006_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-006_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-007_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-007_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-008_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-008_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-009_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-009_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-010_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-010_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-011_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-011_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-013_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-013_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-1-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-1-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-1-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-1-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-2-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-2-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-002_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-002_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-003_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-003_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-005_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-005_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-006_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-006_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-007_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-007_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-008_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-008_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-009_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-009_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-010_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-010_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-011_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-011_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-012_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-012_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-013_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-013_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-1-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-1-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-1-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-1-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-2-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-2-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-000_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-000_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-001_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-001_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-002_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-002_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-003_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-003_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-004_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-004_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-006_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-006_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-007_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-007_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-008_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-008_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-009_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-009_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-010_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-010_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-011_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-011_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-012_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-012_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-013_0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-013_1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/00551158-fee9-483f-b034-549139a96f58.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/582e8afb-81d9-433b-9297-2741f78224c0.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/039771df-9741-4f4e-9793-9017386ac68e.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/05890a1b-8764-4e9f-9d21-65d292c22e13.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/0949c622-9067-4f0d-bac2-3f938a1d2ed2.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/0bf5e34e-afc6-4447-bbac-67026ce2ad26.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/0c0627be-4a09-4450-a078-1858d3ace532.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/3995bbdb-4b0c-4327-b299-7d105a78e977.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/0c826d2e-41ce-474b-ad99-f4561baf03de.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/0d9ac648-eefa-4869-ac99-1b0c83649681.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/0f7d581d-cea3-4039-9205-732e4cd29293.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/96669532-4774-4c2e-bda0-ea94f3b1d41b.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/0fb240b0-1bb5-4aee-8ad3-a24062ee9a20.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/4f36ddbb-967e-41d5-9bdb-05bb8f906227.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/10636534-51ee-4698-b582-e56751bebb4d.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/cafb66c1-10d3-4612-80f9-f9e183d509c6.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/1218bb7e-2cab-477e-aa51-f71aa4f52a7d.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/1652f06a-5417-49ef-8949-4854772d9ab7.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/16fbc93d-b294-4001-b4e9-ee2af181415f.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/185f7838-92a7-460b-9340-f60858948ce9.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/985e8bd4-7658-4da1-beb3-c53220ec1c25.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/1917a430-d216-4359-8f62-0b62108f58c1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/1926f2f9-4bd7-48eb-9eba-28ec4efb0606.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/065de266-800e-4ebf-bab1-a37038e531d8.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/1f56fbc1-47f5-4dc3-b91b-6e49e4ea00dc.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/213016c2-c3a2-43d8-86a3-ab4d27666ced.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/23d88465-65d9-4718-8725-8dbf0a98a5a4.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/24dc7158-036c-4a66-9280-e934f470be53.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/24e99232-9434-457f-a9a0-69dd7ecf675f.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/77a55e26-3901-4be0-9edb-a434c6e5e719.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/25797538-2dc6-436c-b64a-597ae6d5db6e.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/25f00ee3-8dfe-42d1-a67e-191fa5c3df4b.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/488c8e34-9a36-4335-8a69-c9288e3344d7.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/27d59ead-0f94-4554-8c9a-cd3aeb606fea.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/c0b5a0a7-0cb7-4d2c-8105-42b434437610.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/2822bf2b-b350-437b-b330-0e8c122bfbe7.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/8e0b582b-68d3-4a4f-93e1-dec23e8e6abf.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/287ec12a-c1fb-4b8f-a77c-acc99821eabd.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/ba45d490-da2e-4c2f-badf-7058f1802ad3.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/290aaff5-71eb-4d71-87db-3757d3e9794b.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/59d453f1-a2df-4138-9e4e-277f6b636bde.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/29fcf4cb-883f-475e-a68f-107cffc83f1c.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/6d7d40e7-8f54-40b5-a900-784e2ced0df5.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/2ac90dcf-2284-437e-a61e-51934f937f8f.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/2bd6fe88-99fa-443d-8e42-bb3de5881213.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/14e920fb-7410-4927-96e1-c40211069182.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/2e3410a1-49b5-4f65-8f26-bb1df213c2b8.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/2ededcf5-1d80-4e2a-9c83-2a31998331ce.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/303cccc1-c674-4d3a-8c89-19ea729fdbef.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/30a6f399-6999-4f04-bb77-651e0214112f.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/0d10fa02-b8e7-405a-a463-83f472807a39.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/30bc31e4-40b3-4bcb-bb36-1dd5a8c59a32.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/476c4b40-a024-4253-bd57-b775b1559c44.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/34eaf943-a8b5-4358-aadc-62ff656ab542.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/83d759a1-04fc-40d3-93d6-d31b4be70e5d.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/37f1d878-467f-4ba0-bc59-bb327797191b.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/3942ae40-7f22-412c-aebe-4b064f68db9b.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/ca37b366-0a29-436c-8c22-78daf4148bfe.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/3aa13898-1a50-4234-b9ec-f35878f05592.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/3b473fe6-e147-477f-b088-9b8fb042a4f6.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/3c8b477a-8eda-407e-9e9f-7540c8808f89.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/0b166ce2-85b0-4207-b4ee-e720462cf9ab.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/3ca43ccf-8748-439f-80f7-a95978a6b1f2.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/a5b80b05-f6a2-407e-bf93-27b88bd982d1.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/3efe8341-33bc-492e-8a0f-69a507502b43.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/3f637e86-6b74-4693-9131-1fe411fc21e5.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/0edc4c9d-9249-4bf0-86ad-c9fee3ee06f7.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/3f6b5de5-c942-4ef1-8b04-5ee6859bb27b.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/4096cffa-a889-4622-852e-760fc7022d93.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/9e5202cc-ef3c-433e-8cbb-afa5842f0a34.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/432aad91-9cc5-4518-bbfd-6cbed522dac6.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/447d0e44-5d87-4b7c-8e60-edb111fe1639.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/44ba8515-4a60-42c9-8878-b42e4e34ee15.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/4503db6b-7224-4b81-9971-e7cfa56e10f2.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/deca8ee5-616a-4652-8a37-dab4f34951b6.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/452e213a-9762-42ec-8e2b-2cabc3eb254d.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/4695f96b-c4f5-4bb6-a021-a13b6ceb2883.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/32fa7671-2413-400f-9bad-3fd7859840e4.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/46a8bf3e-7149-4d9b-8b31-a6b9c3d6b166.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/44713a59-3d15-427a-af43-27efdc1b2b20.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/48293a53-d05b-4198-995f-103531f26923.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/4883c564-f950-4a29-9f5f-6f924123cd22.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/b4db5745-d7d0-4afb-8962-9f71fc4188c8.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/4c0dc941-6ecf-45b4-91f8-3fb10e770512.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/4d78add6-1027-4939-bb51-f99fca7db2ce.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/5031808b-5525-4118-92b4-317ec8bda985.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/34050b3d-1684-403d-95b1-8ad7ff2a85bb.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/50986ada-ff64-405f-911d-f6c3655fb658.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/50e23c8a-7ba2-4c9c-9cfb-196c260fa1d5.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/6c2ba024-4e1e-4a07-9b58-277a1873c279.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/535db21f-b22e-4a05-a7e8-81e3664305b8.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/8a8f4be3-9538-4ead-9002-009432dce534.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/5410568f-2e3c-49b2-8112-f43c52342298.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/55f7db71-0a18-4b3d-b847-57959b8d2e32.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/582d36c0-0916-4706-9833-4fbc026701f5.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/46189b9d-16fd-4385-9654-2a6fa95bc933.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/5aa47ea4-79de-4547-9320-cf8c614c7366.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/cf33f626-5944-4dfe-bb46-2976c187f2a9.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/5d1627a0-f803-4736-8c3c-7bf1f0de0aa0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/5d36b880-7b3f-49b1-a018-7de59867d376.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/c03c6076-7935-42e7-a2e5-5f74015e92e2.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/5eaa9fa9-0bce-47ce-8f28-d5ba32c566c3.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/5ebcde3b-f0fd-4e5d-b3de-ada8f0b5e03b.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/721caff2-926b-4778-a20b-77c9fee8f45a.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/650eee06-c926-4e91-bd2c-38f3068938c0.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/cf007582-08d0-4fc7-bc7c-113e211b226a.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/652c9b9f-316e-46b2-a2d4-8dc8d5e6116f.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/92ac2224-ce9d-4ba0-aafc-c627ba97c163.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/6621d884-5ba5-4356-bd50-94239ec5395a.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/a9ec257b-d82f-4ebf-9b46-1af8836d5768.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/66de3573-9562-4cd8-82df-5d6be6b1f213.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/6b58d90d-2e5e-4b7f-bc01-941f2633de89.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/7a72a3ad-666c-478e-a249-2ca7e35f84cb.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/6b71968e-97d3-4fad-89d0-ffb7743446a9.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/b04f4554-d6ea-4f99-822c-657ad1b9cd1e.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/6c7cb85e-0aac-40d8-9b55-d9b455c89985.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/43648de0-a0dc-4d0b-b081-ddb4a6aae9c4.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/6cba0d0c-a67b-470d-9abe-1c55b14310ba.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/6cd80be8-c9b3-4ba5-bf17-3ffc9b000743.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/75972e14-44b8-4ac7-9bfa-a0e0ed563b05.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/6d59fa9e-b988-47e3-99b5-e06510f98e45.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/fb00d537-d921-4a5f-9bc7-8aac1b68a71d.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/6eb8e6a5-b361-4c4f-b161-e2ccd5ef277d.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/69601752-7606-4af4-9252-097be36eec84.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/6ed77f5b-e4ce-4722-934e-3c5ec34b6d5a.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/db2fb64d-3e2d-4cd4-ac3a-a993e9784697.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/6f4d32df-2a01-40e8-bfd1-9e83c6864789.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/9ff3e793-1c21-45c6-88b5-24543f300f81.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/6f56551e-bfa3-4efe-b95a-411e54885ceb.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/c2a12970-cfff-4772-a4ec-127f4309f2b5.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/725d6877-7260-4ca3-91d3-da4e9ccbf206.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/a7b99e72-68c1-4b11-994f-a3238bee5fa3.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/74bb6050-8d6d-48aa-8e71-31e92304b5af.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/74ec3510-583d-4a76-ac69-38480fbf1387.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/9579ad74-b049-4e27-a07c-12537c5ee051.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/760655f5-1d32-437c-81fc-306e80fabfd8.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/4660a922-bb9a-4543-b11a-d7b3be41e42e.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/763968fd-f7ab-4a46-a0ef-6a496b21d3dd.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/e214cd8e-b79f-42e5-959a-64f745f35896.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/77b7b404-bc0c-4637-96b0-7344f782989e.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/79abd239-5eed-4195-9fa8-d729daa874ca.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/897a1e29-c5e2-4c26-a348-6fd7d63c9f09.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/79cddeac-828b-49a1-b860-b422e2c8d2ea.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/f270ddb2-fabc-4dd6-818a-c818a44893ed.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/7b74cacf-b8b4-4915-a71a-1dab321dab60.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/917cd398-166e-4abe-a769-6d74cfbb611e.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/7d931bd2-5cfc-4e4c-83c0-498b5e17d15c.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/b34c399b-ea60-4de2-86ee-003d308594c2.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/7dc4ea14-42a9-4b2f-a164-99da3dbb000b.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/ee7c3730-b678-4ffe-a7e5-5637016ce5b4.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/7dc5f386-2db3-4405-9796-34f1b8a6755f.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/81c97cd3-df53-44d3-bf3d-1eb4dc67b62a.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/835489e2-b29b-426c-b4c9-3bb9f8eb6195.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/83d0a033-466c-463a-bb8c-be0f2953e9b2.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/8424ecdd-8857-4764-9fd0-d4bfa440c128.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/fc23b108-7717-4b16-9e91-aacd5ddcc2ce.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/843174a9-6cff-45ba-9573-67904691a30f.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/dd268b19-354f-4e39-a4b4-0578719a40e1.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/85ca40d2-f02e-45a4-9db0-c483f6ae1db5.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/8d093e5a-3ce8-4e67-9e5d-7d91f2dd3b00.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/88207e47-1f50-485f-9984-54cea01d740a.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/618b8738-c9ae-4def-951f-a3627b26a980.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/88e01e80-50e2-4b0f-834c-86f6a3508287.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/e7fb4631-aad6-4fad-934c-72396737a98a.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/89b364ae-9050-4671-b595-632ba0efc78b.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/8c179a21-be6f-4db8-a9b0-9afeb5c36b1c.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/9fd3858a-c2a7-468d-b224-ca6386a08d1e.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/8d1a63f3-7ec4-405c-9d78-d176018389dc.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/8ded6c98-85ea-4858-a66d-4fc8caecb7c5.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/8f8b7b46-53bb-42ab-907a-4ea87eb09ab4.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/a49babfb-a958-4de0-b2c5-2c64ce8641fa.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/8f941a44-bbe8-4d3d-82b3-7b14c2356998.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/921eefeb-730e-46fc-9924-d338fb286592.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/9340b854-025c-40da-9387-385d38433bef.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/d9ac597e-8d6d-4ab3-b865-e68a83563d25.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/95962144-c639-4902-ad2d-be11ccc5eaab.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/0951b840-439e-4289-991e-51b5b2df0bb2.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/96c79132-d55f-43d2-bdb3-6fe55734b6d5.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/ffd7676f-6b57-42d2-9631-bc758d2e0a31.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/9895c28f-eba2-4e37-911b-6c0f05f7d72b.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/4ca16d51-1b1c-4174-98df-dce028749eb0.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/98df22d6-1ff2-4c9a-87e7-f70e9f91019e.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/48d52db5-9d6f-4d6d-a8a9-56ec3e03cf2e.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/9b01dbe2-5043-40af-858c-33bbbf4ccc22.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/d7b786c8-7887-4870-a719-f703945cc6f1.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/9dc9f428-6e6d-4362-b4d4-dce50d9e732e.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/c9f0ddc4-832c-42f0-b46d-a2b4326d1a1c.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/9df02971-cdd8-4464-abf9-8035bc233d2f.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/79d26ab2-499d-46a5-b15d-a0d0845fc535.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/9e7bf71b-fe8d-43cf-8bdd-6cfb1fb1b597.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/9fd0753f-c607-4d49-82d1-40bda27e014f.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/__init__.py +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/5cda82c5-6026-4a4b-9447-30779ef07e51.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/a043ed15-0ceb-49b5-b3df-d03274677340.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/a0bd6a5f-784d-4f0a-9d66-10f4b80c8d3e.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/a1df3af1-a3e7-4521-a085-e4dc3cd1cc57.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/48a169b5-e3ad-41c8-9895-5fff217a24a3.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/a200b1e4-2ebc-4c15-bdf2-2575408877f8.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/a48324ae-7c1a-489e-b3c4-93d12267f88d.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/13ebdaaf-dee5-48be-963e-c2e6915b2b00.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/a718a6f9-db30-4a9c-9d2b-b83055cf36ae.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/b1e6c930-f659-4ea8-a694-a4590160b438.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/a7ada2b7-1366-40c8-864e-fbb42d248124.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/a9fcaf04-0c1f-4b0f-bb5b-ede9da96180f.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/fa8ee7e4-ee13-497e-856b-e210f6b1f114.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/aa42da27-2c6a-4731-9678-edd3aefde4a7.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/f621f114-11c3-4957-a86c-cb474721d660.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/aaa770da-fc42-4e4a-978c-8fef22c0ebf9.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/adc533a7-970b-4c5b-a037-2181531a35d6.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/ae9fe233-9acc-4e96-ba8e-1fb1d9bc2ea5.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/9529c488-2256-4a3d-baed-4928c151b1b1.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/af54e00c-b768-4497-829b-6bfac16f4efc.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/4ee4dde9-378f-4ef3-b1f3-29bbb3d9e073.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/afe94aea-47e2-4310-8e25-3e7cadc5a75d.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/b0283997-7931-476d-a92f-d7569f6ea34c.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/387b6503-d6c8-40ab-8cad-2a81021b6103.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/b0a88b9e-358f-4f35-b823-d6c025a516cf.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/b2af59e9-60e3-4d97-8c72-c7ba092113a3.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/b2e1bf3c-2c36-4fb5-9db7-c10a29563a37.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/e6e33419-ee43-48d1-98c6-a64f07b9e9e9.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/b4ede50d-7edb-4461-bee6-77d13456fa30.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/abeb625a-74c1-45dc-a6c9-2a123dee1ab4.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/b503e883-c9d2-46c0-9de2-158770abb32b.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/d251bb28-4d34-4db9-85eb-554a56ac8184.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/b60b3563-20b4-46ad-b36b-3113d9e07d4c.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/b62bf889-da3c-495a-8707-f3bde73efe92.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/b6b94f21-ef4b-4425-9c7e-ca2b574b0add.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/88cb2321-ac35-4fe6-a467-19ba5ef3af35.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/b9ded3ea-9701-441d-a593-e73e44d5fa3f.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/a622194f-000b-48d9-871f-89e2ba9a249d.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/b9f285e4-eb97-47f0-9ca5-28ca558acf58.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/bab6c393-692c-4681-ac0d-76c0d9dabea6.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/e2d11737-e1e2-4056-bd85-7d242c9c3023.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/bbee032e-7fc1-4b4d-b1db-cc54b24c20c8.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/7b58df80-77e7-4a81-84b5-3d7e61f4237e.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/bc68fbda-8e6d-4368-b322-49a6854d81e3.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/bc7155ac-18c9-4335-9ec2-c8762d37a057.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/33dfe24e-9cc8-43c9-98a8-999e850b778a.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/bf8d6419-472c-4941-8d69-9bb01af5c71a.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/d1fff69a-474d-416f-a53f-2a88a4d552c7.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/c3548011-dc57-4542-a855-1e7f9d7762f7.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/c3f536d6-a04a-4651-b3f9-dd2c22593f7f.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/8acb588c-200f-4927-bb50-2f01c7fbf0f5.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/c46f1705-b4d5-4f39-b138-391a85fb0302.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/661760df-f790-47cb-8ddf-21b684a1096d.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/c58be1dd-1981-42ee-8de3-e365102884e5.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/c5b7d67e-7260-4f08-a0e9-4d31ce9bbecf.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/c78c38cc-7b61-4dc4-820d-0a5b684ef52e.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/5b382fe1-da9d-4644-b4e7-aa2759b36b9d.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/c8321b5a-8f65-4465-892a-a3432efba5ac.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/c948f136-416f-447e-8152-54a1cd1d1329.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/c954e153-d3e9-4488-869f-d00cfdfac5ee.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/6cc3d385-7c1a-4df2-92dd-0bc7f4931f2c.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/c95ee1bb-1e53-4568-ba92-9606071ad3a6.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/10d7c07d-9731-4b2a-bc92-bfb822616303.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/ca9f52b1-42c0-4091-bc29-efc0da9606e0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/cb3d0ca7-8d14-408a-a2f5-2e25f7b86d6c.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/cbf4ce9c-f8d8-4fb7-a197-15bb9847df04.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/cc60b509-2ed5-493d-bb9f-333c6d2a6006.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/cc8a495d-330d-447d-8a80-a8a6ecc409c5.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/ebef3530-94ab-4ba7-b43e-5b3249286d51.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/ccba7903-9882-4982-ab84-355667d8419a.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/ccbcb114-7f73-43d1-904a-3a7ae660c531.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/ce1d1d6f-38f2-48bf-98bd-6e091c7ca5b8.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/cfc9c8e8-cbe1-49f0-9afa-ead7f9455a2e.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/d2fe6a19-df40-43f9-8e75-2376e9987290.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/d0dd43b7-5571-4e47-af51-796b4a6a1cfe.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/d271a24f-efe8-424d-8fd5-f6b3756ba4ca.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/84b25f6f-aeb4-41b0-bb61-9e028ee1173f.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/d274bf4d-f4ff-4270-9a5f-87685a0c6817.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/d3424d31-0502-4623-996e-f0194e5085ce.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/f85c9e53-870d-46e4-9963-c5245d0c5628.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/d3565383-91b0-4b33-87a9-3468dfd56e52.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/d3cc3323-51af-4882-ae12-49e7384b746d.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/17d9408b-b429-402c-9d06-f2a0b2b1abe2.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/d552db90-8e22-427c-b004-1799adbcc6ba.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/2228a02e-fec3-4bb7-ad29-d7ef0d7b7a90.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/d5943dc2-12df-42bb-84bc-d6958260cb75.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/b06ebc30-305e-4f8a-8a3c-1d91aab4f9c0.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/d5be0aac-6f00-4961-b21c-4075bd6ca528.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/db041968-9811-494c-ae2c-1b31d4e1773c.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/d65cf124-6c8e-41e4-80dc-0c63b41d5636.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/d6b64759-26b7-45b1-bf8e-5c0d98611e0d.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/d7667903-7149-4f2f-9c15-d8a4b5f4d347.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/69d32f6c-e982-4418-94f9-5a625dc06584.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/d79069c1-3b8e-4df7-8b14-4eeaa44241e1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/d83f338d-dde3-494b-9bea-cae511e3517c.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/d982d2b5-4bc0-4ae9-a516-f29c2848d64b.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/da439e8c-3b74-4371-9657-0736d826c7d1.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/daf3d823-b7f1-4584-acf3-90b9d880332c.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/edcb7ca8-9e3f-4232-b6c9-b7189a62d2ec.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/db3ab847-948d-4ee0-b5cb-c57c0caa24fd.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/db7d3f03-1f7f-43bf-8125-f7c2d345fca2.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/f2b784ee-eeca-4633-9083-4cb996c26f66.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/dbc449e9-404e-435b-8b0f-3c853c7f0efe.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/6151e500-a626-44db-89d5-a7b15d99f9aa.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/dc3f2602-1f20-460a-b408-693001aa70bc.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/28b29b73-758c-41ef-8829-4b93d7a6f424.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/dcb63213-c81e-4eb7-82f1-a16a838299fe.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/de325534-3fd3-480a-9eb8-eb47960a753a.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/fd7ce00d-d45c-468b-a918-f5ded551a17d.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/df004f6b-683d-41e8-848f-2a838c585f43.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/df991b42-ed8e-4f2c-bf0c-aa7522f147b6.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/d1f662b1-7aa2-4ccc-a8bf-6e7a94ae2427.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/dfab89de-7365-4bc8-b332-6f62733123a2.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/524134df-5ade-4eb0-903f-dbae8d2a6e00.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/e0a34a9a-69b6-4732-9b1c-7a2c6445cb76.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/88bcca49-4150-4820-8b47-049f7f1aa604.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/e0cea27c-5b4e-4831-8fcf-65bccb9e5950.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/09ca39cd-c964-4258-a860-6a327e31713c.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/e311e99e-ae64-442a-aed1-6fac29687d18.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/e4683def-8d1d-472b-a5ab-bb3885c0c98e.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/e5e84f9e-28da-4cf4-bcba-c9145fe39b07.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/e6b45405-cd9f-4c6e-a9f1-6ec953747c65.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/e88c9ad1-ec37-4fcd-b086-862e1e7ce8fd.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/80ca25c8-03b6-4ed8-bf0b-36f6ad71ffd4.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/e8e25d3c-569e-4eae-a707-3afa8c5f46ec.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/740c5975-00d7-42a7-ad95-cee0d59db3f0.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/e9afeef0-fcbe-4d97-8b39-c57ab24a3f84.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/e9ee330d-dfca-440e-8b8c-0a3b4e8c8730.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/ea1ba124-9cb3-4427-969a-bacd47e7d920.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/eaba6ebe-f0df-4918-aee5-ef4e3ffedcf0.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/31f239cb-58f7-4fe9-95e4-15572afa9855.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/ec9656c3-a984-47db-8661-e1ae8751d288.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/5e00a181-041a-4456-8850-773f68de8573.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/ee4862f3-f298-446e-a68b-bd97259052e6.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/ee4e512b-4982-49b6-9c71-31984b58e1d0.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/eef25cf9-afd0-43b1-b9c5-fbd997bd5fe0.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/eb56ba19-433e-4bab-9e47-7a2702c83954.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/ef585824-7bfa-427a-a185-4317c0bcb4f6.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/fd3b7b22-7011-4267-8365-64a4933073a4.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/ef861253-914d-436e-aa01-731a5dd11e38.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/b07b112c-08c8-45ff-b980-105d263ff1c4.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/f0b983cd-8bce-4b67-9214-493364244c26.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/f1f21925-3e22-4dd1-b53b-bb52bcf26c2b.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/5ca735d9-04b0-40a4-8eda-adbf9d0ded34.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/f2906fc0-9192-48ca-bc5d-52e922b04d8d.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/f88ee970-84ea-46b2-99e0-d3fe1cde908e.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/f3890caa-fa8b-43bc-ba30-82c5bbe1d12a.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/f43c313b-8a7b-467b-8442-fc5bcb8b4388.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/2b845193-37f8-4e17-9fd2-52765977b1fa.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/f4c3a6f9-1149-4530-af30-c56d7e3d02b9.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/f5c16d2f-ebc5-4617-9b96-971696af7c52.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/f6ca6bd3-543f-4779-8367-c5c883f04b95.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/995b71e0-ce5d-48b7-b1a1-35443a37c295.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/fa3bdcef-dfba-4cf2-a06f-e6078c07fb7d.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/af04e2ac-bffa-4bfb-9580-c934e403d578.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/fab770fd-e250-4dd4-b9d2-80966ad452ac.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/sprites/fad5eec2-5fd5-412f-9abb-987a3087dc54.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/51c39af7-efe6-4763-a85c-f1275e7cf4e8.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/fb2f308f-a025-4606-b789-0455c7cf0af8.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/96044a90-a417-4042-a359-ddfd374afd0c.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/fcc71fcd-b28e-4247-beb6-6f5422218c54.png +0 -0
- /ksaa-2025.7.13.0/kotonebot/kaa/sprites/8f1413b8-fe01-4a37-9c10-0dcabf092367.png → /ksaa-2025.7.27.0/kotonebot/kaa/sprites/fe42018b-4987-4389-8d44-fb0cfd0f4dab.png +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/actions/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/actions/commu.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/actions/loading.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/actions/scenes.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/actions/stats.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/clear_logs.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/daily/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/daily/acquire_activity_funds.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/daily/acquire_presents.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/daily/assignment.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/daily/capsule_toys.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/daily/club_reward.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/daily/mission_reward.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/daily/upgrade_support_card.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/produce/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/produce/cards.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/produce/common.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/produce/non_lesson_actions.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/tasks/produce/p_drink.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/util/paths.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/kaa/util/trace.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/logging/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/logging/log.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/primitives/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/primitives/geometry.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/primitives/visual.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/tools/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/tools/mirror.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/ui/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/ui/file_host/sensio.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/ui/file_host/tmp_send.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/ui/pushkit/__init__.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/ui/pushkit/image_host.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/ui/pushkit/protocol.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/ui/pushkit/wxpusher.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/kotonebot/util.py +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/ksaa.egg-info/dependency_links.txt +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/ksaa.egg-info/entry_points.txt +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.0}/ksaa.egg-info/top_level.txt +0 -0
- {ksaa-2025.7.13.0 → ksaa-2025.7.27.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.27.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
|
|
@@ -26,6 +26,7 @@ Requires-Dist: onnxruntime==1.14.0
|
|
|
26
26
|
Requires-Dist: numpy<2.0
|
|
27
27
|
Requires-Dist: pywin32==310
|
|
28
28
|
Requires-Dist: ahk==1.8.3
|
|
29
|
+
Requires-Dist: win11toast==0.35
|
|
29
30
|
Dynamic: license-file
|
|
30
31
|
|
|
31
32
|
# Kotone's Auto Assistant 琴音小助手
|
|
@@ -1,5 +1,31 @@
|
|
|
1
1
|
# 更新日志
|
|
2
2
|
## kaa
|
|
3
|
+
### v2025.7.27.0
|
|
4
|
+
脚本:
|
|
5
|
+
* [修复] 修复竞赛总是卡在跳过页面(#738ec9e)
|
|
6
|
+
* [修复] 修复 DMM 版启动游戏的过程中无法中断的问题(#ceaaed7)
|
|
7
|
+
* [新增] 即使执行任务出错也会执行关闭游戏任务(#9c9e4af)
|
|
8
|
+
* [新增] 优化培育方案错误与选人未找到错误的提示(#b51f9cd)
|
|
9
|
+
* [新增] 竞赛未编成时支持暂停与通知(#3be8485)
|
|
10
|
+
|
|
11
|
+
框架:
|
|
12
|
+
* [新增] Task 新增 pre、post、regular、manual 四种 run_at 类型(#0b7054e)
|
|
13
|
+
* [新增] 新增 MessageBox 与 TaskDialog 的 Win32API 封装(#3e544e9)
|
|
14
|
+
* [新增] 支持任务执行中只跳过或停止当前任务(#a167cbf)
|
|
15
|
+
* [重构] 移除了废弃的 dispatcher 与 action 分发器重载(#09252c5)
|
|
16
|
+
|
|
17
|
+
### v2025.7.20.0
|
|
18
|
+
脚本:
|
|
19
|
+
* [修复] 修复商店购买中购买推荐商品时点击推荐标签不生效的问题(#b07d4d3)
|
|
20
|
+
* [修复] 修复 DMM 上由于输出分辨率到日志中导致的启动失败问题(#4deea1d)
|
|
21
|
+
* [修复] 修复严格模式下长时间卡在四张卡的推荐卡检测上(#acfb554)
|
|
22
|
+
|
|
23
|
+
界面:
|
|
24
|
+
* [修复] 修复新建培育方案时会自动修改当前选中的方案的问题(#3e67627)
|
|
25
|
+
* [修复] 修复删除培育时的报错问题(#1b385c0)
|
|
26
|
+
* [新增] 将保留截图数据与跟踪推荐卡两个选项统一移动到调试设置中(#f929046)
|
|
27
|
+
* [新增] 首页快速功能区域新增完成后操作(#b8ade2f)
|
|
28
|
+
|
|
3
29
|
### v2025.7.13.0
|
|
4
30
|
脚本:
|
|
5
31
|
* [新增] 上传报告时一并打包配置文件(#a8a5566)
|
|
@@ -12,6 +12,15 @@ from kotonebot.client import Device
|
|
|
12
12
|
from kotonebot.client.host.protocol import Instance
|
|
13
13
|
from kotonebot.backend.context import init_context, vars
|
|
14
14
|
from kotonebot.backend.context import task_registry, action_registry, Task, Action
|
|
15
|
+
from kotonebot.errors import StopCurrentTask, UserFriendlyError
|
|
16
|
+
from kotonebot.interop.win.task_dialog import TaskDialog
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
@dataclass
|
|
20
|
+
class PostTaskContext:
|
|
21
|
+
has_error: bool
|
|
22
|
+
exception: Exception | None
|
|
23
|
+
|
|
15
24
|
|
|
16
25
|
log_stream = io.StringIO()
|
|
17
26
|
stream_handler = logging.StreamHandler(log_stream)
|
|
@@ -19,10 +28,11 @@ stream_handler.setFormatter(logging.Formatter('[%(asctime)s] [%(levelname)s] [%(
|
|
|
19
28
|
logging.getLogger('kotonebot').addHandler(stream_handler)
|
|
20
29
|
logger = logging.getLogger(__name__)
|
|
21
30
|
|
|
31
|
+
TaskStatusValue = Literal['pending', 'running', 'finished', 'error', 'cancelled', 'stopped']
|
|
22
32
|
@dataclass
|
|
23
33
|
class TaskStatus:
|
|
24
34
|
task: Task
|
|
25
|
-
status:
|
|
35
|
+
status: TaskStatusValue
|
|
26
36
|
|
|
27
37
|
@dataclass
|
|
28
38
|
class RunStatus:
|
|
@@ -73,7 +83,7 @@ class Event(Generic[Params, Return]):
|
|
|
73
83
|
class KotoneBotEvents:
|
|
74
84
|
def __init__(self):
|
|
75
85
|
self.task_status_changed = Event[
|
|
76
|
-
[Task,
|
|
86
|
+
[Task, TaskStatusValue], None
|
|
77
87
|
]()
|
|
78
88
|
self.task_error = Event[
|
|
79
89
|
[Task, Exception], None
|
|
@@ -171,42 +181,80 @@ class KotoneBot:
|
|
|
171
181
|
self._on_after_init_context()
|
|
172
182
|
vars.flow.clear_interrupt()
|
|
173
183
|
|
|
184
|
+
pre_tasks = [task for task in tasks if task.run_at == 'pre']
|
|
185
|
+
regular_tasks = [task for task in tasks if task.run_at == 'regular']
|
|
186
|
+
post_tasks = [task for task in tasks if task.run_at == 'post']
|
|
187
|
+
|
|
174
188
|
if by_priority:
|
|
175
|
-
|
|
176
|
-
|
|
189
|
+
pre_tasks = sorted(pre_tasks, key=lambda x: x.priority, reverse=True)
|
|
190
|
+
regular_tasks = sorted(regular_tasks, key=lambda x: x.priority, reverse=True)
|
|
191
|
+
post_tasks = sorted(post_tasks, key=lambda x: x.priority, reverse=True)
|
|
192
|
+
|
|
193
|
+
all_tasks = pre_tasks + regular_tasks + post_tasks
|
|
194
|
+
for task in all_tasks:
|
|
177
195
|
self.events.task_status_changed.trigger(task, 'pending')
|
|
178
196
|
|
|
179
|
-
|
|
197
|
+
has_error = False
|
|
198
|
+
exception: Exception | None = None
|
|
199
|
+
|
|
200
|
+
for task in all_tasks:
|
|
180
201
|
logger.info(f'Task started: {task.name}')
|
|
181
202
|
self.events.task_status_changed.trigger(task, 'running')
|
|
182
203
|
|
|
183
204
|
if self.debug:
|
|
184
|
-
task.
|
|
205
|
+
if task.run_at == 'post':
|
|
206
|
+
task.func(PostTaskContext(has_error, exception))
|
|
207
|
+
else:
|
|
208
|
+
task.func()
|
|
185
209
|
else:
|
|
186
210
|
try:
|
|
187
|
-
task.
|
|
211
|
+
if task.run_at == 'post':
|
|
212
|
+
task.func(PostTaskContext(has_error, exception))
|
|
213
|
+
else:
|
|
214
|
+
task.func()
|
|
188
215
|
self.events.task_status_changed.trigger(task, 'finished')
|
|
216
|
+
except StopCurrentTask:
|
|
217
|
+
logger.info(f'Task skipped/stopped: {task.name}')
|
|
218
|
+
self.events.task_status_changed.trigger(task, 'stopped')
|
|
189
219
|
# 用户中止
|
|
190
220
|
except KeyboardInterrupt as e:
|
|
191
221
|
logger.exception('Keyboard interrupt detected.')
|
|
192
|
-
for task1 in
|
|
222
|
+
for task1 in all_tasks[all_tasks.index(task):]:
|
|
193
223
|
self.events.task_status_changed.trigger(task1, 'cancelled')
|
|
194
224
|
vars.flow.clear_interrupt()
|
|
195
225
|
break
|
|
226
|
+
# 用户可以自行处理的错误
|
|
227
|
+
except UserFriendlyError as e:
|
|
228
|
+
logger.error(f'Task failed: {task.name}')
|
|
229
|
+
logger.exception(f'Error: ')
|
|
230
|
+
has_error = True
|
|
231
|
+
exception = e
|
|
232
|
+
dialog = TaskDialog(
|
|
233
|
+
title='琴音小助手',
|
|
234
|
+
common_buttons=0,
|
|
235
|
+
main_instruction='任务执行失败',
|
|
236
|
+
content=e.message,
|
|
237
|
+
custom_buttons=e.action_buttons,
|
|
238
|
+
main_icon='error'
|
|
239
|
+
)
|
|
240
|
+
result_custom, _, _ = dialog.show()
|
|
241
|
+
e.invoke(result_custom)
|
|
196
242
|
# 其他错误
|
|
197
243
|
except Exception as e:
|
|
198
244
|
logger.error(f'Task failed: {task.name}')
|
|
199
245
|
logger.exception(f'Error: ')
|
|
246
|
+
has_error = True
|
|
247
|
+
exception = e
|
|
200
248
|
report_path = None
|
|
201
249
|
if self.auto_save_error_report:
|
|
202
250
|
raise NotImplementedError
|
|
203
251
|
self.events.task_status_changed.trigger(task, 'error')
|
|
204
252
|
if not self.resume_on_error:
|
|
205
|
-
for task1 in
|
|
253
|
+
for task1 in all_tasks[all_tasks.index(task)+1:]:
|
|
206
254
|
self.events.task_status_changed.trigger(task1, 'cancelled')
|
|
207
255
|
break
|
|
208
|
-
logger.info(f'Task
|
|
209
|
-
logger.info('All tasks
|
|
256
|
+
logger.info(f'Task ended: {task.name}')
|
|
257
|
+
logger.info('All tasks ended.')
|
|
210
258
|
self.events.finished.trigger()
|
|
211
259
|
|
|
212
260
|
def run_all(self) -> None:
|
|
@@ -228,7 +276,7 @@ class KotoneBot:
|
|
|
228
276
|
self.events.finished -= _on_finished
|
|
229
277
|
self.events.task_status_changed -= _on_task_status_changed
|
|
230
278
|
|
|
231
|
-
def _on_task_status_changed(task: Task, status:
|
|
279
|
+
def _on_task_status_changed(task: Task, status: TaskStatusValue):
|
|
232
280
|
def _find(task: Task) -> TaskStatus:
|
|
233
281
|
for task_status in run_status.tasks:
|
|
234
282
|
if task_status.task == task:
|
|
@@ -1,19 +1,18 @@
|
|
|
1
1
|
import logging
|
|
2
|
-
from typing import Callable, ParamSpec, TypeVar, overload,
|
|
2
|
+
from typing import Callable, ParamSpec, TypeVar, overload, Literal
|
|
3
3
|
from dataclasses import dataclass
|
|
4
|
-
from typing_extensions import deprecated
|
|
5
4
|
|
|
6
|
-
import cv2
|
|
7
|
-
from cv2.typing import MatLike
|
|
8
5
|
|
|
9
6
|
from .context import ContextStackVars, ScreenshotMode
|
|
10
|
-
from ..dispatch import dispatcher as dispatcher_decorator, DispatcherContext
|
|
11
7
|
from ...errors import TaskNotFoundError
|
|
12
8
|
|
|
13
9
|
P = ParamSpec('P')
|
|
14
10
|
R = TypeVar('R')
|
|
15
11
|
logger = logging.getLogger(__name__)
|
|
16
12
|
|
|
13
|
+
TaskRunAtType = Literal['pre', 'post', 'manual', 'regular'] | str
|
|
14
|
+
|
|
15
|
+
|
|
17
16
|
@dataclass
|
|
18
17
|
class Task:
|
|
19
18
|
name: str
|
|
@@ -24,6 +23,8 @@ class Task:
|
|
|
24
23
|
"""
|
|
25
24
|
任务优先级,数字越大优先级越高。
|
|
26
25
|
"""
|
|
26
|
+
run_at: TaskRunAtType = 'regular'
|
|
27
|
+
|
|
27
28
|
|
|
28
29
|
@dataclass
|
|
29
30
|
class Action:
|
|
@@ -51,6 +52,7 @@ def task(
|
|
|
51
52
|
pass_through: bool = False,
|
|
52
53
|
priority: int = 0,
|
|
53
54
|
screenshot_mode: ScreenshotMode = 'auto',
|
|
55
|
+
run_at: TaskRunAtType = 'regular'
|
|
54
56
|
):
|
|
55
57
|
"""
|
|
56
58
|
`task` 装饰器,用于标记一个函数为任务函数。
|
|
@@ -62,6 +64,7 @@ def task(
|
|
|
62
64
|
默认情况下, @task 装饰器会包裹任务函数,跟踪其执行情况。
|
|
63
65
|
如果不想跟踪,则设置此参数为 False。
|
|
64
66
|
:param priority: 任务优先级,数字越大优先级越高。
|
|
67
|
+
:param run_at: 任务运行时间。
|
|
65
68
|
"""
|
|
66
69
|
# 设置 ID
|
|
67
70
|
# 获取 caller 信息
|
|
@@ -70,7 +73,7 @@ def task(
|
|
|
70
73
|
description = description or func.__doc__ or ''
|
|
71
74
|
# TODO: task_id 冲突检测
|
|
72
75
|
task_id = task_id or func.__name__
|
|
73
|
-
task = Task(name, task_id, description, _placeholder, priority)
|
|
76
|
+
task = Task(name, task_id, description, _placeholder, priority, run_at)
|
|
74
77
|
task_registry[name] = task
|
|
75
78
|
logger.debug(f'Task "{name}" registered.')
|
|
76
79
|
if pass_through:
|
|
@@ -98,7 +101,6 @@ def action(
|
|
|
98
101
|
pass_through: bool = False,
|
|
99
102
|
priority: int = 0,
|
|
100
103
|
screenshot_mode: ScreenshotMode | None = None,
|
|
101
|
-
dispatcher: Literal[False] = False,
|
|
102
104
|
) -> Callable[[Callable[P, R]], Callable[P, R]]:
|
|
103
105
|
"""
|
|
104
106
|
`action` 装饰器,用于标记一个函数为动作函数。
|
|
@@ -110,38 +112,6 @@ def action(
|
|
|
110
112
|
如果不想跟踪,则设置此参数为 False。
|
|
111
113
|
:param priority: 动作优先级,数字越大优先级越高。
|
|
112
114
|
:param screenshot_mode: 截图模式。
|
|
113
|
-
:param dispatcher:
|
|
114
|
-
是否为分发器模式。默认为假。
|
|
115
|
-
如果使用分发器,则函数的第一个参数必须为 `ctx: DispatcherContext`。
|
|
116
|
-
"""
|
|
117
|
-
...
|
|
118
|
-
|
|
119
|
-
@overload
|
|
120
|
-
@deprecated('使用普通 while 循环代替')
|
|
121
|
-
def action(
|
|
122
|
-
name: str,
|
|
123
|
-
*,
|
|
124
|
-
description: str|None = None,
|
|
125
|
-
pass_through: bool = False,
|
|
126
|
-
priority: int = 0,
|
|
127
|
-
screenshot_mode: ScreenshotMode | None = None,
|
|
128
|
-
dispatcher: Literal[True, 'fragment'] = True,
|
|
129
|
-
) -> Callable[[Callable[Concatenate[DispatcherContext, P], R]], Callable[P, R]]:
|
|
130
|
-
"""
|
|
131
|
-
`action` 装饰器,用于标记一个函数为动作函数。
|
|
132
|
-
|
|
133
|
-
此重载启用了分发器模式。被装饰函数的第一个参数必须为 `ctx: DispatcherContext`。
|
|
134
|
-
|
|
135
|
-
:param name: 动作名称。如果为 None,则使用函数的名称作为名称。
|
|
136
|
-
:param description: 动作描述。如果为 None,则使用函数的 docstring 作为描述。
|
|
137
|
-
:param pass_through:
|
|
138
|
-
默认情况下, @action 装饰器会包裹动作函数,跟踪其执行情况。
|
|
139
|
-
如果不想跟踪,则设置此参数为 False。
|
|
140
|
-
:param priority: 动作优先级,数字越大优先级越高。
|
|
141
|
-
:param screenshot_mode: 截图模式,必须为 `'manual' / None`。
|
|
142
|
-
:param dispatcher:
|
|
143
|
-
是否为分发器模式。默认为假。
|
|
144
|
-
如果使用分发器,则函数的第一个参数必须为 `ctx: DispatcherContext`。
|
|
145
115
|
"""
|
|
146
116
|
...
|
|
147
117
|
|
|
@@ -176,11 +146,6 @@ def action(*args, **kwargs):
|
|
|
176
146
|
pass_through = kwargs.get('pass_through', False)
|
|
177
147
|
priority = kwargs.get('priority', 0)
|
|
178
148
|
screenshot_mode = kwargs.get('screenshot_mode', None)
|
|
179
|
-
dispatcher = kwargs.get('dispatcher', False)
|
|
180
|
-
if dispatcher == True or dispatcher == 'fragment':
|
|
181
|
-
if not (screenshot_mode is None or screenshot_mode == 'manual'):
|
|
182
|
-
raise ValueError('`screenshot_mode` must be None or "manual" when `dispatcher=True`.')
|
|
183
|
-
screenshot_mode = 'manual'
|
|
184
149
|
def _action_decorator(func: Callable):
|
|
185
150
|
nonlocal pass_through
|
|
186
151
|
action = _register(_placeholder, name, description)
|
|
@@ -188,8 +153,6 @@ def action(*args, **kwargs):
|
|
|
188
153
|
if pass_through:
|
|
189
154
|
return func
|
|
190
155
|
else:
|
|
191
|
-
if dispatcher:
|
|
192
|
-
func = dispatcher_decorator(func, fragment=(dispatcher == 'fragment')) # type: ignore
|
|
193
156
|
def _wrapper(*args: P.args, **kwargs: P.kwargs):
|
|
194
157
|
current_callstack.append(action)
|
|
195
158
|
vars = ContextStackVars.push(screenshot_mode=screenshot_mode)
|
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
import time
|
|
2
|
-
import uuid
|
|
3
2
|
import logging
|
|
4
|
-
import inspect
|
|
5
|
-
from logging import Logger
|
|
6
|
-
from types import CodeType
|
|
7
3
|
from dataclasses import dataclass
|
|
8
|
-
from typing import
|
|
9
|
-
from typing_extensions import deprecated
|
|
4
|
+
from typing import Any, Callable, Literal
|
|
10
5
|
|
|
11
6
|
from dataclasses import dataclass
|
|
12
7
|
|
|
@@ -16,104 +11,6 @@ from kotonebot.primitives import Rect, is_rect
|
|
|
16
11
|
from .core import Image
|
|
17
12
|
|
|
18
13
|
logger = logging.getLogger(__name__)
|
|
19
|
-
P = ParamSpec('P')
|
|
20
|
-
R = TypeVar('R')
|
|
21
|
-
ThenAction = Literal['click', 'log']
|
|
22
|
-
DoAction = Literal['click']
|
|
23
|
-
# TODO: 需要找个地方统一管理这些属性名
|
|
24
|
-
ATTR_DISPATCHER_MARK = '__kb_dispatcher_mark'
|
|
25
|
-
ATTR_ORIGINAL_FUNC = '_kb_inner'
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
class DispatchFunc: pass
|
|
29
|
-
|
|
30
|
-
wrapper_to_func: dict[Callable, Callable] = {}
|
|
31
|
-
|
|
32
|
-
class DispatcherContext:
|
|
33
|
-
def __init__(self):
|
|
34
|
-
self.finished: bool = False
|
|
35
|
-
self._first_run: bool = True
|
|
36
|
-
|
|
37
|
-
def finish(self):
|
|
38
|
-
"""标记已完成 dispatcher 循环。循环将在下次条件检测时退出。"""
|
|
39
|
-
self.finished = True
|
|
40
|
-
|
|
41
|
-
def expand(self, func: Annotated[Callable[[], Any], DispatchFunc], ignore_finish: bool = True):
|
|
42
|
-
"""
|
|
43
|
-
调用其他 dispatcher 函数。
|
|
44
|
-
|
|
45
|
-
使用 `expand` 和直接调用的区别是:
|
|
46
|
-
* 直接调用会执行 while 循环,直到满足结束条件
|
|
47
|
-
* 而使用 `expand` 则只会执行一次。效果类似于将目标函数里的代码直接复制粘贴过来。
|
|
48
|
-
"""
|
|
49
|
-
# 获取原始函数
|
|
50
|
-
original_func = func
|
|
51
|
-
while not getattr(original_func, ATTR_DISPATCHER_MARK, False):
|
|
52
|
-
original_func = getattr(original_func, ATTR_ORIGINAL_FUNC)
|
|
53
|
-
original_func = getattr(original_func, ATTR_ORIGINAL_FUNC)
|
|
54
|
-
|
|
55
|
-
if not original_func:
|
|
56
|
-
raise ValueError(f'{repr(func)} is not a dispatcher function.')
|
|
57
|
-
elif not callable(original_func):
|
|
58
|
-
raise ValueError(f'{repr(original_func)} is not callable.')
|
|
59
|
-
original_func = cast(Callable[[DispatcherContext], Any], original_func)
|
|
60
|
-
|
|
61
|
-
old_finished = self.finished
|
|
62
|
-
ret = original_func(self)
|
|
63
|
-
if ignore_finish:
|
|
64
|
-
self.finished = old_finished
|
|
65
|
-
return ret
|
|
66
|
-
|
|
67
|
-
@property
|
|
68
|
-
def beginning(self) -> bool:
|
|
69
|
-
"""是否为第一次运行"""
|
|
70
|
-
return self._first_run
|
|
71
|
-
|
|
72
|
-
@property
|
|
73
|
-
def finishing(self) -> bool:
|
|
74
|
-
"""是否即将结束运行"""
|
|
75
|
-
return self.finished
|
|
76
|
-
|
|
77
|
-
@deprecated('使用 SimpleDispatcher 类或 while 循环替代')
|
|
78
|
-
def dispatcher(
|
|
79
|
-
func: Callable[Concatenate[DispatcherContext, P], R],
|
|
80
|
-
*,
|
|
81
|
-
fragment: bool = False
|
|
82
|
-
) -> Annotated[Callable[P, R], DispatchFunc]:
|
|
83
|
-
"""
|
|
84
|
-
注意:\n
|
|
85
|
-
此装饰器必须在应用 @action/@task 装饰器后再应用,且 `screenshot_mode='manual'` 参数必须设置。
|
|
86
|
-
或者也可以使用 @action/@task 装饰器中的 `dispatcher=True` 参数,
|
|
87
|
-
那么就没有上面两个要求了。
|
|
88
|
-
|
|
89
|
-
:param fragment:
|
|
90
|
-
片段模式,默认不启用。
|
|
91
|
-
启用后,被装饰函数将会只执行依次,
|
|
92
|
-
而不会一直循环到 ctx.finish() 被调用。
|
|
93
|
-
"""
|
|
94
|
-
def wrapper(*args: P.args, **kwargs: P.kwargs):
|
|
95
|
-
ctx = DispatcherContext()
|
|
96
|
-
while not ctx.finished:
|
|
97
|
-
from kotonebot import device
|
|
98
|
-
device.screenshot()
|
|
99
|
-
ret = func(ctx, *args, **kwargs)
|
|
100
|
-
ctx._first_run = False
|
|
101
|
-
return ret
|
|
102
|
-
def fragment_wrapper(*args: P.args, **kwargs: P.kwargs):
|
|
103
|
-
ctx = DispatcherContext()
|
|
104
|
-
from kotonebot import device
|
|
105
|
-
device.screenshot()
|
|
106
|
-
return func(ctx, *args, **kwargs)
|
|
107
|
-
setattr(wrapper, ATTR_ORIGINAL_FUNC, func)
|
|
108
|
-
setattr(fragment_wrapper, ATTR_ORIGINAL_FUNC, func)
|
|
109
|
-
setattr(wrapper, ATTR_DISPATCHER_MARK, True)
|
|
110
|
-
setattr(fragment_wrapper, ATTR_DISPATCHER_MARK, True)
|
|
111
|
-
wrapper_to_func[wrapper] = func
|
|
112
|
-
if fragment:
|
|
113
|
-
return fragment_wrapper
|
|
114
|
-
|
|
115
|
-
else:
|
|
116
|
-
return wrapper
|
|
117
14
|
|
|
118
15
|
@dataclass
|
|
119
16
|
class ClickParams:
|
|
@@ -95,7 +95,7 @@ class FlowController:
|
|
|
95
95
|
logger.info('Interrupt requested.')
|
|
96
96
|
self.interrupt_event.set()
|
|
97
97
|
|
|
98
|
-
def request_pause(self) -> None:
|
|
98
|
+
def request_pause(self, *, wait_resume: bool = False) -> None:
|
|
99
99
|
"""
|
|
100
100
|
请求暂停任务。
|
|
101
101
|
|
|
@@ -106,6 +106,8 @@ class FlowController:
|
|
|
106
106
|
if not self.paused:
|
|
107
107
|
logger.info('Pause requested.')
|
|
108
108
|
self.paused = True
|
|
109
|
+
if wait_resume:
|
|
110
|
+
self.check()
|
|
109
111
|
|
|
110
112
|
def request_resume(self) -> None:
|
|
111
113
|
"""
|
|
@@ -1,9 +1,41 @@
|
|
|
1
|
+
from typing import Callable
|
|
2
|
+
|
|
3
|
+
|
|
1
4
|
class KotonebotError(Exception):
|
|
2
5
|
pass
|
|
3
6
|
|
|
4
7
|
class KotonebotWarning(Warning):
|
|
5
8
|
pass
|
|
6
9
|
|
|
10
|
+
class UserFriendlyError(KotonebotError):
|
|
11
|
+
def __init__(
|
|
12
|
+
self,
|
|
13
|
+
message: str,
|
|
14
|
+
actions: list[tuple[int, str, Callable[[], None]]] = [],
|
|
15
|
+
*args, **kwargs
|
|
16
|
+
) -> None:
|
|
17
|
+
super().__init__(*args, **kwargs)
|
|
18
|
+
self.message = message
|
|
19
|
+
self.actions = actions or []
|
|
20
|
+
|
|
21
|
+
@property
|
|
22
|
+
def action_buttons(self) -> list[tuple[int, str]]:
|
|
23
|
+
"""
|
|
24
|
+
以 (id: int, btn_text: str) 的形式返回所有按钮定义。
|
|
25
|
+
"""
|
|
26
|
+
return [(id, text) for id, text, _ in self.actions]
|
|
27
|
+
|
|
28
|
+
def invoke(self, action_id: int):
|
|
29
|
+
"""
|
|
30
|
+
执行指定 ID 的 action。
|
|
31
|
+
"""
|
|
32
|
+
for id, _, func in self.actions:
|
|
33
|
+
if id == action_id:
|
|
34
|
+
func()
|
|
35
|
+
break
|
|
36
|
+
else:
|
|
37
|
+
raise ValueError(f'Action with id {action_id} not found.')
|
|
38
|
+
|
|
7
39
|
class UnrecoverableError(KotonebotError):
|
|
8
40
|
pass
|
|
9
41
|
|
|
@@ -31,7 +63,10 @@ class UnscalableResolutionError(KotonebotError):
|
|
|
31
63
|
self.screen_size = screen_size
|
|
32
64
|
super().__init__(f'Cannot scale to target resolution {target_resolution}. '
|
|
33
65
|
f'Screen size: {screen_size}')
|
|
34
|
-
|
|
66
|
+
|
|
35
67
|
class ContextNotInitializedError(KotonebotError):
|
|
36
68
|
def __init__(self, msg: str = 'Context not initialized'):
|
|
37
|
-
super().__init__(msg)
|
|
69
|
+
super().__init__(msg)
|
|
70
|
+
|
|
71
|
+
class StopCurrentTask(KotonebotError):
|
|
72
|
+
pass
|