1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
/* This file is part of the Spring engine (GPL v2 or later), see LICENSE.html */
#ifndef PLAYER_BASE_H
#define PLAYER_BASE_H
#include "Game/TeamController.h"
#include <string>
#include <map>
/**
* @brief Acts as a base class for the various player-representing classes
*/
class PlayerBase : public TeamController
{
public:
typedef std::map<std::string, std::string> customOpts;
/**
* @brief Constructor assigning standard values
*/
PlayerBase();
void SetValue(const std::string& key, const std::string& value);
const customOpts& GetAllValues() const {
return customValues;
}
const char* GetType(const bool capital = true) const {
if (capital) {
return spectator ? "Spectator" : "Player";
}
return spectator ? "spectator" : "player";
}
int rank;
std::string countryCode;
bool spectator;
bool isFromDemo;
bool readyToStart;
bool desynced;
float cpuUsage;
private:
customOpts customValues;
};
#endif // PLAYER_BASE_H
|