summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/creditsMgr.cpp19
-rw-r--r--src/topman.cpp3
2 files changed, 19 insertions, 3 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;
diff --git a/src/topman.cpp b/src/topman.cpp
index 5d98761..854edc2 100644
--- a/src/topman.cpp
+++ b/src/topman.cpp
@@ -157,7 +157,8 @@ daTopman *daTopman::build() {
bool daTopman::collisionCat9_RollingObject(ActivePhysics *apThis, ActivePhysics *apOther) {
backFire = apOther->owner->direction ^ 1;
- doStateChange(&StateID_KnockBack);
+ // doStateChange(&StateID_KnockBack);
+ doStateChange(&StateID_Die);
return true;
}