-=RUS=- | Дата: Пятница, 01.08.2014, 22:09 | Сообщение # 1 |
 Генералиссимус
Группа: Администраторы
Сообщений: 352
Статус: Offline
| ;Листинг игры «Chaser» на «Бейсике» для «БК0010-01» 340 DIM I¤,A%(22%,22%),L¤(2%) 350 I=PEEK(1044%)-6% 360 POKE I,&HE90D 370 POKE 1618%,PEEK(I-4%)+4% 380 DEF USR=1580% 390 DEF USR1=1616% 400 DEF USR2=1690% 410 DEF USR3=1708% 420 DEF USR4=1720% 430 DEF USR5=1772% 440 IM¤=USR3("_______│5000 _______│4500 _______│4000 _______│3500 _______│3000 _______│2500 _______│2000 _______│1500 _______│1000 ") 450 L¤(0%)="89▓" 460 L¤(1%)="31*" 470 L¤(2%)="32 " 480 I¤="36¤" 490 G¤="17♦" 500 L1%=1% 510 L2%=32% 520 S=9% 530 O1%=1000% 540 IF INP(32%,&HFF)=0%TH?CHR¤(155%) 550 ? USR4("52")USR2("CHASER ©_1989 ")USR4("21") 560 CLS 570 K¤=STRING¤(33%,"▓") 580 ? USR4("57")K¤USR4("12 Филатов С.В. тел.135-44-48 ")USR4("89")K¤USR4("21 Клавиши упр. ┌────────────────┐ ←→↑↓ -вы ")USR4(I¤)USR4("21 │ ЛУЧШИЕ │ СБР - выход ├─┬───────┬──────┤‾‾‾‾‾‾‾‾‾‾‾‾‾‾"),,"Убегая от "USR4(G¤)USR4("21"),,"вы должны",, 590 ? "съесть все "USR4(L¤(1%))USR4("21."),,"За каждые"O1%,,"очков - доп.",,"попытка",,,,"Желаю успеха!",,"─────────────└─┴──────┴─────┘"USR4("63")K¤USR4("21") 600 FOR I=0%TO8% 610 ? AT(14%,I+6%)"│"CHR¤(I+49%)"│"MID¤(IM¤,I*14%+1%,14%)"│" 620 NEXT 630 ? AT(0%,17%)"Текущая скорость"S,"а какая нужна вам ?","[0-min,9-max]; R-вход в редактор" 640 LOCATE 19%,18%,I 650 O=0% 660 O1=0% 670 P%=9% 680 L=L2% 690 K¤=INKEY¤ 700 IF K¤=CHR¤(10%)TH720ELIFK¤="R"TH930ELIFK¤="G"TH740ELIFK¤<"0"ORK¤>"9"TH650ELSS=ASC(K¤)-48% 710 ? K¤CHR¤(154%) 720 L%=L1%-1% 730 L%=L%+1% 740 GOSUB 1250 750 IF P%THIFL>L%TH730ELL=0%EL780 760 L%=RND(L%)*(L2%-L1%)+L1% 770 GOTO 740 780 I=-1% 790 K¤=CHR¤(10%) 800 ? AT(0%,7%)USR4("32 Ваш ")K¤"результат"K¤" "O 810 IF I<8%THI=I+1%EL900 820 K¤=INKEY¤ 830 IF O 840 INPUT N¤ 850 FOR X%=8%TOI+1%ST-1% 860 MID¤(IM¤,X%*14%+1%,14%)=MID¤(IM¤,X%*14%-13%) 870 NEXT 880 IF N¤=""THN¤="_______" 890 MID¤(IM¤,I*14%+1%,14%)=MID¤(N¤,1%,7%)+STRING¤((LEN(N¤)-7%)*(LEN(N¤)<7%),"_")+"│"+MID¤(STR¤(O),2%)+" " 900 ? AT(0%,23%)"Н а ж м и т е В В О Д"; 910 IF INKEY¤=""TH910EL540 920 ? STRING¤(20%,7%); 930 ? AT(0%,20%)"Введите номер лабиринта "L1%"-"L2%; 940 INPUT L% 950 IF L%L2%TH920EL?USR4("12")USR2("CHASER ©_1989 редактор ")USR4("02") 960 I=USR1(1765%+L%*66%) 970 CLS 980 ? "Клавиши",,"управлен.",,"←→↑↓ 0 1",,"СБР КТ" 990 GOSUB 1950 1000 X%=POS-9% 1010 Y%=CSRLIN 1020 IF X%<1%THX%=21%ELIFX%>21%THX%=1% 1030 IF Y%<1%THY%=21%ELIFY%>21%THY%=1% 1040 ? USR4("02"); 1050 LOCATE X%+9%,Y%,1% 1060 K¤=INKEY¤ 1070 IF K¤=""TH1060ELONUSR(0%)GOTO1110,1110,1130,1110,1110 1080 IF K¤="0"THA%(Y%,X%)=0%ELIFK¤="1"THA%(Y%,X%)=1%ELIFK¤=CHR¤(3%)TH1190 1090 ? USR4(L¤(A%(Y%,X%)))CHR¤(154%)USR4("02"); 1100 GOTO 1000 1110 ? K¤; 1120 GOTO 1000 1130 FOR Y%=1%TO21% 1140 FOR X%=1%TO21% 1150 A%(Y%,X%)=1% 1160 NEXT X%,Y% 1170 GOTO 970 1180 ? STRING¤(20%,7%); 1190 K¤=CHR¤(10%) 1200 ? AT(0%,10%)"Запись в"K¤"лабиринт"K¤"номер "; 1210 INPUT L% 1220 IF L%L2%TH1180ELLOC,,0% 1230 I=USR5(1765%+L%*66%) 1240 GOTO 540 1250 MX%=USR1(1765%+L%*66%)*(S\3%+1%) 1260 K¤="Лабиринт #"+STR¤(L%)+" max ="+STR¤(MX%)+"очк." 1270 ? USR4("32")USR2(K¤)USR4("02") 1280 CLS 1290 GOSUB 1950 1300 O%=0% 1310 K¤=CHR¤(10%) 1320 ? AT(0%,0%)USR4("31скорость ")K¤S K¤USR4("12попытки ")K¤P%K¤USR4("23очки ")K¤O+O% 1330 XI%=1% 1340 YI%=1% 1350 IX%=0% 1360 IY%=0% 1370 XG%=21% 1380 YG%=21% 1390 GX%=-1% 1400 GY%=0% 1410 F%=64% 1420 X%=SGN(XI%-XG%) 1430 Y%=SGN(YI%-YG%) 1440 IF X%=0%ANDY%=0%TH1820 1450 IF ABS(XI%-XG%)=ABS(YI%-YG%)THIFGX%TH1460EL1470ELIFABS(XI%-XG%)>ABS(YI%-YG%)TH1460EL1470 1460 IF A%(YG%,XG%+X%)TH1530ELIFY%THIFA%(YG%+Y%,XG%)THIFY%=-GY%THIFA%(YG%+GY%,XG%)TH1630ELIFA%(YG%,XG%-X%)TH1520EL1490EL1590ELIFA%(YG%-Y%,XG%)TH1580 EL1490ELIFA%(YG%,XG%-X%)TH1520EL1480 1470 IF A%(YG%+Y%,XG%)TH1590ELIFX%THIFA%(YG%,XG%+X%)THIFX%=-GX%THIFA%(YG%,XG%+GX%)TH1630ELIFA%(YG%-Y%,XG%)TH1580EL1490EL1530ELIFA%(YG%,XG%-X%)TH1520 EL1490ELIFA%(YG%-Y%,XG%)TH1580EL1480 1480 IF A%(YG%+GY%,XG%+GX%)TH1630 1490 GX%=-GX% 1500 GY%=-GY% 1510 GOTO 1630 1520 X%=-X% 1530 IF X%<>-GX%TH1550ELIFY%=0%THY%=SGN(INT(RND(5%)*3.1!)-1.5!) 1540 IF A%(YG%+Y%,XG%)TH1590ELIFA%(YG%-Y%,XG%)TH1580EL1480 1550 GX%=X% 1560 GY%=0% 1570 GOTO 1630 1580 Y%=-Y% 1590 IF Y%<>-GY%TH1610ELIFX%=0%THX%=SGN(INT(RND(5%)*3.1!)-1.5!) 1600 IF A%(YG%,XG%+X%)TH1530ELIFA%(YG%,XG%-X%)TH1520EL1480 1610 GY%=Y% 1620 GX%=0% 1630 ? AT(XI%+9%,YI%)USR4(I¤)AT(XG%+9%,YG%)USR4(G¤); 1640 IF F%THIFINKEY¤=""TH1640ELF%=0% 1650 FOR I=0%TO9%-S#STS/100%+2E-2 1660 NEXT 1670 X%=USR(0%) 1680 IF X%THIFX%=3%TH1890ELY%=(X%-3%)\2%EL1670 1690 X%=(X%-3%)MOD2% 1700 IF A%(YI%+Y%,XI%+X%)THIX%=X%EL1720 1710 IY%=Y% 1720 IF A%(YI%+IY%,XI%+IX%)TH1740ELIX%=0% 1730 IY%=0% 1740 O%=O%-(A%(YI%,XI%)=1%)*(S\3%+1%) 1750 A%(YI%,XI%)=2% 1760 IF O%>=MX%TH1900EL?AT(XI%+9%,YI%)USR4(L¤(2%))AT(XG%+9%,YG%)USR4(L¤(A%(YG%,XG%))); 1770 XI%=XI%+IX% 1780 YI%=YI%+IY% 1790 IF XI%=XG%ANDYI%=YG%TH1820ELXG%=XG%+GX% 1800 YG%=YG%+GY% 1810 GOTO 1420 1820 FOR I=0%TO40% 1830 ? AT(XI%+9%,YI%)USR4(I¤)CHR¤(7%)CHR¤(8%)USR4(G¤); 1840 NEXT 1850 ? CHR¤(8%)USR4(L¤(2%)); 1860 P%=P%-0%+(O+O%-O1)\O1% 1870 O1=((O+O%)\O1%)*O1% 1880 IF P%TH1310EL1930 1890 P%=0% 1900 FOR I=0%TO20% 1910 ? AT(XI%+9%,YI%)USR4(I¤)CHR¤(7%)CHR¤(8%)USR4(L¤(1%)); 1920 NEXT 1930 O=O+O% 1940 RETURN 1950 FOR Y%=0%TO22% 1960 LOCATE 9%,Y%,0% 1970 FOR X%=0%TO22% 1980 ? USR4(L¤(A%(Y%,X%))); 1990 NEXT X%,Y% 2000 RETURN
|
|
| |