-
-
да это генеальная идея! долго думал?только вот вопрос а в чем собствено идея? почему в эту "игру"(ой а игрой ее тяжело назвать) захочет играть?помоему все очень скучно и не интересно не какого смысла....
-
Давненько я сюда не заглядывал... хех...
Значит так, жанр игры определяем как логический. Далее имеем поле 10*10 клеток. Никаких уровней сложности быть не должно. Уровни либо жестко заданные, на которых "прошиты" направление ветра, начало, конец, бонусы, препятствия, либо случайные. В последнем случае в качестве уровня сложности можно менять ветер после каждого хода (но это мало реально пройти, либо наоборот слишком быстро, зависит от случая).
Далее не понятна система перемещения корабля. Я так понял, что имеем следующее: если движемся по ветру, то за 1 ход корабль может пройти 1*скорость ветра клеток. Двигаться против ветра нельзя (или на 1 клетку, что лучше, иначе при случайном распределении не сможем двигаться назад). Движемся по ветру боком 1*скорость ветра/1,5.
Смысл пройти уровень до того, как закончится еда и вода. На это отводим какое-то количество ходов. При чем в случае жесткой прошивки оптимальное число ходов можно заранее заложить. При случайном распределении, надо будет его вычислять.
Нужна система препятствий и бонусов, в. т.ч. пополнение еды и воды, что даст дополнительные ходы.
Ну это вот при беглом рассмотрении.
-
Отличная идея. Есть куда развивать, но на телефоне будет интересно и в простом варианте. Охотно посмотрел-бы воплощение.
-
А приведенные лабиринты не слишком сложны?? : ))
-
Шикарно !!! Sid Mayer Pirates вместе с Корсарами 3 отдыхают !!! :)
-
> Шикарно !!!Sid Mayer Pirates вместе с Корсарами 3 отдыхают > !!! :)
ИМХО, для телефона бы смотрелось...
-
А можно как-нибудь без док-файла узнать что там?
-
большой косяк в том что парусник не может идти против ветра, поэтому он постоянно сносится течением к одному краю игрового поля. Вот исходник на бейсике
program veter;
uses crt;
var da,dd,dw,ds: integer;
x,y: integer;
d,e: integer;
w: integer;
c: char;
i,j: integer;
px,py: integer;
label 1;
procedure b;
begin
textcolor(9);
textbackground(11);
for i:=1 to 10 do
for j:=1 to 10 do begin
gotoxy(20+i,20+j);
write('_');
end;
gotoxy(20+x,20+y);
textcolor(15);
write('$');
gotoxy(20+px,20+py);
textcolor(10);
write('T');
gotoxy(20+px,20+py);
end;
begin
1:
x:=1;
y:=1;
d:=5;
e:=9;
da:=0;
dd:=2;
dw:=-1;
ds:=1;
px:=8;
py:=8;
w:=0;
repeat
textbackground(0);
clrscr;
b;
c:=readkey;
if ord(c)=27 then w:=1;
if ord(c)=0 then begin
c:=readkey;
case c of
'a',chr(75): x:=x+da;'d',chr(77): x:=x+dd;
'w',chr(72): y:=y+dw;'s',chr(80): y:=y+ds;
end;
end;
if x<1 then x:=1;
if x>10 then x:=10;
if y<1 then y:=1;
if y>10 then y:=10;
if ((y=py)and(x=px-1))or
((y=py)and(x=px+1))or
((y=py-1)and(x=px))or
((y=py+1)and(x=px))then
w:=2;
until w>0;
gotoxy(22,17);
textcolor(12);
textbackground(0);
if w=1 then halt(2);
if w=2 then write('you win!');
if w=3 then write('you lost!');
gotoxy(17,33);
textcolor(1);
write('press ENTER to continue...');
b;
repeat
c:=readkey;
if c=chr(27) then halt(2);
until c=chr(13);
goto 1;
end.
|