Предыдущая Следующая
/// <summary>
protected override void UnloadGraphicsContent(bool unloadAllContent)
{
if (unloadAllContent == true)
{
content.Unload();
}
}
/// <summary>
/// Обновляем состояние игры /// <summary>
protected override void Update(GameTime gameTime)
{
keyboardState = Keyboard.GetState(); // Выход в меню
if (keyboardState.IsKeyDown(Keys.Escape))
{
menuState = true;
}
// Показываем меню
if (menuState == true)
{
UpdateMouse();
}
else // Запускаем игру
{
Pause();
if (paused == false)
{
double elapsed = gameTime.ElapsedGameTime.TotalSeconds; for (int i = 0; sprite.Length > i;
{
sprite[i].UpdateFrame(elapsed);
}
MoveSprite();
MovePlatform(); Collisions();
}
}
Sound.Update();
base.Update(gameTime);
}
/// <summary>
/// Движение спрайта по вертикали
/// <summary>
public void MoveSprite()
{
for (int i = 0; sprite.Length > i;
{
sprite[i].spritePosition += sprite[i].speedSprite;
if (sprite[i].spritePosition.Y > Window.ClientBounds.Height)
{
sprite[i].spritePosition = new Vector2(rand.Next(10, Window.ClientBounds.Width -300 - sprite[i].spriteTexture.Width / 12), -500);
sprite[i].speedSprite.Y = rand.Next(5, 9); Sound.PlayCue(soundList.Boom);
} }
}
/// <summary>
/// Движение платформы по экрану
/// <summary>
public void MovePlatform()
{ }
/// <summary> /// Пауза в игре /// <summary> public void Pause()
{
if (keyboardState.IsKeyDown(Keys.P))
{
pauseKeyDown = true;
}
else if (pauseKeyDown)
{
pauseKeyDown = false; paused = Ipaused;
}
}
/// <summary> /// Столкновения
210 Звуковые эффекты
Воспроизведение звука в игре 211
/// <summary>
public void Collisions()
{
bbplatform.Min = new Vector3(platform.spritePosition.X, platform.spritePosition.Y + 25, 0);
bbplatform.Max = new Vector3(platform.spritePosition.X + platform.spriteTexture.Width,
platform.spritePosition.Y + 25 + platform.spriteTexture.Height, 0); for (int i = 0; bb.Length > i;
{
bb[i].Min = new Vector3(sprite[i].spritePosition.X, sprite[i].spritePosition.Y, 0);
bb[i].Max = new Vector3(sprite[i].spritePosition.X + sprite[i].spriteTexture.Width / 12,
sprite[i].spritePosition.Y + sprite[i].spriteTexture.Height, 0);
}
if (bbplatform.Intersects(bb[0]))
{
sprite[0].spritePosition = new Vector2(rand.Next(10, Window.ClientBounds.Width -
300 - sprite[0].spriteTexture.Width / 12), -500); sprite[0].speedSprite.Y = rand.Next(5, 9); score0 += 1;
Sound.PlayCue(soundList.Platform);
}
if (bbplatform.Intersects(bb[1]))
{
sprite[1].spritePosition = new Vector2(rand.Next(10, Window.ClientBounds.Width - Предыдущая Следующая
|