10 баллов из 10
Когда-то Digger был одной из самых продвинутых и интересных компьютерных игр. В этом блоке задач мы воссоздадим некоторое её подмножество с помощью ООП.
Вам предстоит наполнить готовую заготовку игровыми элементами. Каждый элемент должен уметь:
- Возвращать имя файла, в котором лежит соответствующая ему картинка (например, «Terrain.png»)
- Сообщать приоритет отрисовки. Чем выше приоритет, тем раньше рисуется соответствующий элемент, это важно для анимации.
- Действовать — возвращать направление перемещения и, если объект во что-то превращается на следующем ходу, то результат превращения.
- Разрешать столкновения двух элементов в одной клетке.
Terrain
Сделайте класс Terrain, реализовав ICreature. Сделайте так, чтобы он ничего не делал.
Player
Сделайте класс Player, реализовав ICreature.
Сделайте так, чтобы диггер шагал в разные стороны в зависимости от нажатой клавиши (Game.KeyPressed). Убедитесь, что диггер не покидает пределы игрового поля.
Сделайте так, чтобы земля исчезала в тех местах, где прошел диггер.
Запустите проект — игра должна заработать!
В методе Game.CreateMap вы можете менять карту, на которой будет запускаться игра. Используйте эту возможность для отладки.
1 |
// Вставьте сюда финальное содержимое файла DiggerTask.cs |
Стоимость решения этой задачи всего 100 рублей, закажи решения у меня 🙂