Project: canvas
Task (moderate): Add bird and floor images from assets ('assets/bird.png', 'assets/fg.png'). Bird at (30, height/2), floor tiles at bottom (0, height-80). Floor moves left 4px per frame, store its position in 'store.floorX'. Consider the consistency of values at different refresh rates, get frameAdjustedRate from query, and stores it in store.frameAdjustedRate, and use it as '4px * frameAdjustedRate'. Store animation state in 'store.isAnimating'. Display 'Click to Start' text in canvas center. Animation begins and text hides when the player clicks or presses Enter. Note: not to trigger animation multiple times; floor width and bird updates on window resizes for responsive; Ensure images are loaded with promise.all; Clear canvas before each render; don't forget DPR.