#ifndef AGENT_H #define AGENT_H #include 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