Skip to content

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ConsoleApp1

Что есть:

  • Простое создание героя с выбором имени, оружия и брони.
  • У каждого оружия и брони свои параметры которые влияют на характеристики героя.
  • У всех персонажей (героя и противников) есть здоровье, атака, шанс уклониться и шанс нанести критический урон.
  • Состояние базы, на которой можно выбрать или сменить оружие/броню, отправиться в путь для сражений, выйти из игры. На нее можно вернуться после сражения, а еще она восстанавливает часть потерянного здоровья.
  • В пути встречается три вида противников (гоблин, паук и скелет) и у каждого свой особый эффект: гоблин может оглушить, паук отравляет, скелет усиливает свою атаку после каждого хода.
  • В пути можно столкнуться от 1 до 3 случайных противников за раз и биться с ними одновременно, выбирая цель. При этом противники все атакуют вне зависимости от того кого атаковал герой.
  • Если один из группы противников умирает, он перестает атаковать и его нельзя атаковать.
  • Победа над каждым противником дает герою опыт, который при достижении порогового значения повышает уровень героя и усиливает его.
  • В зависимости от уровня героя в пути могут встречаться усиленные версии врагов. Чем выше уровень, тем больше шанс наткнутся на элитного врага.
  • При смерти героя игра заканчивается.
  • Вся игра разнесена на 13 файлов, каждый из которых отвечает за свою часть. В файле Programm.cs только функция вызова игры.
  • Класс персонажа находится в отдельном файле, а классы Герой и Противник наследуют от него общие параметры, находясь каждый в своем файле.
  • Все "магические числа" вынесены как константы в отдельный файл.

Архитектура проекта: Program.cs - вызывает метод игры в Game.cs, больше ничего. Game.cs - тут происходит основна логика: формируются персонажи, вызывается метод дествий на базе, запускается бой и происходит награда за поеду. Также тут находятся подписки на события персонажа. GameConstant.cs - тут лежать все константы которые испольуются в других файлах. Character.cs - тут нахдится метод формирования всех персонажей по их общим параметрам. Player.cs - наследует общие параметры от Character.cs и обавляет присущие герою. Enemy.cs - наследует общие параметры от Character.cs и обавляет присущие противника. Weapon.cs - тут хранится информация о доступном оружие. Armor.cs - тут хранится информация о доступной броне. WeaponFactory.cs - забирает данные о выбранном оружие и передат ее параметры герою. ArmorFactory.cs - забирает данные о выбранной броне и передат ее параметры герою. Battle.cs - здесь находится логика цикла боя. Base.cs - здесь находится логика цикла нахождения на базе.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages