You need to change
public Equipment[] Equip = new Equipment[1];
To public Equipment[] Equip = new Equipment[2];
otherwise you will get an IndexOutOfRangeException
.
In your LoadPlayers
method, you are modifiying the same instance of Player
instead of creating a new player.So you get the same output because you just have one instance.Create a new instance then add it to your list.
Player tmpPlayer = new Player();
/* set the properties */
PlayerList.Add(new Player(tmpPlayer));
tmpPlayer = new Player();
/* set the properties */
PlayerList.Add(new Player(tmpPlayer));
And you should get your expected output.