diff --git a/star-raid/js/enemies.js b/star-raid/js/enemies.js index fd3eca0..8aae376 100644 --- a/star-raid/js/enemies.js +++ b/star-raid/js/enemies.js @@ -315,20 +315,19 @@ function updateBoss(){ else if(b.idx===6){const usp=b.phase>=1?0.028:0.008,amp=b.phase>=1?70:44; b.x=clamp(b.x+amp*usp*Math.cos(b.mt*usp),30,W-30); // 速度积分定位:换阶段参数突变也不瞬移 b.yA=(b.yA||8)+((b.phase>=1?12:8)-(b.yA||8))*0.05;b.y=b.ty+Math.sin(b.mt*0.011)*b.yA;} // 夺权者X:P1巨大笨重→P2紧凑灵活 - else{ // 通用游走:中线分界——左侧只向右/右侧只向左,目标始终在中线另一侧;速度积分带加速度与惯性;边界防撞 + else{ // 通用游走:中线分界——左侧只向右/右侧只向左,目标始终在中线另一侧;速度积分带加速度与惯性;提前换向消除端点停顿 const r0=(def.rr&&def.rr[0])||def.r||20,mgn=12+(def.wide?6:0); - const minX=mgn+r0,maxX=W-mgn-r0; + const minX=mgn+r0+6,maxX=W-mgn-r0-6; // 内缩6px:为换向过冲留余量 if(typeof b.tx!=="number"){b.vx=0;const L=def.wide?rndi(35,80):rndi(50,105);b.tx=clamp(b.x0&&b.x>b.tx)||(dx<0&&b.x