DEADSOFTWARE

gl: handle map bounds
[d2df-sdl.git] / src / game / renders / opengl / r_map.pas
index d33433860f5f24f12268f9996eda4e884fc53e99..3ef4979ad1fadf181c8879a2cb7106b445fb863f 100644 (file)
@@ -802,7 +802,7 @@ implementation
           tex.width,
           tex.height,
           d = TDirection.D_LEFT,
-          255, 255, 255, 255, false
+          255, 255, 255, alpha, false
         );
       end;
     end;
@@ -1165,7 +1165,19 @@ implementation
     ww := w;
     hh := h;
 
-    // TODO lock camera at map bounds
+    if g_dbg_ignore_bounds = false then
+    begin
+      if xx + ww > gMapInfo.Width then
+        xx := gMapInfo.Width - ww;
+      if yy + hh > gMapInfo.Height then
+        yy := gMapInfo.Height - hh;
+      if xx < 0 then
+        xx := 0;
+      if yy < 0 then
+        yy := 0;
+      cx := xx - x;
+      cy := yy - y;
+    end;
 
     // TODO draw paralax
     if SkyTexture <> nil then