forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Основной форум (http://forum.boolean.name/forumdisplay.php?f=49)
-   -   Помогите... (http://forum.boolean.name/showthread.php?t=16296)

DeaDCore 06.02.2012 22:14

Помогите...
 
я неделю назад начал изучать pascal(так что не бейте меня за вопросы), делаю игру но столкнулся с проблемой:
Код:

procedure drawwall;
  begin
  for i:=0 to mapsize do
      DrawImage(tile[tex[i]],(mapx[i]*8)-camx, (mapy[i]*8)-camy);
  end;

рисуется только один тайл, в чём проблема? бьюсь уже четвёртый день...

ViNT 06.02.2012 23:12

Ответ: Помогите...
 
По приведенному куску ничего сказать нельзя. Нужен весь код, или, по крайней мере, все этапы инициализации и участок, в котором используется данная процедура.

DeaDCore 07.02.2012 04:05

Ответ: Помогите...
 
извините, я внезапно обнаружил ошибку...
надо было вместо цикла FOR TO DO использовать REPEAT UNTIL.
теперь всё работает как надо.
----------
в русском хэлпе написано:
Цитата:

function readByte(res: resource):integer;

Считывает следующий байт из указанного ресурса или возвращает EOF, если больше нечего читать или произошла ошибка чтения из ресурса.
что это за EOF?
---------
и есть-ли библиотека которая записывает байт в файл?

SBJoker 07.02.2012 10:51

Ответ: Помогите...
 
End Of File

impersonalis 07.02.2012 11:20

Ответ: Помогите...
 
Если вопрос остался, то http://ru.wikipedia.org/wiki/EOF

DeaDCore 07.02.2012 11:49

Ответ: Помогите...
 
значит если ошибка или конец файла переменная равняется -1?

ViNT 07.02.2012 14:46

Ответ: Помогите...
 
Цитата:

Сообщение от DeaDCore (Сообщение 218871)
извините, я внезапно обнаружил ошибку...
надо было вместо цикла FOR TO DO использовать REPEAT UNTIL.
теперь всё работает как надо.

На самом деле в таких случаях как раз нужно использовать цикл FOR, вопрос только в том, какое значение должно быть конечным. Если массив объявлен как map:array[mapsize] of ... или map:array[0..mapsize-1]of..., то конечным значением должно быть не mapsize, а mapsize-1.

На счет файлов - есть библиотека Lib_jsr75 и несколько ее модификаций и надстроек, там есть функции чтения/записи.

DeaDCore 07.02.2012 19:45

Ответ: Помогите...
 
снова поставил FOR всё, работает, но после "починки" перестала работать камера: если использовать переменные camx и camy тайлы вообще не появляются... а камера нужна...

ViNT 07.02.2012 20:37

Ответ: Помогите...
 
Нужно проверять значения camx, camy, а так же конечные значения вычисленных координат. Плюс проверить, нет ли выхода индексов за границы массивов.


Часовой пояс GMT +4, время: 05:58.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot