diff --git a/source/level/layercollision.cpp b/source/level/layercollision.cpp index 1902eb6c6..2f7602af4 100644 --- a/source/level/layercollision.cpp +++ b/source/level/layercollision.cpp @@ -151,7 +151,7 @@ void CLayerCollision::render(DVECTOR &MapPos) xoff=MapPos.vx&15; yoff=MapPos.vy&15; mapx=MapPos.vx/16; - mapy=MapPos.vy/16+4; // (pkg) + mapy=MapPos.vy/16; for(y=-yoff;y<(20*16)-yoff;y+=16) { coll=&Map[mapx+(mapy*MapWidth)]; diff --git a/source/level/layertile.cpp b/source/level/layertile.cpp index 3428efb58..7f39998f3 100644 --- a/source/level/layertile.cpp +++ b/source/level/layertile.cpp @@ -66,8 +66,11 @@ int YPos=MapPos.vy>>MapXYShift; MapXY.vx=XPos>>4; MapXY.vy=YPos>>4; -/**/ MapXY.vx+=TileMapOfs.vx; -/**/ MapXY.vy+=TileMapOfs.vy; + if (LayerHdr->SubType==1) // BODGE AND A HALF + { +/**/ MapXY.vx+=TileMapOfs.vx; +/**/ MapXY.vy+=TileMapOfs.vy; + } ShiftX=XPos & 15; ShiftY=YPos & 15; diff --git a/source/player/player.cpp b/source/player/player.cpp index d61e37a76..9cb36b4c7 100644 --- a/source/player/player.cpp +++ b/source/player/player.cpp @@ -149,7 +149,7 @@ int MAP3D_CENTRE_Y=500; int MAP3D_BLOCKSTEPSIZE=315; int MAP2D_CENTRE_X=-256; -int MAP2D_CENTRE_Y=-136-(4*16); +int MAP2D_CENTRE_Y=-136; int MAP2D_BLOCKSTEPSIZE=16; int CAMERA_SCROLLLIMIT=8; // SB is this many tiles off centre at most @@ -321,10 +321,10 @@ if(PadGetDown(0)&PAD_CIRCLE) // Move the camera offset -m_playerScreenPos.vx=MAP3D_CENTRE_X+((MAP3D_BLOCKSTEPSIZE*m_cameraScrollPos.vx)>>8); -m_playerScreenPos.vy=MAP3D_CENTRE_Y+((MAP3D_BLOCKSTEPSIZE*m_cameraScrollPos.vy)>>8);; -m_cameraOffset.vx=MAP2D_CENTRE_X+((MAP2D_BLOCKSTEPSIZE*(-m_cameraScrollPos.vx))>>8); -m_cameraOffset.vy=MAP2D_CENTRE_Y+((MAP2D_BLOCKSTEPSIZE*(-m_cameraScrollPos.vy))>>8);; + m_playerScreenPos.vx=MAP3D_CENTRE_X+((MAP3D_BLOCKSTEPSIZE*m_cameraScrollPos.vx)>>8); + m_playerScreenPos.vy=MAP3D_CENTRE_Y+((MAP3D_BLOCKSTEPSIZE*m_cameraScrollPos.vy)>>8); + m_cameraOffset.vx=MAP2D_CENTRE_X+((MAP2D_BLOCKSTEPSIZE*(-m_cameraScrollPos.vx))>>8); + m_cameraOffset.vy=MAP2D_CENTRE_Y+((MAP2D_BLOCKSTEPSIZE*(-m_cameraScrollPos.vy))>>8); m_cameraPos.vx=Pos.vx+m_cameraOffset.vx; m_cameraPos.vy=Pos.vy+m_cameraOffset.vy;