![]() |
![]() ![]() |
![]() |
Dean_Cane_Kenoby |
![]()
Сообщение
#1
|
![]() Группа: Пользователи Сообщений: 6 Репутация: ![]() ![]() ![]() |
Вот "отцовская" программа:
Код {Tanki, by Dean Cane Kenoby} program Tanki; uses graph,crt; var gd,gm,x,y,i,k,j,x1,y1,x2,y2,x3,y3,k1,li1,li2,w,w1:integer; s1,s2: string; t,z: text; procedure F1; {Процедура подключения файлов для ведения счета} begin clrscr; assign(t,'C:t22.txt'); rewrite(t); close(t); append(t); writeln(t,li1); close(t); clrscr; assign(z,'C:t33.txt'); rewrite(z); close(z); append(z); writeln(z,li2); close(z); end; procedure str; {Процедура преобразования счета в строковый формат} begin reset(t); readln(t,s1); close(t); reset(z); readln(z,s2); close(z); end; procedure kvadrat; {Процедура построения первого танка} begin setcolor(4); setfillstyle(11,4); bar(x,y,x+30,y+30); setcolor(22); line(x+15,y+15,x+x1,y+y1); {Пушка} circle(x+15,y+15,5); end; procedure kvadrat2; {Процедура построения второго танка} begin setcolor(1); setfillstyle(7,4); bar(x2,y2,x2-30,y2-30); setcolor(12); line(x2-15,y2-15,x2-x3,y2-y3); {Пушка} circle(x2-15,y2-15,5); end; procedure exp2; {Процедура взрыва и восстановления второго танка} begin circle(x2-15,y2-15,5); delay(5000); circle(x2-15,y2-15,10);delay(5000); circle(x2-15,y2-15,15);delay(5000); circle(x2-15,y2-15,20);delay(5000); x2:=getmaxx; y2:=getmaxy; li1:=li1+1; circle(x2-15,y2-15,20);delay(5000); circle(x2-15,y2-15,15);delay(5000); circle(x2-15,y2-15,10);delay(5000); circle(x2-15,y2-15,5); delay(5000); end; procedure exp; {Процедура взрыва и восстановления первого танка} begin circle(x+15,y+15,5); delay(5000); circle(x+15,y+15,10);delay(5000); circle(x+15,y+15,15);delay(5000); circle(x+15,y+15,20);delay(5000); x:=1; y:=1; li2:=li2+1; circle(x+15,y+15,20);delay(5000); circle(x+15,y+15,15);delay(5000); circle(x+15,y+15,10);delay(5000); circle(x+15,y+15,5); delay(5000); end; procedure shot; {Выстрел первого танка, если на траэкт. пули есть 2 танк происходит взрыв(exp2)} begin if w=2 then begin for i:=y+y1+15 to getmaxy do begin putpixel(x+15,i,13); delay(100); putpixel(x+15,i-1,0); delay(100); if (i=y2-15) and (x+15=x2-15) then exp2; end; end; if w=8 then begin for i:=y-15 downto 0 do begin putpixel(x+15,i,13); delay(100); putpixel(x+15,i+1,0); delay(100); if (i=y2-15) and (x+15=x2-15) then exp2; end; end; if w=4 then begin for i:=x-15 downto 0 do begin putpixel(i,y+15,13); delay(100); putpixel(i+1,y+15,0); delay(100); if (i=x2-15) and (y+15=y2-15) then exp2; end; end; if w=6 then begin for i:=x+x1+15 to getmaxx do begin putpixel(i,y+15,13); delay(100); putpixel(i-1,y+15,0); delay(100); if (i=x2-15) and (y+15=y2-15) then exp2; end; end; end; procedure shot2; {Выстрел второго танка, если на траэкт. пули есть 1 танк происходит взрыв(exp)} begin if w1=2 then begin for i:=y2-y3 to getmaxy do begin putpixel(x2-15,i,11); delay(100); putpixel(x2-15,i-1,0); delay(100); if (i=y+15) and (x2-15=x+15) then exp; end; end; if w1=8 then begin for i:=y2-35 downto 0 do begin putpixel(x2-15,i,11); delay(100); putpixel(x2-15,i+1,0); delay(100); if (i=y+15) and (x2-15=x+15) then exp; end; end; if w1=4 then begin for i:=x2-35 downto 0 do begin putpixel(i,y2-15,11); delay(100); putpixel(i+1,y2-15,0); delay(100); if (i=x+15) and (y2-15=y+15) then exp; end; end; if w1=6 then begin for i:=x2-x3 to getmaxx do begin putpixel(i,y2-15,11); delay(100); putpixel(i-1,y2-15,0); delay(100); if (i=x+15) and (y2-15=y+15) then exp; end; end; end; procedure move; {Процедура отвечающая за движения и выстрел обоих танков} begin k:=ord(readkey); case k of 115: begin y:=y+32; x1:=15; y1:=35; w:=2 end; {2} 119: begin y:=y-32; x1:=15; y1:=-5; w:=8 end; {8} 97: begin x:=x-32; x1:=-5; y1:=15; w:=4 end; {4} 100: begin x:=x+32; x1:=35; y1:=15; w:=6 end; {6} 50: begin y2:=y2+32; x3:=15; y3:=-5; w1:=2 end; {2} 56: begin y2:=y2-32; x3:=15; y3:=35; w1:=8 end; {8} 52: begin x2:=x2-32; x3:=35; y3:=15; w1:=4 end; {4} 54: begin x2:=x2+32; x3:=-5; y3:=15; w1:=6 end; {6} 32: shot; 48: shot2; else j:=1; end; end; procedure ramka; {Процедура разгранения поля по клеткам и таблица очков} begin cleardevice; setfillstyle(1,2); bar(getmaxx-158,0,getmaxx,32); setcolor(14); moveto(getmaxx-150,8); outtext('Player 1'); moveto(getmaxx-60,8); outtext(s1); setcolor(4); moveto(getmaxx-150,20); outtext('Player 2'); moveto(getmaxx-60,20); outtext(s2); setcolor(2); line(0,0,getmaxx,0); line(0,0,0,getmaxy); line(0,getmaxy,getmaxx,getmaxy); line(getmaxx,0,getmaxx,getmaxy); for i:=0 to round(getmaxx/32) do line(i*32,0,i*32,getmaxy); for i:=0 to round(getmaxy/32) do line(0,i*32,getmaxx,i*32); end; begin {Начало программы} gd:=detect; initgraph(gd,gm,'c:\tp7\unit'); setbkcolor(0); textcolor(0); x:=1; y:=1; {Задание начальных координат и значений} x1:=35; y1:=15; x2:=getmaxx; y2:=getmaxy; x3:=35; y3:=15; li1:=0; li2:=0; repeat {Основной цикл игры} clrscr; cleardevice; f1; str; ramka; kvadrat; kvadrat2; move; until j=1; {Выход из программы} readln; end. {Конец программы} |
Ivs |
![]()
Сообщение
#2
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 209 Репутация: ![]() ![]() ![]() |
Что-то она у меня не пошла...............
-------------------- Если вы хотите чаще встречаться с понравившейся девушкой установите ей Windows'95
|
Slam |
![]()
Сообщение
#3
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 136 Пол: Мужской Репутация: ![]() ![]() ![]() |
У меня что-то тоже!!
Непорядок! |
AlaRic |
![]()
Сообщение
#4
|
... ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 347 Пол: Мужской Репутация: ![]() ![]() ![]() |
Танкист
![]() |
Slam |
![]()
Сообщение
#5
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 136 Пол: Мужской Репутация: ![]() ![]() ![]() |
Давай проси "отца", чтоб исправлял... ;)
|
deman |
![]()
Сообщение
#6
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 40 Репутация: ![]() ![]() ![]() |
А что у вас не пашет? В каком смысле? Игра вообще не идёт?
|
Dean_Cane_Kenoby |
![]()
Сообщение
#7
|
![]() Группа: Пользователи Сообщений: 6 Репутация: ![]() ![]() ![]() |
Не понял в чем проблема??? у меня все в порядке!!!!
Я за неё зачет получил за год!!! |
Alex |
![]()
Сообщение
#8
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 201 Репутация: ![]() ![]() ![]() |
У меня кстати тоже!!
|
Alex |
![]()
Сообщение
#9
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 201 Репутация: ![]() ![]() ![]() |
Только как то ограничений маловато и постоянное обновление экрана ухудшают дело!!
|
Good_Day |
![]()
Сообщение
#10
|
![]() Группа: Пользователи Сообщений: 3 Репутация: ![]() ![]() ![]() |
>>У меня не идёт.
А вы пробовали в InitGraph поменять папку где драва паскалевские для графики. Не, у меня так всё идёт. -------------------- Good Day
|
Echelone |
![]()
Сообщение
#11
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 16 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата(AlaRic @ 27.03.03 16:31) Танкист ![]() У меня тоже не пашет - пишет ошибка формата файла Graph.tpu... Цитирую: File format error (Graph.tpu) что делать? Вроде новые апдейты graph скачал - никак. |
volvo |
![]()
Сообщение
#12
|
Гость ![]() |
Echelone
Чем пытаешься скомпилировать? TP70 прошла без проблем... |
Guest |
![]()
Сообщение
#13
|
Гость ![]() |
Цитата(volvo @ 6.01.05 19:05) Echelone Чем пытаешься скомпилировать? TP70 прошла без проблем... Компилировал в TP 7.01 - нифига. А еще с borland-овского сайта скачал "пропатченный" graph - нифига. |
Altair |
![]()
Сообщение
#14
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
никаких проблемм быть не может...
используйте стандартный модуль для TP70. укажите путь к граф. драйверу... и все. -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Echelone |
![]()
Сообщение
#15
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 16 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата(Oleg_Z @ 6.01.05 23:07) никаких проблемм быть не может... используйте стандартный модуль для TP70. укажите путь к граф. драйверу... и все. Вроде скомпилировалась...работает... Странно - новый модуль с borland-овского сайта и старый - байт в байт по размерам, а если сравнить по содержимому - разные...Наверное, в этом лаг... |
Echelone |
![]()
Сообщение
#16
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 16 Пол: Мужской Репутация: ![]() ![]() ![]() |
Спасибо за исходник.
А кто может дать инфу по искуственному интеллекту, ведь не делать же движение RANDOMом? [quote] ФИДОШ ИКИ - Е ПРОМЕ ЯЕМ БУКВУ " " А ПОГА ЫЙ ПРОБЕЛ! |
Dark |
![]()
Сообщение
#17
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 408 Пол: Мужской Репутация: ![]() ![]() ![]() |
Ну в оригинальных танках имнно рандомом =)))) пока не появится слева или справа куда повернуть - едем
-------------------- - Где я?
- Во тьме. - В какой тьме? - Во тьме твоего мозга. |
SHnur |
![]()
Сообщение
#18
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 81 Пол: Мужской Реальное имя: Шурик Репутация: ![]() ![]() ![]() |
Мне не понравилось , что при нажатии любой кнопки не относыщийся к кнопкам управления , вылетает из игры .
А ещё то , что можно уехать за экран . А так , ничего . ![]() -------------------- Двадцать пятый час в сутках может появиться всего лишь из-за небольшой ошибки в программе.
Чтобы не воспользоваться сумасшедшими возможностями, нужно быть идиотом. |
Lan |
![]()
Сообщение
#19
|
Гость ![]() |
чуваки если кто заглянет на эту тему ещё разок посмотрите мои танчики, они немножко переделаны.
Я выложил сюда, а то на народе внешние ссылки запрещенны. ![]() Сообщение отредактировано: Oleg_Z - 21.04.2005 21:02 |
Altair |
![]()
Сообщение
#20
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
не, чего-то не то, управление идет одним танком а стреляет другой... или я не разобрался в упрвлени? где HELP ?
![]() -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
![]() ![]() |
![]() |
Текстовая версия | 18.06.2025 16:23 |