projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed selecting correct player in single player mode (after network gaming)
[rocksndiamonds.git]
/
src
/
game.c
diff --git
a/src/game.c
b/src/game.c
index efb18c36f18b708f955f7d702bd7e49974ae7bba..d37dee3a5f7c162ce69acdf33167a2d3b64f2233 100644
(file)
--- a/
src/game.c
+++ b/
src/game.c
@@
-3503,11
+3503,9
@@
void InitGame()
network_player_action_received = FALSE;
network_player_action_received = FALSE;
-#if defined(NETWORK_AVALIABLE)
/* initial null action */
if (network_playing)
SendToServer_MovePlayer(MV_NONE);
/* initial null action */
if (network_playing)
SendToServer_MovePlayer(MV_NONE);
-#endif
ZX = ZY = -1;
ExitX = ExitY = -1;
ZX = ZY = -1;
ExitX = ExitY = -1;
@@
-3964,26
+3962,21
@@
void InitGame()
}
else if (!network.enabled && !game.team_mode) /* && !tape.playing */
{
}
else if (!network.enabled && !game.team_mode) /* && !tape.playing */
{
- /* when in single player mode, eliminate all but the
first active
player */
+ /* when in single player mode, eliminate all but the
local
player */
for (i = 0; i < MAX_PLAYERS; i++)
{
for (i = 0; i < MAX_PLAYERS; i++)
{
- if (stored_player[i].active)
+ struct PlayerInfo *player = &stored_player[i];
+
+ if (player->active && player != local_player)
{
{
- for (j = i + 1; j < MAX_PLAYERS; j++)
- {
- if (stored_player[j].active)
- {
- struct PlayerInfo *player = &stored_player[j];
- int jx = player->jx, jy = player->jy;
+ int jx = player->jx, jy = player->jy;
-
player->active = FALSE;
-
player->present = FALSE;
+ player->active = FALSE;
+ player->present = FALSE;
- StorePlayer[jx][jy] = 0;
- Feld[jx][jy] = EL_EMPTY;
- }
- }
+ StorePlayer[jx][jy] = 0;
+ Feld[jx][jy] = EL_EMPTY;
}
}
}
}
}
}
@@
-11290,14
+11283,12
@@
void StartGameActions(boolean init_network_game, boolean record_tape,
if (record_tape)
TapeStartRecording(new_random_seed);
if (record_tape)
TapeStartRecording(new_random_seed);
-#if defined(NETWORK_AVALIABLE)
if (init_network_game)
{
SendToServer_StartPlaying();
return;
}
if (init_network_game)
{
SendToServer_StartPlaying();
return;
}
-#endif
InitGame();
}
InitGame();
}
@@
-11420,10
+11411,8
@@
void GameActionsExt()
{
/* try to get network player actions in time */
{
/* try to get network player actions in time */
-#if defined(NETWORK_AVALIABLE)
/* last chance to get network player actions without main loop delay */
HandleNetworking();
/* last chance to get network player actions without main loop delay */
HandleNetworking();
-#endif
/* game was quit by network peer */
if (game_status != GAME_MODE_PLAYING)
/* game was quit by network peer */
if (game_status != GAME_MODE_PLAYING)
@@
-11469,10
+11458,8
@@
void GameActionsExt()
stored_player[i].effective_action = stored_player[i].action;
}
stored_player[i].effective_action = stored_player[i].action;
}
-#if defined(NETWORK_AVALIABLE)
if (network_playing)
SendToServer_MovePlayer(summarized_player_action);
if (network_playing)
SendToServer_MovePlayer(summarized_player_action);
-#endif
// summarize all actions at local players mapped input device position
// (this allows using different input devices in single player mode)
// summarize all actions at local players mapped input device position
// (this allows using different input devices in single player mode)
@@
-14967,11
+14954,9
@@
void RequestQuitGameExt(boolean skip_request, boolean quick_quit, char *message)
if (!skip_request)
CloseDoor(DOOR_CLOSE_1);
if (!skip_request)
CloseDoor(DOOR_CLOSE_1);
-#if defined(NETWORK_AVALIABLE)
if (network.enabled)
SendToServer_StopPlaying(NETWORK_STOP_BY_PLAYER);
else
if (network.enabled)
SendToServer_StopPlaying(NETWORK_STOP_BY_PLAYER);
else
-#endif
{
if (quick_quit)
FadeSkipNextFadeIn();
{
if (quick_quit)
FadeSkipNextFadeIn();
@@
-15779,12
+15764,10
@@
static void HandleGameButtonsExt(int id, int button)
case GAME_CTRL_ID_PANEL_PAUSE:
if (network.enabled && game_status == GAME_MODE_PLAYING)
{
case GAME_CTRL_ID_PANEL_PAUSE:
if (network.enabled && game_status == GAME_MODE_PLAYING)
{
-#if defined(NETWORK_AVALIABLE)
if (tape.pausing)
SendToServer_ContinuePlaying();
else
SendToServer_PausePlaying();
if (tape.pausing)
SendToServer_ContinuePlaying();
else
SendToServer_PausePlaying();
-#endif
}
else
TapeTogglePause(TAPE_TOGGLE_MANUAL);
}
else
TapeTogglePause(TAPE_TOGGLE_MANUAL);
@@
-15801,11
+15784,9
@@
static void HandleGameButtonsExt(int id, int button)
}
else if (tape.pausing)
{
}
else if (tape.pausing)
{
-#if defined(NETWORK_AVALIABLE)
if (network.enabled)
SendToServer_ContinuePlaying();
else
if (network.enabled)
SendToServer_ContinuePlaying();
else
-#endif
TapeTogglePause(TAPE_TOGGLE_MANUAL | TAPE_TOGGLE_PLAY_PAUSE);
}
break;
TapeTogglePause(TAPE_TOGGLE_MANUAL | TAPE_TOGGLE_PLAY_PAUSE);
}
break;