]> git.tdb.fi Git - libs/game.git/blobdiff - examples/bassteroids/source/playercontroller.h
Load the various setups through resources
[libs/game.git] / examples / bassteroids / source / playercontroller.h
index 83d49f1d715e0edb50ea28041e248984a01ed2c2..be5007102aeccc2883ce23ef426cd84cc52e92b4 100644 (file)
@@ -4,6 +4,7 @@
 #include <msp/game/eventobserver.h>
 #include <msp/game/owned.h>
 #include <msp/game/system.h>
+#include "bullet.h"
 #include "ship.h"
 
 class Controls;
@@ -12,8 +13,10 @@ class PlayerController: public Msp::Game::System
 {
 private:
        Controls *controls = nullptr;
-       ShipSetup player_setup;
+       const ShipSetup &player_setup;
+       const BulletSetup &bullet_setup;
        Msp::Game::Owned<Ship> player_ship;
+       std::vector<Msp::Game::Owned<Bullet>> bullets;
 
 public:
        PlayerController(Msp::Game::Stage &);
@@ -21,6 +24,9 @@ public:
        void set_controls(Controls *);
 
        void tick(Msp::Time::TimeDelta) override;
+       void deferred_tick() override;
+private:
+       void fire();
 };
 
 #endif