Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2003.03.31;
Скачать: [xml.tar.bz2];

Вниз

Бэкгроунд   Найти похожие ветки 

 
Fog   (2002-10-29 15:20) [0]

Я уже совсем запутался. Как заполнить экран ISO тайлами 60x30?


 
Axis_of_Evil   (2002-10-29 16:32) [1]

Вестимо с массивом
Поконкретней вопрос


 
Fog   (2002-10-29 16:36) [2]

Я делаю

for i := 0 to 10 do
begin
for j := 0 to 10 do
begin
DXImageList.Items.Draw(DXDraw.Surface, i*60, j*60, 0);
end
end;

Получаются пропущенные тайлы. Как заполнить их...


 
Axis_of_Evil   (2002-10-29 16:42) [3]

Что значит пропущенные?
Все ведь непрерывно

>DXImageList.Items.Draw(DXDraw.Surface, i*60, j*60, 0);
DXImageList.Items[ k ].Draw(DXDraw.Surface, i*60, j*60, 0);


 
Fog   (2002-10-29 17:10) [4]

Нет, нет, это я здесь опечатался... Я имею в виду... Ну как распологаются тайлы в РПГ

с с с с с с
с с с с с
с с с с с с
с с с с с с


Таким образом рисуется только

с с с с с с с

с с с с с с с

с с с с с с с


 
Fog   (2002-10-29 17:11) [5]

Не получилось
с с с с с с
с с с с с с
с с с с с с


 
Fog   (2002-10-29 17:12) [6]

Ну вообщем мысль такая через строку спрайты должны быть на 30px смещены(гор.)...


 
HellTrooper   (2002-10-29 17:20) [7]

Дык насколько я понимаю у тебя не рисуются "смещённые" тайтлы?
картинка должна быть:

с с с с с
.с с с с
с с с с с
.с с с с
с с с с с

так?


 
Axis_of_Evil   (2002-10-29 17:28) [8]

>(гор.)...
Горы имеешь в виду?

Хорошо ряды гор, холмов ...
Идея:
отрисуй гору в отдельном спрайте,
пусть она ~ 2x3 клетки, а параметры движения героя
измени по этим клеткам (с горы - быстро, на гору - медленно)


 
Fog   (2002-10-29 18:17) [9]


> >(гор.)...
> Горы имеешь в виду?

Горизонтально...
> с с с с с
> .с с с с
> с с с с с
> .с с с с
> с с с с с

Так!

> отрисуй гору в отдельном спрайте,
> пусть она ~ 2x3 клетки, а параметры движения героя
> измени по этим клеткам (с горы - быстро, на гору - медленно)

Возьму на карандаш


 
HellTrooper   (2002-10-30 09:37) [10]


> Я делаю
>
> for i := 0 to 10 do
> begin
> for j := 0 to 10 do
> begin
> DXImageList.Items.Draw(DXDraw.Surface, i*60, j*60, 0);
> end
> end;
>
> Получаются пропущенные тайлы. Как заполнить их...

Тогда у тебя неправильный подход. Этот цикл дасть тебе что-то типа шахматного поля. Тебе надо сдвигать каждый второй элемент на 30 пикселов в право и на 30 пикселов вниз, относительно предыдущего. Примерно так:

I:=0
J:=0;
While I<=10 do
begin
while J<=10 do
begin
DXImageList.Items.Draw(DXDraw.Surface, i*60, j*60, 0);
Inc(J)
DXImageList.Items.Draw(DXDraw.Surface, i*60+30, j*60-30, 0);
Inc(J)
end;
Inc(I)
end;

Что-то в этом духе.



Страницы: 1 вся ветка

Форум: "Игры";
Текущий архив: 2003.03.31;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.011 c
14-100416
Карелин Артем
2003-03-13 16:11
2003.03.31
Нужен справочник по сталям.


14-100437
dimich1978
2003-03-13 10:44
2003.03.31
Прикол


7-100499
Zhenka
2003-02-05 20:06
2003.03.31
какими методами виндовс меняет цветовые схемы в Рил-тайм??


3-100151
neXt
2003-03-12 16:57
2003.03.31
Timeout BDE


3-100174
stone
2003-03-13 10:58
2003.03.31
TADOCommand.States





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский