|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
29.07.2009, 20:35 | #11 |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
У типа (или класса) игрового объекта добавь свойство Layer:integer;(слой) и Painted: boolean; (нарисована ли текстура).
Сделай цикл (например repeat-until) в котором рисуются сначала со слоем 0, потом 1 и так до максимального. При рисовании свойство Painted становится равным true чтоб текстура не рисовалвсь второй раз. Условием выхода из блока является нарисованнось всех текстур. P.S Когда писал ответа от JTG не было. Последний раз редактировалось Вадим Буренков; 29.07.2009 в 20:37. Причина: JTG меня опередил :) |
29.07.2009, 20:59 | #12 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
Есть метод еще проще. У нас есть игровой массив - это скелет пространства, в каждой ячейке которого закодировано что в ней находится, это может быть любой объект игры. Делаем цикл по клеткам двумерного массива, натыкаясь на код, выдергиваем ресурсы, это либо дерево, либо персонаж, либо вы, не имеет значения. В этом случае все объекты сами рисуются в нужном положении прикрывая друг друга. Игровой массив обновляется каждый такт перехода по клеткам или в зависимости от игрового мира, ресурсы не требует. Направление проверки массива классическое, слева на право, сверху вниз. Первый цикл по-Y в нем по-X.
Послесловие: ...как вы думаете, что проще: пролистать все объекты и расписать им слои, чтобы поставить на карту, или пролистать карту и поставить сразу тех, кто там есть автоматом в нужном порядке?
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Последний раз редактировалось Beermonza; 29.07.2009 в 21:03. |
30.07.2009, 08:07 | #13 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Блин какая-то лажа вообще! Вчера не грузился один ТБитмап, седня уже второй! Не пойму что за фигня! Выложу исхлдник. Properties это папка в которой лежит игра. Токо не запускайте .ехе! А то потом замучаетесь закрывать ошибки. Это тренеровочный движок игры т.к я еще что-то могу переделать а потом нормальный код помещу в основную папку с игрой.
ВНИМАНИЕ! Файл поражен вирусом Virus.Win32.Induc.a , заражает среду Delphi 4-7 Ознакомьтесь до скачивания EXE-файла http://programmersforum.ru/showthread.php?t=60120 Последний раз редактировалось Beermonza; 19.08.2009 в 16:18. |
30.07.2009, 10:06 | #14 |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
Посмотрел исходник и понял что все плохо. Разбираться в немаленьком коде без комментариев желания нет.
У тебя остались версии игры где нет ошибок? Если да то работай с ними, постепенно добавляй код и смотри где появится ошибка. Если не осталось то ничем помочь не могу, разбирайся сам. |
30.07.2009, 10:48 | #15 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Я никого не прошу разбираться в моем исходнике. Я лишь прошу о том чтобы вы мне сказали с чем связана моя ошибка. Если с памятью то я найду эту ошибку. Просто седня я копался в исходники попытался что-то исправить и ошибок вылезло еще больше! И все это связана как я думаю с текстурами и их качеством.
|
30.07.2009, 11:12 | #16 | |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
Цитата:
|
|
30.07.2009, 11:56 | #17 |
Форумчанин
Регистрация: 23.02.2009
Сообщений: 237
|
Например? Излишняя загрузка памяти?
|
30.07.2009, 12:11 | #18 |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
Найди строки без которых все работает и с которыми появляются ошибка.
|
30.07.2009, 12:18 | #19 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
Переделывать в этом уже что-то поздно, лапша, для полного счастья не хватает безусловных переходов Форматируй код, раскидывай по отдельным модулям и везде оставляй комментарии, даже в самых очевидных местах, иначе через месяц сам не разберёшься где что
пыщь
|
30.07.2009, 12:27 | #20 | |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
Цитата:
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как можно самому сделать так, чтобы программы грузились с диска, до загрузки ОС? | Лукманов Александр | Софт | 1 | 18.04.2009 12:14 |
оптимизировать для максимальной скорости выполнения программы, т.е. заменить ее кодом на ассемблере | gusluk | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 6 | 10.12.2008 04:21 |
Увеличение и уменьшение картинок | zzzzz | Мультимедиа в Delphi | 2 | 30.08.2008 20:53 |
запуск программы после загрузки Windows | matus | Windows | 3 | 25.04.2008 11:16 |
отслеживание загрузки программы | ГОСЕАН | Общие вопросы Delphi | 4 | 13.12.2007 18:04 |