Files
DEC/DEC_GUI/Agressor/agent.h
2024-10-03 18:43:04 +07:00

52 lines
1.8 KiB
C++
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#ifndef AGENT_H
#define AGENT_H
#include <QObject>
class Agent : public QObject
{
Q_OBJECT
public:
explicit Agent(uint agentId, uint agr, uint prot, uint mod, uint str, uint rad, uint sp, QObject *parent = 0);
// setters, getters
uint getID();
void setID(uint);
uint getAgressor();
void setAgressor(uint agr);
uint getProtector();
void setProtector(uint prot);
qreal getCoordX();
void setCoordX(qreal x);
qreal getCoordY();
void setCoordY(qreal y);
uint getMode();
void setMode(uint mod);
uint getStrategy();
void setStratedy(uint str);
int getRadius();
void setRadius(uint rad);
uint getSpeed();
void setSpeed(uint sp);
qreal getDistTarget();
void setDistTarget(qreal dist);
qreal getContentmemt();
void setContentment(qreal cont);
void gameEvent(QLineF shift); // смена положения
private:
uint id; // порядковый номер
uint agressor; // номер игрока А (условно - агрессора)
uint protector; // номер игрока В (условно - защитника)
qreal coordX; // координата x
qreal coordY; // координата y
uint mode; // режим: 0 - режим труса, 1 - режим защитника
uint strategy; // стратегия: 0 - движение по медиане/антимедиане, 1 - движение по нормали
uint radius; // радиус (для расчёта столкновений)
uint speed; // скорость
qreal distTarget; // расстояние до желаемых координат
qreal contentment; // неудовлетворённость агента
};
#endif // AGENT_H