Я не уверен, смогу ли я выразить это разумно.
Я пытаюсь написать простую неграфическую игру.Пользователь будет играть в игру в кости против компьютера.
(Если быть более точным, эта игра: цель игры в кости «Свинья» - стать первым игроком, набравшим 100 очков. Ход каждого игрока состоит из неоднократно.бросание кубика. После каждого броска игрок сталкивается с двумя вариантами: бросить снова или удерживать (отказаться от броска снова).
- Если игрок бросает 1, игрок ничего не получает истановится ходом противника.
- Если игрок бросает число, отличное от 1, число добавляется к общему количеству хода игрока, и ход игрока продолжается.
- Если игрок удерживает, общее количество ходасумма бросков за ход добавляется к счету игрока и становится ходом противника.)
Я написал программу, но теперь хочу сделать это в объекте.ориентированный путь.Это моя проблема:
У меня есть абстрактный класс Player.Класс Human_player и класс Computer_player расширяют класс Player.Другой класс, называемый Game_Controller, контролирует ход игры.Скажем, у Computer_Player есть определенная стратегия, что, если «начальная сумма» меньше 20, он продолжает бросать кости (что означает, что он находится в определенном цикле).С другой стороны, Game_Controller продолжает бросать кубики для Computer_Player столько времени, сколько он пожелает и сколько сможет (это означает, что эта часть программы находится в определенном цикле).Поэтому, когда Computer_Player выбрасывает «1», Game_Controller дает ход Human_Player.Как заставить Compter_Player завершить его цикл?
Более того, мне трудно реализовать Computer_Player в качестве конкретного игрока (потому что я новичок в программировании, и я особенно новичок в этом видевзаимодействие).Как правильно обращаться с этим? --- То есть класс Game-Controller взаимодействует с классом Computer_Player, а класс Computer_Player взаимодействует с классом Game_Controller.
Спасибо, что сэкономили ваше время.
Редактировать1: Есть ли хороший источник (веб-сайт, книга) о таких вещах?Я не ищу эти продвинутые исходники для программирования игр, просто простые и фундаментальные вещи.