Files
rpg/src/map.h
T
Riyyi 9b6b33845d Add Map render Ground and Above
Render layer Ground below and Above above Player.
2015-03-21 21:04:33 +01:00

92 lines
1.5 KiB
C++

#ifndef MAP_H
#define MAP_H
#include <iostream>
#include <vector>
#include <SFML/Graphics.hpp>
class Layer
{
public:
//Layer();
//~Layer();
std::vector<std::vector<int>> data;
int height;
// name
// opacity
// properties
// type
bool visible;
int width;
int x;
int y;
};
class TileSet
{
public:
//TileSet();
void Clear();
~TileSet();
// "firstgid":1,
std::string image;
int imageHeight;
int imageWidth;
// "margin":0,
// "name":"Tilesheet",
// "properties":
// {
// },
// "spacing":0,
int tileHeight;
int tileWidth;
// "transparentcolor":"#ffffff"
// @Todo save all tile textures with pointers
// map->tileSet.tile[1];
std::vector<sf::Texture*> tile;
};
class Map
{
public:
Map();
void RenderGround(sf::RenderWindow* window);
void RenderAbove(sf::RenderWindow* window);
~Map();
// Global
int height;
Layer* ground1;
Layer* above1;
Layer* collision;
// "nextobjectid":1,
// "orientation":"orthogonal",
// "properties":
// {
// },
// "renderorder":"right-down",
int tileheight;
TileSet* tileSet;
int tilewidth;
// "version":1,
int width;
private:
void Render(sf::RenderWindow* window, Layer *layer);
};
//sf::Sprite* sprite;
//for()
//{
// Sprite sf::Texture = tile.texture
// sprire->setPosition(sf:vector2i); 5 * 32, 4 * 32
// window->draw(*sprite);
//}
#endif // MAP_H