X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_game.pas;h=02a46f2c4ab9cb90ae13a484b6b08ca7a590770f;hb=cb39caa8b879b70aa096476a2e919d4a298f1fa5;hp=129370db0db8b867a81199199808fa13d86c8572;hpb=d354cd7a11af564156b13568eac5b4ff94a2c4a3;p=d2df-sdl.git diff --git a/src/game/g_game.pas b/src/game/g_game.pas index 129370d..02a46f2 100644 --- a/src/game/g_game.pas +++ b/src/game/g_game.pas @@ -2855,8 +2855,19 @@ begin if px > gMapInfo.Width-(gPlayerScreenSize.X div 2) then a := -gMapInfo.Width+gPlayerScreenSize.X; if py > gMapInfo.Height-(gPlayerScreenSize.Y div 2) then b := -gMapInfo.Height+gPlayerScreenSize.Y; - if gMapInfo.Width <= gPlayerScreenSize.X then a := 0; - if gMapInfo.Height <= gPlayerScreenSize.Y then b := 0; + if (gMapInfo.Width = gPlayerScreenSize.X) then a := 0 + else if (gMapInfo.Width < gPlayerScreenSize.X) then + begin + // hcenter + a := (gPlayerScreenSize.X-gMapInfo.Width) div 2; + end; + + if (gMapInfo.Height = gPlayerScreenSize.Y) then b := 0 + else if (gMapInfo.Height < gPlayerScreenSize.Y) then + begin + // vcenter + b := (gPlayerScreenSize.Y-gMapInfo.Height) div 2; + end; if p.IncCam <> 0 then begin @@ -2907,6 +2918,11 @@ begin p.viewPortW := sWidth; p.viewPortH := sHeight; + if (p = gPlayer1) then + begin + g_Holmes_plrView(p.viewPortX, p.viewPortY, p.viewPortW, p.viewPortH); + end; + renderMapInternal(-c, -d, a, b+p.IncCam, true); if p.FSpectator then