2018-07-09 19:26:13 +02:00
|
|
|
#ifndef PLAYER_H__
|
|
|
|
#define PLAYER_H__
|
2017-03-07 20:57:09 +01:00
|
|
|
|
|
|
|
/* **************************************
|
2018-07-09 19:26:13 +02:00
|
|
|
* Includes *
|
2017-03-07 20:57:09 +01:00
|
|
|
* **************************************/
|
2017-09-08 18:39:22 +02:00
|
|
|
|
2018-07-09 19:26:13 +02:00
|
|
|
#include <stdint.h>
|
2018-07-10 00:04:16 +02:00
|
|
|
#include "Unit.h"
|
2017-09-08 18:39:22 +02:00
|
|
|
|
2017-03-07 20:57:09 +01:00
|
|
|
/* **************************************
|
2018-07-09 19:26:13 +02:00
|
|
|
* Defines *
|
2017-03-07 20:57:09 +01:00
|
|
|
* **************************************/
|
2017-09-08 18:39:22 +02:00
|
|
|
|
2017-03-07 20:57:09 +01:00
|
|
|
/* **************************************
|
2018-07-09 19:26:13 +02:00
|
|
|
* Structs and enums *
|
2017-03-07 20:57:09 +01:00
|
|
|
* **************************************/
|
2017-09-08 18:39:22 +02:00
|
|
|
|
2017-03-07 20:57:09 +01:00
|
|
|
/* **************************************
|
2018-07-09 19:26:13 +02:00
|
|
|
* Class definition *
|
2017-03-07 20:57:09 +01:00
|
|
|
* **************************************/
|
2017-09-08 18:39:22 +02:00
|
|
|
|
2017-03-07 20:57:09 +01:00
|
|
|
class Player
|
|
|
|
{
|
2018-07-09 19:26:13 +02:00
|
|
|
public:
|
|
|
|
enum tResource
|
|
|
|
{
|
|
|
|
RESOURCE_TYPE_WOOD,
|
|
|
|
RESOURCE_TYPE_FOOD,
|
|
|
|
RESOURCE_TYPE_GOLD,
|
|
|
|
|
|
|
|
MAX_RESOURCE_TYPES
|
|
|
|
};
|
|
|
|
|
|
|
|
explicit Player(const char* const strPlayerName);
|
|
|
|
virtual void drawHandler(void) = 0;
|
|
|
|
const char* getName(void) {return _name;}
|
|
|
|
void setName(const char* const strName);
|
|
|
|
|
|
|
|
protected:
|
|
|
|
enum
|
|
|
|
{
|
2018-07-10 00:04:16 +02:00
|
|
|
MAX_NAME_LENGTH = 16,
|
|
|
|
MAX_UNITS = 32
|
2018-07-09 19:26:13 +02:00
|
|
|
};
|
|
|
|
|
2018-07-26 21:15:59 +02:00
|
|
|
void handleUnits(void);
|
|
|
|
void drawUnits(void);
|
2018-07-10 00:04:16 +02:00
|
|
|
uint16_t _resourcesMap[MAX_RESOURCE_TYPES];
|
|
|
|
char _name[MAX_NAME_LENGTH];
|
|
|
|
Unit _unitsMap[MAX_UNITS];
|
2017-03-07 20:57:09 +01:00
|
|
|
};
|
|
|
|
|
2018-07-09 19:26:13 +02:00
|
|
|
#endif /* PLAYER_H__ */
|