Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
ice_fenix
0 / 0 / 0
Регистрация: 06.12.2012
Сообщений: 38
#1

Показать счет в игре - Delphi

06.10.2013, 12:36. Просмотров 551. Ответов 2
Метки нет (Все метки)

У меня возникла такая проблема. Написал игру пинг-понг с помощью Shape и таймера. ну вроде игра идет, но тока не интересно играть без счета очков. .
http://www.cyberforum.ru/delphi-beginners/thread774829.html
можете мне подсказать как сделать чтобы если игрок отбил мяч и попал на форму, нам показал что забил гол.
пример ну тимпа ГОООЛ!!! 1:0 и тд , и чтоб это шло не до бесконечности а ну допустим до 10 и вывести сообщеение выйграл ты или проиграл.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.10.2013, 12:36
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Показать счет в игре (Delphi):

На счет handle
Пишу защиту для одной онлайн игры Lineage 2, на руоффе нельзя взять handle...

На счет edit.
день добрый. Представим, имеется поле edit. Как проверить, что пользователь...

Счет цифр в строке
помогите пожалуйста. есть строка с цифрами нужно посчитать количество цифр но...

Гражданин 1 марта открыл счет в банке
Гражданин 1 марта открыл счет в банке, вложив 1000р. Через каждый месяц размер...

Объясните поподробнее на счет спящего режима и выключения !!!
Как перезагрузить, выключить или установить спящий режим на компьитере при...

2
DelphiXE3
22 / 22 / 6
Регистрация: 24.03.2013
Сообщений: 119
06.10.2013, 12:52 #2
Лучший ответ Сообщение было отмечено ice_fenix как решение

Решение

кидаешь на форму шейп . С помощью этого метода проверяешь пересечение мяча и ворот
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
function
Collision(R1, R2: TRect): Boolean;
var
Temp: TRect;
begin
Result := False;
if not UnionRect(Temp, R1, R2) then
Exit;
if (Temp.Right - Temp.Left <= R1.Right - R1.Left + R2.Right - R2.Left) and
(Temp.Bottom - Temp.Top <= R1.Bottom - R1.Top + R2.Bottom - R2.Top) then
Result := True;
end
1
ice_fenix
0 / 0 / 0
Регистрация: 06.12.2012
Сообщений: 38
07.10.2013, 18:41  [ТС] #3
ну я кинул на форму шейп и в шейп написал. может что та не правельно. ошибку выдает.
function
Collision(R1, R2: TRect): Boolean;
var
Temp: TRect;
begin
Result := False;
if not UnionRect(Temp, R1, R2) then
Exit;
if (Temp.Right - Temp.Left <= R1.Right - R1.Left + R2.Right - R2.Left) and
(Temp.Bottom - Temp.Top <= R1.Bottom - R1.Top + R2.Bottom - R2.Top) then
Result := True;
end
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.10.2013, 18:41
Привет! Вот еще темы с решениями:

Защита программ от несанкционированной эксплуатации за счет привязки к носителю информации
Помогите с лабораторной работой. Задача лабораторной работы – а) определить...

Гражданин 1 марта открыл счет в банке, вложив 1000 руб. Через каждый месяц размер вклада увеличивается на 2% о
Гражданин 1 марта открыл счет в банке, вложив 1000 руб. Через каждый месяц...

На день рождения ребенка бабушка открыла счет в банке и положила на него 5 долларов. Каждый год она добавляет
На день рождения ребенка бабушка открыла счет в банке и положила на него 5...

Рекорды в игре
Ребят, возникла такая пролема. В таймере отвечающем за проигрыш, я ввел...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru