Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions oop/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
1. `health` - уровень жизни
1. `level` - уровень персонажа
1. `attack` - атака
1. `defence` - защита
1. `defense` - защита

Конструктор класса должен соответствовать следующим требованиям:
1. `name` - строка, min - 2 символа, max - 10
Expand Down Expand Up @@ -59,11 +59,11 @@

Реализуйте в классе `Character` метод `levelUp`, который работает следующим образом:
1. На 1 повышает поле `level`;
1. На 20% повышает показатели `attack` и `defence`;
1. На 20% повышает показатели `attack` и `defense`;
1. Приводит показатель `health` к значению 100.

Метод должен работать только если показатель жизни не равен 0. В противном случае генерируется ошибка (нельзя повысить левел умершего).
Метод должен работать только если показатель жизни не равен 0. В противном случае генерируется ошибка (нельзя повысить уровень умершего).

Реализуйте в класса `Character` метод `damage(points)`, который меняет внутреннее состояние объекта (`points` - это урон, наносимый персонажу). Метод `damage(points)` ничего не возвращает и рассчитывает итоговое изменение жизни персонажа (`health`) по формуле: `health -= points * (1 - defence / 100)`, учитывая, что значение `health >= 0`.
Реализуйте в класса `Character` метод `damage(points)`, который меняет внутреннее состояние объекта (`points` - это урон, наносимый персонажу). Метод `damage(points)` ничего не возвращает и рассчитывает итоговое изменение жизни персонажа (`health`) по формуле: `health -= points * (1 - defense / 100)`, учитывая, что значение `health >= 0`.

Не забудьте написать unit-тесты, которые обеспечивают 100% покрытие функций и классов, которые вы тестируете.