Примерно так:
if SXPos+ScreenW*7<UXPos then SXPos:=SXPos+t;
if SXPos+ScreenW*7>UXPos then SXPos:=SXPos-t;
if SYPos+ScreenH*7<UYPos then SYPos:=SYPos+t; // UXPos исправить на UYPos
if SYPos+ScreenH*7>UYPos then SYPos:=SYPos-t; // тоже исправить
// <-- СЮДА ВСТАВИТЬ (См. далее)
redrawscreen
////////////////////////////////////////////
// Что вставлять:
keyCode := GetKeyPressed;
if KeyToAction(keyCode) = GA_UP then
begin
UD := 1;
if ScreenW < UYPos then UYPos := UYPos - 1;
end;
if KeyToAction(keyCode) = GA_DOWN then
begin
UD := 3;
UYPos := UYPos + 1;
end;
if KeyToAction(keyCode) = GA_LEFT then
begin
UD := 4;
if ScreenH < UXPos then UXPos := UXPos - 1;
end;
if KeyToAction(keyCode) = GA_RIGHT then
begin
UD := 2;
UXPos := UXPos + 1;
end;
// конец
|