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=11701)

Bak$ter 10.01.2010 17:28

Вопрос новичка
 
Вложений: 1
program q4;
const Mheight=20;
Mweight=15;
var i,j : integer;
line:string;
readmap:resource;
marray:array[1..100,1..100] of string;
procedure getmap; //Процедура загрузки карты из текстового файла
begin
readmap:=OpenResource('/map.txt');
For i:=1 to Mheight do
begin
line:=Readline(readmap);
for j:=1 to Mheight do
marray[i,j]:=getChar(line,j);
end;
CloseResource(readmap);
end;
procedure otrisovka; //Процедура отрисовки изображения
begin
For i:=1 to Mheight do
for j:=1 to Mweight do
If marray[i,j]='1' then FillRect((16*i)-16,(16*j)-16,16,16);
repaint;
end;
begin
setcolor(0,255,0);
getmap;
otrisovka;
delay(3000);
end.
Белый экран. В чём проблема?Вложение 8752

Tronix 10.01.2010 17:39

Ответ: Вопрос новичка
 
Скорее всего в том, что в мидлете файл map.txt написан большими буквами.
Асло, вынеси repain за циклы. Зачем каждый раз его вызывать в цикле? - это тормоза. Сначало все-все отрисовал, а уже потом полную картину вывел на экран.

Bak$ter 10.01.2010 17:58

Ответ: Вопрос новичка
 
Цитата:

Сообщение от Tronix (Сообщение 132967)
Скорее всего в том, что в мидлете файл map.txt написан большими буквами.
Асло, вынеси repain за циклы. Зачем каждый раз его вызывать в цикле? - это тормоза. Сначало все-все отрисовал, а уже потом полную картину вывел на экран.

Нет, в мидлете написан маленькими. Если что в конце первого поста ссылка, можете глянуть.

GRAY_WOLF 10.01.2010 19:03

Ответ: Вопрос новичка
 
Цитата:

Сообщение от Bak$ter (Сообщение 132965)
Белый экран. В чём проблема?Вложение 8752

Почитай тут в проекте всё подробно написано, что и как.
А из проекта видно проблема в самой карте NUL пишется через строку, а не в конце строки. После компиляции в результате зеленый прямоугольник и более ни чего.....

Bak$ter 11.01.2010 01:18

Ответ: Вопрос новичка
 
Цитата:

Сообщение от GRAY_WOLF (Сообщение 132983)
Почитай тут в проекте всё подробно написано, что и как.
А из проекта видно проблема в самой карте NUL пишется через строку, а не в конце строки. После компиляции в результате зеленый прямоугольник и более ни чего.....

Ну там в принципе и должен быть зелёный прямоугольник
З.Ы. Сори за тупость, но я так и не понял в чём проблема)

nezhensky 26.03.2010 16:04

Ответ: Вопрос новичка
 
Подскажите как реализовать поддержки двух слоёв что-ли.
Например в игре есть неменяющейся задний фон на котором поверх второй слой меняется с игрой.

DIMMON4IK 26.03.2010 17:27

Ответ: Вопрос новичка
 
Без отрисовки первого слоя не обойдешься.
1.Рисуем первый слой
2.Рисуем второй слой

odd 26.03.2010 19:10

Ответ: Вопрос новичка
 
KEmulator выдает ошибку
java.lang.OutOfMemoryError: Java heap space

Скорее всего ошибка происходит при чтении файла - программа не может определить конец файла, отсюда и переполнение памяти с зависанием.

ViNT 26.03.2010 19:10

Ответ: Вопрос новичка
 
Цитата:

Подскажите как реализовать поддержки двух слоёв что-ли.
Например в игре есть неменяющейся задний фон на котором поверх второй слой меняется с игрой.
В Game API должно быть, по-моему это в Lib_tile реализовано.

GRAY_WOLF 26.03.2010 21:42

Ответ: Вопрос новичка
 
Цитата:

Сообщение от odd (Сообщение 143209)
KEmulator выдает ошибку
java.lang.OutOfMemoryError: Java heap space

Скорее всего ошибка происходит при чтении файла - программа не может определить конец файла, отсюда и переполнение памяти с зависанием.

Ответ кому?

GRAY_WOLF 26.03.2010 22:01

Ответ: Вопрос новичка
 
Цитата:

Сообщение от ViNT (Сообщение 143210)
В Game API должно быть, по-моему это в Lib_tile реализовано.

А где либа такая есть? Поисковик по форуму ничего такого не выдал...

DIMMON4IK 26.03.2010 22:24

Ответ: Вопрос новичка
 
Цитата:

Сообщение от odd (Сообщение 143209)
KEmulator выдает ошибку
java.lang.OutOfMemoryError: Java heap space

Скорее всего ошибка происходит при чтении файла - программа не может определить конец файла, отсюда и переполнение памяти с зависанием.

odd как-будто потерялся в форуме :-D

odd 27.03.2010 00:28

Ответ: Вопрос новичка
 
Ой, не посмотрел на дату. Это был ответ на первый пост.

Кстати, по сабджу - можно выводить спрайты используя библиотеку Lib_arcade.
Каждый спрайт выводится на экран как новый слой и не портит графику на основном слое.


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

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