Comments 15
Было бы понятнее видеть алгоритм в псевдокоде. Я верно понял, что сканирование происходит по диагонали с замкнутыми краями, т.е. как будто бы поле тороидально?
+2
Игра на Pascal, поэтому и код привожу на Pascal:
var
XPos,YPos:integer;
Field:array[1..9,1..9] of integer;
CurColor:shortint;
Colors:array[1..3] of integer;
NumBalls,NumFreeFields:integer;
procedure GenerateNextBall(index:integer);
var
i:integer;
pos:word;
begin
pos := Random(80);
repeat
XPos := (pos mod 9) + 1;
YPos := (pos div 9) + 1;
if Field[XPos,YPos] <> 0 then
begin
inc(pos);
if pos = 81 then
pos := 0;
end;
until Field[XPos,YPos] = 0;
CurColor := Colors[index];
Field[XPos,YPos] := CurColor;
for i := 1 to 3 do
begin
{draw ball of size i and delay}
end;
inc(NumBalls);
dec(NumFreeFields);
end;
+5
В детстве я заметил странный психологический эффект. После долгой игры в Lines все прямоугольные формы на экране начинают казаться заострёнными, это касается прямоугольных окон, кнопок, даже форм букв в тексте.
Спасибо, что дали повод поиграть, а затем испытать это снова.
Спасибо, что дали повод поиграть, а затем испытать это снова.
+2
А меня однажды в этой игре под ДОС первым же ходом появились пять одинаковых шариков в один ряд, которые сразу и самоуничтожились. Это было шоком для меня. Игра вроде не закончена, а выбрать шарик для следующего хода не могу — поле-то пустое.
+10
«Не надо очеловечивать компьютеры — они этого страсть как не любят!» Ох уж эти истории от «опытных игроков»… Реально истории о «коварстве лайнза» ходили из отдела в отдел. Были люди которые даже старались не водить лишний раз курсором над полем, чтобы «не давать наводку». А еще была у меня такая история: как-то после переустановки случайно получилось так, что на рабочем столе 95 винды возникло два ярлыка от лайнз. Оба на один и тот-же исполняемый файл. И моя бабушка на полном серьезе утверждала что «верхний ярлык играет гораздо сильнее».
+1
Sign up to leave a comment.
Особенность оригинальной реализации Color Lines