Логин: Пароль:    Регистрация Всеми возможностями сайта можно пользоваться
только после авторизации.
   Забыли пароль?

Поиск
L



Статистика
u
Пользователи онлайн: нет
Гостей онлайн: 2
Всего онлайн: 2
Зарегистрировано юзеров: 6943
Комментариев на сайте: 654
Новый юзер: MatthewMat



Последние комментарии
c
Davidpab прокомментировал "Урок 24 - Изучаем компонент PaintBox":
&#1047;&#1072;&#1082;&#1072;&#1079;&#1072;&#1090;&#1100; seo &#1087;&#1086;&#1080;&#1089;&#1082;&#1086;&#1074;&#1091;&#1102; &#1086;&#1087;&#1090;&#1080;&#1084;&#1080;&#1079;&#1072;&#1094;&#1080;&#1102; &#1089;&#1072;&#1081;&#1090;&#1072;, <a href=http://seoprofisional.ru/bazy>базы для xrumer</a> &#1047;&#1072;&#1082;&#1072;&#1079;&#1072;&#1090;&#1100; &#1091;&#1089;&#1083;&#1091;&#1075;&#1080; &#1087;&#1086; &#1087;&#1088;&#1086;&#1076;&#1074;&#1080;&#1078;&#1077;&#1085;&#1080;&#1102; &#1089;&#1072;&#1081;&#1090;&#1072; &#1055;&#1086; &#1074;&#1089;&#1077;&#1084; &#1074;&#1086;&#1079;&#1085;&#1080;&#1082;&#1096;&#1080;&#1084; &#1074;&#1086;&#1087;&#1088;&#1086;&#1089;&#1072;&#1084; &#1042;&#1099; &#1084;&#1086;&#1078;&#1077;&#1090;&#1077; &#1086;&#1073;&#1088;&#1072;&#1090;&#1080;&#1090;&#1100;&#1089;&#1103; &#1074; &#1089;&#1082;&#1072;&#1081;&#1087; &#1083;&#1086;&#1075;&#1080;&#1085; [b]pokras7777[/b] &#1056;&#1072;&#1089;&#1082;&#1088;&#1091;&#1090;&#1082;&#1072; &#1089;&#1072;&#1081;&#1090;&#1072; &#1087;&#1086;&#1076; &#1082;&#1083;&#1102;&#1095; fhdxxxxxd
Everettrof прокомментировал "Урок 53 - Потоки в Delphi, (часть 1/3)":
Как быть не могу разобраться или тут хочу заказать металлоизделия Делается тут или в другом месте искать навесы из полекарбоната Такие фирмы это делают или я не правильно понимаю, нужно сделать а я вот выбираю и не могу понять,,, сварка металла это же они могут сделать??? https://steelcentury.ru пока на них смотрю

Урок 27 - Создаем игру Ping-pong - часть(3/3)

  Мы продолжаем простенькую игру "Пинг-Понг". Сделаем искусственный интеллект.

   Перейдем на вкладку Additional и вытащим третий Shape - это наш противник. Придадим ему ту же форму, что и у нас. Противник должен отбивать шарик и не давать ему ударится о левую границу формы. Но как нам забить противнику, если он постоянно отбивает мяч, неважно с какой скоростью он летит. Нужно замедлить реакцию противника.

шарик


   Вытащим на форму еще один таймер и сделаем интервал меньше чем у первого таймера, например 16 мс. В обработчике события мы запишем код:
procedure TForm1.Timer2Timer(Sender: TObject);
begin
  if Shape3.Top > ClientHeight - Shape3.Height - 40 then  //Не пускаем врага 
    Shape3.Top:= Shape3.Top                               //за нижний край формы
	else
    begin
	  if Shape1.Top > Shape3.Top then // если шарик ниже противника
	    Shape3.Top:= Shape1.Top + Shape3.Width; //то отпускаем его
	end;
	
  if Shape1.Top < Shape3.Top then   // поднимаем если шарик выше
    Shape3.Top:= Shape1.Top - Shape3.Width;
	
end;
   Проверим, да, враг ожил, но он не отбивает мяч, нужно в первом таймере дописать проверку столкновения с шарика с противником, все что нам нужно это скопировать условие проверяющие столкновение шарика с игроком и заменить Rect игрока на противника и сменить знаки т.к. отскакивают шарик будет в противоположную сторону:
  if InterSectRect(Overlay, Shape3.BoundsRect, Shape1.BoundsRect) then  
  begin                                                                 
    VelX:= -VelX + Random(5);
    VelY:= -VelY + Random(5);
  end;


Ну вот и все мы написали простенькую игру. Удачи!
Встретимся в следующем уроке!


Источник: www.thedelphi.ru
Автор: Савельев Александр
Опубликовано: 21 Апреля 2013
Просмотров: 40970

Создаем игру Ping-pong - часть(2/3)

Зарегистрируйтесь или авторизуйтесь, чтобы добавлять комментарии.



аватар Добавил(а): chasovitin [Новичок] Дата: 2014-05-26




аватар Добавил(а): Vetal_Pr0 [Новичок] Дата: 2014-12-05
Получилось, игра удалась Как сделать, чтоб можно было двигать синий прямоугольник по X( для другой игры нужно). Пробовал переделать этот код: Shape2.Top:= Mouse.CursorPos.Y - Form1.ClientOrigin.Y; под X и вместо Top Width ставил не помогло.




аватар Добавил(а): norka [Новичок] Дата: 2015-12-28
спасибки))




аватар Добавил(а): Bek1996 [Новичок] Дата: 2016-02-10
продолжение не будет? как сделать когда мяч попадает на край, должен появится сообщение что вы проиграли