A modern take on the SNES' FaceBall 2000 title using the PGE.
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.
 
 
 
Faceball2030/Faceball2030/Editor.h

56 lines
930 B

#pragma once
#include "pixelGameEngine.h"
using namespace olc;
enum class FacingDirection {
NORTH, EAST, SOUTH, WEST
};
enum EnemyID {
EXIT,
SHOOTME,
POWERUP_ARMOR=57,
POWERUP_SPEED=58,
POWERUP_SHOT=59,
SPECIAL_CAMO=60,
SPECIAL_STOP=61,
SPECIAL_SHIELD=62,
AREA_MAP=63,
};
/*
enum Wave {
WAVE0=0,
WAVE1=1,
WAVE2=2,
WAVE3=4
};
enum WallDirection {
NONE = 0,
NORTH = 1,
EAST = 2,
SOUTH = 4,
WEST = 8
};*/
struct Tile {
EnemyID enemyId=SHOOTME;
FacingDirection facingDir=FacingDirection::EAST;
byte spawnWave=0;
byte walls=0;
bool blink=false;
};
class Editor {
int level;
vi2d MAP_SIZE;
bool reEnableTextEntry; //We must set this to true to cause Text Entry to reappear due to how the callback works.
std::vector<std::vector<Tile>> map;
public:
Editor() {}
void Update(float fElapsedTime);
void OnTextEntryComplete(const std::string& sText);
void LoadLevel();
void LoadLevelHandling();
};