geekbrains_gof/SBomber/include/SBomber.h

57 lines
1.1 KiB
C++

#pragma once
#include <vector>
#include "LevelGUI.h"
#include "Plane.h"
#include "Bomb.h"
#include "Ground.h"
#include "Tank.h"
class SBomber
{
public:
SBomber();
~SBomber();
inline bool GetExitFlag() const
{
return exitFlag;
}
void ProcessKBHit();
void TimeStart();
void TimeFinish();
void DrawFrame();
void MoveObjects();
void CheckObjects();
void run();
private:
void CheckPlaneAndLevelGUI();
void CheckBombsAndGround();
void CheckDestoyableObjects(Bomb *pBomb);
// void DeleteDynamicObj(DynamicObject *pBomb);
// void DeleteStaticObj(GameObject *pObj);
Ground* FindGround() const;
Plane* FindPlane() const;
LevelGUI* FindLevelGUI() const;
std::vector<DestroyableGroundObject*> FindDestoyableGroundObjects() const;
std::vector<Bomb*> FindAllBombs() const;
// void DropBomb();
std::vector<DynamicObject*> vecDynamicObj;
std::vector<GameObject*> vecStaticObj;
bool exitFlag;
uint64_t startTime, finishTime, passedTime;
uint16_t bombsNumber, deltaTime, fps;
int16_t score;
};