public void UpdatePortal(Game1 game) { if (side1.active) { door1.UpdateDoor(game.worldMap[game.currentRoom]); CollisionState result = CollisionDetector.PerPixelSprite(door1, game.player, game.graphics); if (result == CollisionState.Hurtbox) { if (!side1.GetWasJustActivated()) { game.RemoveObjectToDraw(door1); game.ActivateMap(side2, door2); } } else { if (door1.onScreen) { game.AddObjectToDraw(door1); } else { game.RemoveObjectToDraw(door1); } } } else if (side2.active) { door2.UpdateDoor(game.worldMap[game.currentRoom]); CollisionState result = CollisionDetector.PerPixelSprite(door2, game.player, game.graphics); if (result == CollisionState.Hurtbox) { if (!side2.GetWasJustActivated()) { game.RemoveObjectToDraw(door2); game.ActivateMap(side1, door1); } } else { if (door2.onScreen) { game.AddObjectToDraw(door2); } else { game.RemoveObjectToDraw(door2); } } } }