|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
04.07.2007, 19:57 | #11 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Ну у тебя там и наворочено
Попробую что-то понять. Найду ошибку напишу. Ты отпишись если нашел или уже болт на это забил. Небольшая оптимизация 1. Randomize достаточно вызвать один раз в OnCreate формы, каждую секунду это делать не обязательно. 2. Skins:=ExtractFilePath(Application. ExeName)+'Skins\'; Если в программе нет диалогов Open или Save (они после выполнения изменяют текущую директорию), достаточно указать просто имя директории 'skins\' Что касается графики, я всегда на канве спрайтами рисовал, поэтому еще не разобрался, с логикой тоже.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог Последний раз редактировалось mutabor; 04.07.2007 в 20:54. |
04.07.2007, 21:45 | #12 | |||
Пользователь
Регистрация: 11.03.2007
Сообщений: 92
|
Цитата:
Цитата:
Подскажи как ещё можно сделать. Цитата:
Все функции и процедуры играются тока циферками в массиве, а потом это всё разом перерисовывается. Если так лучше не делать, то скажи сразу, пока я много не переделал. Никогда не писал такие большие проекты, поэтому не знаю с какой стороны подойти к решению. Стучи в асю. Я там с 16 и до 20-22 |
|||
04.07.2007, 22:33 | #13 | |
Кодер
Форумчанин
Регистрация: 27.01.2007
Сообщений: 271
|
Цитата:
|
|
04.07.2007, 23:05 | #14 |
Новичок
Джуниор
Регистрация: 04.07.2007
Сообщений: 2
|
Ну да, всё правильно делаешь вроде.
|
05.07.2007, 14:33 | #15 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Согласен насчет массива.
Отрисовку по таймеру я всегда так делал: Нужен буфер (создать в OnCreate) buffer:=tbitmap.create; buffer.width и buffer.height обязательно задать нужно, как у фона Шаг1. Рисуем фон в буфер (копируем из битмапа или программно рисуем неважно) Шаг2. Рисуем в буфере все остальное, тоже откуда угодно можно, из ImageList удобно если прозрачность нужна, не надо с маской играться. Шаг 3. Копируем буфер на канву, ту к-рая для отображения на экране. Так можно и на канве формы рисовать и никакого мерцания. В случае с тетрисом кроме таймера, еще по нажатию кнопок отрисовку надо делать. Именно тетрис я никогда не делал, так что готового ничего подсказать не могу. Массив мне кажется посложнее можно сделать, своего типа. Если пока фигура целая ее можно отрисовывать как фигуру, то когда целостность нарушится, надо будет просто квадратики цветные рисовать. Будет полезно свойство цвет у массива. А аси нет извиняй Вот еще исходник держи, там все намного проще Вложение 783
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог Последний раз редактировалось mutabor; 11.09.2007 в 19:54. |
05.07.2007, 16:02 | #16 | |
Кодер
Форумчанин
Регистрация: 27.01.2007
Сообщений: 271
|
Цитата:
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите сделать тетрис! | sid | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 21 | 06.05.2013 20:32 |
Старый серер перенести на новый, а старый заглушить, при этом не потерять настроек. | Spartak | Помощь студентам | 1 | 28.01.2008 12:07 |
массив и тетрис | sid | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 04.04.2007 14:41 |