22var DialogProcessor = {
33 // 执行优化的自动对话
44 executeOptimizedAutoTalk : async function (
5- extractedName ,
6- skipCount ,
75 customPriorityOptions ,
86 customNpcWhiteList ,
97 isInMainUI
108 ) {
11- extractedName = extractedName || null ;
12- skipCount = skipCount || 5 ;
139 customPriorityOptions = customPriorityOptions || null ;
1410 customNpcWhiteList = customNpcWhiteList || null ;
15-
16- // 使用传入的参数,不再加载默认配置
1711 var effectivePriorityOptions = customPriorityOptions || [ ] ;
1812 var effectiveNpcWhiteList = customNpcWhiteList || [ ] ;
1913
2014 // 初始化
2115 keyPress ( "V" ) ;
2216
23- // 初始触发剧情 - 识别人名并点击
17+ // 从委托描述中提取任务相关的人名存为列表
2418 extractedName = [ ] ;
25- // 人名区域OCR识别
19+ // 委托描述的OCR识别区域
2620 var nameRegion = { X : 75 , Y : 240 , WIDTH : 225 , HEIGHT : 60 } ;
2721 var nameResults = await Utils . easyOCR ( nameRegion ) ;
2822 // 尝试提取任务人名
@@ -39,8 +33,10 @@ var DialogProcessor = {
3933 }
4034 }
4135
42- // 对话选项区域OCR识别
43- var dialogRegion = { X : 1150 , Y : 300 , WIDTH : 350 , HEIGHT : 400 } ;
36+ // 交互选项区域OCR识别
37+ var dialogRegion = { X : 1150 , Y : 300 , WIDTH : 350 , HEIGHT : 400 } ;
38+ // 对话选项的ICON识别区域
39+ var talkIconRegion = { X : 1260 , Y : 300 , WIDTH : 90 , HEIGHT : 550 } ;
4440 nameResults = await Utils . easyOCR ( dialogRegion ) ;
4541 var clickedWhitelistNPC = false ;
4642 var clickedExtractedName = false ;
@@ -122,9 +118,6 @@ var DialogProcessor = {
122118 while ( ! isInMainUI ( ) && attempts < maxAttempts ) {
123119 attempts ++ ;
124120
125- // 正常跳过对话
126- //await genshin.chooseTalkOption("纳西妲美貌举世无双", skipCount, false); 不好用
127-
128121 var startTime = new Date ( ) . getTime ( ) ;
129122
130123 // 1秒内按空格键跳过
@@ -138,8 +131,6 @@ var DialogProcessor = {
138131 break ;
139132 }
140133
141- //keyPress("VK_ESCAPE");//关弹窗
142-
143134 // 检查是否有匹配的优先选项
144135 var foundPriorityOption = false ;
145136
@@ -179,12 +170,12 @@ var DialogProcessor = {
179170 if ( ! foundPriorityOption && ! isInMainUI ( ) ) {
180171 let exitList = await Utils . easyTemplateMatch (
181172 Constants . TALK_EXIT_IMAGE_PATH ,
182- dialogRegion ,
173+ talkIconRegion ,
183174 true
184175 ) ;
185176 let iconList = await Utils . easyTemplateMatch (
186177 Constants . TALK_ICON_IMAGE_PATH ,
187- dialogRegion
178+ talkIconRegion
188179 ) ;
189180 let clickXY = null ;
190181 //正常应该只识别到一个退出选项
0 commit comments