- Optimized blockInfo.ScreenRect calculation for static tiles

- Fixed TScreenBuffer.Find to correctly handle the new buffer usage (search at the end, not the beginning)
This commit is contained in:
Andreas Schneider 2009-07-30 17:04:49 +02:00
parent 1196ad6425
commit 01d5fb98d1
4 changed files with 2512 additions and 2512 deletions

View File

@ -49,64 +49,64 @@
</Unit0>
<Unit1>
<Filename Value="UfrmMain.pas"/>
<ComponentName Value="frmMain"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmMain"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmMain"/>
</Unit1>
<Unit2>
<Filename Value="UdmNetwork.pas"/>
<ComponentName Value="dmNetwork"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="dmNetwork"/>
<ResourceBaseClass Value="DataModule"/>
<UnitName Value="UdmNetwork"/>
</Unit2>
<Unit3>
<Filename Value="UfrmLogin.pas"/>
<ComponentName Value="frmLogin"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmLogin"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmLogin"/>
</Unit3>
<Unit4>
<Filename Value="UfrmInitialize.pas"/>
<ComponentName Value="frmInitialize"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmInitialize"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmInitialize"/>
</Unit4>
<Unit5>
<Filename Value="UfrmAccountControl.pas"/>
<ComponentName Value="frmAccountControl"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmAccountControl"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmAccountControl"/>
</Unit5>
<Unit6>
<Filename Value="UfrmEditAccount.pas"/>
<ComponentName Value="frmEditAccount"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmEditAccount"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmEditAccount"/>
</Unit6>
<Unit7>
<Filename Value="Tools/UfrmDrawSettings.pas"/>
<ComponentName Value="frmDrawSettings"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmDrawSettings"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmDrawSettings"/>
</Unit7>
<Unit8>
<Filename Value="Tools/UfrmBoundaries.pas"/>
<ComponentName Value="frmBoundaries"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmBoundaries"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmBoundaries"/>
</Unit8>
<Unit9>
<Filename Value="Tools/UfrmElevateSettings.pas"/>
<ComponentName Value="frmElevateSettings"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmElevateSettings"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmElevateSettings"/>
</Unit9>
@ -122,64 +122,64 @@
</Unit11>
<Unit12>
<Filename Value="Tools/UfrmConfirmation.pas"/>
<ComponentName Value="frmConfirmation"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmConfirmation"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmConfirmation"/>
</Unit12>
<Unit13>
<Filename Value="Tools/UfrmMoveSettings.pas"/>
<ComponentName Value="frmMoveSettings"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmMoveSettings"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmMoveSettings"/>
</Unit13>
<Unit14>
<Filename Value="UfrmAbout.pas"/>
<ComponentName Value="frmAbout"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmAbout"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmAbout"/>
</Unit14>
<Unit15>
<Filename Value="Tools/UfrmHueSettings.pas"/>
<ComponentName Value="frmHueSettings"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmHueSettings"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmHueSettings"/>
</Unit15>
<Unit16>
<Filename Value="UfrmRadar.pas"/>
<ComponentName Value="frmRadarMap"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmRadarMap"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmRadar"/>
</Unit16>
<Unit17>
<Filename Value="UfrmLargeScaleCommand.pas"/>
<ComponentName Value="frmLargeScaleCommand"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmLargeScaleCommand"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmLargeScaleCommand"/>
</Unit17>
<Unit18>
<Filename Value="Tools/UfrmVirtualLayer.pas"/>
<ComponentName Value="frmVirtualLayer"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmVirtualLayer"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmVirtualLayer"/>
</Unit18>
<Unit19>
<Filename Value="Tools/UfrmFilter.pas"/>
<ComponentName Value="frmFilter"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmFilter"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmFilter"/>
</Unit19>
<Unit20>
<Filename Value="UfrmTileInfo.pas"/>
<ComponentName Value="frmTileInfo"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmTileInfo"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmTileInfo"/>
</Unit20>
@ -195,9 +195,9 @@
</Unit22>
<Unit23>
<Filename Value="UfrmRegionControl.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="frmRegionControl"/>
<HasResources Value="True"/>
<IsPartOfProject Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="UfrmRegionControl"/>
</Unit23>

View File

@ -1066,7 +1066,7 @@ var
begin
Result := nil;
current := FShortCuts[0];
while (current <> nil) and (Result = nil) do
while current <> nil do //search the last matching tile
begin
if (current^.State = ssNormal) and
PtInRect(current^.ScreenRect, AScreenPosition) and

File diff suppressed because it is too large Load Diff

View File

@ -2133,10 +2133,10 @@ begin
hue := nil;
blockInfo^.LowRes := FTextureManager.GetArtMaterial($4000 + staticItem.TileID, hue, (staticTileData.Flags and tdfPartialHue) = tdfPartialHue);
blockInfo^.ScreenRect := Bounds(Trunc(drawX - blockInfo^.LowRes.RealWidth div 2),
blockInfo^.ScreenRect := Bounds(Trunc(drawX - blockInfo^.LowRes.RealWidth / 2),
Trunc(drawY + 44 - blockInfo^.LowRes.RealHeight - z * 4),
blockInfo^.LowRes.RealWidth,
Trunc(blockInfo^.LowRes.RealHeight));
blockInfo^.LowRes.RealHeight);
south := blockInfo^.LowRes.RealHeight;
east := blockInfo^.LowRes.RealWidth div 2;