1
0
mirror of https://gitee.com/sui-feng-cb/AzurLaneAutoScript1 synced 2026-05-03 14:56:59 +08:00

Merge branch 'dev'

This commit is contained in:
LmeSzinc
2026-05-01 04:34:12 +08:00
24 changed files with 101 additions and 47 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -289,3 +289,5 @@ To add a new event, add a new row in here, and run `python -m module.config.conf
| 20260416 | event 20220915 cn | Violet Tempest Blooming Lycoris | - | - | - | 復刻紫絳槿嵐 |
| 20260417 | event 20260417 cn | Vacation Lane Beachside Brilliance | 假日航线闪耀海滨 | Vacation Lane Beachside Brilliance | バケーションレーン・きらめく砂浜 | - |
| 20260417 | event 20201126 cn | Vacation Lane Rerun | 复刻假日航线 | Vacation Lane Rerun | バケーションレーン(復刻) | - |
| 20260417 | event 20250424 cn | Toward Tulipas Seas Rerun | 复刻扬起郁金之旗 | Toward Tulipas Seas Rerun | チュリッパの海へ(復刻) | - |
| 20260417 | event 20260417 cn | Vacation Lane Beachside Brilliance | - | - | - | 假日航線閃耀海濱 |

View File

@@ -107,9 +107,10 @@ class Campaign(CampaignBase):
def map_data_init(self, map_):
super().map_data_init(map_)
for override_grid in OVERRIDE:
# Set may_enemy, but keep may_ambush
self.map[override_grid.location].may_enemy = override_grid.may_enemy
if not self.map_is_clear_mode:
for override_grid in OVERRIDE:
# Set may_enemy, but keep may_ambush
self.map[override_grid.location].may_enemy = override_grid.may_enemy
def battle_0(self):
self.pick_up_light_house(A9)

View File

@@ -1,9 +1,9 @@
from module.base.button import Button
from module.campaign.assets import EVENT_20201126_ENTRANCE_TEMP, EVENT_20201126_PT_ICON
from module.campaign.assets import EVENT_20201126_PT_ICON, EVENT_20201126_DETAIL, EVENT_20201126_DETAIL_CHECK, EVENT_20201126_DETAIL_WHITE, EVENT_20201126_ENTRANCE
from module.campaign.campaign_base import CampaignBase as CampaignBase_
from module.exception import CampaignNameError
from module.logger import logger
from module.ui.page import page_campaign_menu, page_event, page_main
from module.ui.page import page_campaign_menu, page_event, page_main_white
EVENT_ANIMATION = Button(area=(49, 229, 119, 400), color=(118, 215, 240), button=(49, 229, 119, 400),
name='EVENT_ANIMATION')
@@ -24,11 +24,13 @@ class CampaignBase(CampaignBase_):
return True
self.ui_ensure(page_campaign_menu)
if self.is_event_entrance_available():
self.ui_ensure(page_main)
self.ui_click(EVENT_20201126_ENTRANCE_TEMP,
check_button=EVENT_20201126_PT_ICON,
appear_button=EVENT_20201126_ENTRANCE_TEMP,
offset=(40, 20))
self.ui_goto_main()
if self.ui_page_appear(page_main_white):
self.ui_click(EVENT_20201126_DETAIL_WHITE, check_button=EVENT_20201126_DETAIL_CHECK)
else:
self.ui_click(EVENT_20201126_DETAIL, check_button=EVENT_20201126_DETAIL_CHECK)
self.ui_click(EVENT_20201126_ENTRANCE, check_button=EVENT_20201126_PT_ICON,
appear_button=EVENT_20201126_DETAIL_CHECK, offset=(40, 20))
return True

View File

@@ -1,5 +1,7 @@
from module.campaign.assets import EVENT_20250424_PT_ICON
from module.campaign.campaign_base import CampaignBase as CampaignBase_
from module.ui.page import page_event
from module.logger import logger
from module.ui.page import page_campaign_menu, page_event
class CampaignBase(CampaignBase_):
@@ -8,3 +10,12 @@ class CampaignBase(CampaignBase_):
if self.ui_page_appear(page_event):
return False
return super().handle_exp_info()
def ui_goto_event(self):
if self.appear(EVENT_20250424_PT_ICON, offset=(20, 20)) and self.ui_page_appear(page_event):
logger.info('Already at EVENT_20250424')
return True
self.ui_ensure(page_campaign_menu)
if self.is_event_entrance_available():
self.ui_goto(page_event)
return True

View File

@@ -1,8 +1,8 @@
from module.base.button import Button
from module.campaign.assets import EVENT_20260417_PT_ICON
from module.campaign.assets import EVENT_20260417_PT_ICON, EVENT_20260417_DETAIL, EVENT_20260417_DETAIL_CHECK, EVENT_20260417_DETAIL_WHITE, EVENT_20260417_ENTRANCE
from module.campaign.campaign_base import CampaignBase as CampaignBase_
from module.logger import logger
from module.ui.page import page_campaign_menu, page_event
from module.ui.page import page_campaign_menu, page_event, page_main_white
EVENT_ANIMATION = Button(area=(49, 229, 119, 400), color=(118, 215, 240), button=(49, 229, 119, 400),
name='EVENT_ANIMATION')
@@ -10,12 +10,18 @@ EVENT_ANIMATION = Button(area=(49, 229, 119, 400), color=(118, 215, 240), button
class CampaignBase(CampaignBase_):
def ui_goto_event(self):
if self.appear(EVENT_20260417_PT_ICON, offset=(20, 20)) and self.ui_page_appear(page_event):
if self.appear(EVENT_20260417_PT_ICON, offset=(40, 20)) and self.ui_page_appear(page_event):
logger.info('Already at EVENT_20260417')
return True
self.ui_ensure(page_campaign_menu)
if self.is_event_entrance_available():
self.ui_goto(page_event)
self.ui_goto_main()
if self.ui_page_appear(page_main_white):
self.ui_click(EVENT_20260417_DETAIL_WHITE, check_button=EVENT_20260417_DETAIL_CHECK)
else:
self.ui_click(EVENT_20260417_DETAIL, check_button=EVENT_20260417_DETAIL_CHECK)
self.ui_click(EVENT_20260417_ENTRANCE, check_button=EVENT_20260417_PT_ICON,
appear_button=EVENT_20260417_DETAIL_CHECK, offset=(40, 20))
return True
@staticmethod

View File

@@ -1,7 +1,7 @@
# docker build -t hgjazhgj/alas:latest .
# docker run -v ${PWD}:/app/AzurLaneAutoScript -p 22267:22267 --name alas -it --rm hgjazhgj/alas
FROM python:3.7-slim
FROM python:3.7-slim-bullseye
WORKDIR /app/AzurLaneAutoScript
@@ -10,7 +10,12 @@ COPY requirements.txt /tmp/requirements.txt
# Initial download of UiAutomator2 is slow outside of China using appetizer mirror, switch to GitHub
RUN apt update \
&& apt install -y git adb libgomp1 openssh-client \
&& apt install -y build-essential pkg-config \
&& apt install -y libavformat-dev libavcodec-dev libavdevice-dev \
&& apt install -y libavutil-dev libswscale-dev libswresample-dev libavfilter-dev \
&& git config --global --add safe.directory '*' \
&& pip install Cython==0.29.37 \
&& pip install av==10.0.0 --no-build-isolation \
&& pip install -r /tmp/requirements.txt \
&& rm /tmp/requirements.txt \
&& rm -r ~/.cache/pip

View File

@@ -14,16 +14,19 @@ deb-src https://mirrors.aliyun.com/debian/ bullseye main non-free contrib\n\
deb https://mirrors.aliyun.com/debian-security/ bullseye-security main\n\
deb-src https://mirrors.aliyun.com/debian-security/ bullseye-security main\n\
deb https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib\n\
deb-src https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib\n\
deb https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib\n\
deb-src https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib" \
deb-src https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib" \
> /etc/apt/sources.list \
&& apt update \
&& apt install -y git adb libgomp1 openssh-client \
&& apt install -y build-essential pkg-config \
&& apt install -y libavformat-dev libavcodec-dev libavdevice-dev \
&& apt install -y libavutil-dev libswscale-dev libswresample-dev libavfilter-dev \
&& git config --global --add safe.directory '*' \
&& ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& echo 'Asia/Shanghai' > /etc/timezone \
&& pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple \
&& pip install Cython==0.29.37 \
&& pip install av==10.0.0 --no-build-isolation \
&& pip install -r /tmp/requirements.txt \
&& rm /tmp/requirements.txt \
&& rm -r ~/.cache/pip

View File

@@ -1643,27 +1643,30 @@
"value": "campaign_main",
"option": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
],
"option_cn": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_en": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_jp": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_tw": [
"event_20220915_cn"
"event_20260417_cn"
],
"option_bold": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
]
},
@@ -1930,27 +1933,30 @@
"value": "campaign_main",
"option": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
],
"option_cn": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_en": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_jp": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_tw": [
"event_20220915_cn"
"event_20260417_cn"
],
"option_bold": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
]
},
@@ -2332,27 +2338,30 @@
"value": "campaign_main",
"option": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
],
"option_cn": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_en": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_jp": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_tw": [
"event_20220915_cn"
"event_20260417_cn"
],
"option_bold": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
]
},
@@ -4064,27 +4073,30 @@
"value": "campaign_main",
"option": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
],
"option_cn": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_en": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_jp": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_tw": [
"event_20220915_cn"
"event_20260417_cn"
],
"option_bold": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
]
},
@@ -4483,27 +4495,30 @@
"value": "campaign_main",
"option": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
],
"option_cn": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_en": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_jp": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_tw": [
"event_20220915_cn"
"event_20260417_cn"
],
"option_bold": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
]
},
@@ -4902,27 +4917,30 @@
"value": "campaign_main",
"option": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
],
"option_cn": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_en": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_jp": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_tw": [
"event_20220915_cn"
"event_20260417_cn"
],
"option_bold": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
]
},
@@ -5321,27 +5339,30 @@
"value": "campaign_main",
"option": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
],
"option_cn": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_en": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_jp": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_tw": [
"event_20220915_cn"
"event_20260417_cn"
],
"option_bold": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
]
},
@@ -5730,27 +5751,30 @@
"value": "campaign_main",
"option": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
],
"option_cn": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_en": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_jp": [
"event_20250424_cn",
"event_20201126_cn",
"event_20260417_cn"
],
"option_tw": [
"event_20220915_cn"
"event_20260417_cn"
],
"option_bold": [
"event_20201126_cn",
"event_20220915_cn",
"event_20250424_cn",
"event_20260417_cn"
]
},

View File

@@ -760,7 +760,7 @@
"event_20241121_cn": "Dangerous Inventions Incoming",
"event_20241219_cn": "Substellar Crepuscule",
"event_20250227_cn": "Paradiso of Shackled Light",
"event_20250424_cn": "Toward Tulipas Seas",
"event_20250424_cn": "Toward Tulipas Seas Rerun",
"event_20250520_cn": "A Rose on the High Tower",
"event_20250724_cn": "The Alchemist and the Tower of Horizons",
"event_20250814_cn": "Secrets of the Abyss",

View File

@@ -760,7 +760,7 @@
"event_20241121_cn": "危険発明接近中",
"event_20241219_cn": "星降る夕影の残光",
"event_20250227_cn": "籠檻に囚われし神光",
"event_20250424_cn": "チュリッパの海へ",
"event_20250424_cn": "チュリッパの海へ(復刻)",
"event_20250520_cn": "高い塔の薔薇",
"event_20250724_cn": "錬金術士と天空邂逅の塔",
"event_20250814_cn": "淵層界の秘密",

View File

@@ -760,7 +760,7 @@
"event_20241121_cn": "危险发明迫近中",
"event_20241219_cn": "星光下的余晖",
"event_20250227_cn": "樊笼内的神光",
"event_20250424_cn": "扬起郁金之旗",
"event_20250424_cn": "复刻扬起郁金之旗",
"event_20250520_cn": "高塔上的蔷薇",
"event_20250724_cn": "优米雅的炼金工房",
"event_20250814_cn": "奇渊下的秘密",

View File

@@ -769,7 +769,7 @@
"event_20251218_cn": "響徹於天穹之音",
"event_20260226_cn": "春滿客棧Online",
"event_20260326_cn": "漫遊者招募計劃",
"event_20260417_cn": "Vacation Lane Beachside Brilliance",
"event_20260417_cn": "假日航線閃耀海濱",
"raid_20200624": "特別演習埃塞克斯級(復刻)",
"raid_20210708": "復刻穿越彼方的水線",
"raid_20220127": "演習神秘事件調查",