钢琴Boss大激光蓄力:改为琴键蓄力圆同款样式(换色赤红)

- 删除丑陋的红光脉冲+向下蔓延蓄力线
- 改为与小激光琴键蓄力圆完全同构的绘制:
  - arc圆环描边+填充,半径2→5.5随蓄力扩大
  - alpha 0.3+0.55*a描边 / 0.22*a填充
  - 颜色从青色#43e8ff换为赤红#ff3355
This commit is contained in:
JOJO 2026-08-06 14:46:05 +08:00
parent 10ee2e753b
commit 3d82a4ed35

View File

@ -45,14 +45,14 @@ function drawPiano(b,t,fl,split){
circ(px2,2,5.5,"#33436a");circ(px2-1.5,0,2.5,"#55648a"); circ(px2,2,5.5,"#33436a");circ(px2-1.5,0,2.5,"#55648a");
px(px2-1.5,4,3,8,"#1b2434"); px(px2-1.5,4,3,8,"#1b2434");
px(px2-1,10,2,3,b.pedT>0?"#ffffff":(sd<0?"#b98cff":"#43e8ff")); px(px2-1,10,2,3,b.pedT>0?"#ffffff":(sd<0?"#b98cff":"#43e8ff"));
// 大激光蓄力动画1秒前摇红光脉冲+向下蔓延蓄力线 // 大激光蓄力前摇:画在炮塔口下方的蓄力圆(与小激光琴键蓄力圆同源,换色赤红
const prog=sd<0?((b.pedLasL||0)/60):((b.pedLasR||0)/60); const prog=sd<0?((b.pedLasL||0)/60):((b.pedLasR||0)/60);
if(prog>0){const a=Math.min(prog,1); if(prog>0){const a=Math.min(prog,1);
ctx.save();ctx.globalAlpha=Math.min(a*0.6,0.85); ctx.globalAlpha=0.3+0.55*a;ctx.strokeStyle="#ff3355";ctx.lineWidth=1.5;
circ(px2,10,2+a*5,"#ff3355"); // 炮塔口红光脉冲,随蓄力扩大 ctx.beginPath();ctx.arc(px2,14,2+3.5*a,0,TAU);ctx.stroke();
const len=Math.floor(a*55); ctx.globalAlpha=0.22*a;ctx.fillStyle="#ff3355";
if(len>1){px(px2-0.5,12,1,len,"#ff3355");} // 向下蓄力线(纹路蔓延) ctx.beginPath();ctx.arc(px2,14,2+3.5*a,0,TAU);ctx.fill();
ctx.restore();}}} ctx.globalAlpha=1;}}}
// —— 舰桥+雷达(随半壳滑开) —— // —— 舰桥+雷达(随半壳滑开) ——
for(const sd of[-1,1]){ctx.save();ctx.translate(sd*split*30,0); for(const sd of[-1,1]){ctx.save();ctx.translate(sd*split*30,0);
px(sd<0?-10:0,-32,10,10,"#1b2434"); px(sd<0?-10:0,-32,10,10,"#1b2434");