我正在制作一个非常简单的太空侵略者风格的游戏。目前,我有一个 fire 方法,设置为响应空格键,如下所示:
case VK_SPACE:
tank.Fire();
break;
还有火法,它使屏幕外的子弹出现在坦克后面,然后向上射击。
void Tank::Fire() {
//Moves bullets to behind tank.
bullets[bulletCount].SetPos(Vector2D (tank_pos.x+20, tank_pos.y+20));
//Sets their speed vector in motion.
bullets[bulletCount].SetSpeed(Vector2D (0, -350));
bulletCount++; //Increment the current bullet to be used.
}
问题是空格键的一次物理命中一次会触发不止一次。如何确保每台印刷机只触发一次?