diff options
-rw-r--r-- | src/creditsMgr.cpp | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/creditsMgr.cpp b/src/creditsMgr.cpp index ece7b35..c8ef8c2 100644 --- a/src/creditsMgr.cpp +++ b/src/creditsMgr.cpp @@ -557,10 +557,25 @@ void dCreditsMgr_c::positionPlayers() { playerPositions[2] = playerPositions[0] + diff; playerPositions[3] = playerPositions[0] + diff + diff; + // This is annoying + dAcPy_c *players[4]; + for (int i = 0; i < 4; i++) + players[i] = dAcPy_c::findByID(i); + + static const int crap[4] = {0,1,3,2}; + int whichPos = 0; for (int i = 0; i < 4; i++) { - dAcPy_c *player; - if ((player = dAcPy_c::findByID(i))) { + dAcPy_c *player = 0; + // Find the player matching this ID + for (int j = 0; j < 4; j++) { + if (Player_ID[players[j]->settings & 0xF] == crap[i]) { + player = players[j]; + break; + } + } + + if (player) { player->pos.x = playerPositions[whichPos]; player->pos.y = -(entrance->yPos + 16); player->direction = 0; |