Ответ: Помогите исправить ошибку
Да, неплохо бы готовый пример, если не затруднит.
|
Ответ: Помогите исправить ошибку
Вложений: 1
|
Ответ: Помогите исправить ошибку
Цитата:
|
Ответ: Помогите исправить ошибку
"i,j,x,y,key,:integer;" убери лишнюю запятую - она вводит МидлетПаскаль в заблуждение
"drawimage (land_image[land_array[j+,i+]],(j-1+)*30-,(i-1)*30);" лишние минусы и плюсы. нет такого числа как "5+" или "3-" =) |
Ответ: Помогите исправить ошибку
Ах да, невнимательность =)
Но почему-то всё равно белый экран... |
Ответ: Помогите исправить ошибку
А ты персонажа в память загрузил?
|
Ответ: Помогите исправить ошибку
Конечно.
|
Ответ: Помогите исправить ошибку
А, и правда не загрузил. Я думал, ты про ресурс.
|
Ответ: Помогите исправить ошибку
Да даже с персом виснет
|
Ответ: Помогите исправить ошибку
Регистр соблюден?
"Pers.png" и "pers.png" это два разных файла И вставь вот это for i:=1 to 30 do for j:=1 to 30 do land_array[i,j]:=1; перед S:=readline (res); Так как по умолчанию значения этого массива ноль, то движок пытается вывести картинку ландшафта под номером ноль. А у нас есть только 1 и 2. |
Ответ: Помогите исправить ошибку
Так точно, соблюден.
|
Ответ: Помогите исправить ошибку
а код вставил?
секунду, а зачем в коде вот это (выделено жирным)? program lol; var i,j,x,y,key,:integer; S:string; res:resource; land_image:array [1..2] of image; land_array:array [1..30,1..30] of integer; pers:image; begin land_image[1]:=loadimage('/land1.png'); land_image[2]:=loadimage('/land2.png'); for i:=1 to 30 do for j:=1 to 30 do land_array [i,j]:=1; res:=openresource('/map.txt'); for i:=1 to 10 do begin S:=readline (res); land_array[j,i]:=stringtointeger(GetChar(S,j-1)); end; closeresource (res); REPEAT setcolor(255,255,255); fillrect(0,0,240,320); for i:=1 to 11 do for j:=1 to 9 do begin drawimage (land_image[land_array[j+,i+]],(j-1+)*30-,(i-1)*30); end; drawimage (pers,50,40); key:=GetKeyPressed; if keytoaction(key)=GA_UP then begin y:=y-1; end; if keytoaction(key)=GA_DOWN then begin y:=y+1; end; if keytoaction(key)=GA_LEFT then begin x:=x-1; end; if keytoaction(key)=GA_RIGHT then begin x:=x+1; end; repaint; delay (20); UNTIL (GetKeyPressed=KE_KEY0); end. |
Ответ: Помогите исправить ошибку
Чтото ты намудрил.
Должно быть так for i:=1 to 10 do begin S:=readline (res); for j:=1 to 10 do land_array[j,i]:=stringtointeger(GetChar(S,j-1)); end; closeresource (res); То, что красным выделено, ты пропустил |
Ответ: Помогите исправить ошибку
Исправил, но всё равно белый экран =(
|
Ответ: Помогите исправить ошибку
Скинь короче мне свой проект, счас посмотрю, в чем дело
|
Часовой пояс GMT +4, время: 12:47. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot