IPB
ЛогинПароль:

> Помогите доделать игру "Гонки" на Паскале!
Budyaga
сообщение 1.06.2008 1:42
Сообщение #1





Группа: Пользователи
Сообщений: 1
Пол: Мужской

Репутация: -  0  +


Написал Гонки, но их нужно немного доделать. Нужно сделать так, чтобы машинка игрока двигалась только в горизонтальном направлении, а "вражеские" машинки двигались на встречу сами. Сейчас "вражеские" машинки двигаются только когда я двигаю свою машинку. Ещё есть проблема с изменением цвета фона после одного столкновения, а нужно, чтобы игра заканчивалась после трёх столкновений.
Исходник игры
Прикрепленный файл  GONKI1.PAS ( 9.61 килобайт ) Кол-во скачиваний: 805
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Гость
сообщение 17.06.2008 18:01
Сообщение #2


Гость






Цитата(Budyaga @ 1.06.2008 1:42) *

Написал Гонки, но их нужно немного доделать. Нужно сделать так, чтобы машинка игрока двигалась только в горизонтальном направлении, а "вражеские" машинки двигались на встречу сами. Сейчас "вражеские" машинки двигаются только когда я двигаю свою машинку. Ещё есть проблема с изменением цвета фона после одного столкновения, а нужно, чтобы игра заканчивалась после трёх столкновений.
Исходник игры
Прикрепленный файл  GONKI1.PAS ( 9.61 килобайт ) Кол-во скачиваний: 805



Впринципи все сделал. Вот исходник там все найдешь.
Изменения:
Procedure Izo(S1:PStar1;S2,S21:PStar2;S3,S31,S32:PStar3;F:PFly;F1,F2,F3,F4:PFly1;o:potr);
var graphdriver:integer;
graphmode:integer;
errorcode,i:integer;

begin
graphdriver:=detect;
initgraph(graphdriver,graphmode,'d:\BP\bgi');
errorcode:=graphresult;
if errorcode<>grok then
begin
writeln('NOOOOOOOOOOOOOO ');
halt;
end;
S1^.On;
S2^.On;S21^.On;
S3^.On;S31^.On; S32^.On;
F^.On;
F1^.On;F2^.On;F3^.On;F4^.On;o^.on;
readln;
F^.Move(80,80);F1^.Move(80,80);F2^.Move(80,80);F3^.Move(80,80);F4^.Move(80,80);
S1^.Drive(80,30);
S2^.Drive(80,30);S21^.Drive(80,30); S32^.drive(80,30);
S3^.Drive(80,30); S31^.Drive(80,30);S:=0;
while (udr<>3) and (drag(F^,F1^,F2^,F3^,F4^)) and (drag1(S1^,S2^,S3^)) and (drag2(S21^,S31^,S32^)) do
begin
If TEST(S1^,S2^,S21^,S3^,S31^,S32^,F^)=true the begin cleardevice;
Udr:=Udr+1; end else s:=s+1; end;
end;


и также:

function drag(var f:fly;var f1:fly1;var f2:fly1;var f3:fly1;var f4:fly1):boolean;
var key:char;
dx,dy:integer;
step,step1:integer;
begin
step:=5; step1:=5;
if keypressed then begin key:=readkey;
if key=chr(0) then key:=readkey;
dx:=0; dy:=0;
case ord(key) of
75: dx:=-step;
77: dx:=step;
72: dy:=-step1;
80: dy:=step1;
27: begin drag:=false; exit end;
end; delay(4000); end else begin Dx:=0; Dy:=0; delay(6000);end;
f.move(dx,dy);f1.move(dx,dy);f2.move(dx,dy);f3.move(dx,dy);f4.move(dx,dy);
drag:=true;
end;


Сообщение отредактировано: volvo - 26.02.2009 12:21
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 24.06.2025 15:52
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"