ksaa 2025.8.23.1__py3-none-any.whl → 2025.9b2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (764) hide show
  1. {kotonebot/kaa → kaa}/application/core/idle_mode.py +1 -1
  2. {kotonebot/kaa → kaa}/application/core/misc_core.py +1 -1
  3. {kotonebot/kaa → kaa}/common.py +2 -2
  4. {kotonebot/kaa → kaa}/config/const.py +1 -1
  5. {kotonebot/kaa → kaa}/config/produce.py +1 -1
  6. {kotonebot/kaa → kaa}/config/schema.py +10 -1
  7. {kotonebot/kaa → kaa}/db/sqlite.py +1 -1
  8. {kotonebot/kaa → kaa}/errors.py +7 -0
  9. {kotonebot/kaa → kaa}/game_ui/dialog.py +1 -1
  10. {kotonebot/kaa → kaa}/game_ui/idols_overview.py +4 -4
  11. {kotonebot/kaa → kaa}/game_ui/schedule.py +2 -2
  12. {kotonebot/kaa → kaa}/game_ui/scrollable.py +4 -3
  13. {kotonebot/kaa → kaa}/image_db/db.py +1 -1
  14. {kotonebot/kaa → kaa}/main/gr.py +157 -65
  15. {kotonebot/kaa → kaa}/main/kaa.py +2 -2
  16. {kotonebot/kaa → kaa}/metadata.py +55 -0
  17. kaa/resources/__pycache__/__init__.cpython-310.pyc +0 -0
  18. {kotonebot/kaa → kaa}/resources/game.db +0 -0
  19. kaa/resources/game_ver.txt +0 -0
  20. kaa/resources/idol_cards/i_card-skin-fktn-3-014_0.png +0 -0
  21. kaa/sprites/207594fa-6a0b-45ec-aeff-b3e45348c508.png +0 -0
  22. kaa/sprites/9483fae5-3a72-4684-9403-d25d2c602d3d.png +0 -0
  23. kaa/sprites/eaad330d-4e50-4b55-be2c-8da0f72764d9.png +0 -0
  24. {kotonebot/kaa → kaa}/tasks/R.py +133 -127
  25. {kotonebot/kaa → kaa}/tasks/actions/commu.py +3 -3
  26. {kotonebot/kaa → kaa}/tasks/actions/loading.py +1 -1
  27. {kotonebot/kaa → kaa}/tasks/actions/scenes.py +5 -3
  28. {kotonebot/kaa → kaa}/tasks/actions/stats.py +1 -1
  29. {kotonebot/kaa → kaa}/tasks/daily/acquire_activity_funds.py +2 -2
  30. {kotonebot/kaa → kaa}/tasks/daily/acquire_presents.py +2 -2
  31. {kotonebot/kaa → kaa}/tasks/daily/assignment.py +2 -2
  32. {kotonebot/kaa → kaa}/tasks/daily/capsule_toys.py +4 -3
  33. {kotonebot/kaa → kaa}/tasks/daily/club_reward.py +3 -3
  34. {kotonebot/kaa → kaa}/tasks/daily/contest.py +4 -4
  35. {kotonebot/kaa → kaa}/tasks/daily/mission_reward.py +2 -2
  36. {kotonebot/kaa → kaa}/tasks/daily/purchase.py +2 -2
  37. {kotonebot/kaa → kaa}/tasks/daily/upgrade_support_card.py +3 -3
  38. {kotonebot/kaa → kaa}/tasks/end_game.py +1 -1
  39. {kotonebot/kaa → kaa}/tasks/produce/cards.py +17 -7
  40. {kotonebot/kaa → kaa}/tasks/produce/common.py +94 -6
  41. {kotonebot/kaa → kaa}/tasks/produce/in_purodyuusu.py +94 -71
  42. {kotonebot/kaa → kaa}/tasks/produce/non_lesson_actions.py +17 -11
  43. {kotonebot/kaa → kaa}/tasks/produce/p_drink.py +1 -1
  44. {kotonebot/kaa → kaa}/tasks/produce/produce.py +42 -61
  45. {kotonebot/kaa → kaa}/tasks/start_game.py +9 -7
  46. {kotonebot/kaa → kaa}/util/paths.py +1 -1
  47. {ksaa-2025.8.23.1.dist-info → ksaa-2025.9b2.dist-info}/METADATA +5 -2
  48. ksaa-2025.9b2.dist-info/RECORD +519 -0
  49. ksaa-2025.9b2.dist-info/entry_points.txt +2 -0
  50. ksaa-2025.9b2.dist-info/top_level.txt +1 -0
  51. kotonebot/__init__.py +0 -40
  52. kotonebot/backend/bot.py +0 -302
  53. kotonebot/backend/color.py +0 -525
  54. kotonebot/backend/context/__init__.py +0 -3
  55. kotonebot/backend/context/context.py +0 -1001
  56. kotonebot/backend/context/task_action.py +0 -176
  57. kotonebot/backend/core.py +0 -126
  58. kotonebot/backend/debug/__init__.py +0 -1
  59. kotonebot/backend/debug/entry.py +0 -89
  60. kotonebot/backend/debug/mock.py +0 -79
  61. kotonebot/backend/debug/server.py +0 -223
  62. kotonebot/backend/debug/vars.py +0 -346
  63. kotonebot/backend/dispatch.py +0 -228
  64. kotonebot/backend/flow_controller.py +0 -197
  65. kotonebot/backend/image.py +0 -748
  66. kotonebot/backend/loop.py +0 -277
  67. kotonebot/backend/ocr.py +0 -511
  68. kotonebot/backend/preprocessor.py +0 -103
  69. kotonebot/client/__init__.py +0 -10
  70. kotonebot/client/device.py +0 -500
  71. kotonebot/client/fast_screenshot.py +0 -378
  72. kotonebot/client/host/__init__.py +0 -12
  73. kotonebot/client/host/adb_common.py +0 -94
  74. kotonebot/client/host/custom.py +0 -114
  75. kotonebot/client/host/leidian_host.py +0 -202
  76. kotonebot/client/host/mumu12_host.py +0 -245
  77. kotonebot/client/host/protocol.py +0 -213
  78. kotonebot/client/host/windows_common.py +0 -55
  79. kotonebot/client/implements/__init__.py +0 -7
  80. kotonebot/client/implements/adb.py +0 -85
  81. kotonebot/client/implements/adb_raw.py +0 -159
  82. kotonebot/client/implements/nemu_ipc/__init__.py +0 -8
  83. kotonebot/client/implements/nemu_ipc/external_renderer_ipc.py +0 -280
  84. kotonebot/client/implements/nemu_ipc/nemu_ipc.py +0 -327
  85. kotonebot/client/implements/remote_windows.py +0 -193
  86. kotonebot/client/implements/uiautomator2.py +0 -82
  87. kotonebot/client/implements/windows.py +0 -168
  88. kotonebot/client/protocol.py +0 -69
  89. kotonebot/client/registration.py +0 -24
  90. kotonebot/config/__init__.py +0 -1
  91. kotonebot/config/base_config.py +0 -96
  92. kotonebot/config/manager.py +0 -36
  93. kotonebot/debug_entry.py +0 -42
  94. kotonebot/errors.py +0 -72
  95. kotonebot/interop/win/message_box.py +0 -314
  96. kotonebot/interop/win/reg.py +0 -37
  97. kotonebot/interop/win/shortcut.py +0 -43
  98. kotonebot/interop/win/task_dialog.py +0 -469
  99. kotonebot/kaa/resources/__pycache__/__init__.cpython-310.pyc +0 -0
  100. kotonebot/kaa/resources/game_ver.txt +0 -0
  101. kotonebot/kaa/resources/idol_cards/i_card-skin-fktn-3-014_0.png +0 -0
  102. kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-011_0.png +0 -0
  103. kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-011_1.png +0 -0
  104. kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-012_0.png +0 -0
  105. kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-012_1.png +0 -0
  106. kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-013_0.png +0 -0
  107. kotonebot/kaa/resources/idol_cards/i_card-skin-jsna-3-013_1.png +0 -0
  108. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-1-000_0.png +0 -0
  109. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-1-000_1.png +0 -0
  110. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-1-001_0.png +0 -0
  111. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-1-001_1.png +0 -0
  112. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-2-000_0.png +0 -0
  113. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-2-000_1.png +0 -0
  114. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-000_0.png +0 -0
  115. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-000_1.png +0 -0
  116. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-001_0.png +0 -0
  117. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-001_1.png +0 -0
  118. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-002_0.png +0 -0
  119. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-002_1.png +0 -0
  120. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-003_0.png +0 -0
  121. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-003_1.png +0 -0
  122. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-004_0.png +0 -0
  123. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-004_1.png +0 -0
  124. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-005_0.png +0 -0
  125. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-005_1.png +0 -0
  126. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-006_0.png +0 -0
  127. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-006_1.png +0 -0
  128. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-007_0.png +0 -0
  129. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-007_1.png +0 -0
  130. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-008_0.png +0 -0
  131. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-008_1.png +0 -0
  132. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-009_0.png +0 -0
  133. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-009_1.png +0 -0
  134. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-010_0.png +0 -0
  135. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-010_1.png +0 -0
  136. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-011_0.png +0 -0
  137. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-011_1.png +0 -0
  138. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-012_0.png +0 -0
  139. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-012_1.png +0 -0
  140. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-013_0.png +0 -0
  141. kotonebot/kaa/resources/idol_cards/i_card-skin-kcna-3-013_1.png +0 -0
  142. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-1-000_0.png +0 -0
  143. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-1-000_1.png +0 -0
  144. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-1-001_0.png +0 -0
  145. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-1-001_1.png +0 -0
  146. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-2-000_0.png +0 -0
  147. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-2-000_1.png +0 -0
  148. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-000_0.png +0 -0
  149. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-000_1.png +0 -0
  150. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-001_0.png +0 -0
  151. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-001_1.png +0 -0
  152. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-002_0.png +0 -0
  153. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-002_1.png +0 -0
  154. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-004_0.png +0 -0
  155. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-004_1.png +0 -0
  156. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-005_0.png +0 -0
  157. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-005_1.png +0 -0
  158. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-006_0.png +0 -0
  159. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-006_1.png +0 -0
  160. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-007_0.png +0 -0
  161. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-007_1.png +0 -0
  162. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-008_0.png +0 -0
  163. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-008_1.png +0 -0
  164. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-009_0.png +0 -0
  165. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-009_1.png +0 -0
  166. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-010_0.png +0 -0
  167. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-010_1.png +0 -0
  168. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-011_0.png +0 -0
  169. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-011_1.png +0 -0
  170. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-012_0.png +0 -0
  171. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-012_1.png +0 -0
  172. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-013_0.png +0 -0
  173. kotonebot/kaa/resources/idol_cards/i_card-skin-kllj-3-013_1.png +0 -0
  174. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-1-000_0.png +0 -0
  175. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-1-000_1.png +0 -0
  176. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-1-001_0.png +0 -0
  177. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-1-001_1.png +0 -0
  178. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-2-000_0.png +0 -0
  179. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-2-000_1.png +0 -0
  180. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-000_0.png +0 -0
  181. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-000_1.png +0 -0
  182. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-001_0.png +0 -0
  183. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-001_1.png +0 -0
  184. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-002_0.png +0 -0
  185. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-002_1.png +0 -0
  186. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-003_0.png +0 -0
  187. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-003_1.png +0 -0
  188. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-004_0.png +0 -0
  189. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-004_1.png +0 -0
  190. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-006_0.png +0 -0
  191. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-006_1.png +0 -0
  192. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-007_0.png +0 -0
  193. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-007_1.png +0 -0
  194. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-008_0.png +0 -0
  195. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-008_1.png +0 -0
  196. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-009_0.png +0 -0
  197. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-009_1.png +0 -0
  198. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-010_0.png +0 -0
  199. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-010_1.png +0 -0
  200. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-011_0.png +0 -0
  201. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-011_1.png +0 -0
  202. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-012_0.png +0 -0
  203. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-012_1.png +0 -0
  204. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-013_0.png +0 -0
  205. kotonebot/kaa/resources/idol_cards/i_card-skin-shro-3-013_1.png +0 -0
  206. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-1-000_0.png +0 -0
  207. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-1-000_1.png +0 -0
  208. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-1-001_0.png +0 -0
  209. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-1-001_1.png +0 -0
  210. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-2-000_0.png +0 -0
  211. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-2-000_1.png +0 -0
  212. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-000_0.png +0 -0
  213. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-000_1.png +0 -0
  214. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-001_0.png +0 -0
  215. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-001_1.png +0 -0
  216. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-002_0.png +0 -0
  217. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-002_1.png +0 -0
  218. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-003_0.png +0 -0
  219. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-003_1.png +0 -0
  220. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-005_0.png +0 -0
  221. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-005_1.png +0 -0
  222. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-006_0.png +0 -0
  223. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-006_1.png +0 -0
  224. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-007_0.png +0 -0
  225. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-007_1.png +0 -0
  226. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-008_0.png +0 -0
  227. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-008_1.png +0 -0
  228. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-009_0.png +0 -0
  229. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-009_1.png +0 -0
  230. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-010_0.png +0 -0
  231. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-010_1.png +0 -0
  232. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-011_0.png +0 -0
  233. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-011_1.png +0 -0
  234. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-012_0.png +0 -0
  235. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-012_1.png +0 -0
  236. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-013_0.png +0 -0
  237. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-013_1.png +0 -0
  238. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-014_0.png +0 -0
  239. kotonebot/kaa/resources/idol_cards/i_card-skin-ssmk-3-014_1.png +0 -0
  240. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-1-000_0.png +0 -0
  241. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-1-000_1.png +0 -0
  242. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-1-001_0.png +0 -0
  243. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-1-001_1.png +0 -0
  244. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-2-000_0.png +0 -0
  245. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-2-000_1.png +0 -0
  246. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-000_0.png +0 -0
  247. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-000_1.png +0 -0
  248. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-001_0.png +0 -0
  249. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-001_1.png +0 -0
  250. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-002_0.png +0 -0
  251. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-002_1.png +0 -0
  252. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-003_0.png +0 -0
  253. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-003_1.png +0 -0
  254. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-004_0.png +0 -0
  255. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-004_1.png +0 -0
  256. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-006_0.png +0 -0
  257. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-006_1.png +0 -0
  258. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-007_0.png +0 -0
  259. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-007_1.png +0 -0
  260. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-008_0.png +0 -0
  261. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-008_1.png +0 -0
  262. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-009_0.png +0 -0
  263. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-009_1.png +0 -0
  264. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-010_0.png +0 -0
  265. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-010_1.png +0 -0
  266. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-011_0.png +0 -0
  267. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-011_1.png +0 -0
  268. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-012_0.png +0 -0
  269. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-012_1.png +0 -0
  270. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-013_0.png +0 -0
  271. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-013_1.png +0 -0
  272. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-014_0.png +0 -0
  273. kotonebot/kaa/resources/idol_cards/i_card-skin-ttmr-3-014_1.png +0 -0
  274. kotonebot/kaa/tasks/actions/__init__.py +0 -0
  275. kotonebot/kaa/tasks/daily/__init__.py +0 -0
  276. kotonebot/kaa/tasks/produce/__init__.py +0 -0
  277. kotonebot/logging/__init__.py +0 -2
  278. kotonebot/logging/log.py +0 -18
  279. kotonebot/primitives/__init__.py +0 -17
  280. kotonebot/primitives/geometry.py +0 -290
  281. kotonebot/primitives/visual.py +0 -63
  282. kotonebot/tools/__init__.py +0 -0
  283. kotonebot/tools/mirror.py +0 -354
  284. kotonebot/ui/__init__.py +0 -0
  285. kotonebot/ui/file_host/sensio.py +0 -36
  286. kotonebot/ui/file_host/tmp_send.py +0 -54
  287. kotonebot/ui/pushkit/__init__.py +0 -3
  288. kotonebot/ui/pushkit/image_host.py +0 -87
  289. kotonebot/ui/pushkit/protocol.py +0 -13
  290. kotonebot/ui/pushkit/wxpusher.py +0 -53
  291. kotonebot/ui/user.py +0 -144
  292. kotonebot/util.py +0 -409
  293. ksaa-2025.8.23.1.dist-info/RECORD +0 -755
  294. ksaa-2025.8.23.1.dist-info/entry_points.txt +0 -2
  295. ksaa-2025.8.23.1.dist-info/top_level.txt +0 -1
  296. {kotonebot/kaa → kaa}/application/adapter/misc_adapter.py +0 -0
  297. {kotonebot/kaa → kaa}/config/__init__.py +0 -0
  298. {kotonebot/kaa → kaa}/config/migrations/__init__.py +0 -0
  299. {kotonebot/kaa → kaa}/config/migrations/_idol.py +0 -0
  300. {kotonebot/kaa → kaa}/config/migrations/_v1_to_v2.py +0 -0
  301. {kotonebot/kaa → kaa}/config/migrations/_v2_to_v3.py +0 -0
  302. {kotonebot/kaa → kaa}/config/migrations/_v3_to_v4.py +0 -0
  303. {kotonebot/kaa → kaa}/config/migrations/_v4_to_v5.py +0 -0
  304. {kotonebot/kaa → kaa}/config/migrations/_v5_to_v6.py +0 -0
  305. {kotonebot/kaa → kaa}/config/upgrade.py +0 -0
  306. {kotonebot/kaa → kaa}/db/__init__.py +0 -0
  307. {kotonebot/kaa → kaa}/db/constants.py +0 -0
  308. {kotonebot/kaa → kaa}/db/idol_card.py +0 -0
  309. {kotonebot/kaa → kaa}/game_ui/__init__.py +0 -0
  310. {kotonebot/kaa → kaa}/game_ui/badge.py +0 -0
  311. {kotonebot/kaa → kaa}/game_ui/common.py +0 -0
  312. {kotonebot/kaa → kaa}/game_ui/commu_event_buttons.py +0 -0
  313. {kotonebot/kaa → kaa}/game_ui/primary_button.py +0 -0
  314. {kotonebot/kaa → kaa}/game_ui/toolbar.py +0 -0
  315. {kotonebot/kaa → kaa}/image_db/__init__.py +0 -0
  316. {kotonebot/kaa → kaa}/image_db/descriptors/__init__.py +0 -0
  317. {kotonebot/kaa → kaa}/image_db/descriptors/hist.py +0 -0
  318. {kotonebot/kaa → kaa}/kaa_context.py +0 -0
  319. {kotonebot/kaa → kaa}/main/__init__.py +0 -0
  320. {kotonebot/kaa → kaa}/main/cli.py +0 -0
  321. {kotonebot/kaa → kaa}/main/dmm_host.py +0 -0
  322. {kotonebot/backend → kaa/resources}/__init__.py +0 -0
  323. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-1-000_0.png +0 -0
  324. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-1-000_1.png +0 -0
  325. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-1-001_0.png +0 -0
  326. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-1-001_1.png +0 -0
  327. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-2-000_0.png +0 -0
  328. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-2-000_1.png +0 -0
  329. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-000_0.png +0 -0
  330. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-000_1.png +0 -0
  331. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-001_0.png +0 -0
  332. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-001_1.png +0 -0
  333. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-002_0.png +0 -0
  334. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-002_1.png +0 -0
  335. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-003_0.png +0 -0
  336. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-003_1.png +0 -0
  337. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-005_0.png +0 -0
  338. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-005_1.png +0 -0
  339. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-006_0.png +0 -0
  340. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-006_1.png +0 -0
  341. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-007_0.png +0 -0
  342. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-007_1.png +0 -0
  343. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-008_0.png +0 -0
  344. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-008_1.png +0 -0
  345. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-009_0.png +0 -0
  346. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-009_1.png +0 -0
  347. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-010_0.png +0 -0
  348. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-010_1.png +0 -0
  349. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-011_0.png +0 -0
  350. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-011_1.png +0 -0
  351. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-012_0.png +0 -0
  352. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-012_1.png +0 -0
  353. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-013_0.png +0 -0
  354. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-amao-3-013_1.png +0 -0
  355. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-1-000_0.png +0 -0
  356. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-1-000_1.png +0 -0
  357. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-1-001_0.png +0 -0
  358. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-1-001_1.png +0 -0
  359. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-2-000_0.png +0 -0
  360. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-2-000_1.png +0 -0
  361. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-000_0.png +0 -0
  362. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-000_1.png +0 -0
  363. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-001_0.png +0 -0
  364. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-001_1.png +0 -0
  365. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-002_0.png +0 -0
  366. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-002_1.png +0 -0
  367. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-003_0.png +0 -0
  368. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-003_1.png +0 -0
  369. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-005_0.png +0 -0
  370. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-005_1.png +0 -0
  371. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-006_0.png +0 -0
  372. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-006_1.png +0 -0
  373. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-007_0.png +0 -0
  374. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-007_1.png +0 -0
  375. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-008_0.png +0 -0
  376. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-008_1.png +0 -0
  377. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-009_0.png +0 -0
  378. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-009_1.png +0 -0
  379. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-010_0.png +0 -0
  380. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-010_1.png +0 -0
  381. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-011_0.png +0 -0
  382. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-011_1.png +0 -0
  383. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-012_0.png +0 -0
  384. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-012_1.png +0 -0
  385. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-013_0.png +0 -0
  386. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-013_1.png +0 -0
  387. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-014_1.png +0 -0
  388. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-015_0.png +0 -0
  389. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-fktn-3-015_1.png +0 -0
  390. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-1-000_0.png +0 -0
  391. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-1-000_1.png +0 -0
  392. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-1-001_0.png +0 -0
  393. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-1-001_1.png +0 -0
  394. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-2-000_0.png +0 -0
  395. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-2-000_1.png +0 -0
  396. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-3-000_0.png +0 -0
  397. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-3-000_1.png +0 -0
  398. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-3-001_0.png +0 -0
  399. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-3-001_1.png +0 -0
  400. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-3-002_0.png +0 -0
  401. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-3-002_1.png +0 -0
  402. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-3-005_0.png +0 -0
  403. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-3-005_1.png +0 -0
  404. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-3-010_0.png +0 -0
  405. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-3-010_1.png +0 -0
  406. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-3-012_0.png +0 -0
  407. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hmsz-3-012_1.png +0 -0
  408. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-1-000_0.png +0 -0
  409. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-1-000_1.png +0 -0
  410. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-1-001_0.png +0 -0
  411. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-1-001_1.png +0 -0
  412. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-2-000_0.png +0 -0
  413. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-2-000_1.png +0 -0
  414. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-000_0.png +0 -0
  415. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-000_1.png +0 -0
  416. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-001_0.png +0 -0
  417. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-001_1.png +0 -0
  418. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-002_0.png +0 -0
  419. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-002_1.png +0 -0
  420. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-003_0.png +0 -0
  421. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-003_1.png +0 -0
  422. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-004_0.png +0 -0
  423. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-004_1.png +0 -0
  424. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-005_0.png +0 -0
  425. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-005_1.png +0 -0
  426. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-006_0.png +0 -0
  427. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-006_1.png +0 -0
  428. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-007_0.png +0 -0
  429. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-007_1.png +0 -0
  430. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-008_0.png +0 -0
  431. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-008_1.png +0 -0
  432. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-009_0.png +0 -0
  433. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-009_1.png +0 -0
  434. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-010_0.png +0 -0
  435. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-010_1.png +0 -0
  436. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-011_0.png +0 -0
  437. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-011_1.png +0 -0
  438. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-012_0.png +0 -0
  439. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-012_1.png +0 -0
  440. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-014_0.png +0 -0
  441. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hrnm-3-014_1.png +0 -0
  442. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-1-000_0.png +0 -0
  443. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-1-000_1.png +0 -0
  444. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-1-001_0.png +0 -0
  445. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-1-001_1.png +0 -0
  446. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-2-000_0.png +0 -0
  447. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-2-000_1.png +0 -0
  448. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-000_0.png +0 -0
  449. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-000_1.png +0 -0
  450. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-001_0.png +0 -0
  451. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-001_1.png +0 -0
  452. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-002_0.png +0 -0
  453. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-002_1.png +0 -0
  454. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-003_0.png +0 -0
  455. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-003_1.png +0 -0
  456. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-005_0.png +0 -0
  457. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-005_1.png +0 -0
  458. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-006_0.png +0 -0
  459. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-006_1.png +0 -0
  460. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-007_0.png +0 -0
  461. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-007_1.png +0 -0
  462. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-008_0.png +0 -0
  463. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-008_1.png +0 -0
  464. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-009_0.png +0 -0
  465. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-009_1.png +0 -0
  466. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-010_0.png +0 -0
  467. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-010_1.png +0 -0
  468. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-011_0.png +0 -0
  469. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-011_1.png +0 -0
  470. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-012_0.png +0 -0
  471. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-012_1.png +0 -0
  472. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-013_0.png +0 -0
  473. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-013_1.png +0 -0
  474. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-014_0.png +0 -0
  475. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hski-3-014_1.png +0 -0
  476. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-1-000_0.png +0 -0
  477. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-1-000_1.png +0 -0
  478. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-1-001_0.png +0 -0
  479. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-1-001_1.png +0 -0
  480. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-2-000_0.png +0 -0
  481. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-2-000_1.png +0 -0
  482. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-000_0.png +0 -0
  483. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-000_1.png +0 -0
  484. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-001_0.png +0 -0
  485. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-001_1.png +0 -0
  486. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-002_0.png +0 -0
  487. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-002_1.png +0 -0
  488. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-004_0.png +0 -0
  489. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-004_1.png +0 -0
  490. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-005_0.png +0 -0
  491. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-005_1.png +0 -0
  492. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-006_0.png +0 -0
  493. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-006_1.png +0 -0
  494. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-011_0.png +0 -0
  495. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-011_1.png +0 -0
  496. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-012_0.png +0 -0
  497. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-012_1.png +0 -0
  498. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-013_0.png +0 -0
  499. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-013_1.png +0 -0
  500. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-014_0.png +0 -0
  501. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-hume-3-014_1.png +0 -0
  502. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-1-000_0.png +0 -0
  503. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-1-000_1.png +0 -0
  504. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-1-001_0.png +0 -0
  505. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-1-001_1.png +0 -0
  506. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-2-000_0.png +0 -0
  507. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-2-000_1.png +0 -0
  508. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-000_0.png +0 -0
  509. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-000_1.png +0 -0
  510. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-002_0.png +0 -0
  511. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-002_1.png +0 -0
  512. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-003_0.png +0 -0
  513. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-003_1.png +0 -0
  514. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-004_0.png +0 -0
  515. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-004_1.png +0 -0
  516. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-005_0.png +0 -0
  517. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-005_1.png +0 -0
  518. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-006_0.png +0 -0
  519. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-006_1.png +0 -0
  520. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-007_0.png +0 -0
  521. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-007_1.png +0 -0
  522. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-008_0.png +0 -0
  523. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-008_1.png +0 -0
  524. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-010_0.png +0 -0
  525. {kotonebot/kaa → kaa}/resources/idol_cards/i_card-skin-jsna-3-010_1.png +0 -0
  526. {kotonebot/kaa → kaa}/sprites/00551158-fee9-483f-b034-549139a96f58.png +0 -0
  527. /kotonebot/kaa/sprites/a938bf45-e622-424f-829a-76152586f413.png → /kaa/sprites/0078d85c-3f22-4d65-834d-bef862386c28.png +0 -0
  528. /kotonebot/kaa/sprites/6dacc5c6-85e2-4e26-b7a4-6bda6cc3ed0e.png → /kaa/sprites/01621013-b0e9-49bb-b7c1-296d1c8e7c4d.png +0 -0
  529. /kotonebot/kaa/sprites/9dcb4207-f546-4382-a87d-5d3377a31f4f.png → /kaa/sprites/03ea1e8a-93e4-41c2-940c-6738de3519ad.png +0 -0
  530. /kotonebot/kaa/sprites/998be65c-b835-4004-bbe0-411a4d74985c.png → /kaa/sprites/03f1e81a-e762-45bd-b8fc-a5ccd99413f2.png +0 -0
  531. {kotonebot/kaa → kaa}/sprites/05890a1b-8764-4e9f-9d21-65d292c22e13.png +0 -0
  532. {kotonebot/kaa → kaa}/sprites/0949c622-9067-4f0d-bac2-3f938a1d2ed2.png +0 -0
  533. {kotonebot/kaa → kaa}/sprites/0bf5e34e-afc6-4447-bbac-67026ce2ad26.png +0 -0
  534. {kotonebot/kaa → kaa}/sprites/0c0627be-4a09-4450-a078-1858d3ace532.png +0 -0
  535. /kotonebot/kaa/sprites/034203b6-cadb-4b7c-af70-3e9551083457.png → /kaa/sprites/0c5871f8-7b83-458e-93ea-87dd96b4e714.png +0 -0
  536. {kotonebot/kaa → kaa}/sprites/0d9ac648-eefa-4869-ac99-1b0c83649681.png +0 -0
  537. /kotonebot/kaa/sprites/faeb1498-1c11-4bc7-8e85-864fd876751c.png → /kaa/sprites/0e311fd9-5027-4fe9-9701-f6ace207a47f.png +0 -0
  538. {kotonebot/kaa → kaa}/sprites/0f7d581d-cea3-4039-9205-732e4cd29293.png +0 -0
  539. /kotonebot/kaa/sprites/441934e4-3659-4522-985c-0e683eb03f1c.png → /kaa/sprites/1201b142-fccd-497d-b082-95c8f3dfd46b.png +0 -0
  540. /kotonebot/kaa/sprites/6e3515d4-68ce-4760-948b-5fb20576fc12.png → /kaa/sprites/13b4ec6d-855e-457a-bc46-ec07bbae2555.png +0 -0
  541. /kotonebot/kaa/sprites/725e767e-79bb-4ce6-a448-8ebee80193b7.png → /kaa/sprites/141ebd00-0572-4186-9e46-caaf2d1f1920.png +0 -0
  542. {kotonebot/kaa → kaa}/sprites/1652f06a-5417-49ef-8949-4854772d9ab7.png +0 -0
  543. {kotonebot/kaa → kaa}/sprites/16fbc93d-b294-4001-b4e9-ee2af181415f.png +0 -0
  544. {kotonebot/kaa → kaa}/sprites/185f7838-92a7-460b-9340-f60858948ce9.png +0 -0
  545. {kotonebot/kaa → kaa}/sprites/1926f2f9-4bd7-48eb-9eba-28ec4efb0606.png +0 -0
  546. /kotonebot/kaa/sprites/fc64316e-8394-4019-a16f-d6e7bb83d9bf.png → /kaa/sprites/19e5119b-2fcf-4e07-b67f-e78bba0adcf1.png +0 -0
  547. /kotonebot/kaa/sprites/8d595a36-a900-42ea-871f-f17f99d5d73a.png → /kaa/sprites/1a0708a6-9b04-4bf5-9e50-7c548a8e37f8.png +0 -0
  548. /kotonebot/kaa/sprites/395a07be-38b7-4c8c-948e-9efcb93a2e49.png → /kaa/sprites/1b8104bd-f872-4618-b7ca-fe334fd14dc8.png +0 -0
  549. /kotonebot/kaa/sprites/2ebe4066-c47c-4284-a52d-b3f5bed523f3.png → /kaa/sprites/1c0a4be2-be62-4c06-964f-b2de5d7860c3.png +0 -0
  550. /kotonebot/kaa/sprites/cf89988c-c930-4890-8a55-018de7a4ae5a.png → /kaa/sprites/1de78cb8-fa69-4226-952a-50bbb20fc7dd.png +0 -0
  551. /kotonebot/kaa/sprites/0b3b7c7d-ad01-44dd-bd25-c819eb002a31.png → /kaa/sprites/1e7f4639-0d64-46dc-977f-79dc7ccb7043.png +0 -0
  552. /kotonebot/kaa/sprites/d55c4fd9-f8be-467a-923f-03cef8bd0525.png → /kaa/sprites/1fa1f7da-0f8d-40f0-ac59-84007fe005cb.png +0 -0
  553. {kotonebot/kaa → kaa}/sprites/213016c2-c3a2-43d8-86a3-ab4d27666ced.png +0 -0
  554. /kotonebot/kaa/sprites/0411b7d9-8f30-44c8-ad51-fde15025ab5f.png → /kaa/sprites/22263c0e-6c8a-45ac-8b26-6fe3af677496.png +0 -0
  555. /kotonebot/kaa/sprites/8dfc96b9-678a-4126-914a-8b5ba920e280.png → /kaa/sprites/23937cf2-9324-4d7d-b87f-17e571e8bb11.png +0 -0
  556. {kotonebot/kaa → kaa}/sprites/23d88465-65d9-4718-8725-8dbf0a98a5a4.png +0 -0
  557. /kotonebot/kaa/sprites/288ca9e3-237f-4de6-ba06-e586a9f87d03.png → /kaa/sprites/246b641d-5cfc-4f06-8f89-1f041a69ea1d.png +0 -0
  558. {kotonebot/kaa → kaa}/sprites/24dc7158-036c-4a66-9280-e934f470be53.png +0 -0
  559. {kotonebot/kaa → kaa}/sprites/24e99232-9434-457f-a9a0-69dd7ecf675f.png +0 -0
  560. {kotonebot/kaa → kaa}/sprites/25f00ee3-8dfe-42d1-a67e-191fa5c3df4b.png +0 -0
  561. /kotonebot/kaa/sprites/cdbf1f7f-63f6-40d7-a3b6-3d64bd6f9083.png → /kaa/sprites/2751a3b3-0184-45fd-bfd5-c1fc75436c05.png +0 -0
  562. /kotonebot/kaa/sprites/ccb670dd-7c8e-4bc9-8e73-934ce26d23a8.png → /kaa/sprites/293fdb6c-9ea9-4471-be88-bdb69ef7e55a.png +0 -0
  563. {kotonebot/kaa → kaa}/sprites/2bd6fe88-99fa-443d-8e42-bb3de5881213.png +0 -0
  564. /kotonebot/kaa/sprites/53eca690-1c14-4424-9456-3a8397ae9ff3.png → /kaa/sprites/2c722ef4-b6c0-4e48-b6e3-78c187e0cf1a.png +0 -0
  565. /kotonebot/kaa/sprites/d61df6da-4b09-4b8c-bc97-46632a80fcd9.png → /kaa/sprites/2c7da64b-4a9a-46ee-a8c2-7fe6d5ca61e2.png +0 -0
  566. /kotonebot/kaa/sprites/4c4339dc-c9b2-4a3c-a80a-02512d281289.png → /kaa/sprites/2ed36417-e2aa-45c6-8fc0-aca1a47f3106.png +0 -0
  567. {kotonebot/kaa → kaa}/sprites/2ededcf5-1d80-4e2a-9c83-2a31998331ce.png +0 -0
  568. /kotonebot/kaa/sprites/44b34d58-8178-416f-88bc-a3c4a5a26bac.png → /kaa/sprites/2f5377ec-e08d-47f4-bf60-928961957b8d.png +0 -0
  569. {kotonebot/kaa → kaa}/sprites/303cccc1-c674-4d3a-8c89-19ea729fdbef.png +0 -0
  570. {kotonebot/kaa → kaa}/sprites/30a6f399-6999-4f04-bb77-651e0214112f.png +0 -0
  571. /kotonebot/kaa/sprites/7f459ed4-063c-48ab-a9ed-48f73bd3a865.png → /kaa/sprites/316fe4ed-272a-4c6a-8822-1a8edf296293.png +0 -0
  572. /kotonebot/kaa/sprites/5efaf4bf-b3cb-456f-88a1-ff1d28be80c1.png → /kaa/sprites/360e32a4-0f22-42da-9da0-fca8d2da6020.png +0 -0
  573. /kotonebot/kaa/sprites/f8237a04-9f49-4796-9238-8dfab4cabcbe.png → /kaa/sprites/37e7c488-7ad6-447e-a37f-75c2553a4a89.png +0 -0
  574. {kotonebot/kaa → kaa}/sprites/3942ae40-7f22-412c-aebe-4b064f68db9b.png +0 -0
  575. {kotonebot/kaa → kaa}/sprites/3b473fe6-e147-477f-b088-9b8fb042a4f6.png +0 -0
  576. {kotonebot/kaa → kaa}/sprites/3c8b477a-8eda-407e-9e9f-7540c8808f89.png +0 -0
  577. /kotonebot/kaa/sprites/6fe17986-a29d-4198-b366-1c40637069b5.png → /kaa/sprites/3c8e18ba-a948-4885-8d07-285faf7a9f32.png +0 -0
  578. /kotonebot/kaa/sprites/b34a76e2-e318-47a0-b194-6e1b01eb269c.png → /kaa/sprites/3da3fd94-081d-4e90-8c11-0ff5f9e216eb.png +0 -0
  579. /kotonebot/kaa/sprites/2e76fba4-b9db-47ce-b6a4-d0a857b3fd4b.png → /kaa/sprites/3ef0ee98-7572-40df-b608-8cf6e76a2bc7.png +0 -0
  580. {kotonebot/kaa → kaa}/sprites/3f637e86-6b74-4693-9131-1fe411fc21e5.png +0 -0
  581. /kotonebot/kaa/sprites/c35208a6-261e-4a2e-aeae-aae19d8c83d6.png → /kaa/sprites/3f91c443-cd32-4048-8dbe-ffa1459171b1.png +0 -0
  582. {kotonebot/kaa → kaa}/sprites/4096cffa-a889-4622-852e-760fc7022d93.png +0 -0
  583. /kotonebot/kaa/sprites/5df708a6-1383-47a4-aec7-69f492f4f783.png → /kaa/sprites/41ff7111-553e-48f7-9fb7-7eb071264c20.png +0 -0
  584. /kotonebot/kaa/sprites/81b9a59e-5714-459b-b6ce-03e1f4c4e503.png → /kaa/sprites/4231568f-b383-4944-99de-0589bb24aa2e.png +0 -0
  585. /kotonebot/kaa/sprites/15552124-cc5c-4abe-b08d-123624248d77.png → /kaa/sprites/42b85806-07f6-4dad-8f03-664c93546d1d.png +0 -0
  586. {kotonebot/kaa → kaa}/sprites/447d0e44-5d87-4b7c-8e60-edb111fe1639.png +0 -0
  587. {kotonebot/kaa → kaa}/sprites/44ba8515-4a60-42c9-8878-b42e4e34ee15.png +0 -0
  588. {kotonebot/kaa → kaa}/sprites/4503db6b-7224-4b81-9971-e7cfa56e10f2.png +0 -0
  589. {kotonebot/kaa → kaa}/sprites/4695f96b-c4f5-4bb6-a021-a13b6ceb2883.png +0 -0
  590. {kotonebot/kaa → kaa}/sprites/4883c564-f950-4a29-9f5f-6f924123cd22.png +0 -0
  591. /kotonebot/kaa/sprites/24b645e9-66a6-4c4b-8273-c895ba6b8324.png → /kaa/sprites/499d34e9-3f0f-4ff6-b0d6-44ee4919c9c0.png +0 -0
  592. {kotonebot/kaa → kaa}/sprites/4d78add6-1027-4939-bb51-f99fca7db2ce.png +0 -0
  593. /kotonebot/kaa/sprites/a8a3d531-9024-4603-a864-64bfe439a9ab.png → /kaa/sprites/4f7fa41d-a32b-4090-badb-05336cf67620.png +0 -0
  594. {kotonebot/kaa → kaa}/sprites/5031808b-5525-4118-92b4-317ec8bda985.png +0 -0
  595. {kotonebot/kaa → kaa}/sprites/50e23c8a-7ba2-4c9c-9cfb-196c260fa1d5.png +0 -0
  596. /kotonebot/kaa/sprites/fba7b4b2-46d3-4a5a-a161-6891014e6daf.png → /kaa/sprites/550d0d4e-9c71-465a-a9ab-a64a25a1c958.png +0 -0
  597. /kotonebot/kaa/sprites/1989466d-c486-4e0c-acc9-ed3116e3c0b8.png → /kaa/sprites/55efbfcf-96c1-45f1-a7bc-3a922c9cf22f.png +0 -0
  598. {kotonebot/kaa → kaa}/sprites/55f7db71-0a18-4b3d-b847-57959b8d2e32.png +0 -0
  599. /kotonebot/kaa/sprites/32966af9-8bfe-4b67-b9b5-2fd5e2678468.png → /kaa/sprites/5615c359-ccc0-469a-82d0-6002c117f4a0.png +0 -0
  600. {kotonebot/kaa → kaa}/sprites/582d36c0-0916-4706-9833-4fbc026701f5.png +0 -0
  601. /kotonebot/kaa/sprites/28282c09-6ce2-4d65-8475-1fc6fbf54e15.png → /kaa/sprites/59123d3e-4b29-4f25-b561-ac9bcd70640e.png +0 -0
  602. /kotonebot/kaa/sprites/e2287baf-c165-467b-8b6c-640d1f2ee376.png → /kaa/sprites/5ca94c3e-908d-49c9-803e-0d75dd56ee9d.png +0 -0
  603. {kotonebot/kaa → kaa}/sprites/5d36b880-7b3f-49b1-a018-7de59867d376.png +0 -0
  604. {kotonebot/kaa → kaa}/sprites/5ebcde3b-f0fd-4e5d-b3de-ada8f0b5e03b.png +0 -0
  605. /kotonebot/kaa/sprites/a43abe98-376b-4da7-ab17-b6c9e1a875fb.png → /kaa/sprites/64396919-34c4-44ff-b39a-c126a7d6b73f.png +0 -0
  606. /kotonebot/kaa/sprites/7465297a-497d-41fa-948d-7f04ad5fdc94.png → /kaa/sprites/64d5db07-ac11-4c55-979e-87f7205287a8.png +0 -0
  607. /kotonebot/kaa/sprites/e734df59-a24f-42e2-9f53-3ca720ddc612.png → /kaa/sprites/65769b32-57b7-4e63-bda9-11cd96525831.png +0 -0
  608. /kotonebot/kaa/sprites/51d0f732-2fe9-40c5-b888-8143270d35bb.png → /kaa/sprites/6670deb8-5f26-4efe-bc8b-65283073851a.png +0 -0
  609. /kotonebot/kaa/sprites/80bfcb8e-fb27-4240-85c5-61650419a304.png → /kaa/sprites/670f3fea-6ac8-4ac5-bb5c-058a52239412.png +0 -0
  610. /kotonebot/kaa/sprites/9a9c9044-53c6-40f7-8eb5-2dc71383e58c.png → /kaa/sprites/674ab5dd-4c63-484d-9f68-7c601d5cf0c7.png +0 -0
  611. /kotonebot/kaa/sprites/d61a93e8-0e24-40d8-814a-402765d057ea.png → /kaa/sprites/6996ae36-4f49-4e60-baef-f481142d8afa.png +0 -0
  612. {kotonebot/kaa → kaa}/sprites/6b58d90d-2e5e-4b7f-bc01-941f2633de89.png +0 -0
  613. {kotonebot/kaa → kaa}/sprites/6cd80be8-c9b3-4ba5-bf17-3ffc9b000743.png +0 -0
  614. /kotonebot/kaa/sprites/97f4f186-da9e-404c-bf1e-918f1b962fee.png → /kaa/sprites/6e158fab-4d9b-4557-8ea7-eabc94bb83c5.png +0 -0
  615. /kotonebot/kaa/sprites/38526b38-7f62-466b-8702-0c657891c7fa.png → /kaa/sprites/6f6f8f1d-cfa6-4d53-abf9-910c4a12739f.png +0 -0
  616. {kotonebot/kaa → kaa}/sprites/70898bf8-56c5-4f84-becb-629c9ab6a7da.png +0 -0
  617. /kotonebot/kaa/sprites/c1c710cd-885b-4b2c-9752-8a2754d0f72d.png → /kaa/sprites/716fbc7f-beda-4482-8c59-699b87778309.png +0 -0
  618. /kotonebot/kaa/sprites/b241eff8-039e-4734-bea2-e10da89426d8.png → /kaa/sprites/71b3edaf-e384-452e-96b0-096d92c4c298.png +0 -0
  619. /kotonebot/kaa/sprites/c38d6852-316f-4a77-9987-e15789ee8612.png → /kaa/sprites/7300a151-0fc1-4261-b98e-ff3e8077eaee.png +0 -0
  620. /kotonebot/kaa/sprites/19962647-b587-488b-9ed3-1f4f7ce36406.png → /kaa/sprites/73b16c0e-2bc6-4e8e-b678-00af0c9c3e0d.png +0 -0
  621. /kotonebot/kaa/sprites/647e6110-8c89-4c34-9352-b8b321c61500.png → /kaa/sprites/73fba395-96ee-45ab-bca8-9426a0504fed.png +0 -0
  622. {kotonebot/kaa → kaa}/sprites/74ec3510-583d-4a76-ac69-38480fbf1387.png +0 -0
  623. /kotonebot/kaa/sprites/be8a47df-79fe-48c1-b41e-77fe1a26a90b.png → /kaa/sprites/773c7946-041e-40b3-b951-229aed614dbe.png +0 -0
  624. /kotonebot/kaa/sprites/cac8bff8-569e-450f-8ac7-dad3eebf18d9.png → /kaa/sprites/78bea52e-d7d0-4b99-8f89-e89324527611.png +0 -0
  625. {kotonebot/kaa → kaa}/sprites/79abd239-5eed-4195-9fa8-d729daa874ca.png +0 -0
  626. /kotonebot/kaa/sprites/d88c35b8-f101-4557-b2a5-0f7846fecd4c.png → /kaa/sprites/7a5eff9d-4e2d-4f8f-bdf2-d81a15d9cc6d.png +0 -0
  627. /kotonebot/kaa/sprites/1cc8c106-1830-433e-956f-7d31a01da99e.png → /kaa/sprites/7bc266f0-0166-4bd4-a8c2-0d5555e6d74d.png +0 -0
  628. /kotonebot/kaa/sprites/a5e675c9-8fc8-46f2-ae73-bc871d65daaf.png → /kaa/sprites/7bcaf86b-8594-40fb-9f06-a7ffeb0bd10e.png +0 -0
  629. /kotonebot/kaa/sprites/d3832642-3108-4947-8274-68ad8a78b690.png → /kaa/sprites/7e7f553f-8f93-400a-b70c-644df794ddfa.png +0 -0
  630. /kotonebot/kaa/sprites/c84958c3-37a8-4f1e-9874-45d2c3723b80.png → /kaa/sprites/7ee5bce2-9c00-4a1b-91f3-3de0dd1821ac.png +0 -0
  631. /kotonebot/kaa/sprites/444bc913-a075-4f71-baf8-a94cbb8a8ab0.png → /kaa/sprites/802cd7cb-066a-49b5-a0c3-3da0eab9d674.png +0 -0
  632. /kotonebot/kaa/sprites/2f707d1b-98d5-47b1-a14c-5c7b95a1cc8c.png → /kaa/sprites/808e16c7-e112-4928-a03f-23a5fcbe0b24.png +0 -0
  633. {kotonebot/kaa → kaa}/sprites/81c97cd3-df53-44d3-bf3d-1eb4dc67b62a.png +0 -0
  634. {kotonebot/kaa → kaa}/sprites/835489e2-b29b-426c-b4c9-3bb9f8eb6195.png +0 -0
  635. {kotonebot/kaa → kaa}/sprites/83d0a033-466c-463a-bb8c-be0f2953e9b2.png +0 -0
  636. {kotonebot/kaa → kaa}/sprites/8424ecdd-8857-4764-9fd0-d4bfa440c128.png +0 -0
  637. /kotonebot/kaa/sprites/8af8652d-06fe-4d2c-b123-641c7fbc651d.png → /kaa/sprites/85a9ee57-a69d-452c-9533-3913dd4af5e8.png +0 -0
  638. /kotonebot/kaa/sprites/e072322f-eff1-4cbd-80c2-4e2103a1aa2f.png → /kaa/sprites/85dad1b9-edfb-44f9-b59d-c92a90ed0d13.png +0 -0
  639. /kotonebot/kaa/sprites/8836e28c-e310-4870-94d2-b58e5dffad49.png → /kaa/sprites/8660b8a5-dce0-4e34-a0b4-5cbee251cc9d.png +0 -0
  640. /kotonebot/kaa/sprites/87ee5cea-6fb4-4768-8767-3c422df08371.png → /kaa/sprites/8795c644-edd9-4930-b307-e02b8df8f63c.png +0 -0
  641. {kotonebot/kaa → kaa}/sprites/8c179a21-be6f-4db8-a9b0-9afeb5c36b1c.png +0 -0
  642. /kotonebot/kaa/sprites/f4212619-497f-4dcd-a197-e7c4c1c1a8ad.png → /kaa/sprites/8c32afab-a759-4d17-bb09-5ee4f78bc094.png +0 -0
  643. /kotonebot/kaa/sprites/6a77517b-99b1-42a1-ba61-a3109151339e.png → /kaa/sprites/8c3412f5-77a4-4d95-96fc-af9c562e73b9.png +0 -0
  644. {kotonebot/kaa → kaa}/sprites/8ded6c98-85ea-4858-a66d-4fc8caecb7c5.png +0 -0
  645. {kotonebot/kaa → kaa}/sprites/8f8b7b46-53bb-42ab-907a-4ea87eb09ab4.png +0 -0
  646. /kotonebot/kaa/sprites/974015ca-854d-43e3-a8ed-faa247d304bc.png → /kaa/sprites/8fbb1d42-c540-4e2a-91b1-871ca77ecdb1.png +0 -0
  647. /kotonebot/kaa/sprites/8f8f1144-5c30-41f0-8a6b-b39fe78e3e99.png → /kaa/sprites/919e00d2-7319-4541-bdc5-8d398d4759ce.png +0 -0
  648. {kotonebot/kaa → kaa}/sprites/921eefeb-730e-46fc-9924-d338fb286592.png +0 -0
  649. {kotonebot/kaa → kaa}/sprites/9340b854-025c-40da-9387-385d38433bef.png +0 -0
  650. /kotonebot/kaa/sprites/64969b0b-a6ef-4342-a967-20428d5baa65.png → /kaa/sprites/998391fa-c5a6-40cb-80d6-3b1c75a3fa91.png +0 -0
  651. /kotonebot/kaa/sprites/34fd0d97-1018-4986-b990-29e48abc2a56.png → /kaa/sprites/99d679f6-8371-46e7-a742-6180cc7e68f6.png +0 -0
  652. /kotonebot/kaa/sprites/87f96abd-8290-4a06-bfc4-c7275cd01d9a.png → /kaa/sprites/9afa238e-be07-4d01-9e5c-350bf83d9884.png +0 -0
  653. /kotonebot/kaa/sprites/f53ff71d-54b5-44d2-9e48-ad2dee918fd1.png → /kaa/sprites/9f7eba7c-2e9d-4d2a-9c8b-b9eadf9addd4.png +0 -0
  654. {kotonebot/kaa → kaa}/sprites/9fd0753f-c607-4d49-82d1-40bda27e014f.png +0 -0
  655. {kotonebot/interop/win → kaa/sprites}/__init__.py +0 -0
  656. /kotonebot/kaa/sprites/724e9b7b-0bf6-4d78-b887-9b108474e732.png → /kaa/sprites/a07ba9ce-3a90-42ae-b8c4-cba80a8fd676.png +0 -0
  657. {kotonebot/kaa → kaa}/sprites/a0bd6a5f-784d-4f0a-9d66-10f4b80c8d3e.png +0 -0
  658. /kotonebot/kaa/sprites/56c4d716-65b3-4fb8-badb-970853544c7a.png → /kaa/sprites/a1c84ff9-9350-4927-bb0c-708e215ef721.png +0 -0
  659. {kotonebot/kaa → kaa}/sprites/a1df3af1-a3e7-4521-a085-e4dc3cd1cc57.png +0 -0
  660. {kotonebot/kaa → kaa}/sprites/a48324ae-7c1a-489e-b3c4-93d12267f88d.png +0 -0
  661. /kotonebot/kaa/sprites/50718df3-1b0e-425f-802c-ca4abd08a4b5.png → /kaa/sprites/a8dc76c8-a90d-48c9-a20e-32d185b329c9.png +0 -0
  662. {kotonebot/kaa → kaa}/sprites/a9fcaf04-0c1f-4b0f-bb5b-ede9da96180f.png +0 -0
  663. /kotonebot/kaa/sprites/59f54f2a-1efb-4d5a-b76b-b740ddf561ec.png → /kaa/sprites/abd8b312-348c-40b3-b034-921cefaf0bfe.png +0 -0
  664. /kotonebot/kaa/sprites/f162875f-08d7-4a64-a7b2-2fff14497f74.png → /kaa/sprites/acb20bc4-1109-40b8-9c14-526878a699f2.png +0 -0
  665. {kotonebot/kaa → kaa}/sprites/adc533a7-970b-4c5b-a037-2181531a35d6.png +0 -0
  666. /kotonebot/kaa/sprites/87b36188-2bf9-4b56-98cf-9e8df3879dbf.png → /kaa/sprites/ae36e6ef-e2bf-4dd5-825a-c047432e3e52.png +0 -0
  667. /kotonebot/kaa/sprites/ceaa1281-57d5-4c32-b5e2-86781518709b.png → /kaa/sprites/ae5af81c-c75f-448b-88aa-c148cb728dfe.png +0 -0
  668. {kotonebot/kaa → kaa}/sprites/ae9fe233-9acc-4e96-ba8e-1fb1d9bc2ea5.png +0 -0
  669. /kotonebot/kaa/sprites/bbc8ae86-9ad5-4fc7-8662-05a096ec1b84.png → /kaa/sprites/aeba7356-fc43-4450-8088-9f46a395bb00.png +0 -0
  670. {kotonebot/kaa → kaa}/sprites/b0283997-7931-476d-a92f-d7569f6ea34c.png +0 -0
  671. {kotonebot/kaa → kaa}/sprites/b2af59e9-60e3-4d97-8c72-c7ba092113a3.png +0 -0
  672. {kotonebot/kaa → kaa}/sprites/b2e1bf3c-2c36-4fb5-9db7-c10a29563a37.png +0 -0
  673. /kotonebot/kaa/sprites/5e473a8c-bf57-44d8-a711-db1f4ccc182c.png → /kaa/sprites/b4613fe1-10d8-47bc-88e8-7b729268e0e5.png +0 -0
  674. /kotonebot/kaa/sprites/3d8ab1bb-f8a8-4b19-a565-3b06e1cfe11c.png → /kaa/sprites/b4f86f2c-668d-48ed-bc1e-57886c57a731.png +0 -0
  675. {kotonebot/kaa → kaa}/sprites/b62bf889-da3c-495a-8707-f3bde73efe92.png +0 -0
  676. {kotonebot/kaa → kaa}/sprites/b6b94f21-ef4b-4425-9c7e-ca2b574b0add.png +0 -0
  677. /kotonebot/kaa/sprites/e38ced13-5ab3-47ee-b10b-63b5ed4224fb.png → /kaa/sprites/b83ae84f-79c0-4bd1-b8b8-86096cc3d5c1.png +0 -0
  678. /kotonebot/kaa/sprites/d67de935-b5f2-4176-ab52-d0482290cb59.png → /kaa/sprites/b949cf3e-4614-4fcd-8328-35b34234a9b2.png +0 -0
  679. {kotonebot/kaa → kaa}/sprites/bab6c393-692c-4681-ac0d-76c0d9dabea6.png +0 -0
  680. /kotonebot/kaa/sprites/32395105-71b0-4f98-a439-c181e82a648e.png → /kaa/sprites/bb51dcf2-9041-4214-91a3-de2d55c1d864.png +0 -0
  681. /kotonebot/kaa/sprites/e129c096-35c3-4fd8-b30c-ce92c3c9b85f.png → /kaa/sprites/bbc9449f-b923-4e56-844e-8e4cdbe803e3.png +0 -0
  682. {kotonebot/kaa → kaa}/sprites/bc7155ac-18c9-4335-9ec2-c8762d37a057.png +0 -0
  683. /kotonebot/kaa/sprites/e707f860-027c-44ee-a7a3-b18573b539e3.png → /kaa/sprites/bdb71eb9-15d7-4ce8-8622-b11d4eb20e90.png +0 -0
  684. /kotonebot/kaa/sprites/cdd7bbc5-8ebd-4a5c-84ca-0e7ca7702d8f.png → /kaa/sprites/bddbdc46-2127-4688-ba26-15f2f87b9af4.png +0 -0
  685. /kotonebot/kaa/sprites/f79fb63f-1737-4e67-b017-0b34bc93295a.png → /kaa/sprites/c08761c4-33ff-4f6c-85d4-102a1789b3a9.png +0 -0
  686. {kotonebot/kaa → kaa}/sprites/c3f536d6-a04a-4651-b3f9-dd2c22593f7f.png +0 -0
  687. /kotonebot/kaa/sprites/62b425ac-3e19-4924-8a58-c085f4d38f56.png → /kaa/sprites/c52b6db3-c440-4db2-ae25-a27668c9b114.png +0 -0
  688. {kotonebot/kaa → kaa}/sprites/c5b7d67e-7260-4f08-a0e9-4d31ce9bbecf.png +0 -0
  689. {kotonebot/kaa → kaa}/sprites/c78c38cc-7b61-4dc4-820d-0a5b684ef52e.png +0 -0
  690. /kotonebot/kaa/sprites/97f26adc-071b-4289-8243-dc20e024c7e4.png → /kaa/sprites/c907c525-3d6a-4b82-8d10-91831cb37b1b.png +0 -0
  691. {kotonebot/kaa → kaa}/sprites/c948f136-416f-447e-8152-54a1cd1d1329.png +0 -0
  692. {kotonebot/kaa → kaa}/sprites/c954e153-d3e9-4488-869f-d00cfdfac5ee.png +0 -0
  693. /kotonebot/kaa/sprites/d289f4e1-e92e-4263-93a4-33da4767d7a9.png → /kaa/sprites/ca8427c9-7af9-44dd-9960-7938222b84ea.png +0 -0
  694. {kotonebot/kaa → kaa}/sprites/cb3d0ca7-8d14-408a-a2f5-2e25f7b86d6c.png +0 -0
  695. /kotonebot/kaa/sprites/c107e00b-f94f-4526-88f5-2eae03a7d7f6.png → /kaa/sprites/cbde3ad5-276c-4826-a616-ab8692ab5a50.png +0 -0
  696. {kotonebot/kaa → kaa}/sprites/cbf4ce9c-f8d8-4fb7-a197-15bb9847df04.png +0 -0
  697. {kotonebot/kaa → kaa}/sprites/cc60b509-2ed5-493d-bb9f-333c6d2a6006.png +0 -0
  698. {kotonebot/kaa → kaa}/sprites/cc8a495d-330d-447d-8a80-a8a6ecc409c5.png +0 -0
  699. {kotonebot/kaa → kaa}/sprites/ccbcb114-7f73-43d1-904a-3a7ae660c531.png +0 -0
  700. {kotonebot/kaa → kaa}/sprites/ce1d1d6f-38f2-48bf-98bd-6e091c7ca5b8.png +0 -0
  701. {kotonebot/kaa → kaa}/sprites/ce20a856-5629-4f8e-a8e1-d1bd14e18e4f.png +0 -0
  702. {kotonebot/kaa → kaa}/sprites/cfc9c8e8-cbe1-49f0-9afa-ead7f9455a2e.png +0 -0
  703. /kotonebot/kaa/sprites/b6f57baa-1d05-464f-81c9-0014063d6656.png → /kaa/sprites/d17f66dc-b4c5-4227-9e29-ec202cc2b1fe.png +0 -0
  704. /kotonebot/kaa/sprites/640826ef-c7cf-494c-888a-b151ef418531.png → /kaa/sprites/d24d63c1-10ea-479f-868c-8e2d6936900a.png +0 -0
  705. {kotonebot/kaa → kaa}/sprites/d271a24f-efe8-424d-8fd5-f6b3756ba4ca.png +0 -0
  706. {kotonebot/kaa → kaa}/sprites/d3424d31-0502-4623-996e-f0194e5085ce.png +0 -0
  707. /kotonebot/kaa/sprites/a7f4d9cb-d0ee-4abd-b9fa-148c059c7a0f.png → /kaa/sprites/d3c2a7a6-802d-407c-bc5b-aca5bb1741fa.png +0 -0
  708. {kotonebot/kaa → kaa}/sprites/d3cc3323-51af-4882-ae12-49e7384b746d.png +0 -0
  709. /kotonebot/kaa/sprites/37686733-d013-4580-b255-6db73142c0f6.png → /kaa/sprites/d4941156-d2c4-4bad-9e42-80e2c409640b.png +0 -0
  710. {kotonebot/kaa → kaa}/sprites/d6b64759-26b7-45b1-bf8e-5c0d98611e0d.png +0 -0
  711. {kotonebot/kaa → kaa}/sprites/d7667903-7149-4f2f-9c15-d8a4b5f4d347.png +0 -0
  712. {kotonebot/kaa → kaa}/sprites/d83f338d-dde3-494b-9bea-cae511e3517c.png +0 -0
  713. /kotonebot/kaa/sprites/46abcf20-513c-4759-9976-eaab68be7f8f.png → /kaa/sprites/d8a19204-b2bd-430b-83d5-005e8cd08d20.png +0 -0
  714. /kotonebot/kaa/sprites/8fad2402-594e-4466-927a-1f83139d7edf.png → /kaa/sprites/d9620175-115f-4a7e-9a8b-0728bd464929.png +0 -0
  715. {kotonebot/kaa → kaa}/sprites/d982d2b5-4bc0-4ae9-a516-f29c2848d64b.png +0 -0
  716. /kotonebot/kaa/sprites/814da106-1756-4bce-9140-d2730b635e7e.png → /kaa/sprites/da0f5694-01e2-4015-b7c5-e6827fe1bb51.png +0 -0
  717. {kotonebot/kaa → kaa}/sprites/da439e8c-3b74-4371-9657-0736d826c7d1.png +0 -0
  718. {kotonebot/kaa → kaa}/sprites/daf3d823-b7f1-4584-acf3-90b9d880332c.png +0 -0
  719. {kotonebot/kaa → kaa}/sprites/db7d3f03-1f7f-43bf-8125-f7c2d345fca2.png +0 -0
  720. /kotonebot/kaa/sprites/5661e7a0-9513-4bb6-9549-87b7ad871a0d.png → /kaa/sprites/dbfd0dd6-abeb-4fd0-a072-e6319a9e0981.png +0 -0
  721. {kotonebot/kaa → kaa}/sprites/de325534-3fd3-480a-9eb8-eb47960a753a.png +0 -0
  722. /kotonebot/kaa/sprites/5af6d58e-52c5-47fd-8ea5-c2fa8bb67e99.png → /kaa/sprites/deae7249-6fea-4059-b8fd-6fdd8836b17c.png +0 -0
  723. {kotonebot/kaa → kaa}/sprites/df991b42-ed8e-4f2c-bf0c-aa7522f147b6.png +0 -0
  724. /kotonebot/kaa/sprites/88456f07-23f0-48f7-ac81-206312717095.png → /kaa/sprites/e153cfbb-1a2e-4f66-a884-e110c0a83d53.png +0 -0
  725. /kotonebot/kaa/sprites/6e314b73-5ff5-4aa9-9dc3-1ebf28a578a7.png → /kaa/sprites/e2e253b8-0536-41ef-9982-292dc4a2fbc3.png +0 -0
  726. {kotonebot/kaa → kaa}/sprites/e4683def-8d1d-472b-a5ab-bb3885c0c98e.png +0 -0
  727. /kotonebot/kaa/sprites/2af71658-11c3-4c34-b604-003fb8a6a542.png → /kaa/sprites/e5cec3e1-aa3c-4c73-880c-2341d22c68ce.png +0 -0
  728. /kotonebot/kaa/sprites/71841087-2d73-4726-943a-c784df0b0d2d.png → /kaa/sprites/e5da45b7-2315-49c0-ba97-58d82e139ff5.png +0 -0
  729. {kotonebot/kaa → kaa}/sprites/e5e84f9e-28da-4cf4-bcba-c9145fe39b07.png +0 -0
  730. {kotonebot/kaa → kaa}/sprites/e6b45405-cd9f-4c6e-a9f1-6ec953747c65.png +0 -0
  731. {kotonebot/kaa → kaa}/sprites/e88c9ad1-ec37-4fcd-b086-862e1e7ce8fd.png +0 -0
  732. {kotonebot/kaa → kaa}/sprites/e9ee330d-dfca-440e-8b8c-0a3b4e8c8730.png +0 -0
  733. {kotonebot/kaa → kaa}/sprites/ea1ba124-9cb3-4427-969a-bacd47e7d920.png +0 -0
  734. /kotonebot/kaa/sprites/c32068c9-6e52-4176-98de-fd4d252969dd.png → /kaa/sprites/ea3e0843-df72-4dda-a933-7647c2ca356b.png +0 -0
  735. /kotonebot/kaa/sprites/9d87795b-c322-49c6-a9c9-6064828a55a2.png → /kaa/sprites/ea4f97d8-cc07-425b-a594-1ee698d257ec.png +0 -0
  736. {kotonebot/kaa → kaa}/sprites/eaba6ebe-f0df-4918-aee5-ef4e3ffedcf0.png +0 -0
  737. /kotonebot/kaa/sprites/4999097e-2f8b-4965-9e7e-cb9801f8ed0e.png → /kaa/sprites/eb9a68bf-624e-4faa-ae44-c5aafa1156e9.png +0 -0
  738. /kotonebot/kaa/sprites/b80cec57-1d9c-4e40-a4d2-df1e1b1546d3.png → /kaa/sprites/eda4839f-5487-4444-ac64-216d94b33d0e.png +0 -0
  739. {kotonebot/kaa → kaa}/sprites/ee4e512b-4982-49b6-9c71-31984b58e1d0.png +0 -0
  740. {kotonebot/kaa → kaa}/sprites/eef25cf9-afd0-43b1-b9c5-fbd997bd5fe0.png +0 -0
  741. /kotonebot/kaa/sprites/4fa138a2-4f39-4023-afd4-af5be7df662b.png → /kaa/sprites/f03a8a47-9ae8-48b3-ae2c-8df04d9a9ea9.png +0 -0
  742. /kotonebot/kaa/sprites/ef601e20-dc47-4c70-a251-4238fde74d49.png → /kaa/sprites/f0cbde7d-157d-4964-811f-bd8491946ad4.png +0 -0
  743. /kotonebot/kaa/sprites/9ac47ce9-2594-4740-ba70-c61f97c0f992.png → /kaa/sprites/f0dcbc16-20ed-4852-bfe2-5ad0b1df5380.png +0 -0
  744. {kotonebot/kaa → kaa}/sprites/f1f21925-3e22-4dd1-b53b-bb52bcf26c2b.png +0 -0
  745. /kotonebot/kaa/sprites/cc65d34b-b220-451e-a18e-66b05b911e97.png → /kaa/sprites/f34d2983-c306-4b26-be19-c8aceb41879c.png +0 -0
  746. {kotonebot/kaa → kaa}/sprites/f43c313b-8a7b-467b-8442-fc5bcb8b4388.png +0 -0
  747. /kotonebot/kaa/sprites/0bab5a6b-631c-4661-8035-50a03299bd08.png → /kaa/sprites/f4684588-dae3-4a18-ba44-153f37339652.png +0 -0
  748. {kotonebot/kaa → kaa}/sprites/f5c16d2f-ebc5-4617-9b96-971696af7c52.png +0 -0
  749. /kotonebot/kaa/sprites/184e517f-f37f-4cc8-ac49-6858025903ee.png → /kaa/sprites/f5db23dd-9ba4-4dac-bf7d-fe6f6593d464.png +0 -0
  750. /kotonebot/kaa/sprites/c48df972-98fd-4303-99df-9374f542beda.png → /kaa/sprites/f6a458d4-453d-404a-b37d-3ecd1f4ec9ca.png +0 -0
  751. {kotonebot/kaa → kaa}/sprites/f6ca6bd3-543f-4779-8367-c5c883f04b95.png +0 -0
  752. /kotonebot/kaa/sprites/649f1c6d-03f8-4e84-87a7-b3418bdb9f61.png → /kaa/sprites/fa841e1c-c2b0-47f9-aff2-6a2accfaccb1.png +0 -0
  753. {kotonebot/kaa → kaa}/sprites/fad5eec2-5fd5-412f-9abb-987a3087dc54.png +0 -0
  754. /kotonebot/kaa/sprites/180168f7-9ead-4ce3-9cd9-b1960d649e5c.png → /kaa/sprites/fd242e23-dc69-45a0-94ee-53172f793687.png +0 -0
  755. /kotonebot/kaa/sprites/cca278bb-88cb-4898-8bbe-f52a49a0f740.png → /kaa/sprites/ff692c66-7c5c-4105-a456-789f8d78cd88.png +0 -0
  756. /kotonebot/kaa/sprites/f68eb4f1-b30b-43fc-8a24-11394cc759d2.png → /kaa/sprites/ff86b3e5-e0e8-46c6-a645-e7ff10c32baf.png +0 -0
  757. {kotonebot/kaa → kaa/tasks}/__init__.py +0 -0
  758. {kotonebot/kaa/resources → kaa/tasks/actions}/__init__.py +0 -0
  759. {kotonebot/kaa → kaa}/tasks/clear_logs.py +0 -0
  760. {kotonebot/kaa/sprites → kaa/tasks/daily}/__init__.py +0 -0
  761. {kotonebot/kaa/tasks → kaa/tasks/produce}/__init__.py +0 -0
  762. {kotonebot/kaa → kaa}/util/trace.py +0 -0
  763. {ksaa-2025.8.23.1.dist-info → ksaa-2025.9b2.dist-info}/WHEEL +0 -0
  764. {ksaa-2025.8.23.1.dist-info → ksaa-2025.9b2.dist-info}/licenses/LICENSE +0 -0
@@ -1,9 +1,9 @@
1
1
  """扭蛋机,支持任意次数的任意扭蛋类型"""
2
2
  import logging
3
3
 
4
- from kotonebot.kaa.tasks import R
5
- from kotonebot.kaa.config import conf
6
- from kotonebot.kaa.game_ui.scrollable import Scrollable
4
+ from kaa.tasks import R
5
+ from kaa.config import conf
6
+ from kaa.game_ui.scrollable import Scrollable
7
7
  from ..actions.scenes import at_home, goto_home
8
8
  from kotonebot.backend.image import TemplateMatchResult
9
9
  from kotonebot.backend.loop import Loop
@@ -91,6 +91,7 @@ def capsule_toys():
91
91
  # 进入扭蛋机页面
92
92
  logger.info('Entering Capsule Toys page')
93
93
  device.click(image.expect_wait(R.Daily.ButtonShop, timeout=5))
94
+ sleep(0.5) # 动画未加载完毕时,提前点击按钮
94
95
  device.click(image.expect_wait(R.Daily.ButtonShopCapsuleToys, timeout=5))
95
96
  # 等待加载
96
97
  image.expect_wait(R.Daily.CapsuleToys.IconTitle)
@@ -1,9 +1,9 @@
1
1
  """领取社团奖励,并尽可能地给其他人送礼物"""
2
2
  import logging
3
3
 
4
- from kotonebot.kaa.tasks import R
5
- from kotonebot.kaa.config import conf
6
- from kotonebot.kaa.game_ui import toolbar_menu
4
+ from kaa.tasks import R
5
+ from kaa.config import conf
6
+ from kaa.game_ui import toolbar_menu
7
7
  from ..actions.scenes import at_home, goto_home
8
8
  from kotonebot import task, device, image, sleep, ocr
9
9
 
@@ -3,9 +3,9 @@ import logging
3
3
  from gettext import gettext as _
4
4
 
5
5
  from kotonebot.errors import StopCurrentTask
6
- from kotonebot.kaa.tasks import R
7
- from kotonebot.kaa.config import conf
8
- from kotonebot.kaa.game_ui import WhiteFilter, dialog
6
+ from kaa.tasks import R
7
+ from kaa.config import conf
8
+ from kaa.game_ui import WhiteFilter, dialog
9
9
  from ..actions.scenes import at_home, goto_home
10
10
  from ..actions.loading import wait_loading_end
11
11
  from kotonebot import device, image, ocr, color, action, task, rect_expand, sleep, contains, Interval
@@ -201,6 +201,6 @@ def contest():
201
201
  logger.info('Contest all finished.')
202
202
 
203
203
  if __name__ == '__main__':
204
- from kotonebot.kaa.main import Kaa
204
+ from kaa.main import Kaa
205
205
  from kotonebot.backend.context import tasks_from_id
206
206
  Kaa('config.json').run(tasks_from_id(['contest']))
@@ -1,10 +1,10 @@
1
1
  """领取任务奖励"""
2
2
  import logging
3
3
 
4
- from kotonebot.kaa.tasks import R
4
+ from kaa.tasks import R
5
5
 
6
6
  from kotonebot.primitives import Rect
7
- from kotonebot.kaa.config import conf, Priority
7
+ from kaa.config import conf, Priority
8
8
  from ..actions.loading import wait_loading_end
9
9
  from ..actions.scenes import at_home, goto_home
10
10
  from kotonebot import device, image, color, task, action, rect_expand, sleep
@@ -3,8 +3,8 @@ import logging
3
3
  from typing import Optional
4
4
 
5
5
  from kotonebot.backend.loop import Loop
6
- from kotonebot.kaa.tasks import R
7
- from kotonebot.kaa.config import conf, DailyMoneyShopItems
6
+ from kaa.tasks import R
7
+ from kaa.config import conf, DailyMoneyShopItems
8
8
  from kotonebot.primitives.geometry import Point
9
9
  from kotonebot.util import Countdown, cropped
10
10
  from kotonebot import task, device, image, action, sleep
@@ -1,9 +1,9 @@
1
1
  """升级一张支援卡,优先升级低等级支援卡"""
2
2
  import logging
3
3
 
4
- from kotonebot.kaa.tasks import R
5
- from kotonebot.kaa.config import conf
6
- from kotonebot.kaa.game_ui.scrollable import Scrollable
4
+ from kaa.tasks import R
5
+ from kaa.config import conf
6
+ from kaa.game_ui.scrollable import Scrollable
7
7
  from ..actions.scenes import at_home, goto_home
8
8
  from kotonebot import task, device, image, sleep
9
9
 
@@ -8,7 +8,7 @@ import threading
8
8
  from kotonebot.backend.bot import PostTaskContext
9
9
  from kotonebot.ui import user
10
10
  from ..kaa_context import instance
11
- from kotonebot.kaa.config import Priority, conf
11
+ from kaa.config import Priority, conf
12
12
  from kotonebot import task, action, config, device
13
13
 
14
14
  logger = logging.getLogger(__name__)
@@ -6,10 +6,11 @@ import cv2
6
6
  import numpy as np
7
7
  from cv2.typing import MatLike
8
8
 
9
- from kotonebot.kaa.tasks import R
10
- from kotonebot.kaa.config import conf
11
- from kotonebot.kaa.game_ui import dialog
12
- from kotonebot.kaa.util.trace import trace
9
+ from kaa.tasks import R
10
+ from kaa.config import conf
11
+ from kaa.game_ui import dialog
12
+ from kaa.tasks.produce.common import acquisition_date_change_dialog
13
+ from kaa.util.trace import trace
13
14
  from kotonebot.primitives import RectTuple, Rect
14
15
  from kotonebot import action, Interval, Countdown, device, image, sleep, ocr, contains, use_screenshot, color
15
16
  from kotonebot.backend.loop import Loop
@@ -122,12 +123,14 @@ def do_cards(
122
123
  :param threshold_predicate: 推荐卡检测阈值判断函数
123
124
  :param end_predicate: 结束条件判断函数
124
125
  """
125
- timeout_cd = Countdown(sec=120).start() # 推荐卡检测超时计时器
126
+ timeout_cd = Countdown(sec=conf().produce.produce_timeout_cd).start() # 推荐卡检测超时计时器
126
127
  break_cd = Countdown(sec=5) # 满足结束条件计时器
127
128
  no_card_cd = Countdown(sec=4) # 无手牌计时器
128
129
  detect_card_count_cd = Countdown(sec=4).start() # 刷新检测手牌数量间隔
129
130
  tries = 1
130
131
  card_count = -1
132
+ timeout_card_id = 1 # timeout时,选择的卡的编号
133
+ # 每次选择后会自增;若成功打出,则重置为1;如果全不无法选中,那么预测系统应该会选择空过本回合,不用考虑
131
134
 
132
135
  for _ in Loop(interval=1/30):
133
136
  device.click(0, 0)
@@ -178,16 +181,23 @@ def do_cards(
178
181
  tries += 1
179
182
  # 检测超时(防止一直卡在检测)
180
183
  if timeout_cd.expired():
181
- logger.info("Recommend card detection timed out. Click first card.")
182
184
  if card_count == 0:
183
185
  logger.warning("Recommend card detection timeout but no card found.")
184
186
  timeout_cd.reset()
185
187
  continue
186
188
  card_rects = calc_card_position(card_count)
187
- card_rect = card_rects[0]
189
+ assert len(card_rects) == card_count, "len(card_rects) != card_count, internal code error!"
190
+
191
+ # 让timeout_card_id自增,避免“因为第一张卡无法打出,导致卡在第一张卡上”的情况
192
+ timeout_card_id = timeout_card_id % card_count + 1
193
+ logger.info(f"Recommend card detection timed out. Click {timeout_card_id}-th card.")
194
+
195
+ card_rect = card_rects[timeout_card_id - 1]
188
196
  device.double_click(Rect(xywh=card_rect[:4]))
189
197
  sleep(2)
190
198
  timeout_cd.reset()
199
+ # 日期变更检测
200
+ acquisition_date_change_dialog()
191
201
  # 结束条件
192
202
  if card_count == 0 and end_predicate():
193
203
  if not break_cd.started:
@@ -10,15 +10,16 @@ from kotonebot import (
10
10
  Loop,
11
11
  Interval,
12
12
  )
13
- from kotonebot.kaa.config.schema import produce_solution
13
+ from kaa.config.schema import produce_solution
14
+ from kaa.tasks.start_game import wait_for_home
14
15
  from kotonebot.primitives import Rect
15
- from kotonebot.kaa.tasks import R
16
+ from kaa.tasks import R
16
17
  from .p_drink import acquire_p_drink
17
18
  from kotonebot.util import measure_time
18
- from kotonebot.kaa.config import conf
19
- from kotonebot.kaa.tasks.actions.loading import loading
20
- from kotonebot.kaa.game_ui import CommuEventButtonUI, dialog, badge
21
- from kotonebot.kaa.tasks.actions.commu import handle_unread_commu
19
+ from kaa.config import conf
20
+ from kaa.tasks.actions.loading import loading
21
+ from kaa.game_ui import CommuEventButtonUI, dialog, badge
22
+ from kaa.tasks.actions.commu import handle_unread_commu
22
23
 
23
24
  logger = getLogger(__name__)
24
25
 
@@ -150,6 +151,63 @@ def handle_skill_card_removal():
150
151
  break
151
152
  logger.debug("Handle skill card removal finished.")
152
153
 
154
+ @action('继续当前培育.进入培育', screenshot_mode='manual-inherit')
155
+ def resume_produce_pre() -> tuple[Literal['regular', 'pro', 'master'], int]:
156
+ """
157
+ 继续当前培育.进入培育\n
158
+ 该函数用于处理‘日期变更’等情况;单独执行此函数时,要确保代码已经处于培育状态。
159
+
160
+ 前置条件:游戏首页,且当前有进行中培育\n
161
+ 结束状态:培育中的任意一个页面
162
+ """
163
+ device.screenshot()
164
+ # 点击 プロデュース中
165
+ # [res/sprites/jp/daily/home_1.png]
166
+ logger.info('Click ongoing produce button.')
167
+ device.click(R.Produce.BoxProduceOngoing)
168
+ btn_resume = image.expect_wait(R.Produce.ButtonResume)
169
+ # 判断信息
170
+ mode_result = image.find_multi([
171
+ R.Produce.ResumeDialogRegular,
172
+ R.Produce.ResumeDialogPro,
173
+ R.Produce.ResumeDialogMaster
174
+ ])
175
+ if not mode_result:
176
+ raise ValueError('Failed to detect produce mode.')
177
+ if mode_result.index == 0:
178
+ mode = 'regular'
179
+ elif mode_result.index == 1:
180
+ mode = 'pro'
181
+ else:
182
+ mode = 'master'
183
+ logger.info(f'Produce mode: {mode}')
184
+ retry_count = 0
185
+ max_retries = 5
186
+ current_week = None
187
+ while retry_count < max_retries:
188
+ week_text = ocr.ocr(R.Produce.BoxResumeDialogWeeks, lang='en').squash().regex(r'\d+/\d+')
189
+ if week_text:
190
+ weeks = week_text[0].split('/')
191
+ logger.info(f'Current week: {weeks[0]}/{weeks[1]}')
192
+ if len(weeks) >= 2:
193
+ current_week = int(weeks[0])
194
+ break
195
+ retry_count += 1
196
+ logger.warning(f'Failed to detect weeks. week_text="{week_text}". Retrying... ({retry_count}/{max_retries})')
197
+ sleep(0.5)
198
+ device.screenshot()
199
+
200
+ if retry_count >= max_retries:
201
+ raise ValueError('Failed to detect weeks after multiple retries.')
202
+ if current_week is None:
203
+ raise ValueError('Failed to detect current_week.')
204
+ # 点击 再開する
205
+ # [kotonebot-resource/sprites/jp/produce/produce_resume.png]
206
+ logger.info('Click resume button.')
207
+ device.click(btn_resume)
208
+
209
+ return mode, current_week
210
+
153
211
  AcquisitionType = Literal[
154
212
  "PDrinkAcquire", # P饮料被动领取
155
213
  "PDrinkSelect", # P饮料主动领取
@@ -167,7 +225,31 @@ AcquisitionType = Literal[
167
225
  "NetworkError", # 网络中断弹窗
168
226
  "SkipCommu", # 跳过交流
169
227
  "Loading", # 加载画面
228
+ "DateChange", # 日期变更
170
229
  ]
230
+
231
+ def acquisition_date_change_dialog() -> AcquisitionType | None:
232
+ """
233
+ 检测是否执行了日期变更。\n
234
+ 如果出现了日期变更,则对日期变更直接进行处理(返回标题、进入游戏、重进培育)\n
235
+ 注:不更新屏幕截图。
236
+ """
237
+
238
+ # 日期变更(可以考虑加入版本更新,但因为我目前没有版本更新的720x1080素材,所以没法加)
239
+ logger.debug("Check date change dialog...")
240
+ if image.find(R.Daily.TextDateChangeDialog):
241
+ logger.info("Date change dialog found.")
242
+ # 点击确认
243
+ device.click(image.expect(R.Daily.TextDateChangeDialogConfirmButton))
244
+ # 进入游戏
245
+ # 注:wait_for_home()里的Loop类第一次进入循环体时,会自动执行device.screenshot()
246
+ wait_for_home()
247
+ # 重进培育
248
+ resume_produce_pre()
249
+ return "DateChange"
250
+
251
+ return None
252
+
171
253
  @measure_time()
172
254
  @action('处理培育事件', screenshot_mode='manual')
173
255
  def fast_acquisitions() -> AcquisitionType | None:
@@ -264,6 +346,12 @@ def fast_acquisitions() -> AcquisitionType | None:
264
346
  return "PItemSelect"
265
347
  device.click(10, 10)
266
348
 
349
+ # 日期变更
350
+ result = acquisition_date_change_dialog()
351
+ if result is not None:
352
+ return result
353
+ device.click(10, 10)
354
+
267
355
  return None
268
356
 
269
357
  def until_acquisition_clear():
@@ -2,18 +2,18 @@ import logging
2
2
  from typing_extensions import assert_never
3
3
  from typing import Literal
4
4
 
5
- from kotonebot.kaa.config.schema import produce_solution
6
- from kotonebot.kaa.game_ui.schedule import Schedule
7
- from kotonebot.kaa.tasks import R
5
+ from kaa.config.schema import produce_solution
6
+ from kaa.game_ui.schedule import Schedule
7
+ from kaa.tasks import R
8
8
  from ..actions import loading
9
- from kotonebot.kaa.game_ui import WhiteFilter, dialog
9
+ from kaa.game_ui import WhiteFilter, dialog
10
10
  from ..actions.scenes import at_home
11
11
  from .cards import do_cards, CardDetectResult
12
12
  from ..actions.commu import handle_unread_commu
13
13
  from kotonebot.errors import UnrecoverableError
14
14
  from kotonebot.util import Countdown, cropped
15
15
  from kotonebot.backend.loop import Loop
16
- from kotonebot.kaa.config import ProduceAction, RecommendCardDetectionMode
16
+ from kaa.config import ProduceAction, RecommendCardDetectionMode
17
17
  from ..produce.common import until_acquisition_clear, commu_event, fast_acquisitions
18
18
  from kotonebot import ocr, device, contains, image, regex, action, sleep, wait
19
19
  from ..produce.non_lesson_actions import (
@@ -219,12 +219,15 @@ def practice():
219
219
  logger.info("CLEAR/PERFECT not found. Practice finished.")
220
220
 
221
221
  @action('执行考试')
222
- def exam(type: Literal['mid', 'final']):
222
+ def exam(type: Literal['mid', 'final']) -> bool:
223
223
  """
224
224
  执行考试
225
225
 
226
226
  前置条件:考试进行中场景(手牌可见)\n
227
227
  结束状态:考试结束交流/对话(TODO:截图)
228
+
229
+ :return: 如果考试合格则返回True,否则返回False
230
+ :rtype: bool
228
231
  """
229
232
  logger.info("Exam started")
230
233
 
@@ -287,59 +290,76 @@ def exam(type: Literal['mid', 'final']):
287
290
 
288
291
  do_cards(threshold_predicate, end_predicate)
289
292
  device.click(image.expect_wait(R.Common.ButtonNext))
293
+
294
+ is_exam_passed = True
295
+
296
+ # 如果考试失败
297
+ sleep(1) # 避免在动画未播放完毕时点击
298
+ if image.wait_for(R.InPurodyuusu.TextRechallengeEndProduce, timeout=3):
299
+ logger.info('Exam failed, end produce.')
300
+ device.click()
301
+ is_exam_passed = False
302
+
290
303
  if type == 'final':
291
304
  for _ in Loop():
292
305
  if ocr.wait_for(contains("メモリー"), timeout=7):
293
306
  device.click_center()
294
307
  else:
295
308
  break
309
+
310
+ return is_exam_passed
296
311
 
297
312
  # TODO: 将这个函数改为手动截图模式
298
313
  @action('考试结束流程')
299
- def produce_end():
300
- """执行考试结束流程"""
314
+ def produce_end(has_live: bool = True):
315
+ """
316
+ 执行考试结束流程
317
+
318
+ :param has_live: 培育结束后是否存在live;当培育在期中考时失败的话,就没有live
319
+ """
301
320
  # 1. 考试结束交流 [screenshots/produce/in_produce/final_exam_end_commu.png]
302
321
  # 2. 然后是,考试结束对话 [screenshots\produce_end\step2.jpg]
303
322
  # 3. MV
304
323
  # 4. 培育结束交流
305
324
  # 上面这些全部一直点就可以
306
325
 
307
-
308
326
  # 等待选择封面画面 [screenshots/produce_end/select_cover.jpg]
309
327
  # 次へ
310
328
  logger.info("Waiting for select cover screen...")
311
- for _ in Loop():
312
- if not image.find(R.InPurodyuusu.ButtonNextNoIcon):
313
- # device.screenshot()
314
- # 未读交流
315
- if handle_unread_commu():
316
- logger.info("Skipping unread commu")
317
- # 跳过演出
318
- # [kotonebot-resource\sprites\jp\produce\screenshot_produce_end.png]
319
- elif image.find(R.Produce.ButtonSkipLive, preprocessors=[WhiteFilter()]):
320
- logger.info("Skipping live.")
321
- device.click()
322
- # [kotonebot-resource\sprites\jp\produce\screenshot_produce_end_skip.png]
323
- elif image.find(R.Produce.TextSkipLiveDialogTitle):
324
- logger.info("Confirming skip live.")
325
- device.click(image.expect_wait(R.Common.IconButtonCheck))
326
- device.click(0, 0)
327
- else:
328
- break
329
- # 选择封面
330
- logger.info("Use default cover.")
331
- sleep(3)
332
- logger.debug("Click next")
333
- device.click(image.expect_wait(R.InPurodyuusu.ButtonNextNoIcon))
334
- sleep(1)
335
- # 确认对话框 [screenshots/produce_end/select_cover_confirm.jpg]
336
- # 決定
337
- logger.debug("Click Confirm")
338
- device.click(image.expect_wait(R.Common.ButtonConfirm, threshold=0.8))
339
- sleep(1)
340
- # 上传图片,等待“生成”按钮
341
- # 注意网络可能会很慢,可能出现上传失败对话框
342
- logger.info("Waiting for cover uploading...")
329
+ if has_live: # 只有在合格时,才会进行演出
330
+ for _ in Loop():
331
+ if not image.find(R.InPurodyuusu.ButtonNextNoIcon):
332
+ # device.screenshot()
333
+ # 未读交流
334
+ if handle_unread_commu():
335
+ logger.info("Skipping unread commu")
336
+ # 跳过演出
337
+ # [kotonebot-resource\sprites\jp\produce\screenshot_produce_end.png]
338
+ elif image.find(R.Produce.ButtonSkipLive, preprocessors=[WhiteFilter()]):
339
+ logger.info("Skipping live.")
340
+ device.click()
341
+ # [kotonebot-resource\sprites\jp\produce\screenshot_produce_end_skip.png]
342
+ elif image.find(R.Produce.TextSkipLiveDialogTitle):
343
+ logger.info("Confirming skip live.")
344
+ device.click(image.expect_wait(R.Common.IconButtonCheck))
345
+ device.click(0, 0)
346
+ else:
347
+ break
348
+ # 选择封面
349
+ logger.info("Use default cover.")
350
+ sleep(3)
351
+ logger.debug("Click next")
352
+ device.click(image.expect_wait(R.InPurodyuusu.ButtonNextNoIcon))
353
+ sleep(1)
354
+ # 确认对话框 [screenshots/produce_end/select_cover_confirm.jpg]
355
+ # 決定
356
+ logger.debug("Click Confirm")
357
+ device.click(image.expect_wait(R.Common.ButtonConfirm, threshold=0.8))
358
+ sleep(1)
359
+ # 上传图片,等待“生成”按钮
360
+ # 注意网络可能会很慢,可能出现上传失败对话框
361
+ logger.info("Waiting for cover uploading...")
362
+
343
363
  retry_count = 0
344
364
  MAX_RETRY_COUNT = 5
345
365
  while True:
@@ -365,6 +385,7 @@ def produce_end():
365
385
  break
366
386
  else:
367
387
  device.click_center()
388
+ device.click(0, 0) # 为了兼容has_live==False的情况
368
389
  sleep(2)
369
390
  # 后续动画
370
391
  logger.info("Waiting for memory generation animation completed...")
@@ -577,26 +598,30 @@ def week_final_lesson():
577
598
  case _:
578
599
  assert_never(action)
579
600
 
580
- def week_mid_exam():
581
- logger.info("Week mid exam started.")
601
+ def week_mid_and_final_exam_common():
582
602
  logger.info("Wait for exam scene...")
583
603
  until_exam_scene()
584
604
  logger.info("Exam scene detected.")
585
605
  sleep(5)
586
606
  device.click_center()
587
- sleep(5)
588
- exam('mid')
589
- until_action_scene()
607
+ sleep(0.5)
608
+ loading.wait_loading_end()
609
+
610
+ def week_mid_exam():
611
+ logger.info("Week mid exam started.")
612
+
613
+ week_mid_and_final_exam_common()
614
+
615
+ if exam('mid'):
616
+ until_action_scene() # 考试通过
617
+ else:
618
+ produce_end(has_live=False) # 考试不合格
590
619
 
591
620
  def week_final_exam():
592
621
  logger.info("Week final exam started.")
593
- logger.info("Wait for exam scene...")
594
- until_exam_scene()
595
- logger.info("Exam scene detected.")
596
- sleep(5)
597
- device.click_center()
598
- sleep(0.5)
599
- loading.wait_loading_end()
622
+
623
+ week_mid_and_final_exam_common()
624
+
600
625
  exam('final')
601
626
  produce_end()
602
627
 
@@ -792,30 +817,28 @@ def hajime_from_stage(stage: ProduceStage, type: Literal['regular', 'pro', 'mast
792
817
  elif stage == 'exam-ongoing':
793
818
  # TODO: 应该直接调用 week_final_exam 而不是再写一次
794
819
  logger.info("Exam ongoing. Start exam.")
820
+
821
+ mid_exam_week = 6
795
822
  match type:
796
823
  case 'regular':
797
- if week > 6: # 第六周为期中考试
798
- exam('final')
799
- return produce_end()
800
- else:
801
- exam('mid')
802
- return hajime_from_stage(detect_produce_scene(), type, week)
824
+ mid_exam_week = 6 # 第六周为期中考试
803
825
  case 'pro':
804
- if week > 7:
805
- exam('final')
806
- return produce_end()
807
- else:
808
- exam('mid')
809
- return hajime_from_stage(detect_produce_scene(), type, week)
826
+ mid_exam_week = 7
810
827
  case 'master':
811
- if week > 8:
812
- exam('final')
813
- return produce_end()
814
- else:
815
- exam('mid')
816
- return hajime_from_stage(detect_produce_scene(), type, week)
828
+ mid_exam_week = 8
817
829
  case _:
818
830
  assert_never(type)
831
+
832
+ # 在考试进行一半时,继续培育
833
+ if week > mid_exam_week: # 判断在期中考,还是期末考
834
+ exam('final')
835
+ return produce_end()
836
+ else:
837
+ if exam('mid'): # 如果考试合格,则继续进行培育
838
+ return hajime_from_stage(detect_produce_scene(), type, week)
839
+ else: # 如果考试不合格,则直接结束培育,并且没有live
840
+ return produce_end(has_live=False)
841
+
819
842
  elif stage == 'practice-ongoing':
820
843
  # TODO: 应该直接调用 week_final_exam 而不是再写一次
821
844
  logger.info("Practice ongoing. Start practice.")
@@ -5,13 +5,13 @@
5
5
  """
6
6
  from logging import getLogger
7
7
 
8
- from kotonebot.kaa.config.schema import produce_solution
9
- from kotonebot.kaa.game_ui import dialog
8
+ from kaa.config.schema import produce_solution
9
+ from kaa.game_ui import dialog
10
10
 
11
- from kotonebot.kaa.tasks import R
12
- from kotonebot.kaa.config import conf
11
+ from kaa.tasks import R
12
+ from kaa.config import conf
13
13
  from ..produce.common import fast_acquisitions
14
- from kotonebot.kaa.game_ui.commu_event_buttons import CommuEventButtonUI
14
+ from kaa.game_ui.commu_event_buttons import CommuEventButtonUI
15
15
  from kotonebot.util import Countdown
16
16
  from kotonebot.backend.loop import Loop
17
17
  from kotonebot.errors import UnrecoverableError
@@ -242,12 +242,18 @@ def is_rest_available():
242
242
  def rest():
243
243
  """执行休息"""
244
244
  logger.info("Rest for this week.")
245
- (SimpleDispatcher('in_produce.rest')
246
- # 点击休息
247
- .click(R.InPurodyuusu.Rest)
248
- # 确定
249
- .click(R.InPurodyuusu.RestConfirmBtn, finish=True)
250
- ).run()
245
+
246
+ # 部分设备上,第二次click(确定)点击速度过快,导致卡死,所以这里需要添加一个sleep
247
+ device.click(image.expect(R.InPurodyuusu.Rest))
248
+ sleep(0.5)
249
+ device.click(image.expect(R.InPurodyuusu.RestConfirmBtn))
250
+ # 原方案
251
+ # (SimpleDispatcher('in_produce.rest')
252
+ # # 点击休息
253
+ # .click(R.InPurodyuusu.Rest)
254
+ # # 确定
255
+ # .click(R.InPurodyuusu.RestConfirmBtn, finish=True)
256
+ # ).run()
251
257
 
252
258
  @action('判断是否处于行动页面')
253
259
  def at_action_scene():
@@ -1,6 +1,6 @@
1
1
  from logging import getLogger
2
2
 
3
- from kotonebot.kaa.tasks import R
3
+ from kaa.tasks import R
4
4
  from kotonebot.primitives import Rect
5
5
  from kotonebot import device, image, action, sleep
6
6