Сообщение от IDOL 1234
...и почему ДВА ХВОСТА???
|
вот почему
Сообщение от IDOL 1234
-При прыжке персонаж теряет горизонтальную составляющую скорости, которая в полёте нарастает очень медленно. Как результат, очень неудобно запрыгивать на ступеньки, приходится отходить для разгона.
|
прыжок поправлю.
Сообщение от IDOL 1234
-Я выпал за пределы уровня =_=
|
улетел вверх и завис?
Сообщение от IDOL 1234
-Совершенно непонятно, куда идти, не помешал бы режим просмотра карты
|
в этом вся соль! На каждой карте надо будет найти 5 спец звёзд.
и будет не интересно, если они засветятся во время режим просмотра карты
Сообщение от IDOL 1234
-Используй джойстик!! Цифровые клавиши - не тру.
|
играл я на джойстике. мне не понравилось , совсем.
Сообщение от IDOL 1234
-Непонятное управление (убогие подсказки).
|
а чем подсказки тебе не угодили?
Сообщение от IDOL 1234
-Непомерные лаги в начале уровня, когда слева выползает жёлтая пила 0_0
|
у меня тоже. Там просто вычислений полно.
Сообщение от IDOL 1234
-Зачем блок возле игрока покрывается точками??
|
это коллизия снизу .
Сообщение от IDOL 1234
Кстати, не поделишься алгоритмом обнаружения коллизий? =)
|
почему бы и нет.
procedure tails_mx; // нахождение положения на карте
var
rtx,rty,rx,ry:real;
stx,sty:string;
rx2,ftx,fty:integer;
begin
//tx-положение на экране по х без учёта сдвига
//ty-положение на экране по y без учёта сдвига
//32 это размер графики.
rtx:=tx/32;
ptx:=trunc(rtx)-4; //глобальное положение по х + сдвиг
rty:=ty/32;
pty:=trunc(rty); //глобальное положение по у + сдвиг
cx:=ptx; // перенос данных для отрисовки карты
cy:=pty; // перенос данных для отрисовки карты
end;
//sy и sx изменяются с клавиатуры или тачскрина
//vx и vy локальное положение на экране
if sx>90 then begin //обраотка сдвига по х
vy:=vy+1;
if vx>500 then vx:=500;
sx:=64
end;
if sx<32 then //обраотка сдвига по х
begin
if vy>0 then
begin
vy:=vy-1;
sx:=64;
end;
end;
if sy<32then//обраотка сдвига по у
begin
vx:=vx-1;
if vx<0 then vx:=0;
sy:=64;
end;
if sy>90 then //обраотка сдвига по у
begin
vx:=vx+1;
sy:=64;
end;
//получение индекса блока под игроком
inde:=map[ptx+vy,pty+vx];