Home
2011-08-21 14:10:37
This function will adjust your mainscreen angle and compass angle to direction of the tile.
Enjoy!
~Home
Enjoy!
(*
R_AdjustTo
~~~~~~~~~~~~~~
.. code-block:: pascal
function R_AdjustTo(Tile: TTile; Height: Integer): Boolean;
Adjusts compass angle and mainscreen angle to tile
.. note::
by Home
*)
function R_AdjustTo(Tile: TTile; Height: Integer): Boolean;
var
Mark: Integer;
Left: Boolean;
begin
if (R_DistanceFromTile(Tile) <= 14) and not R_TileOnMS(Tile, Height) then begin
case R_DistanceFromTile(Tile) of
13..14: R_SetCameraAngle(0);
11..12: R_SetCameraAngle(5);
9..10: R_SetCameraAngle(10);
7..8: R_SetCameraAngle(20);
5..6: R_SetCameraAngle(40);
end;
if not R_TileOnMS(Tile, Height) then
R_MakeCompass(Round(Degrees(ArcTan2(MMCY - Tile.Y, MMCX - Tile.X)) + 90 + R_GetMinimapAngleDeg));
if not R_TileOnMS(Tile, Height) then begin
MarkTime(Mark);
case Random(1) of
0:
begin
KeyDown(VK_Right)
Left := False;
end;
1:
begin
KeyDown(VK_Left)
Left := True;
end;
end;
repeat
Wait(RandomRange(100, 150));
until (R_TileOnMs(Tile, Height)) or (TimeFromMark(Mark) > 14000)
if Left then KeyUp(VK_Left)
else
KeyUp(VK_Right);
end;
end;
Result := R_TileOnMs(Tile, Height);
end; ~Home