Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.03.2011, 19:06   #1
Deniska_777
Пользователь
 
Регистрация: 01.03.2011
Сообщений: 19
По умолчанию Пишу игру на паскале.

Всем привет!
помогите пожалйсто написать рекорды .
да, игра у меня планируется быть змейкой.в субботу нужно уже здать.
кто сможет помочь ?
есть меню,описание игры, и сама игра, но только там кружочек ест кружочки и всё , да границы тоже прописаны.

чего то не могу найти а где код для паскаля *
Deniska_777 вне форума Ответить с цитированием
Старый 01.03.2011, 19:19   #2
Deniska_777
Пользователь
 
Регистрация: 01.03.2011
Сообщений: 19
По умолчанию

пожалуйсто кто нибудь помогите.
я просто не давно освоился только в прогрммирование, а игру написать надо .
на репититора денег нет.
Deniska_777 вне форума Ответить с цитированием
Старый 01.03.2011, 19:56   #3
Deniska_777
Пользователь
 
Регистрация: 01.03.2011
Сообщений: 19
По умолчанию

program igrashe;
uses crt,graph;
var
num : integer;
x,y,dx,eda,edax,eday : integer;
gd,gm :integer;
c,key : char;
procedure nachalo;
procedure paint(x,y,cl : integer);
begin
setcolor(cl);

floodfill(x,y,red);
circle(x,y,10);
if (edax=x)and(eday=y) then eda:=0;
end;
procedure lol(var edax,eday,eda:integer);
begin
if eda=0 then begin
setcolor(blue);
edax:=random(64)*10;
eday:=random(48)*10;
circle(edax,eday,10);
eda:=1;
end;
end;
begin
randomize;
gd:=detect;
initgraph(gd,gm,'c:\tp\bgi');
x:=315;
y:=200;
repeat
lol(edax,eday,eda);
paint(x,y,red);
c:=readkey;
if c=chr(0) then begin
paint(x,y,black);
c:=readkey;
if c=chr(72) then y:=y-5;{vverx}
if c=chr(75) then x:=x-5;{vlevo}
if c=chr(77) then x:=x+5;{vpravo}
if c=chr(80) then y:=y+5;{vniz}
if x<0 then x:=640;
if x>640 then x:=0;
if y<0 then y:=480;
if y>480 then y:=0;
paint(x,y,green);
end;

until c=chr(27);
closegraph;
end;
procedure helpro;
begin
initgraph(gd,gm,'c:\tp\bgi');
SetBkColor(yellow);
Setcolor(red);
SETTEXTSTYLE(7,0,1);
Outtextxy(20,160,'PRAVILO GAME:');
outtextxy(20,200,'1.VASHA CEL EAT KRYSHOCHKI,NE POPASTSYA POD OBSTREL');
outtextxy(20,220,'2.YPRAVLENIE STRELOCHKAMI S KLAVIATYRI');
outtextxy(20,240,'3.YDACHNOI GAME');
readkey;
closegraph;
end;
procedure conec;
begin
textbackground(yellow);
textcolor(white);
clrscr;
gotoxy(30,10);
writeln('Thanks for game!!!');
readkey;
end;
function menu_my : integer;
const ss : array [1..3] of string = ('1.IGRAT','2.Pomoch','3.Vixod');
var
m : integer;
cf,cb : byte;
x,y : integer;
c : char;
procedure out(s : string; x,y : integer; cf,cb : integer);
begin
textcolor(cf);
textbackground(cb);
gotoxy(x+25,y);
write(s);
end;
begin
cb :=yellow;
cf :=black;
x :=10;
textcolor(cf);
textbackground(cb);
clrscr;
m :=0;
for y := 11 to 13 do begin
gotoxy(x,y);
out(ss[y-10] ,x,y,cf,cb);
end;
y :=13;
out(ss[y-10] ,x,y,cb,cf);
repeat
c :=readkey;{ write (c,' ', ord(c)); readln;}
if (c>=' 1' ) and (c <=' 3' ) then begin
out(ss[y-10] ,x,y,cb,cf);
y :=10 + ord(c) - ord('0');
out(ss[y-10] ,x,y,cb,cf);
end
else if ord(c) = 0 then begin
c :=readkey;
out(ss[y-10] ,x,y,cf,cb);
case ord(c) of
72 : begin
if y=11 then y:=13 else y:=y-1;
end;
77 : ;{ rigth}
80 :begin
if y=13 then y:=11 else y:=y+1;
end;
75 : ;{left}
end; {case}
out(ss[y-10] ,x,y,cb,cf);
end;
if ord(c) = 13 then m:=y-10;
until ( m > 0) and (m <= 3);
menu_my:=m;
end;
begin
repeat
num := menu_my;
case num of
1: nachalo;
2: helpro;
3: conec;
end;
until num = 3;
end.
Deniska_777 вне форума Ответить с цитированием
Старый 01.03.2011, 19:59   #4
Deniska_777
Пользователь
 
Регистрация: 01.03.2011
Сообщений: 19
По умолчанию

program igrashe;
uses crt,graph;
var
num : integer;
x,y,dx,eda,edax,eday : integer;
gd,gm :integer;
c,key : char;
procedure nachalo;
procedure paint(x,y,cl : integer);
begin
setcolor(cl);
circle(x,y+10,10);
if (edax=x)and(eday=y) then eda:=0;
end;
procedure lol(var edax,eday,eda:integer);
begin
if eda=0 then begin
setcolor(blue);
edax:=random(64)*10;
eday:=random(48)*10;
circle(edax,eday,10);
eda:=1;
end;
end;
begin
randomize;
gd:=detect;
initgraph(gd,gm,'c:\tp\bgi');
x:=315;
y:=200;
repeat
lol(edax,eday,eda);
paint(x,y,red);
c:=readkey;
if c=chr(0) then begin
paint(x,y,black);
c:=readkey;
if c=chr(72) then y:=y-5;{vverx}
if c=chr(75) then x:=x-5;{vlevo}
if c=chr(77) then x:=x+5;{vpravo}
if c=chr(80) then y:=y+5;{vniz}
if x<0 then x:=640;
if x>640 then x:=0;
if y<0 then y:=480;
if y>480 then y:=0;
paint(x,y,green);
end;

until c=chr(27);
closegraph;
end;
procedure helpro;
begin
initgraph(gd,gm,'c:\tp\bgi');
SetBkColor(yellow);
Setcolor(red);
SETTEXTSTYLE(7,0,1);
Outtextxy(20,160,'PRAVILO GAME:');
outtextxy(20,200,'1.VASHA CEL EAT KRYSHOCHKI,NE POPASTSYA POD OBSTREL');
outtextxy(20,220,'2.YPRAVLENIE STRELOCHKAMI S KLAVIATYRI');
outtextxy(20,240,'3.YDACHNOI GAME');
readkey;
closegraph;
end;
procedure conec;
begin
textbackground(yellow);
textcolor(white);
clrscr;
gotoxy(30,10);
writeln('Thanks for game!!!');
readkey;
end;
function menu_my : integer;
const ss : array [1..3] of string = ('1.IGRAT','2.Pomoch','3.Vixod');
var
m : integer;
cf,cb : byte;
x,y : integer;
c : char;
procedure out(s : string; x,y : integer; cf,cb : integer);
begin
textcolor(cf);
textbackground(cb);
gotoxy(x+25,y);
write(s);
end;
begin
cb :=yellow;
cf :=black;
x :=10;
textcolor(cf);
textbackground(cb);
clrscr;
m :=0;
for y := 11 to 13 do begin
gotoxy(x,y);
out(ss[y-10] ,x,y,cf,cb);
end;
y :=13;
out(ss[y-10] ,x,y,cb,cf);
repeat
c :=readkey;{ write (c,' ', ord(c)); readln;}
if (c>=' 1' ) and (c <=' 3' ) then begin
out(ss[y-10] ,x,y,cb,cf);
y :=10 + ord(c) - ord('0');
out(ss[y-10] ,x,y,cb,cf);
end
else if ord(c) = 0 then begin
c :=readkey;
out(ss[y-10] ,x,y,cf,cb);
case ord(c) of
72 : begin
if y=11 then y:=13 else y:=y-1;
end;
77 : ;{ rigth}
80 :begin
if y=13 then y:=11 else y:=y+1;
end;
75 : ;{left}
end; {case}
out(ss[y-10] ,x,y,cb,cf);
end;
if ord(c) = 13 then m:=y-10;
until ( m > 0) and (m <= 3);
menu_my:=m;
end;
begin
repeat
num := menu_my;
case num of
1: nachalo;
2: helpro;
3: conec;
end;
until num = 3;
end.

это с ркордами, но не получается как то помоммгите плз
Deniska_777 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пишу 2д игру. Помогите плиз Xzen Gamedev - cоздание игр: Unity, OpenGL, DirectX 95 21.12.2009 12:08
Прошу чуточку помочь. пишу игру Pacman на Turbo C++... Олегус Gamedev - cоздание игр: Unity, OpenGL, DirectX 4 20.05.2009 23:57
Пишу проги а паскале)) Викдон Фриланс 3 15.11.2008 00:20