В настоящее время я делаю RPG, используя Winforms для школьного проекта. Однако мои знания о классах настолько ограничены, что у меня возникают проблемы с созданием правильного класса, который берет данные из 1 формы, используется во второй форме, а затем отправляется обратно в первую форму.
Процесс, который я пытаюсь выполнить, выглядит следующим образом:
Основная форма открывает вторую форму, которая отображает элементы в списке.
1
когда вы выбираете элемент и нажимаете кнопку, чтобы использовать его, эффекты элементов применяются.
2
Данные для эффекта находятся в первой форме, где много других вычислений сделаны с теми же данными.
3
Я продолжаю сталкиваться с проблемой создания нового объекта класса, и данные из первой формы сбрасываются. Как бы я мог использовать существующий объект из первой формы или создать ссылочный класс?
Это функция, которую я хочу запустить в первой форме при нажатии кнопки во второй форме.
public void SmallPot()
{
currentPHP += pHP * .25;
if (newPHP > pHP)
{
newPHP = pHP;
}
pHPBarUpdate = (int)(newPHP / pHP * 377);
pnlCurrentPHP.Width = pHPBarUpdate;
newPHP = currentPHP;
}
Ожидаемое:
Когда я нажимаю кнопку использования во всплывающей форме, она закрывается, и эффекты элементов отображаются в главной форме.
Что происходит:
Поскольку я создаю новый объект формы один в форме два, все мои переменные сбрасываются в 0 до вычисления, в результате чего ничего не происходит после закрытия второй формы.