Browse Source

逃げたギターへの圧を最大に

pull/2/head
miteruzo 1 year ago
parent
commit
7db6a857ea
1 changed files with 20 additions and 13 deletions
  1. +20
    -13
      scripts/main.js

+ 20
- 13
scripts/main.js View File

@@ -4,7 +4,7 @@ const ctx = canvas.getContext ('2d');
const bg = ( const bg = (
function () function ()
{ {
const _ = document.createElement('canvas');
const _ = document.createElement ('canvas');
const img = new Image (); const img = new Image ();


_.width = 1920; _.width = 1920;
@@ -26,7 +26,7 @@ const bg = (
const nizikaList = Array (24).fill ().map ( const nizikaList = Array (24).fill ().map (
function (__, i) function (__, i)
{ {
const _ = document.createElement('canvas');
const _ = document.createElement ('canvas');
const img = new Image (); const img = new Image ();


_.width = 300; _.width = 300;
@@ -49,7 +49,7 @@ const nizikaList = Array (24).fill ().map (
const kitaList = Array (40).fill ().map ( const kitaList = Array (40).fill ().map (
function (__, i) function (__, i)
{ {
const _ = document.createElement('canvas');
const _ = document.createElement ('canvas');
const img = new Image (); const img = new Image ();


_.width = 428; _.width = 428;
@@ -68,6 +68,8 @@ const kitaList = Array (40).fill ().map (
return _; return _;
}); });


const upperKita = document.createElement ('canvas');

const runawayGuitar = new Audio ('./assets/kita.wav'); const runawayGuitar = new Audio ('./assets/kita.wav');


let canvasX; let canvasX;
@@ -104,6 +106,9 @@ preprocess ()
runawayGuitar.play (); runawayGuitar.play ();
}); });


upperKita.width = 428;
upperKita.height = 240;

reDraw (); reDraw ();
} }


@@ -141,18 +146,23 @@ reDraw ()


if (runawayFlag) if (runawayFlag)
{ {
const l = Math.sqrt (Math.pow (((kitaData[0].x - 214)
- (nizika.x - 150)), 2)
+ Math.pow (((kitaData[0].y - 120)
- (nizika.y - 150)), 2));
const t = Math.atan2 ((kitaData[0].y - 120) - (nizika.y - 150),
(kitaData[0].x - 214) - (nizika.x - 150));
const l = Math.sqrt (Math.pow (kitaData[0].x - nizika.x, 2)
+ Math.pow (kitaData[0].y - nizika.y, 2));
const t = Math.atan2 (kitaData[0].y - nizika.y,
kitaData[0].x - nizika.x);


nizika.x += nizikaVel * Math.cos (t); nizika.x += nizikaVel * Math.cos (t);
nizika.y += nizikaVel * Math.sin (t); nizika.y += nizikaVel * Math.sin (t);
} }
}); });


if (runawayFlag)
{
changeAlpha (upperKita, kitaList[frame % 40],
Math.max (runawayFrame - frame + 85, 0) * 3);
ctx.drawImage (upperKita, kitaData[0].x - 214, kitaData[0].y - 120);
}

++frame; ++frame;
} }


@@ -179,9 +189,8 @@ replaceColorWithTransparent (canvas)




function function
changeAlpha (canvas, alpha)
changeAlpha (toCanvas, canvas, alpha)
{ {
const toCanvas = document.createElement('canvas');
const toCtx = toCanvas.getContext ('2d'); const toCtx = toCanvas.getContext ('2d');


const ctx = canvas.getContext ('2d'); const ctx = canvas.getContext ('2d');
@@ -192,7 +201,5 @@ changeAlpha (canvas, alpha)
pxs[i + 3] = alpha; pxs[i + 3] = alpha;


toCtx.putImageData (imageData, 0, 0); toCtx.putImageData (imageData, 0, 0);

return toCanvas;
} }



Loading…
Cancel
Save