forked from 0ad/0ad
38 lines
845 B
C++
38 lines
845 B
C++
#ifndef __SIMPLEPAINTERS_H__
|
|
#define __SIMPLEPAINTERS_H__
|
|
|
|
#include "areapainter.h"
|
|
#include "map.h"
|
|
#include "area.h"
|
|
#include "terrain.h"
|
|
#include "tileclass.h"
|
|
|
|
class TerrainPainter : public AreaPainter {
|
|
Terrain* terrain;
|
|
public:
|
|
TerrainPainter(Terrain* terrain);
|
|
virtual void paint(Map* m, Area* a);
|
|
};
|
|
|
|
class ElevationPainter : public AreaPainter {
|
|
float elevation;
|
|
public:
|
|
ElevationPainter(float elevation);
|
|
virtual void paint(Map* m, Area* a);
|
|
};
|
|
|
|
class TileClassPainter : public AreaPainter {
|
|
TileClass* tileClass;
|
|
public:
|
|
TileClassPainter(TileClass* tc);
|
|
virtual void paint(Map* m, Area* a);
|
|
};
|
|
|
|
class MultiPainter : public AreaPainter {
|
|
std::vector<AreaPainter*> painters;
|
|
public:
|
|
MultiPainter(const std::vector<AreaPainter*>& painters);
|
|
virtual void paint(Map* m, Area* a);
|
|
};
|
|
|
|
#endif |