0
我得到了一個名爲對象的敵人列表和一列子彈。使用列表進行碰撞檢測
list
對象在Game1類中。
我在列表中添加和刪除的敵人用這種方法:
public void LoadEnemies() {
int Y = 100;
if (spawn >= 1)
{
spawn = 0;
if (objects.Count() < 4)
objects.Add(new enemyObjects(Content.Load<Texture2D>("obstacle"), new Vector2(1100, Y)));
}
for (int i = 0; i < objects.Count; i++)
{
if (!objects[i].isVisible)
{
//If the enemy is out of the screen delete it
objects.RemoveAt(i);
i--;
}
}
}
而且我也得到了子彈的列表:public List<Bullet> bullets = new List<Bullet>();
,我火子彈的方法:
private void ShootFireBall() {
if (mCurrentState == State.Walking)
{
bool aCreateNew = true;
foreach (Bullet aBullet in bullets)
{
if (aBullet.bulletVisible == false)
{
aCreateNew = false;
aBullet.Fire(position + new Vector2(Size.Width/2, Size.Height/2),
new Vector2(200, 0), new Vector2(1, 0));
}
}
if (aCreateNew)
{
Bullet aBullet = new Bullet();
aBullet.LoadContent(contentManager, "bullet");
aBullet.Fire(position + new Vector2(Size.Width/2, Size.Height/2),
new Vector2(200, 0), new Vector2(1, 0));
bullets.Add(aBullet);
}
}
}
的問題是我需要一個矩形,所以我可以檢查是否有碰撞。 如何檢查與2個列表的碰撞? 有什麼辦法將它轉換爲矩形? 一直呆在這個幾個小時,真的無法弄清楚。