62 lines
1.2 KiB
C++
62 lines
1.2 KiB
C++
#ifndef DATA_HPP
|
|
#define DATA_HPP
|
|
|
|
// Timers
|
|
#define DASH 1
|
|
#define LEVEL_SWITCH 2
|
|
|
|
// Maps
|
|
#define EMPTY 0
|
|
#define DEFAULT 1
|
|
#define PLATFORM1 2
|
|
#define BASE 3
|
|
|
|
#include <SFML/Graphics/Color.hpp>
|
|
#include <SFML/System/Vector2.hpp>
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
#include "globals.hpp"
|
|
|
|
struct ObjectData
|
|
{
|
|
const sf::Vector2<float> size { TILESIZE, TILESIZE };
|
|
const sf::Vector2<float> pos { TILESIZE, TILESIZE };
|
|
const sf::Color interior_color { sf::Color::Black };
|
|
const sf::Color exterior_color { sf::Color::White };
|
|
const float edge { -2.0f };
|
|
};
|
|
|
|
struct EntityData
|
|
{
|
|
ObjectData object;
|
|
const sf::Vector2<float> velocity { 0, 0 };
|
|
};
|
|
|
|
struct PlayerData
|
|
{
|
|
EntityData entity;
|
|
const float max_dash_acceleration { 0.0f };
|
|
const float max_vertical_acceleration { 0.0f };
|
|
};
|
|
|
|
struct MapData
|
|
{
|
|
const char data[MAX_ROWS][MAX_COLS + 1];
|
|
// const char data[MAX_ROWS * MAX_COLS + 1];
|
|
};
|
|
|
|
struct TimerData
|
|
{
|
|
const std::string name { "NULL" };
|
|
const float max_time { 1.f };
|
|
};
|
|
|
|
extern const std::vector<ObjectData> object_data;
|
|
extern const std::vector<EntityData> entity_data;
|
|
extern const std::vector<MapData> map_data;
|
|
extern const std::vector<TimerData> timer_data;
|
|
extern const PlayerData player_data;
|
|
|
|
#endif
|