If I remember correctly, the Game.LoadContent () method is called only once during initialization (Game.Initialize ()) to load game resources. You can force the game to reload these resources, but since you do not want to reload all your resources, I would suggest loading all the images that you need in the LoadContent () method, for example:
List<Texture2D> texturePool = new List<Texture2D>(); Random rng = new Random(); protected override void LoadContent() { for(int i = 0; i < 4; i++) texturePool.Add(Content.Load<Texture2D>("image" + i.ToString())); }
And then, before the enemy starts, you will change the texture used, choosing one from the loaded pool.
enemyTex = texturePool[rng.NextInt(texturePool.Count)];
And maybe you can change the name to "Random Textures in XNA" or something like that, since you want to change the texture on each spawn, and not on every draw, and this method can be used in many other situations.
source share