You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
SeasonI/main.cpp

105 lines
1.5 KiB

2 years ago
#define OLC_PGE_APPLICATION
#include "pixelGameEngine.h"
#define OLC_PGEX_SPLASHSCREEN
#include "splash.h"
#define OLC_SOUNDWAVE
#include "soundwaveEngine.h"
#include "tiles.h"
2 years ago
using namespace olc;
2 years ago
class Map{
public:
std::string filename;
Map(std::string fname) {
this->filename=fname;
}
};
class Animation{
public:
Decal*spr;
int frames=1;
int width=0;
Animation(Decal*spr,int width){
this->frames=spr->sprite->width/width;
this->width=width;
this->spr=spr;
}
};
class Object{
public:
Animation*spr;
vi2d pos;
int frameIndex=0;
Object(vi2d pos,Animation*spr) {
this->spr;
this->pos;
}
};
class SeasonI : public PixelGameEngine
2 years ago
{
public:
SeasonI()
2 years ago
{
sAppName = "Season I: Winters of Loneliness";
2 years ago
}
public:
int frameCount=0;
float elapsedTime=0;
const float TARGET_RATE = 1/60.0;
int MAP_WIDTH;
int MAP_HEIGHT;
Map*CURRENT_MAP;
Map*MAP_ONETT;
std::vector<std::vector<TILE*>> MAP;
std::vector<Object*> OBJECTS;
2 years ago
bool OnUserCreate() override
{
SetPixelMode(Pixel::ALPHA);
2 years ago
ConsoleCaptureStdOut(true);
// Called once at the start, so create things here
MAP_ONETT=new Map("map0");
2 years ago
return true;
}
bool OnUserUpdate(float fElapsedTime) override
{
while (elapsedTime>TARGET_RATE) {
elapsedTime-=TARGET_RATE;
updateGame();
2 years ago
}
drawGame();
2 years ago
return true;
}
void updateGame(){
};
void drawGame(){
};
void LoadMap(Map*map) {
std::ifstream f("assets/maps/"+map->filename);
}
2 years ago
};
int main()
{
SeasonI demo;
if (demo.Construct(256, 224, 4, 4))
2 years ago
demo.Start();
return 0;
}