Fix multiplayer crash and remove debug display

This commit is contained in:
2024-12-12 15:58:29 +01:00
parent ad85095721
commit 83c52a9a5f
3 changed files with 3 additions and 19 deletions

View File

@@ -623,13 +623,6 @@ int pas_la_fontion_main_enfin_ce_nest_pas_la_fontion_principale_du_programme_mai
std::cerr << "Failed to initialize client!" << std::endl;
return -1;
}
/*
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution<> disX(0, ENV_WIDTH);
std::uniform_int_distribution<> disY(0, ENV_HEIGHT);
players.emplace_back(Player(disX(gen), disY(gen), 5, renderer, 1));
*/
players.emplace_back(Player(windowWidth / 2, windowHeight / 2, 5, renderer, 1));
std::ranges::sort(school, Fish::SortByX);
std::vector<std::thread> fish_threads;
@@ -754,17 +747,6 @@ void renderScene(std::vector<Player>& players, const std::vector<Kelp>& kelps, c
shark.draw(renderer);
displayFPS(renderer, font, fps);
for (auto& player : players) {
auto [playerX, playerY] = player.getPlayerPos();
displayPlayerCoord(renderer, font, playerX, playerY);
}
for (auto& player_server : players_server) {
int unifiedX = player_server.getUnifiedX();
int unifiedY = player_server.getUnifiedY();
displayUnifiedPlayerCoord(renderer, font, unifiedX, unifiedY);
displayNearbyPlayers(renderer, font, player_server, players_server, 500.0);
}
SDL_RenderPresent(renderer);
}

View File

@@ -146,7 +146,7 @@ void Player::handlePlayerMovement(int ENV_WIDTH, int ENV_HEIGHT, int windowWidth
unifiedY = camera.getY() + this->y;
} else {
Uint32 currentTime = SDL_GetTicks();
if (currentTime - lastMoveTime >= 5000) {
if (currentTime - lastMoveTime >= 1000) {
if (this->energy > 50.0f) {
this->energy += 0.4f; // Récupération plus rapide si l'énergie est élevée
} else {

View File

@@ -46,6 +46,8 @@ class Player {
Player(int x, int y, int playerSpeed, SDL_Renderer* renderer, int playerId) : x(x), y(y), playerBaseX(x), playerBaseY(y), playerSpeed(playerSpeed), playerId(playerId) {
playerPosForRender.x = x;
playerPosForRender.y = y;
unifiedX = x + windowWidth / 2;
unifiedY = y + windowHeight / 2;
SDL_Surface* playerSurface = IMG_Load(playerIMG);
if (playerSurface == nullptr) {