projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
swapped condition logic for better readability
[rocksndiamonds.git]
/
src
/
game.c
diff --git
a/src/game.c
b/src/game.c
index 2e504df5d5188103bc46381436ec12bc71781972..fb56f906e1efd6bcebf8b496f6935056bf419ca7 100644
(file)
--- a/
src/game.c
+++ b/
src/game.c
@@
-2224,7
+2224,8
@@
void UpdateGameControlValues()
/* update game panel control values */
/* update game panel control values */
- game_panel_controls[GAME_PANEL_LEVEL_NUMBER].value = level_nr;
+ /* use "level.file_info.nr" instead of "level_nr" (for network games) */
+ game_panel_controls[GAME_PANEL_LEVEL_NUMBER].value = level.file_info.nr;
game_panel_controls[GAME_PANEL_GEMS].value = gems;
game_panel_controls[GAME_PANEL_INVENTORY_COUNT].value = 0;
game_panel_controls[GAME_PANEL_GEMS].value = gems;
game_panel_controls[GAME_PANEL_INVENTORY_COUNT].value = 0;
@@
-4422,6
+4423,10
@@
void InitAmoebaNr(int x, int y)
static void PlayerWins(struct PlayerInfo *player)
{
static void PlayerWins(struct PlayerInfo *player)
{
+ if (level.game_engine_type == GAME_ENGINE_TYPE_RND &&
+ local_player->players_still_needed > 0)
+ return;
+
player->LevelSolved = TRUE;
player->GameOver = TRUE;
player->LevelSolved = TRUE;
player->GameOver = TRUE;
@@
-4719,15
+4724,15
@@
void GameEnd()
DrawHallOfFame(last_level_nr, hi_pos);
}
DrawHallOfFame(last_level_nr, hi_pos);
}
- else if (
!setup.auto_play_next_level || !
setup.increment_levels)
+ else if (
setup.auto_play_next_level &&
setup.increment_levels)
{
{
- SetGameStatus(GAME_MODE_MAIN);
-
- DrawMainMenu();
+ StartGameActions(network.enabled, setup.autorecord, level.random_seed);
}
else
{
}
else
{
- StartGameActions(network.enabled, setup.autorecord, level.random_seed);
+ SetGameStatus(GAME_MODE_MAIN);
+
+ DrawMainMenu();
}
}
}
}
@@
-11223,6
+11228,7
@@
void StartGameActions(boolean init_network_game, boolean record_tape,
if (init_network_game)
{
if (init_network_game)
{
+ SendToServer_LevelFile();
SendToServer_StartPlaying();
return;
SendToServer_StartPlaying();
return;