11.2. Kooperationen

Damit hätten wir alles Nötige, um es im Hauptprogramm zu nutzen. Die Aufrufe für alle Hindernisse fassen wir in zwei neuen Methoden zusammen (→ XSpider6, Game1.cs):

protected void ObstacleControl(int Nr)
{
  for (int i = 0; i < Max; i++)
    if (Spinne1.Collision(Hindernis[i].GetArea(), true))
      Spinne1.Stop(Nr, 2);
}

protected void ObstacleScroll(int sDiff, bool Horizontal)
{
  for (int i = 0; i < Max; i++)
    Hindernis[i].Scroll(sDiff, Horizontal);
}

Womit sich dann die Tastenabfrage in der Update-Methode so ändert:

if (Taste.IsKeyDown(Keys.Left)) { Spinne1.Update(1, 0.1f, true); if (Spinne1.IsRanged) { if (!Hgrund1.Scroll(5, true)) ObstacleScroll(5, true); } ObstacleControl(1); } if (Taste.IsKeyDown(Keys.Right)) { Spinne1.Update(2, ...

Get Spieleprogrammierung mit dem XNA Framework: Entwickeln für PC und Xbox now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.