Quote (12121)
Везде массив начинается с 0 !!!
Везде массив можно начинать отсчитывать не с 0!!! , но то что перемененная равна 0 и условие что если она равна 0 то будет равна 1, только спасает мидлет от зависания, но не от проблемы почему не обсчитывается ось X, вернее обсчитывает, я уже проверял, выводил на экран информацию и подумываю сделать полноценный модуль который будет следить за ошибками в моей игре. А ещё я немного подумав сделал вывод что если делать эмулятор Windows то программы буду заключать в модули а не в основной код программы. Я так полагаю это будет легче чем листать и смотреть на монотонный код, который "разбросан" кусочками по всему проекту. Но я отошел от темы этого сообщения , по какой то необъяснимой мне причине, в переменную не хочет записываться значения от блоков в игре, эмм... вернее записывается, НО в условии в массиве стоит номер несуществующей в массиве ячейки, я попытаюсь проверить на каком именно повторении цикла не правильно начинает работать код. Вот он кусочек этого кода с записыванием значения и дальнейшей его проверкой(ещё не проверил как работает сам код, но у меня подозрения что если бы даже работал код, я неправильно его написал =/):
Code
//проверка
st_Y:=blok[i].setka_YY;
st_x:=blok[i].setka_XX;
if (st_x=0) then begin st_x:=1 end;//предотвращение зависания мидлета
if (setka_Y[st_Y+1]=0) and (setka_X[st_X]=0) and (blok[i].postavlen=true) then begin blok[i].padenie:=true end else begin blok[i].padenie:=false end;
if (blok[i].padenie=true) and (blok[i].zakreplen=false) then begin blok[i].posY:=blok[i].posY+1 end;
end;//цикл
причем прошу заметить что этот код стоит в цикле, зависание мидлета не произойдет, могу вам продемонстрировать как этот код будет работать без обсчитывания оси X, тобишь сам jar файл выложу сюда и как код работает с моим обсчитыванием.