|
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 9.0 KiB |
|
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 9.0 KiB |
|
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 9.0 KiB |
|
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 9.0 KiB |
@@ -1206,7 +1206,7 @@
|
||||
},
|
||||
"ChangeVanguard": {
|
||||
"name": "Change Vanguard",
|
||||
"help": "Change vanguard if flagship or vanguard are emotion exhausted. If you choose not to change, your fleet will ignore the low emotion warning and continue combat.\nSwitch out to new level 100(70) common vanguard from eagle or ironblood after current flagship has reached level 32+ (Only CN players'0 limit break ship can reach level 100)\n\nThe vanguard's equipment is replaced when being switched out by first recording the current setup. Only populated equipment slots will be replaced.",
|
||||
"help": "Change vanguard if flagship or vanguard are emotion exhausted. If you choose not to change, your fleet will ignore the low emotion warning and continue combat.\nSwitch out to new level 100(70) common vanguard from eagle or ironblood after current flagship has reached level 32+ (Only CN players'0 limit break ship can reach level 100)",
|
||||
"disabled": "Don't Change",
|
||||
"ship": "Change Ship"
|
||||
},
|
||||
|
||||
@@ -1206,7 +1206,7 @@
|
||||
},
|
||||
"ChangeVanguard": {
|
||||
"name": "更换前排",
|
||||
"help": "当前排红脸时更换前排,选择不更换则会强制红脸出击\n换前排通过找一艘心情不低于10、等级100的白鹰或铁血的白皮驱逐完成,所以尽量保证有足够多的驱逐。国服以外则为等级70的白鹰白船驱逐。\n\n换装备只会更换正在装备中的栏位,即使是白装也会更换。前排会更换全部5个装备。",
|
||||
"help": "当前排红脸时更换前排,选择不更换则会强制红脸出击\n换前排通过找一艘心情不低于10、等级100的白鹰或铁血的白皮驱逐完成,所以尽量保证有足够多的驱逐。国服以外则为等级70的白鹰白船驱逐。",
|
||||
"disabled": "不更换",
|
||||
"ship": "更换舰船"
|
||||
},
|
||||
|
||||
@@ -1206,7 +1206,7 @@
|
||||
},
|
||||
"ChangeVanguard": {
|
||||
"name": "更換前排",
|
||||
"help": "當前排紅臉時更換前排,選擇不更換則會強制紅臉出擊\n換前排通過找一艘心情不低於10、等級70的白鷹或鐵血的白船驅逐完成,所以盡量保證有足夠多的驅逐。國服則為等級100的白鷹白船驅逐。\n\n換裝備只會更換正在裝備中的欄位,即使是白裝也會更換。前排會更換全部5個裝備。",
|
||||
"help": "當前排紅臉時更換前排,選擇不更換則會強制紅臉出擊\n換前排通過找一艘心情不低於10、等級70的白鷹或鐵血的白船驅逐完成,所以盡量保證有足夠多的驅逐。國服則為等級100的白鷹白船驅逐。",
|
||||
"disabled": "不更换",
|
||||
"ship": "更換艦船"
|
||||
},
|
||||
|
||||
@@ -4,12 +4,12 @@ from module.base.template import Template
|
||||
# This file was automatically generated by dev_tools/button_extract.py.
|
||||
# Don't modify it manually.
|
||||
|
||||
DAILY_ACTIVE = Button(area={'cn': (611, 385, 711, 405), 'en': (611, 385, 711, 405), 'jp': (611, 385, 711, 405), 'tw': (611, 385, 711, 405)}, color={'cn': (5, 10, 7), 'en': (5, 10, 7), 'jp': (5, 10, 7), 'tw': (5, 10, 7)}, button={'cn': (611, 385, 711, 405), 'en': (611, 385, 711, 405), 'jp': (611, 385, 711, 405), 'tw': (611, 385, 711, 405)}, file={'cn': './assets/cn/daily/DAILY_ACTIVE.png', 'en': './assets/en/daily/DAILY_ACTIVE.png', 'jp': './assets/jp/daily/DAILY_ACTIVE.png', 'tw': './assets/tw/daily/DAILY_ACTIVE.png'})
|
||||
DAILY_ACTIVE = Button(area={'cn': (673, 357, 705, 396), 'en': (673, 357, 705, 396), 'jp': (673, 357, 705, 396), 'tw': (673, 357, 705, 396)}, color={'cn': (5, 9, 10), 'en': (5, 9, 10), 'jp': (5, 9, 10), 'tw': (5, 9, 10)}, button={'cn': (673, 357, 705, 396), 'en': (673, 357, 705, 396), 'jp': (673, 357, 705, 396), 'tw': (673, 357, 705, 396)}, file={'cn': './assets/cn/daily/DAILY_ACTIVE.png', 'en': './assets/en/daily/DAILY_ACTIVE.png', 'jp': './assets/jp/daily/DAILY_ACTIVE.png', 'tw': './assets/tw/daily/DAILY_ACTIVE.png'})
|
||||
DAILY_ENTER = Button(area={'cn': (534, 118, 744, 645), 'en': (534, 118, 744, 645), 'jp': (534, 118, 744, 645), 'tw': (534, 118, 744, 645)}, color={'cn': (136, 166, 185), 'en': (132, 161, 180), 'jp': (136, 166, 185), 'tw': (136, 166, 185)}, button={'cn': (534, 118, 744, 645), 'en': (534, 118, 744, 645), 'jp': (534, 118, 744, 645), 'tw': (534, 118, 744, 645)}, file={'cn': './assets/cn/daily/DAILY_ENTER.png', 'en': './assets/en/daily/DAILY_ENTER.png', 'jp': './assets/jp/daily/DAILY_ENTER.png', 'tw': './assets/tw/daily/DAILY_ENTER.png'})
|
||||
DAILY_ENTER_CHECK = Button(area={'cn': (1222, 141, 1229, 150), 'en': (1221, 136, 1230, 143), 'jp': (1222, 149, 1228, 160), 'tw': (1222, 141, 1229, 150)}, color={'cn': (247, 209, 66), 'en': (247, 214, 82), 'jp': (246, 210, 64), 'tw': (247, 209, 66)}, button={'cn': (1222, 141, 1229, 150), 'en': (1221, 136, 1230, 143), 'jp': (1222, 149, 1228, 160), 'tw': (1222, 141, 1229, 150)}, file={'cn': './assets/cn/daily/DAILY_ENTER_CHECK.png', 'en': './assets/en/daily/DAILY_ENTER_CHECK.png', 'jp': './assets/jp/daily/DAILY_ENTER_CHECK.png', 'tw': './assets/tw/daily/DAILY_ENTER_CHECK.png'})
|
||||
DAILY_FLEET_NEXT = Button(area={'cn': (914, 325, 931, 354), 'en': (914, 325, 931, 354), 'jp': (914, 325, 931, 354), 'tw': (914, 325, 931, 354)}, color={'cn': (86, 115, 149), 'en': (86, 115, 149), 'jp': (86, 115, 149), 'tw': (86, 115, 149)}, button={'cn': (914, 325, 931, 354), 'en': (914, 325, 931, 354), 'jp': (914, 325, 931, 354), 'tw': (914, 325, 931, 354)}, file={'cn': './assets/cn/daily/DAILY_FLEET_NEXT.png', 'en': './assets/en/daily/DAILY_FLEET_NEXT.png', 'jp': './assets/jp/daily/DAILY_FLEET_NEXT.png', 'tw': './assets/tw/daily/DAILY_FLEET_NEXT.png'})
|
||||
DAILY_FLEET_PREV = Button(area={'cn': (36, 325, 53, 354), 'en': (36, 325, 53, 354), 'jp': (36, 325, 53, 354), 'tw': (36, 325, 53, 354)}, color={'cn': (103, 130, 163), 'en': (103, 130, 163), 'jp': (103, 130, 163), 'tw': (103, 130, 163)}, button={'cn': (36, 325, 53, 354), 'en': (36, 325, 53, 354), 'jp': (36, 325, 53, 354), 'tw': (36, 325, 53, 354)}, file={'cn': './assets/cn/daily/DAILY_FLEET_PREV.png', 'en': './assets/en/daily/DAILY_FLEET_PREV.png', 'jp': './assets/jp/daily/DAILY_FLEET_PREV.png', 'tw': './assets/tw/daily/DAILY_FLEET_PREV.png'})
|
||||
DAILY_LOCKED = Button(area={'cn': (684, 182, 718, 228), 'en': (684, 182, 718, 228), 'jp': (684, 182, 718, 228), 'tw': (684, 182, 718, 228)}, color={'cn': (68, 76, 85), 'en': (68, 76, 85), 'jp': (68, 76, 85), 'tw': (68, 76, 85)}, button={'cn': (684, 182, 718, 228), 'en': (684, 182, 718, 228), 'jp': (684, 182, 718, 228), 'tw': (684, 182, 718, 228)}, file={'cn': './assets/cn/daily/DAILY_LOCKED.png', 'en': './assets/en/daily/DAILY_LOCKED.png', 'jp': './assets/jp/daily/DAILY_LOCKED.png', 'tw': './assets/tw/daily/DAILY_LOCKED.png'})
|
||||
DAILY_LOCKED = Button(area={'cn': (710, 359, 748, 409), 'en': (710, 359, 748, 409), 'jp': (710, 359, 748, 409), 'tw': (710, 359, 748, 409)}, color={'cn': (24, 29, 29), 'en': (24, 29, 29), 'jp': (24, 29, 29), 'tw': (24, 29, 29)}, button={'cn': (710, 359, 748, 409), 'en': (710, 359, 748, 409), 'jp': (710, 359, 748, 409), 'tw': (710, 359, 748, 409)}, file={'cn': './assets/cn/daily/DAILY_LOCKED.png', 'en': './assets/en/daily/DAILY_LOCKED.png', 'jp': './assets/jp/daily/DAILY_LOCKED.png', 'tw': './assets/tw/daily/DAILY_LOCKED.png'})
|
||||
DAILY_MISSION_1 = Button(area={'cn': (482, 140, 701, 255), 'en': (584, 203, 701, 214), 'jp': (595, 141, 719, 266), 'tw': (482, 140, 701, 255)}, color={'cn': (58, 80, 123), 'en': (62, 83, 124), 'jp': (53, 78, 122), 'tw': (58, 80, 123)}, button={'cn': (482, 140, 701, 255), 'en': (584, 203, 701, 214), 'jp': (595, 141, 719, 266), 'tw': (482, 140, 701, 255)}, file={'cn': './assets/cn/daily/DAILY_MISSION_1.png', 'en': './assets/en/daily/DAILY_MISSION_1.png', 'jp': './assets/jp/daily/DAILY_MISSION_1.png', 'tw': './assets/tw/daily/DAILY_MISSION_1.png'})
|
||||
DAILY_MISSION_2 = Button(area={'cn': (482, 300, 701, 415), 'en': (584, 363, 701, 374), 'jp': (482, 300, 701, 415), 'tw': (482, 300, 701, 415)}, color={'cn': (61, 84, 128), 'en': (65, 88, 128), 'jp': (61, 84, 128), 'tw': (61, 84, 128)}, button={'cn': (482, 300, 701, 415), 'en': (584, 363, 701, 374), 'jp': (482, 300, 701, 415), 'tw': (482, 300, 701, 415)}, file={'cn': './assets/cn/daily/DAILY_MISSION_2.png', 'en': './assets/en/daily/DAILY_MISSION_2.png', 'jp': './assets/jp/daily/DAILY_MISSION_2.png', 'tw': './assets/tw/daily/DAILY_MISSION_2.png'})
|
||||
DAILY_MISSION_3 = Button(area={'cn': (482, 460, 701, 575), 'en': (583, 522, 701, 534), 'jp': (482, 460, 701, 575), 'tw': (482, 460, 701, 575)}, color={'cn': (75, 106, 146), 'en': (73, 101, 139), 'jp': (75, 106, 146), 'tw': (75, 106, 146)}, button={'cn': (482, 460, 701, 575), 'en': (583, 522, 701, 534), 'jp': (482, 460, 701, 575), 'tw': (482, 460, 701, 575)}, file={'cn': './assets/cn/daily/DAILY_MISSION_3.png', 'en': './assets/en/daily/DAILY_MISSION_3.png', 'jp': './assets/jp/daily/DAILY_MISSION_3.png', 'tw': './assets/tw/daily/DAILY_MISSION_3.png'})
|
||||
|
||||
@@ -66,6 +66,7 @@ def remove_screenshot_warning(s):
|
||||
https://github.com/LmeSzinc/AzurLaneAutoScript/issues/4760
|
||||
|
||||
Failed to create //.cache for shader cache (Read-only file system)---disabling.\n
|
||||
\x89PNG...
|
||||
|
||||
2. Warning when taking screenshot from multiscreen device
|
||||
|
||||
@@ -87,7 +88,15 @@ def remove_screenshot_warning(s):
|
||||
4. Unknown header on VMOS PRO screenshot
|
||||
https://github.com/LmeSzinc/AzurLaneAutoScript/pull/940
|
||||
|
||||
long long=8 fun*=10\n\x89PNG...
|
||||
long long=8 fun*=10\n
|
||||
\x89PNG...
|
||||
|
||||
5. Warning from AMD GPU driver when running redroid on minimal linux system (typically a NAS)
|
||||
https://github.com/LmeSzinc/AzurLaneAutoScript/issues/5697
|
||||
|
||||
amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description.\n
|
||||
If they do, bad things may happen!\n
|
||||
\x89PNG...
|
||||
|
||||
Args:
|
||||
s (str | bytes): bytes or str
|
||||
@@ -106,6 +115,10 @@ def remove_screenshot_warning(s):
|
||||
_, _, s = s.partition(b'\n')
|
||||
if s.startswith(b'long long=8'):
|
||||
_, _, s = s.partition(b'\n')
|
||||
if s.startswith(b'amdgpu:'):
|
||||
_, _, s = s.partition(b'\n')
|
||||
if s.startswith(b'If they do'):
|
||||
_, _, s = s.partition(b'\n')
|
||||
|
||||
elif isinstance(s, str):
|
||||
if s.startswith('Failed to create'):
|
||||
@@ -118,5 +131,9 @@ def remove_screenshot_warning(s):
|
||||
_, _, s = s.partition('\n')
|
||||
if s.startswith('long long=8'):
|
||||
_, _, s = s.partition('\n')
|
||||
if s.startswith('amdgpu:'):
|
||||
_, _, s = s.partition('\n')
|
||||
if s.startswith('If they do'):
|
||||
_, _, s = s.partition('\n')
|
||||
|
||||
return s
|
||||
|
||||
@@ -62,7 +62,7 @@ class PercentageOcr(Ocr):
|
||||
|
||||
|
||||
FLEET_LOW_RESOLVE = Button(
|
||||
area=(144, 148, 170, 175), color=(255, 44, 33), button=(144, 148, 170, 175),
|
||||
area=(294, 76, 339, 121), color=(255, 44, 33), button=(294, 76, 339, 121),
|
||||
name='FLEET_LOW_RESOLVE')
|
||||
|
||||
|
||||
@@ -675,7 +675,7 @@ class OSFleet(OSCamera, Combat, Fleet, OSAsh):
|
||||
|
||||
# Wait until arrived
|
||||
# Having new screenshots
|
||||
self.wait_until_walk_stable(confirm_timer=Timer(1.5, count=4), walk_out_of_step=False, drop=drop)
|
||||
self.wait_until_walk_stable(confirm_timer=Timer(4, count=6), walk_out_of_step=False, drop=drop)
|
||||
|
||||
def get_boss_leave_button(self):
|
||||
for grid in self.view:
|
||||
|
||||