1.5 KiB
1.5 KiB
Linux compilation
> mkdir build
> cd build
> cmake -DCMAKE_BUILD_TYPE=Debug ..
> make
Exercise 1
- Go into directory Core and implement ShipStrategy as a template class
- Strategy should have one pure virtual function: Res handle(T&)
- Implement in directory Ship class ShipEasyDifficultLvlStrategy
- Each cargo supplies 2 sailors, so if you have 40 crew, you need 20 banas and 20 rum
- Implement NextDay by using strategy class
- Run code, and verify result
Exercise 2
- Implement in directory Player class PalyerEasyDifficultLvlStrategy * Strategy should roll a die (1-20): * If result is lower than 5 -> 0 DMG * If result is higher than 19 -> multiple damage by 2 * Damage should be rolled from (25 to 50) * deal damage to the ship and return how much damage was deal. Print it in console
- Add all necessary implementation to the Enemy file
- Test it
Exercise 3
- Implement tow new classes EnemyHardDifficultLvlStrategy and ShipHardDifficultLvlStrategy
- Strategy for Ship, should subtract cargo equal crew size
* Strategy for Enemy should roll a die (1-20):
* If result is lower than 3 -> 0 DMG
- If result is higher than 15 but not equal 20 -> multiple damage by 3 * If result is higher than 19 -> multiple damage by 3 * Damage should be rolled from (30 to 60)
- Strategy for Ship, should subtract cargo equal crew size
* Strategy for Enemy should roll a die (1-20):
* If result is lower than 3 -> 0 DMG
- You shouldn't modify any existing file, except the main.cpp, where you should use a new strategy
- Run code and verify the result