Push pre-gamestate Pause
This commit is contained in:
parent
a67499049b
commit
8b448f5072
@ -55,9 +55,8 @@ void Engine::Init() {
|
|||||||
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||||
glBlendEquation(GL_FUNC_SUBTRACT);
|
glBlendEquation(GL_FUNC_SUBTRACT);
|
||||||
|
|
||||||
if (m_istarted) {
|
if (m_istarted)
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
else m_istarted = true;
|
else m_istarted = true;
|
||||||
|
|
||||||
// Objet de skybox avec sa propre texture et son propre shader!
|
// Objet de skybox avec sa propre texture et son propre shader!
|
||||||
@ -71,52 +70,52 @@ void Engine::Init() {
|
|||||||
m_whoosh[x] = nullptr;
|
m_whoosh[x] = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
//char* ch = new char[2];
|
char* ch = new char[2];
|
||||||
|
|
||||||
//std::cout << "Jouer en ligne? [o/N] ";
|
std::cout << "Jouer en ligne? [o/N] ";
|
||||||
//std::cin.getline(ch, 2);
|
std::cin.getline(ch, 2);
|
||||||
//std::cout << std::endl;
|
std::cout << std::endl;
|
||||||
|
|
||||||
//if (*ch == 'o' || *ch == 'O') {
|
if (*ch == 'o' || *ch == 'O') {
|
||||||
// char* input = new char[32];
|
char* input = new char[32];
|
||||||
// std::string playname, srvname;
|
std::string playname, srvname;
|
||||||
|
|
||||||
// while (playname.size() < 1) {
|
while (playname.size() < 1) {
|
||||||
// std::cout << "Veuillez entrer un nom de joueur: ";
|
std::cout << "Veuillez entrer un nom de joueur: ";
|
||||||
// std::cin.getline(input, 32);
|
std::cin.getline(input, 32);
|
||||||
// std::cout << std::endl;
|
std::cout << std::endl;
|
||||||
// playname = input;
|
playname = input;
|
||||||
// if (playname.size() < 1 || playname.size() > 32)
|
if (playname.size() < 1 || playname.size() > 32)
|
||||||
// std::puts("Nom invalide.");
|
std::puts("Nom invalide.");
|
||||||
// }
|
}
|
||||||
// while (srvname.size() < 1) {
|
while (srvname.size() < 1) {
|
||||||
// std::cout << "Veuillez entrer une adresse de serveur: ";
|
std::cout << "Veuillez entrer une adresse de serveur: ";
|
||||||
// std::cin.getline(input, 32);
|
std::cin.getline(input, 32);
|
||||||
// std::cout << std::endl;
|
std::cout << std::endl;
|
||||||
// srvname = input;
|
srvname = input;
|
||||||
// if (srvname.size() < 1 || srvname.size() > 32)
|
if (srvname.size() < 1 || srvname.size() > 32)
|
||||||
// std::puts("Adresse serveur invalide.");
|
std::puts("Adresse serveur invalide.");
|
||||||
// }
|
}
|
||||||
// delete[] input;
|
delete[] input;
|
||||||
|
|
||||||
// if (!m_conn.Init()) {
|
if (!m_conn.Init()) {
|
||||||
// if (!m_conn.Connect(srvname.c_str(), playname)) {
|
if (!m_conn.Connect(srvname.c_str(), playname)) {
|
||||||
// // setup jeu en reseau.
|
// setup jeu en reseau.
|
||||||
// std::cout << "ID recu du serveur: " << std::to_string(m_conn.getId()) << "!" << std::endl;
|
std::cout << "ID recu du serveur: " << std::to_string(m_conn.getId()) << "!" << std::endl;
|
||||||
// std::cout << "Seed recu du serveur: " << std::to_string(m_conn.getSeed()) << "!" << std::endl;
|
std::cout << "Seed recu du serveur: " << std::to_string(m_conn.getSeed()) << "!" << std::endl;
|
||||||
// m_player = Player(m_conn.getOrigin().position);
|
m_player = Player(m_conn.getOrigin().position);
|
||||||
|
|
||||||
// for (auto& [key, player] : m_conn.m_players)
|
for (auto& [key, player] : m_conn.m_players)
|
||||||
// m_players[key] = new RemotePlayer(player);
|
m_players[key] = new RemotePlayer(player);
|
||||||
|
|
||||||
// seed = m_conn.getSeed();
|
seed = m_conn.getSeed();
|
||||||
// m_networkgame = true;
|
m_networkgame = true;
|
||||||
// }
|
}
|
||||||
// else std::cout << "Erreur de connexion." << std::endl;
|
else std::cout << "Erreur de connexion." << std::endl;
|
||||||
// }
|
}
|
||||||
// else std::cout << "Erreur de creation de socket." << std::endl;
|
else std::cout << "Erreur de creation de socket." << std::endl;
|
||||||
//}
|
}
|
||||||
//delete[] ch;
|
delete[] ch;
|
||||||
|
|
||||||
m_world.SetSeed(seed);
|
m_world.SetSeed(seed);
|
||||||
|
|
||||||
@ -126,9 +125,6 @@ void Engine::Init() {
|
|||||||
m_startTime = std::chrono::high_resolution_clock::now();
|
m_startTime = std::chrono::high_resolution_clock::now();
|
||||||
|
|
||||||
m_remotePlayer.SetPosition(Vector3f(.5, CHUNK_SIZE_Y + 10., .5));
|
m_remotePlayer.SetPosition(Vector3f(.5, CHUNK_SIZE_Y + 10., .5));
|
||||||
// Gestion de souris.
|
|
||||||
CenterMouse();
|
|
||||||
HideCursor();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Engine::DeInit() {}
|
void Engine::DeInit() {}
|
||||||
@ -278,6 +274,11 @@ void Engine::Render(float elapsedTime) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (m_gamestate == GameState::PAUSE) {
|
||||||
|
DisplayPauseMenu();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (m_gamestate == GameState::PLAY) {
|
if (m_gamestate == GameState::PLAY) {
|
||||||
HideCursor();
|
HideCursor();
|
||||||
CenterMouse(); //D<>placement de centermouse dans l'action de jouer
|
CenterMouse(); //D<>placement de centermouse dans l'action de jouer
|
||||||
@ -942,16 +943,23 @@ void Engine::DisplaySplashScreen() {
|
|||||||
glTexCoord2f(0, 1); glVertex2i(-imageWidth / 2, imageHeight / 2);
|
glTexCoord2f(0, 1); glVertex2i(-imageWidth / 2, imageHeight / 2);
|
||||||
glEnd();
|
glEnd();
|
||||||
|
|
||||||
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
|
||||||
glBlendEquation(GL_FUNC_ADD);
|
|
||||||
glEnable(GL_BLEND);
|
|
||||||
|
|
||||||
glMatrixMode(GL_PROJECTION);
|
glMatrixMode(GL_PROJECTION);
|
||||||
glPopMatrix();
|
glPopMatrix();
|
||||||
glMatrixMode(GL_MODELVIEW);
|
glMatrixMode(GL_MODELVIEW);
|
||||||
glPopMatrix();
|
glPopMatrix();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Engine::DisplayPauseMenu() {
|
||||||
|
|
||||||
|
m_texturePauseMenu.Bind();
|
||||||
|
glBegin(GL_QUADS);
|
||||||
|
glTexCoord2f(0, 0); glVertex2i(0, 0);
|
||||||
|
glTexCoord2f(1, 0); glVertex2i(Width(), 0);
|
||||||
|
glTexCoord2f(1, 1); glVertex2i(Width(), Height());
|
||||||
|
glTexCoord2f(0, 1); glVertex2i(0, Height());
|
||||||
|
glEnd();
|
||||||
|
}
|
||||||
|
|
||||||
void Engine::DisplayMainMenu() {
|
void Engine::DisplayMainMenu() {
|
||||||
GLint viewport[4];
|
GLint viewport[4];
|
||||||
glGetIntegerv(GL_VIEWPORT, viewport);
|
glGetIntegerv(GL_VIEWPORT, viewport);
|
||||||
|
@ -61,6 +61,7 @@ private:
|
|||||||
void DisplayInfo(float elapsedTime, BlockType bloc);
|
void DisplayInfo(float elapsedTime, BlockType bloc);
|
||||||
|
|
||||||
void DisplaySplashScreen();
|
void DisplaySplashScreen();
|
||||||
|
void DisplayPauseMenu();
|
||||||
|
|
||||||
void DisplayMainMenu();
|
void DisplayMainMenu();
|
||||||
void DrawButtonBackgrounds(float centerX, float centerY, int iterations);
|
void DrawButtonBackgrounds(float centerX, float centerY, int iterations);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user