Я пытаюсь построить алгоритм MiniMax для моей шахматной игры. Для запуска алгоритма игра должна уничтожать и возрождать игровые объекты несколько раз между обновлениями. Проблема в том, что функция Void Start запускается только в первый раз, когда я вызываю объект. При уничтожении объекта и его повторном порыве во время того же обновления, Void Start не вступает в силу.
Проблема с моими шахматными фигурами. У меня есть родительский класс для всех частей, называемый Pices.cs, и набор дочерних классов для указанного элемента c. Класс Pices.cs имеет символ, унаследованный и обновленный с помощью Void Start другими классами. По умолчанию это «F», а затем в «Void start» в классе King оно будет обновлено до «K», в «Void start» в классе «Queen» оно будет обновлено до «Q» и т. Д. *
Пример проблемы в действии во время одного обновления состояния игры:
, если у меня есть два пруда, который способен захватить вражескую королеву. Я хотел бы забрать вражескую королеву с моим первым прудом, отменить ход и восстановить королеву, затем уничтожить королеву с другим прудом, отменить ход и восстановить королеву, сделать что-то совершенно другое. Но когда королева получает экземпляр во второй раз, делая это обновление, идентификационный символ будет «F», а не «Q», как я буду sh.
Соответствующий код и примечания:
Все внутриигровым движением управляет Board_Manager.cs
Droning.cs = Королева на моем языке
Reverse move () {...} сбросить этап игры, чтобы начать и дозировать все ходы снова, за исключением последнего
Endgame () {...} Уничтожить все игровые объекты и установить их в начальной позиции
Текущее обозначение хода следующее: 1. Piece Letter , 2. от x, 3. от y, 4. до x, 5. до y, 6. Буква о смерти (если ни одна из фигур не умерла -)
Изображение соответствующего кода pices.cs 1
Изображение соответствующего кода Queen.cs
Изображение ReversMove () в Board_Manager.cs
Изображение базового алгоритма MiniMax
Печать обозначения результирующего перемещения
Я знаю, что это немного запутанно b Но я надеюсь, что некоторые из вас понимают проблему и могут помочь мне здесь. Это часть моего экзамена, поэтому я бы очень хотел исправить это (: