Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > MidletPascal > Основной форум

Основной форум Сюда все проблемы связанные с программированием.

Ответ
 
Опции темы
Старый 06.02.2012, 22:14   #1
DeaDCore
Оператор ЭВМ
 
Аватар для DeaDCore
 
Регистрация: 06.02.2012
Адрес: Equestria
Сообщений: 43
Написано 7 полезных сообщений
(для 10 пользователей)
Вопрос Помогите...

я неделю назад начал изучать pascal(так что не бейте меня за вопросы), делаю игру но столкнулся с проблемой:
 procedure drawwall;
  begin
   for i:=0 to mapsize do
      DrawImage(tile[tex[i]],(mapx[i]*8)-camx, (mapy[i]*8)-camy);
  end;
рисуется только один тайл, в чём проблема? бьюсь уже четвёртый день...
(Offline)
 
Ответить с цитированием
Старый 06.02.2012, 23:12   #2
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Помогите...

По приведенному куску ничего сказать нельзя. Нужен весь код, или, по крайней мере, все этапы инициализации и участок, в котором используется данная процедура.
(Offline)
 
Ответить с цитированием
Старый 07.02.2012, 04:05   #3
DeaDCore
Оператор ЭВМ
 
Аватар для DeaDCore
 
Регистрация: 06.02.2012
Адрес: Equestria
Сообщений: 43
Написано 7 полезных сообщений
(для 10 пользователей)
Ответ: Помогите...

извините, я внезапно обнаружил ошибку...
надо было вместо цикла FOR TO DO использовать REPEAT UNTIL.
теперь всё работает как надо.
----------
в русском хэлпе написано:
function readByte(res: resource):integer;

Считывает следующий байт из указанного ресурса или возвращает EOF, если больше нечего читать или произошла ошибка чтения из ресурса.
что это за EOF?
---------
и есть-ли библиотека которая записывает байт в файл?
(Offline)
 
Ответить с цитированием
Старый 07.02.2012, 10:51   #4
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Ответ: Помогите...

End Of File
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
impersonalis (07.02.2012)
Старый 07.02.2012, 11:20   #5
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Помогите...

Если вопрос остался, то http://ru.wikipedia.org/wiki/EOF
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 07.02.2012, 11:49   #6
DeaDCore
Оператор ЭВМ
 
Аватар для DeaDCore
 
Регистрация: 06.02.2012
Адрес: Equestria
Сообщений: 43
Написано 7 полезных сообщений
(для 10 пользователей)
Ответ: Помогите...

значит если ошибка или конец файла переменная равняется -1?
(Offline)
 
Ответить с цитированием
Старый 07.02.2012, 14:46   #7
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Помогите...

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

На счет файлов - есть библиотека Lib_jsr75 и несколько ее модификаций и надстроек, там есть функции чтения/записи.
(Offline)
 
Ответить с цитированием
Старый 07.02.2012, 19:45   #8
DeaDCore
Оператор ЭВМ
 
Аватар для DeaDCore
 
Регистрация: 06.02.2012
Адрес: Equestria
Сообщений: 43
Написано 7 полезных сообщений
(для 10 пользователей)
Ответ: Помогите...

снова поставил FOR всё, работает, но после "починки" перестала работать камера: если использовать переменные camx и camy тайлы вообще не появляются... а камера нужна...
(Offline)
 
Ответить с цитированием
Старый 07.02.2012, 20:37   #9
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Помогите...

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


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com