Generate one platform and draw it. WiP.
This commit is contained in:
parent
4aef3a7c84
commit
fc50c6af55
5 changed files with 64 additions and 12 deletions
|
@ -19,24 +19,36 @@
|
|||
|
||||
#ifndef id17908979556C47F8A978688BBE4A9D22
|
||||
|
||||
#include <vector>
|
||||
#include "sizenotifiable.hpp"
|
||||
#include <queue>
|
||||
#include <memory>
|
||||
|
||||
namespace cloonel {
|
||||
class Platform;
|
||||
class SDLMain;
|
||||
class Texture;
|
||||
class GameplayScene;
|
||||
|
||||
class PlatformSystem {
|
||||
public:
|
||||
PlatformSystem ( void );
|
||||
PlatformSystem ( void ) = delete;
|
||||
PlatformSystem ( const char* parTexturePath, SDLMain* parSDLMain, GameplayScene* parScene );
|
||||
PlatformSystem ( const PlatformSystem& ) = delete;
|
||||
PlatformSystem ( PlatformSystem&& parOther );
|
||||
PlatformSystem ( PlatformSystem&& parOther ) = delete;
|
||||
~PlatformSystem ( void ) noexcept;
|
||||
PlatformSystem& operator= ( const PlatformSystem& ) = delete;
|
||||
|
||||
void Prepare ( void );
|
||||
void Destroy ( void ) noexcept;
|
||||
void SpawnPlatforms ( void );
|
||||
void GarbageCollect ( void );
|
||||
|
||||
private:
|
||||
std::vector<Platform> m_platforms;
|
||||
SizeNotifiable<regbehaviuors::AutoRegister> m_sizeRatio;
|
||||
std::queue<Platform> m_platforms;
|
||||
const std::unique_ptr<Texture> m_texture;
|
||||
SDLMain* const m_sdlmain;
|
||||
GameplayScene* const m_scene;
|
||||
};
|
||||
} //namespace cloonel
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue