Deep RTS
DamageToken.h
Go to the documentation of this file.
1//
2// Created by per on 9/6/21.
3//
4
5#ifndef DEEPRTS_DAMAGETOKEN_H
6#define DEEPRTS_DAMAGETOKEN_H
7
8
9#include "ScenarioCriteria.h"
10
11namespace DeepRTS::Criteria{
13 int damageTakenLimit;
14 bool isValid;
15 public:
16 explicit DamageTaken(int damageTakenLimit, int rewardSuccess=0.01, int rewardFailure=-0.01);
17
18 [[nodiscard]] bool evaluate(const Player& player) override;
19 [[nodiscard]] int reward() const override;
20 [[nodiscard]] std::shared_ptr<ScenarioCriteria> clone() const override{
21 return std::shared_ptr<ScenarioCriteria>(new DamageTaken(*this));
22 }
23
24 };
25
26}
27
28
29
30#endif //DEEPRTS_DAMAGETOKEN_H
Definition: DamageToken.h:12
bool evaluate(const Player &player) override
Definition: DamageToken.cpp:13
int reward() const override
Definition: DamageToken.cpp:18
DamageTaken(int damageTakenLimit, int rewardSuccess=0.01, int rewardFailure=-0.01)
Definition: DamageToken.cpp:7
std::shared_ptr< ScenarioCriteria > clone() const override
Definition: DamageToken.h:20
Definition: ScenarioCriteria.h:14
const int rewardFailure
Definition: ScenarioCriteria.h:18
const int rewardSuccess
Definition: ScenarioCriteria.h:17
Definition: Player.h:18
Definition: DamageDone.h:10