added spectator text

main
Benjamin Kraft 2 years ago
parent 5caa486a75
commit cc27b166e1
  1. 13
      src/Game.cpp
  2. 2
      src/Game.h
  3. 2
      src/Player.h
  4. 5
      src/Spectator.cpp
  5. 1
      src/Spectator.h

@ -7,6 +7,7 @@
void Game::draw(QPixmap &output) { void Game::draw(QPixmap &output) {
QPainter p(&output); QPainter p(&output);
for (auto & spectator : spectators) for (auto & spectator : spectators)
spectator.draw(p); spectator.draw(p);
for (auto & wall : walls) for (auto & wall : walls)
@ -36,9 +37,15 @@ void Game::removeWalls() {
} }
Game::Game() { Game::Game() {
for (auto & spectator : spectators){ constexpr size_t sCount = 10;
Game::eventQueue->registerListener(&spectator); const int w = WIDTH / sCount;
} for (size_t i = 0; i < sCount; i++){
Spectator spec;
spec.pos = QPoint(int(i) * w, SPEC_Y / 2);
spectators.push_back(spec);
}
for (auto & spec : spectators)
Game::eventQueue->registerListener(&spec);
InputWindow::inputQueue->registerListener(&player); InputWindow::inputQueue->registerListener(&player);
instance = this; instance = this;
} }

@ -13,7 +13,7 @@
class Window; class Window;
class Game { class Game {
Player player; Player player;
std::vector<Spectator> spectators {5}; std::vector<Spectator> spectators;
std::vector<Wall> walls; std::vector<Wall> walls;
void tryCreateWall(); void tryCreateWall();
void removeWalls(); void removeWalls();

@ -6,7 +6,7 @@
#include <QPainter> #include <QPainter>
class Player : public InputListener { class Player : public InputListener {
QVector2D pos {50, 50}; QVector2D pos {100, 50};
QVector2D vel {}; QVector2D vel {};
QVector2D acc {0, 9.81 * 30}; QVector2D acc {0, 9.81 * 30};

@ -13,7 +13,12 @@ void Spectator::OnWallCrashed(WallCrashEvent *event) {
void Spectator::draw(QPainter &painter) const { void Spectator::draw(QPainter &painter) const {
painter.save();
painter.translate(pos);
painter.drawText(0, 0, QString("Hello"));
painter.restore();
} }

@ -7,5 +7,6 @@ protected:
void OnWallJumped(WallJumpEvent * event) override; void OnWallJumped(WallJumpEvent * event) override;
void OnWallCrashed(WallCrashEvent * event) override; void OnWallCrashed(WallCrashEvent * event) override;
public: public:
QPoint pos;
void draw(QPainter &painter) const; void draw(QPainter &painter) const;
}; };

Loading…
Cancel
Save