![]() |
![]() |
Kio |
![]() ![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 11 Репутация: ![]() ![]() ![]() |
Здравствуйте!
Помогите пожалуйста написать игру или найти исходник для нее! Я не знаю как она действительно называется, но суть такова : пользователь управляет шариком(вправо-влво),небольшие пластины движутся вверх; шарик должен перемещаться по этим пластинам так, чтобы не упасть в "бездну" и не дойти до верней точки игрового поля. Спасибо за внимание! |
![]() ![]() |
BlackShadow |
![]()
Сообщение
#2
|
Гость ![]() |
Не думаю, что для кого-то кроме тебя это так уж важно
![]() Возникли вопросы: 1). Режим: графика или текст (псевдографика). 2). Умеет ли шарик двигаться влево-вправо или только вверх/вниз. 3). Решение на Pascal'е? На каком? 4). До когда тебе это надо? |
Kio |
![]()
Сообщение
#3
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 11 Репутация: ![]() ![]() ![]() |
Спасибо Вам большое! Вы единственный кто откликнулся!
1)-графический режим 2)-пользователь может двигать шарик только влево-вправо, а сам по себе арик, когда находится на пластине, двигается вместе с пластиной вверх... 3)-да! решение только на паскале! 7.0 вроде бы 4)-вообще ето надо до четверга-пятницы..., а там уж как повезет |
BlackShadow |
![]()
Сообщение
#4
|
Гость ![]() |
Только я чего-то недопонял. Если пластины движутся вверх, то шарику достаточно стать на пластину, чтобы добраться до верхней точки. Или надо с одного угла в другой дойти?
|
Kio |
![]()
Сообщение
#5
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 11 Репутация: ![]() ![]() ![]() |
Так... Сейчас все попробую обьяснить!
@ ------- ------ ------- -------- --------- Пластины движутся вверх! (игра заканчивается, если шарик достигает либо верхней либо нижней границы игрового поля) Шарик располагается на пластине в начальный момент времени(и движется вместе с пластиной вверх). Юзер может двигает шарик влево-вправо. Шарик, достигая границы пластины падает вниз, если под ним есть пластина, то он падает на нее и дальше аналогично... Понятней или попробовать обьяснить подругому? |
BlackShadow |
![]()
Сообщение
#6
|
Гость ![]() |
Изящно ты меня тупым назвал
![]() Посмотрю сегодня, что можно сделать. Тебе по-проще? |
Kio |
![]()
Сообщение
#7
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 11 Репутация: ![]() ![]() ![]() |
Ой... Извените пожалуйста, если так со стороны показалось!!!!
![]() Мне многие говорят, что я очень резко изьясняюсь...но я так совсем не считаю... И я эта... девушка... ![]() Ну как сказать попроще... наверно да... СПАСИБО |
GLuk |
![]()
Сообщение
#8
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: ![]() ![]() ![]() |
Что-то меня зацепило... ;) Взялся без особого интереса, но...
Сделано все плохо, но стандартными паскалевскими средствами! Никакого асма. + до кучи подсчет дырок. Только без пинков по поводу шлейфа около круга, это не от кривых рук, а для красотищи.. ![]() И еще, товарищи, давайте обойдемся без тупых вопросов, графика не инициализируется и все такое... <_< Код Uses Graph,Crt; Const LineCount = 10; HoleSize = 30; Step = 01; LineC = White; R = 10; Pause = 4500; Var i,j:Word; Gd,Gm:Integer; S:String; LineH:Word; A:array[1..LineCount,1..3] of Word; Process,MustMove:Boolean; X,Y:Word; {Љ®®а¤Ё вл и аЁЄ } C:Char; HC:LongInt; Procedure OutLine(N:Word); begin If (A[N,1]>0) and (A[N,1]<641) then begin Line(1,A[N,1],A[N,2],A[N,1]); Line(A[N,2]+HoleSize,A[N,1],A[N,3],A[N,1]); Line(A[N,3]+HoleSize,A[N,1],640,A[N,1]); end; end; Begin Randomize; Gd:=Detect; InitGraph(Gd,Gm,''); {‚ᥠЁ§ з «м® ®ЇвЁ¬Ё§Ёа®ў ® Ї®¤ а §аҐиҐЁҐ 640е480} LineH:=640 DIV (LineCount+5); For i:=1 to LineCount do begin A[i,1]:=i*LineH; A[i,2]:=Random(320)+10; A[i,3]:=Random(200)+320; OutLine(i); end; Y:=LineCount; X:=((A[i,3]-A[i,2]+HoleSize) DIV 2) + HoleSize + A[i,2]; Circle(X,A[Y,1]-R,R); Process:=True; MustMove:=False; {j:=1; {‘зҐвзЁЄ ®в®бЁвҐ«м®Ј® ᬥ饨п} ReadLn; HC:=0; While Process do begin If KeyPressed then begin C:=ReadKey; Case C of #122:If X<>1 then Dec(X); #120:If X<>640 then Inc(X); #27:Process:=False; end; If ((A[Y,2]+HoleSize DIV 2)=X) or ((A[Y,3]+HoleSize DIV 2)=X) then begin Inc(HC); Inc(Y); If Y=LineCount+1 then Process:=False; end; end; SetColor(Black); Circle(X,A[Y,1]-R,R); For i:=1 to LineCount do begin {‘вЁа Ґ¬ бв ஥} Line(1,A[i,1],640,A[i,1]); Dec(A[i,1],Step); end; {Џа®и« ЇҐаў п Ё ўв®а п} If (A[1,1]=1) then MustMove:=True; {Check range} SetColor(LineC); If MustMove then {Move array} begin MustMove:=False; For i:=1 to LineCount-1 do begin A[i,1]:=A[i+1,1]; A[i,2]:=A[i+1,2]; A[i,3]:=A[i+1,3]; end; Dec(Y); If Y=0 then Process:=False; {Last line} i:=LineCount; A[i,1]:=i*LineH; A[i,2]:=Random(320)+10; A[i,3]:=Random(200)+320; end; For i:=1 to LineCount do begin OutLine(i); end; Circle(X,A[Y,1]-R,R); Delay(Pause); end; ClearDevice; SetTextStyle(TriplexFont,0,7); SetColor(Red); Str(HC,S); OutText('CRASH!!! BABAX!!!'); If HC=0 then OutTextXY(10,200,'XEPOBO!!!') else OutTextXY(10,200,S+' HOLES!'); ReadLn; CloseGraph; end. |
Altair |
![]()
Сообщение
#9
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Код Uses CRT,Graph; Const sShar=100; sPlo=200; KP = 30; {Ї«®в®бвм ЇаҐЇп¤бвўЁ©} type shar = record x:word; y:word; end; plo = record x:word; y:word; end; Var grDriver : Integer; grMode : Integer; prep: array[1..kp] of plo; preptemp:plo; i:byte; s:shar; is,ip:byte; nk:byte; kv:byte; {- 400 } Begin grDriver:=Detect; InitGraph(grDriver, grMode, ''); randomize; for i:=1 to kp do prep[i].y:=480; prep[1].x:=random(400); prep[1].y:=479; s.x:=random(400); s.y:=3; repeat { delay(20);} putpixel(s.x,s.y,15); {аЁб㥬 «ЁЁЁ} setcolor(15); for i:=1 to kp do If (prep[i].x<>0) and (prep[i].y<>480) then line(prep[i].x,prep[i].y,prep[i].x+70,prep[i].y); inc(is); inc(ip); {®ЇгбЄ Ґ¬ и а} If is=Sshar then begin putpixel(s.x,s.y,0); inc(s.y); is:=0 end; {Ї®¤Ё¬ Ґ¬ Ї«®й ¤ЄЁ} If ip=sPlo then begin setcolor(0); for i:=1 to kp do If (prep[i].x<>0) and (prep[i].y<>480) then line(prep[i].x,prep[i].y,prep[i].x+70,prep[i].y); for i:=1 to kp do If (prep[i].y)<>480 then dec(prep[i].y); setcolor(15); for i:=1 to kp do If (prep[i].x<>0) and (prep[i].y<>0) then line(prep[i].x,prep[i].y,prep[i].x+70,prep[i].y); end; If random(2)=1 then for i:=1 to kp do If prep[i].y=480 then If random(65000)=455 then begin prep[i].x:=random(400); prep[i].y:=479 end; for i:=1 to KP do If prep[i].y=0 then prep[i].y:=480; If keypressed then begin putpixel(s.x,s.y,0); nk:=ord(readkey); If nk=49 then dec(s.x); If nk=50 then inc(s.x); If (nk=27) then kv:=1; end; If getpixel(s.x,succ(s.y))=15 then begin putpixel(s.x,s.y,0); If ip=splo-1 then dec(s.y,2) else dec(s.y); putpixel(s.x,s.y,15); If is>2 then dec(is) end; until (s.y=0) or (s.y=480) or (kv=1); closegraph; If s.y=0 then writeln('‚л Їа®ЁЈа «Ё'); If s.y=480 then writeln('‚л ўлЁЈа «Ё'); If (s.y<>0) and (s.y<>480) then writeln('‚л ўли«Ё Ё§ ЁЈал'); writeln(' ¦¬ЁвҐ «оЎго Є« ўЁиг ...'); while not keypressed do; readkey; ClrScr; Halt; end. Мой вариант. Что бы было из чего выбирать ![]() Сообщение отредактировано: Oleg_Z - 1.06.2004 18:46 -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Altair |
![]()
Сообщение
#10
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Во-первых работает ТОЛЬКО моя.
Во вторых в моей управление - клавиша 1 - влево, 2 - вправо. Могу переделать на кнопки -> and <- если надо. -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Kio |
![]()
Сообщение
#11
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 11 Репутация: ![]() ![]() ![]() |
Да, действительно только вторая работает...
Ща сидела рубилась.... Прикольно,.... Спасибо большое! Только вот иногда шарик падает с половины пластины... Щас еще потестю |
GLuk |
![]()
Сообщение
#12
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: ![]() ![]() ![]() |
Ща проверю....
|
GLuk |
![]()
Сообщение
#13
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: ![]() ![]() ![]() |
Товарищи у Вас стандартный компилер??!!
У меня все канает.. А так как у тебя Oleg_Z и нужно было сделать (question к Kio)?? Что за ошибка вылетает?? Может Ввод забыли нажать?? ![]() Сообщение отредактировано: GLuk - 1.06.2004 19:32 |
Altair |
![]()
Сообщение
#14
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Цитата Только вот иногда шарик падает с половины пластины... Гы ... ![]() Я даже знаю почему, но не скажу. Сама подумай. Догадаешься, тогда подправлю! :P Цитата Что за ошибка вылетает?? No ERROR :D Просто шар вниз не летит! -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Kio |
![]() ![]()
Сообщение
#15
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 11 Репутация: ![]() ![]() ![]() |
Проблема не в этом.... Шарик с пластиночки (када она заканчивается) не падает! Вот!
|
Altair |
![]()
Сообщение
#16
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Цитата Проблема не в этом.... Шарик с пластиночки (када она заканчивается) не падает! Вот! Это у меня??? У меня такого нет! У меня шар в середине проваливается! (иногда ![]() -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Kio |
![]()
Сообщение
#17
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 11 Репутация: ![]() ![]() ![]() |
2 GLuk- про шарик, который не падает с пластиночек
![]() 2 Oleg_Z - только что назвал свою ошибку!!!!! ![]() |
Altair |
![]()
Сообщение
#18
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Дая не назвал ошибку, а просто указал где она появляется. А сожешь сказать почему она появляется?
-------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
GLuk |
![]()
Сообщение
#19
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: ![]() ![]() ![]() |
АААААААААААА!! Ты имеешь ввиду, то что при переходе с пластины на пластину, он падает сразу, а наверху, над дыркой остается след, который после исчезает: ДЫК - ЭТО ФИЧА, а так все катит, если упал вниз - хана, уперся вверх - ТОЖ, или я чой-то не догоняю...??
![]() |
Kio |
![]()
Сообщение
#20
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 11 Репутация: ![]() ![]() ![]() |
2Gluk --- да вроде все так, тока шарик не падает....
|
![]() ![]() |
![]() |
Текстовая версия | 21.06.2025 20:56 |