Как предотвратить прохождение фигуры через другую фигуру в форме с помощью Delphi?

loki спросил: 13 октября 2017 в 07:24 в: delphi

Я не знаю, слишком ли это расплывчато (это мой первый раз), но я пытаюсь понять, как предотвратить прохождение контролируемой пользователем фигуры через другую фигуру в самой форме. До сих пор я заставлял подвижную фигуру показывать сообщение, когда она ударяется о другую фигуру, однако я хотел бы изменить это так, чтобы фигура пользователя не могла проходить через другую неподвижную фигуру и перестала двигаться в направлении, в котором она двигалась при попадании предмет. Я был бы признателен за помощь или возможное решение, спасибо.

Код на данный момент здесь

procedure TfrmMazeDesign1.Timer1Timer(Sender: TObject);
begin  case direction of
    1:
      ShpUser.Top := ShpUser.Top - 1;    2:
      ShpUser.Top := ShpUser.Top + 1;    3:
      ShpUser.Left := ShpUser.Left - 1;    4:
      ShpUser.Left := ShpUser.Left + 1;end;  if ShpUser.Left + ShpUser.Width = Shape1.Left  then     showmessage('hitbar');  if ShpUser.Left = Shape1.Left + Shape1.Width  then     showmessage('hitbar');end;

0 ответов