Передача объектов класса внутри событий формы. C# winforms

Помогите пожалуйста разобраться как правильно организовать передачу экземпляров класса (объектов) между вызовами событий формы? К примеру, есть класс Player.

class Player
{
    private int _health;
    private int _attack;
    public int CombatPower { get; private set; }
    public int OpenedChests { get; private set; }

    public Player(int health, int attack)
    {
        _health = health;
        _attack = attack;
        CombatPower = health * 2 + attack * 4;
        OpenedChests = 0;
    }

    public void OpenChest()
    {
        OpenedChests += 1;
    }
}

Допустим где-то будет создан экзмемпляр этого класса player. Сейчас создаю его при загрузке формы

 private void Sim_Load(object sender, EventArgs e)
 {
     Player player = new Player(100, 0);
 }

Дальше, допустим, при вызове события button1_Click я хочу выполнить метод player.OpenChest()

private void button1_Click(object sender, EventArgs e)
{
    player.OpenChest();
}

Но как это сделать? player был создан при загрузке формы, дальше он уничтожается потому что является локальным. Мне же надо передать как-то между этими событиями созданный ранее экземпляр моего класса Player. Можно было бы конечно создать внутри события button1_Click, но я допустим хочу создать его именно при загрузке, а потом передавать этот объект в другие события формы. Помогите пожалуйста разобраться как правильно это сделать?


Ответы (0 шт):