diff --git a/star-raid/js/enemies.js b/star-raid/js/enemies.js index a2de429..ab8679f 100644 --- a/star-raid/js/enemies.js +++ b/star-raid/js/enemies.js @@ -437,28 +437,28 @@ function bossMain(b,def,fm){ ks.hotList=null;ks.hot=-1;SFX.eshoot();}} ks.t--; if(ks.t<=0&&ks.hotT<=0){ - if(ks.i>=ks.seq.length){ // 布下一局:按“每局激光量”均衡——扫18键/来回36键/乱序~18键/齐射~18键 → 概率2/7:1/7:2/7:2/7(火力各~25%);局间无间隔 + if(ks.i>=ks.seq.length){ // 布下一局:7技能——扫1/4(各1/8)、来回1/4(各1/8)、乱序1/4、4连不射1/4;局间无间隔 const m=Math.random(); - if(m<2/7)ks.mode=rndi(0,1); // 两个扫:合2/7(各1/7) - else if(m<3/7)ks.mode=rndi(2,3); // 两个来回:合1/7(各1/14) - else if(m<5/7)ks.mode=4; // 乱序:2/7(锁玩家+随机键) - else ks.mode=5; // 齐射:2/7 + if(m<0.25)ks.mode=rndi(0,1); // 顺扫/反扫:合1/4(各1/8),留3安全区 + else if(m<0.5)ks.mode=rndi(2,3); // 顺来回/反来回:合1/4(各1/8),留3安全区 + else if(m<0.75)ks.mode=4; // 乱序:2瞄准(玩家正上方)+2随机 + else ks.mode=5; // 4连不射:留4安全键其余全射 if(ks.mode===0){ks.seq=[];for(let i=0;i=3;i--)ks.seq.push(i);} // 反扫:20→3,最左3键安全 else if(ks.mode===2){ks.seq=[];for(let i=0;i=0;i--)ks.seq.push(i);} // 顺来回:0→17→0,最右3键安全 else if(ks.mode===3){ks.seq=[];for(let i=n-1;i>=3;i--)ks.seq.push(i);for(let i=3;ik!==kNear&&k!==kNear2); ks.hotList=[kNear,kNear2].concat(pool.slice(0,2+ph*2)); ks.hotT=9;ks.hotT0=9;ks.t=Math.round((ph?7:10)/fm);} + else if(cur===-3){const safeStart=rndi(0,n-4);const all=[];for(let i=0;i=safeStart+4)all.push(i);ks.hotList=all;ks.hotT=9;ks.hotT0=9;ks.t=Math.round((ph?10:15)/fm);} // 4连不射:留4安全键其余全射 else{ks.hot=cur;ks.hotT=1;ks.hotT0=1;ks.t=Math.max(1,Math.round((ph?1:2)/fm));} // 顺/反扫/来回:快速 } }