diff --git a/public/src/css/songbg.css b/public/src/css/songbg.css index d75b10f..dc96315 100644 --- a/public/src/css/songbg.css +++ b/public/src/css/songbg.css @@ -247,6 +247,14 @@ 50%{transform: translateY(0)} 100%{transform: translateY(var(--low))} } +@keyframes tetsuohana-failed1{ + 0%{transform: translateY(calc(10px * var(--scale)))} + 50%{transform: translateY(0)} +} +@keyframes tetsuohana-failed2{ + 50%{transform: translateY(calc(5px * var(--scale)))} + 100%{transform: translateY(calc(15px * var(--scale)))} +} @keyframes tetsuohana-flowers{ 0%{--frame: 0} 50%{--frame: 1} @@ -272,6 +280,7 @@ #tetsuohana.failed #tetsuo, #tetsuohana.failed #hana{ --frame: 2; - transition: 0.5s transform cubic-bezier(0.2, 0.6, 0.4, 1.2); - transform: translateY(var(--low)); + top: calc(26px * var(--scale)); + transform: translateY(calc(46px * var(--scale))); + animation: 1.25s ease-out tetsuohana-failed1 both infinite, 1.25s ease-in tetsuohana-failed2 both infinite; } diff --git a/public/src/js/scoresheet.js b/public/src/js/scoresheet.js index afb8ac5..fe7fc4c 100644 --- a/public/src/js/scoresheet.js +++ b/public/src/js/scoresheet.js @@ -281,7 +281,7 @@ class Scoresheet{ var elapsed = 0 } - var gaugePercent = [Math.round(this.results.gauge / 2) / 50] + var gaugePercent = Math.round(this.results.gauge / 2) / 50 if(players === 2){ var gauge2 = Math.round(p2.results.gauge / 2) / 50 if(gauge2 > gaugePercent){ @@ -296,17 +296,17 @@ class Scoresheet{ var results = this.results if(p === 1){ results = p2.results - }else if(this.multiplayer){ - ctx.translate(0, -290) } var resultGauge = Math.round(results.gauge / 2) / 50 var clear = resultGauge >= gaugeClear - var p1Offset = this.multiplayer && p === 0 ? 10 : 0 + if(p === 1 || !this.multiplayer && clear){ + ctx.translate(0, 290) + } if(clear){ ctx.globalCompositeOperation = "lighter" } ctx.globalAlpha = Math.min(1, Math.max(0, (elapsed - (3100 + failedOffset)) / 500)) * 0.5 - var grd = ctx.createLinearGradient(0, frameTop + 362, 0, frameTop + 658) + var grd = ctx.createLinearGradient(0, frameTop + 72, 0, frameTop + 368) grd.addColorStop(0, "#000") if(clear){ grd.addColorStop(1, "#ffffba") @@ -314,7 +314,7 @@ class Scoresheet{ grd.addColorStop(1, "transparent") } ctx.fillStyle = grd - ctx.fillRect(0, frameTop + 362, winW, 286) + ctx.fillRect(0, frameTop + 72, winW, 286) ctx.restore() } }