/
GameState.cpp
50 lines (41 loc) · 1.23 KB
/
GameState.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include "GameState.h"
GameState::GameState()
: GameState("Map.config"){
}
GameState::GameState(std::string configFileName){
map = new Map(configFileName);
globals.setLayoutSize(this->map->getLayoutSize());
}
GameState::~GameState(){
}
void GameState::endState(){
// TODO: endState fonksiyonunu destructor içine ekleyebiliriz.
// Kullandýðý bütün kaynaklarý serbest býrakmalýdýr.
std::cout << "Ending States" << std::endl;
}
void GameState::updateKeybinds(const float& dt){
this->checkForQuit();
}
void GameState::update(const float& dt){
/* State'i sonlandýrmak için escape tuþuna
basýlýp basýlmadýðýný kontrol eder. */
this->updateKeybinds(dt);
//this->checkEntityCollisions();
this->updateEntities(dt);
//std::cout << this->map->getLayoutSize().x << " " << this->map->getLayoutSize().y << std::endl;
}
void GameState::draw(sf::RenderTarget& target, sf::RenderStates states) const{
this->drawEntities(target, states);
}
void GameState::drawEntities(sf::RenderTarget& target, sf::RenderStates states) const{
//target.draw(map);
target.draw(*map);
for(auto *entity : this->entities){
target.draw(*entity);
}
}
void GameState::updateEntities(const float& dt) const{
for(auto entity : this->entities){
entity->update(dt);
}
}