shoot

shoot() is called every N frames, determined by Player.shootInterval

player.shootInterval = player.shootNormalData.interval

by default, this is every 23 frames

https://evil-invaders-default-rtdb.firebaseio.com/game/playerData/shootNormal.json

{
  "damage": 1,
  "hp": 1,
  "interval": 23,
  "name": "normal",
  "texture": [
    "hadoken0.png",
    "hadoken1.png"
  ]
}

if player gets rapid-fire powerup, player.shootSpeed = 15, which lowers interval by 15

(shootNormal for example, would fire every 8 frames)

player.bulletFrameCnt % (player.shootInterval - player.shootSpeed) == 0 &&
      player.shoot()