|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
01.05.2008, 09:59 | #11 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
посмотри описания функций ord() b chr()
программа — запись алгоритма на языке понятном транслятору
|
01.05.2008, 10:48 | #12 |
Веб-разработчик
Форумчанин
Регистрация: 16.01.2008
Сообщений: 451
|
Негде смотреть, в интернете через GPRS искать не хочется...но что то мне подсказывает что к счетчику ето никакого отношения не имеет.
Я ваш новый друг, смиритесь!
|
01.05.2008, 16:05 | #13 | |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
Делимся опытом...
[Smarik], я так понимаю, таймер вам нужен для изменения ситуации на экране, т.е. грубо говоря, это таймер построения кадра (в терминологии движка)?, ...поправите, если что. Может быть следующее вам поможет в написании игры.
Изначально следует разделить всю систему игры на четко разграниченные подсистемы, со своими свойствами и организовать их взаимодействие. 1 Система хранения информации. Все объекты игры должны делиться по типам и обладать набором характеристик, ...это - текущее положение в пространстве, тип анимации (номер кадра), тип действия, всевозможные вспомогательные флаги переходов, статические наборы характеристик (броня, оружие) и многое многое другое. Хранить это все следует в массивах или записях, создав как отдельный тип. Тогда в нужный момент вы будете четко знать где ваш объект, что он делает, какой набор стат. характеристик имеет. Никогда не стоит полагаться на набор условий, которые записывают в некоторые переменные текущие данные и перезаписываются в следующий такт или изменяют положение объектов непосредственно. 2 Система сетевой поддержки. Она должна содержать алгоритмы приема/передачи (шифрования/расшифровки) данных и запись в массивы системы хранения данных. Никакого непосредственного изменения объектов в ней не должно быть. Сдесь организуется стыковка с модулем опроса клавиатуры (в данном случае OnKeyDown). Нужна разработанная самостоятельно структура команд, и система деления по типам. 3 Движок. Ядро. Он должен выполнять построение кадра, используя статические ресурсы, динамически выбирая нужные из них для построения кадра в текущий момент игры. Т.е. движок связан с общими ресурсами и с динамической системой хранения данных, которая выступает в роли шаблона выборки. По сути, нужная Вам часть движка представляет из себя один большой цикл, повторяющийся через определенный интервал (таймер). В таймере нужно применить набор условий, которые связаны с системой динамического хранения данных, и в зависимости от них отображают объекты с нужными параметрами. Пример. Система сетевой поддержки приняла пакет, определила тип команды, считала данные, обновила данные для конкретного объекта (система хранения информации), движок в очередной проход цикла считал данные для конкретного объекта и нарисовал объект в нужном месте с нужными характеристиками. Цитата:
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
|
01.05.2008, 20:54 | #14 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Smarik, смотри этот пост (мультиопрос клавиатуры) http://www.programmersforum.ru/showthread.php?p=72509#post72509
После меня там еще несколько вариантов привели. Так вот, условия if там легко заменяются на case таким образом: Код:
Обработку полета и отрисовку снаряда производить только если он активен. Активировать снаряд по нажатию кнопки FIRE =)
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; 01.05.2008 в 20:56. |
02.05.2008, 11:02 | #15 | |
Веб-разработчик
Форумчанин
Регистрация: 16.01.2008
Сообщений: 451
|
Цитата:
case key of VK_UP: и.т.д он выдавал ошибку на key, но изучая движок впритнципе понял что не во всех событиях можно использовать какие то клавиши или они обозначаются иначе, насчет танка ето все сделано и работает, я понимаю как должен работать таймер и чего я хочу, я просто не умею работать с таймером =) незнаю как присваивать, устанавливать время и прочее. оффтоп: Пытаюсь поднять человеку репутацию, пишут что все ок, но репутация не поднимается, почему?
Я ваш новый друг, смиритесь!
Последний раз редактировалось [Smarik]; 02.05.2008 в 11:05. |
|
02.05.2008, 22:03 | #16 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
VK_... это константы, VK_UP = 38 и т.д.
Какое время? Ставишь интервал таймеру и все, в событии OnTimer пишешь что надо. Задача таймера тикать, все остальное в твоих руках =) оффтоп: вес отзыва зависит от твоей репутации
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)
Проверь себя! Онлайн тестирование | Мой блог |
03.05.2008, 11:40 | #17 |
Веб-разработчик
Форумчанин
Регистрация: 16.01.2008
Сообщений: 451
|
У меня есть вечная проблема, сегодня столкнулся с ней особенно плотно, сидя на практире решил сделать игру танчики (аналог танчиков на денди) на движке omega и все время получаются не рациональные методы решения куча условий, циклов все ето можно сократить через массивы или еще более простые методы, может есть в арсенале специальная литература "методы решения" или что то подобное, чтобы привыкнуть к более коротким алгоритмам. Для наглядности подскажите как можно сократить следующий код
Код:
Код:
Я ваш новый друг, смиритесь!
Последний раз редактировалось [Smarik]; 03.05.2008 в 11:46. |
03.05.2008, 13:18 | #18 | |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Цитата:
Таймер тикает - ты пишешь обработку и генеришь "события" какие тебе надо, исходя из определенных данных. События в кавычках потому что это обычные функции, к-рые ты будешь вызывать из обработчика таймера. Пример: Код:
Кода будет в любом случае много, то что ты привел это еще не много. Часто придется работать не с простыми условиями, а с обработкой массивов в циклах. Допустим у тебя есть N вражеских танков, чтобы определить находишься ли ты у кого нибудь из них под прицелом, нужно будет пройтись по ним в цикле for i:=0 to N-1 do... Применим это все к примеру события: Код:
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)
Проверь себя! Онлайн тестирование | Мой блог |
|
03.05.2008, 13:55 | #19 | |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Цитата:
Код:
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)
Проверь себя! Онлайн тестирование | Мой блог |
|
05.05.2008, 17:24 | #20 |
Регистрация: 28.04.2008
Сообщений: 3
|
Возможно ли в синем компиляторе работать с сетью? Если да,то как?
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
написать игру LINES в паскале | Настёна | Фриланс | 7 | 23.06.2008 23:40 |
Кто может написать игру для мобильного? | Иван Викторович | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 8 | 14.03.2008 21:07 |
Нужно написать игру! | Juice | Фриланс | 8 | 21.10.2007 20:15 |