background
This commit is contained in:
parent
8a38afc7e7
commit
f8595bce4c
4 changed files with 18 additions and 4 deletions
|
@ -3,7 +3,7 @@
|
||||||
Combat::Combat() {
|
Combat::Combat() {
|
||||||
ia = playerOneTurn = true;
|
ia = playerOneTurn = true;
|
||||||
enemy = new IaEnemy();
|
enemy = new IaEnemy();
|
||||||
|
initShader();
|
||||||
}
|
}
|
||||||
|
|
||||||
Combat::Combat(bool ia) {
|
Combat::Combat(bool ia) {
|
||||||
|
@ -11,17 +11,26 @@ Combat::Combat(bool ia) {
|
||||||
playerOneTurn = true;
|
playerOneTurn = true;
|
||||||
if (ia) enemy = new IaEnemy();
|
if (ia) enemy = new IaEnemy();
|
||||||
else enemy = new Player();
|
else enemy = new Player();
|
||||||
|
initShader();
|
||||||
|
}
|
||||||
|
|
||||||
|
void Combat::initShader() {
|
||||||
|
_text.create(W_WIDTH, W_HEIGHT);
|
||||||
|
_background.setTexture(_text);
|
||||||
|
_shader.loadFromFile("./resources/shader.frag", sf::Shader::Fragment);
|
||||||
|
_shader.setParameter("resolution", sf::Vector2f(W_WIDTH, W_HEIGHT));
|
||||||
}
|
}
|
||||||
|
|
||||||
void Combat::update(float deltaTime, sf::RenderWindow *window) {
|
void Combat::update(float deltaTime, sf::RenderWindow *window) {
|
||||||
if (playerOneTurn) player.update(deltaTime, window);
|
if (playerOneTurn) player.update(deltaTime, window);
|
||||||
else if (ia) playerOneTurn = enemy->update(deltaTime, window);
|
else if (ia) playerOneTurn = enemy->update(deltaTime, window);
|
||||||
|
_shader.setParameter("time", deltaTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Combat::draw(sf::RenderWindow *window) {
|
void Combat::draw(sf::RenderWindow *window) {
|
||||||
player.draw(window);
|
player.draw(window);
|
||||||
enemy->draw(window);
|
enemy->draw(window);
|
||||||
|
window->draw(_background, &_shader);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Combat::updateEvents(sf::Event e) {
|
void Combat::updateEvents(sf::Event e) {
|
||||||
|
|
|
@ -23,8 +23,11 @@ private:
|
||||||
bool playerOneTurn, ia;
|
bool playerOneTurn, ia;
|
||||||
Player player;
|
Player player;
|
||||||
Actor *enemy;
|
Actor *enemy;
|
||||||
|
sf::Texture _text;
|
||||||
sf::Sprite _background;
|
sf::Sprite _background;
|
||||||
static sf::Shader _shader;
|
sf::Shader _shader;
|
||||||
|
|
||||||
|
void initShader();
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -12,6 +12,8 @@ const int SCENE_NUM = 4;
|
||||||
|
|
||||||
#define MARGEERR 0.30f
|
#define MARGEERR 0.30f
|
||||||
#define BLACKVALUE 0.00025f
|
#define BLACKVALUE 0.00025f
|
||||||
|
#define W_WIDTH 800
|
||||||
|
#define W_HEIGHT 600
|
||||||
|
|
||||||
#define ASSERT(expression) do \
|
#define ASSERT(expression) do \
|
||||||
{ \
|
{ \
|
||||||
|
|
|
@ -20,7 +20,7 @@ Game* Game::i() {
|
||||||
// Main game loop
|
// Main game loop
|
||||||
void Game::run() {
|
void Game::run() {
|
||||||
sf::Clock c;
|
sf::Clock c;
|
||||||
sf::RenderWindow window(sf::VideoMode(800, 600), "SFML window");
|
sf::RenderWindow window(sf::VideoMode(W_WIDTH, W_HEIGHT), "SFML window");
|
||||||
float oldTime = c.getElapsedTime().asSeconds();
|
float oldTime = c.getElapsedTime().asSeconds();
|
||||||
while (isRunning) {
|
while (isRunning) {
|
||||||
float time = c.getElapsedTime().asSeconds();
|
float time = c.getElapsedTime().asSeconds();
|
||||||
|
|
Reference in a new issue