21 StevesParams(
double moveRadius,
const std::shared_ptr<FieldParams> &fieldParams, uint32_t unitsCount);
30class Steve final :
public Unit, std::enable_shared_from_this<Steve> {
31 std::shared_ptr<StevesParams> params_;
40 Steve(
const size_t id,
const std::shared_ptr<StevesParams> ¶ms) :
Unit(id, params), params_(params) {}
45 void updateState(
const std::shared_ptr<Unit> &another)
override;
Represents an individual Steve unit in the simulation.
Definition Steve.hpp:30
void updateState(const std::shared_ptr< Unit > &another) override
Updates the state of the Steve based on interaction with another unit.
Definition Steve.cpp:17
void walk() override
Executes the walking behavior of the Steve.
Definition Steve.cpp:5
Steve(const size_t id, const std::shared_ptr< StevesParams > ¶ms)
Constructs a Steve object.
Definition Steve.hpp:40
void die() override
Executes the death behavior of the Steve.
Definition Steve.cpp:19
decltype(state_) getState()
Retrieves the current state of the Steve.
Definition Steve.hpp:58
Configuration parameters for Steve units in the simulation.
Definition Steve.hpp:8
State
Possible states of a Steve.
Definition Steve.hpp:14
Represents a generic unit in the simulation.
Definition Unit.hpp:63
Configuration parameters shared among multiple units.
Definition Unit.hpp:12