public void fire() { if (gun_curBullet_num <= 0) { return; } if (System.currentTimeMillis() - preFiretime < 200) { // 控制发射频率 return; } preFiretime = System.currentTimeMillis(); firebulletIndex = (firebulletIndex + 1) % MAX_BULLET_NUM; Playerbullet bulletLeft = bullets[firebulletIndex]; bulletLeft.status = Playerbullet.SHOW; bulletLeft.x = player.x + 4; bulletLeft.y = player.y; firebulletIndex = (firebulletIndex + 1) % MAX_BULLET_NUM; Playerbullet bulletRight = bullets[firebulletIndex]; bulletRight.status = Playerbullet.SHOW; bulletRight.x = player.x + player.width - 4; bulletRight.y = player.y; // 播放子弹发射音效 player.context.mSoundPlayer.playSound(R.raw.gun_sound); gun_curBullet_num--; }