所以我被告知写一个代码,然后发布我的问题。所以我做了。 这是入侵者的射击代码:
Texture2D Background;
Texture2D invader;
Texture2D invaderBullet;
Rectangle rectInvaderBullet;
Rectangle[,] rectInvader;
bool[,] isInvaderAlive;
const int rows = 5;
const int cols = 10;
bool invaderBulletVisible = false;
const int bulletSpeed = 5;
int invaderSpeed = 2;
int invadersAliveCounter;
更新
`//invader shooting thinking begin
for (int r = 0; r < rows; r++)
for (int c = 0; c < cols; c++)
{
int check = rnd.Next(0, 1000);
if (check < 800 && invaderBulletVisible == false)
{
invaderBulletVisible = true;
rectInvaderBullet.X = rectInvader[r, c].X + (rectInvader[r, c].Width / 2) - (rectInvaderBullet.Width / 2);
rectInvaderBullet.Y = rectInvader[r, c].Y - rectInvaderBullet.Height + 35;
}
if (invaderBulletVisible)
rectInvaderBullet.Y = rectInvaderBullet.Y + bulletSpeed;
}
//invader shooting thinking end`
这是绘图代码:
if (invaderBulletVisible)
spriteBatch.Draw(invaderBullet, rectInvaderBullet, Color.White);
现在当然有些不对劲。首先,我是一名艺术家,我甚至没有完成学业,但我一直在努力。其次,子弹甚至没有出现。子弹甚至没有出现。所以基本上我想了解原因。而且,我如何才能让它只有一个没有人在其前面的入侵者可以射击? 非常感谢你提前!!!