# HG changeset patch # User sheepluva # Date 1461673374 -7200 # Node ID 1694b379c83fc1f59da012c4365280b696023f41 # Parent 607e2e43acf012568c831da14540a115a9a6c2fa fix clouds/flakes area not being adjusted after ResizeLand() diff -r 607e2e43acf0 -r 1694b379c83f hedgewars/uLandUtils.pas --- a/hedgewars/uLandUtils.pas Tue Apr 26 12:27:17 2016 +0200 +++ b/hedgewars/uLandUtils.pas Tue Apr 26 14:22:54 2016 +0200 @@ -30,6 +30,7 @@ if (width div 4096 >= 2) or (height div 2048 >= 2) then cMaxZoomLevel:= cMaxZoomLevel/2; cMinMaxZoomLevelDelta:= cMaxZoomLevel - cMinZoomLevel end; +initScreenSpaceVars(); end; procedure InitWorldEdges(); diff -r 607e2e43acf0 -r 1694b379c83f hedgewars/uVariables.pas --- a/hedgewars/uVariables.pas Tue Apr 26 12:27:17 2016 +0200 +++ b/hedgewars/uVariables.pas Tue Apr 26 14:22:54 2016 +0200 @@ -23,6 +23,8 @@ uses SDLh, uTypes, uFloat, GLunit, uConsts, Math, uUtils{$IFDEF GL2}, uMatrix{$ENDIF}; +procedure initScreenSpaceVars(); + var /////// init flags /////// cMinScreenWidth : LongInt; @@ -2514,6 +2516,14 @@ cTagsMask:= htTeamName or htName or htHealth; end; +procedure initScreenSpaceVars(); +begin + // those values still are not perfect + cLeftScreenBorder:= round(-cMinZoomLevel * cScreenWidth); + cRightScreenBorder:= round(cMinZoomLevel * cScreenWidth + LAND_WIDTH); + cScreenSpace:= cRightScreenBorder - cLeftScreenBorder; +end; + procedure initModule; var s: shortstring; i: integer; @@ -2694,10 +2704,7 @@ CinematicBarH := 0; CinematicScript := false; - // those values still are not perfect - cLeftScreenBorder:= round(-cMinZoomLevel * cScreenWidth); - cRightScreenBorder:= round(cMinZoomLevel * cScreenWidth + LAND_WIDTH); - cScreenSpace:= cRightScreenBorder - cLeftScreenBorder; + initScreenSpaceVars(); dirtyLandTexCount:= 0;