123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- #ifndef MiniGames_H
- #define MiniGames_H
- #include <Fenster.h>
- #include <Animation.h>
- #include "MiniGame.h"
- #include <Thread.h>
- #include <Knopf.h>
- #include <MiniGameV.h>
- #include "DLLDateien.h"
- using namespace Framework;
- class MiniGames; // aus dieser Datei
- class API;
- class MGSuchen : private Thread
- {
- private:
- MiniGames * mGames;
- public:
- // Konstruktor
- MGSuchen( MiniGames *mGames );
- // Destruktor
- ~MGSuchen();
- // nicht constant
- void thread() override;
- };
- class MGLaden : private Thread
- {
- private:
- Text * name;
- MiniGameV *game;
- DLLDateien *dLLs;
- API *api;
- int ref;
- public:
- // Konstruktor
- MGLaden( char *name, DLLDateien *zDLLs, API *api );
- // Destruktor
- ~MGLaden();
- // nicht constant
- void thread();
- // constant
- bool fertig() const;
- MiniGameV *zGame() const;
- // Reference Counting
- MGLaden *getThis();
- MGLaden *release();
- };
- class MiniGames : public Zeichnung
- {
- private:
- Punkt bildschirmGröße;
- LRahmen *rahmen;
- RCArray< MiniGame > *games;
- MGLaden *mgl;
- Schrift *schrift;
- DLLDateien *dLLs;
- Bildschirm *screen;
- API *api;
- double tickVal;
- int alpha2;
- int ref;
- public:
- // Konstruktor
- MiniGames( Schrift *zSchrift, DLLDateien *zDLLs, Bildschirm *zScreen, API *api );
- // Destruktor
- ~MiniGames();
- // nicht constant
- void addMiniGame( MiniGame *mg );
- void doMausEreignis( MausEreignis &me ) override;
- void doTastaturEreignis( TastaturEreignis &te ) override;
- bool tick( double z ) override;
- void render( Bild &zRObj ) override;
- // Reference Counting
- MiniGames *getThis();
- MiniGames *release();
- };
- class API : public MinigameAPI
- {
- private:
- WFenster *f;
- public:
- API( WFenster *wf )
- {
- f = wf;
- }
- // legt fest ob das spiel im Vollbildmodus ausgeführt werden soll
- void setFullScreenMode( bool enabled )
- {
- if( enabled )
- {
- Punkt bildschirmGröße = BildschirmGröße();
- bildschirmGröße.x++;
- bildschirmGröße.y++;
- f->setSize( bildschirmGröße );
- f->setPosition( Punkt( 0, 0 ) );
- }
- else
- {
- f->setSize( 800, 500 );
- }
- f->zBildschirm()->setBackBufferSize( f->getGröße() );
- f->zBildschirm()->update();
- }
- };
- #endif
|