Я создаю 2D-платформер и хочу иметь разные цветные фоны для каждого уровня. Я сделал объект, который при столкновении с ним переводит персонажа на следующий уровень, изменяя player.Position
, вот так...
protected override void Update(GameTime gameTime){
if (player.Bounds.Intersects(teleportObj.Bounds))
{
GraphicsDevice.Clear(Color.SlateGray); // fails to change bg color
player.Position = new Vector2(172, 0); // successfully changes character position
MediaPlayer.Play(dungeonSong); // successfully plays new song
MediaPlayer.IsRepeating = true; // successfully repeats new song
}
}
Я уже установил фон для первого уровня в функции Draw()
Game1 следующим образом:
GraphicsDevice.Clear(Color.CornflowerBlue);
Но когда мой проигрыватель сталкивается с teleportObj
, цвет фона не меняется.