forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Проекты на MidletPascal (http://forum.boolean.name/forumdisplay.php?f=88)
-   -   Мои проекты (http://forum.boolean.name/showthread.php?t=9308)

Dj_Alex 03.10.2009 00:25

Мои проекты
 
Вложений: 2
Вот решил выложить пару своих готовых проектов. Недоделок куча, может руки когда-нибудь дойдут и их выложу. Пожалуй начнем.

Miner Mobile


Miner Mobile - java-игра, аналог компьютерного сапера. Необходимо разминировать поле 9х9, открыв пустые ячейки и не попав на мину. Число в ячейке показывает количество мин в смежных ей 8 ячейках.
Имеется 3 уровня сложности, меняется число мин - 10, 15, 20. Лучший по времени результат сохраняется. Графика позаимствована из компьютерного WinMine.
Управление:
* - вызов меню
2, 4, 6, 8, стрелки - навигация по полю и в меню.
5, ОК - открыть ячейку, выбор в меню.
1 - поставить флажок.


Game of life 1.2


Игра «Жизнь» (Conway's Game of Life) — клеточный автомат, придуманный английским математиком Джоном Конвеем в 1970 году.

Правила
Место действия этой игры — «вселенная» — это размеченная на клетки поверхность. Каждая клетка на этой поверхности может находиться в двух состояниях: быть живой или быть мёртвой. Клетка имеет восемь соседей. Распределение живых клеток в начале игры называется первым поколением. Каждое следующее поколение рассчитывается на основе предыдущего по таким правилам:
-пустая (мёртвая) клетка рядом с тремя живыми клетками-соседями оживает;
-если у живой клетки есть две или три живые соседки, то эта клетка продолжает жить;
-в противном случае (если соседей меньше двух или больше трёх) клетка умирает (от «одиночества» или от «перенаселённости»).
Игрок не принимает прямого участия в игре, а лишь расставляет «живые» клетки, которые взаимодействуют согласно правилам уже без его участия.
Эти простые правила приводят к огромному разнообразию форм, которые могут возникнуть в игре.

Особенности
В данной реализации игры Game of life поле имеет фиксированные размеры 100х100 ячеек и на границах могут происходит превращения не по правилам (например превращение глайдера в квадрат). Но для простых примеров этих размеров достаточно.
Есть возможность масштабирования и скроллинга поля на экране.
Имеется редактор, в котором можно создать поколение или отредактировать текущее.
Можно замедлить процесс симуляции или производить по шагам.
Есть кнопки быстрого сохранения и загрузки состояния поля. Также можно сохранить поле в RMS под именем.

Изменения в версии 1.2
Добавлен цветной режим, в котором цвет ячейки зависит от количества смежных ей занятых ячеек.
Переделано управление. Теперь за навигацию в меню отвечает только джойстик. Прокрутка поля и некоторые команды установлены на цифровые клавиши для более удобной работы.
Добавлено отключение сетки.

Игра "Жизнь" была написана для конкурса программистов на dimonvideo, и в голосовании заняла 5-ое место.

Обе игры доступны в версиях 176х220 и 240х320. Компилировались под Nokia (используется Nokia fullscreen), но работает и на SE (правда слишком быстро).

Trazzy 03.10.2009 01:19

Ответ: Мои проекты
 
"сапер" мне более близкий.. неплохо..

Tronix 03.10.2009 11:31

Ответ: Мои проекты
 
Очень доставило! Все по высшему разряду - интерфейс очень понравился. Игры тоже, в частности лайф.

demon112 03.10.2009 17:53

Ответ: Мои проекты
 
прикольный сапёр... вот только... в меню войти не смог и сменить уровень сложности... (вот бы ещё сделал чтоб размер поля можно было изменять и супер бы всё было...

cherepets 04.10.2009 11:23

Ответ: Мои проекты
 
у меня с сапером жесть... стрелка тупо долбится по углам((

Dj_Alex 30.07.2010 11:50

Ответ: Мои проекты
 
Вложений: 1
Вот чето руки дошли до очередной недоделки.

gWeatherInfo



Программа, загружающая прогноз погоды на сутки c gismeteo.ru. Можно добавить до 10 городов. Для добавления города необходимо знать его код, который можно узнать на informer.gismeteo.ru или pda.gismeteo.ru (на самом gismeteo.ru коды другие).

Версия поддерживает разрешения: 176х208/220, 240х320, 320х240. На других экранах будет некорректно.

Dj_Alex 07.09.2010 20:56

Ответ: Мои проекты
 
Вложений: 1
Rotetris



Rotetris - цилиндрическая вариация классического Тетриса, изобретенного в 1984 году Алексеем Пажитновым. В отличие от оригинального Тетриса в Rotetris'е поле замкнуто по горизонтали и визуально выполнено в виде цилиндра.
Цель и правила игры как в оригинале - не дать заполниться цилиндру. Поворачивая фигуры и вращая цилиндр, необходимо укладывать фигуры таким образом, чтобы не образовывались пустоты. Заполненные горизонтальные ряды уничтожаются, и за это добавляются очки. Также очки присуждаются за каждую упавшую фигуру. Скорость игры постепенно возрастает, и тем самым повышается сложность.
Поле имеет размеры 16х16 клеток. Набор фигур - стандартный.
Есть возможность отправить свой лучший результат в онлайн таблицу рекордов, узнать свою позицию в ней и получить список лучших результатов. Таблица рекордов доступна здесь.

Версия мультискринная, т.е. под различные разрешения экрана.
Управление осуществляется джойстиком или цифровыми клавишами, софткеи дублированы на * и #.

Dj_Alex 07.11.2010 19:41

Ответ: Мои проекты
 
Вложений: 1
выкладываю для тестов недоделанную игру про колобка.
интересует скорость работы на разных телефонах, а также обнаруженные глюки и ошибки.

odd 07.11.2010 23:48

Ответ: Мои проекты
 
Цитата:

Сообщение от Dj_Alex (Сообщение 167469)
выкладываю для тестов недоделанную игру про колобка.
интересует скорость работы на разных телефонах, а также обнаруженные глюки и ошибки.

Sony Ericsson C510 - FPS составляет 8-9. Но играть очень даже можно. Тормоза практически не чувствуются.
Samsung GT S5230 - FPS в основном составляет 15-16. Игра летает. Хотя иногда (когда колобок черный) FPS снижается до 10, но это не влияет на динамику игры.

Dj_Alex 08.11.2010 12:21

Ответ: Мои проекты
 
Цитата:

Сообщение от odd (Сообщение 167486)
Хотя иногда (когда колобок черный) FPS снижается до 10

Снижение фпс именно при таком условии? Потом обратно восстанавливается? у себя такого не обнаружил.
Вообще фпс зависит от числа линий и объектов, видимых на экране. Поэтому, чтобы динамика сохранялась, юзаю дельтатайминг. но при очень низких фпс все же начинает глючить и шарик проваливается.

ps Благодарю за тесты

JACUK 09.11.2010 00:25

Ответ: Мои проекты
 
Понмаю что не в тему, но всё таки спрошу! 2Dj_Alex ты бы мог добавить в игру лайф счетчик поколений??? Ага, и на моей Нокии 5300 в справке екран мелькает.

Dj_Alex 09.11.2010 09:36

Ответ: Мои проекты
 
JACUK, добавить можно, только хз куда вывести значение.

JACUK 09.11.2010 18:48

Ответ: Мои проекты
 
Слева от надписи про количество клеток! к-во поколений например слева и к-во клеток справа!

ABTOMAT 10.11.2010 15:31

Ответ: Мои проекты
 
Сапёра на 640*360 нету под сенсорный экран? Долго ли переделать? Знакомые испытывают потребность, были бы благодарны :)

Dj_Alex 10.11.2010 17:18

Ответ: Мои проекты
 
под сенсоры никогда не писал, да и тестить хз на чём. а 640х360 именно горизонтальная ориентация?

ABTOMAT 11.11.2010 12:52

Ответ: Мои проекты
 
Да нет, ориентация значения особого не имеет.
На эмуляторе java в симбиане нет всех клавиш, (есть джойстик и 4 кнопки, обозначенные ABCD, не могу точно сказать какая чему соответствует), так что поставить флажок на мину у меня не получилось. Зато какой-то из кнопок открыл меню :-D Короче, если б была сенсорная версия, было бы шикарно

Dj_Alex 11.11.2010 13:10

Ответ: Мои проекты
 
а как тогда в сенсоре флажок поставить?

JACUK 11.11.2010 22:02

Ответ: Мои проекты
 
Напирмер на экране кнопку нарисовать, при надатии на какую вкл режим установления фладка, по аналогии и отключается.

Dj_Alex 13.11.2010 23:10

Ответ: Мои проекты
 
Вложений: 1
Вообщем тестируем сенсорную версию, пока 240х320 (на больших экранах будет посередине) и без флажков.
Заодно выкладываю поправленные версии 176х220 и 240х320 для клавишников, были косяки с управлением.

ABTOMAT 14.11.2010 00:07

Ответ: Мои проекты
 
Отлично работает на сенсоре! Теперь не надо возюкать виртуальный джойстик, а можно сразу ткнуть куда хочу! :super:
Единственный косяк: после ввода имени рекордсмена не понял как назад вернуться. Упд: кнопка ОК там появляется не всегда
Ну, и флажки ставить, конечно, тоже нужно (оч. жаль, что нет мультитача).
Упд. Ещё косяк: при повороте устройства в другое положение (верт/гор) иногда экран игры может оказаться наполовину за пределами экрана устройства (пока нет камеры дома, снять нечем, если нужен скрин то сделаю позже)
Пофикси плз, если есть время :rolleyes:
Упд: надписи в меню не влазят в отведённое им пространство

Dj_Alex 14.11.2010 10:45

Ответ: Мои проекты
 
Цитата:

Сообщение от ABTOMAT (Сообщение 168565)
Упд. Ещё косяк: при повороте устройства в другое положение (верт/гор) иногда экран игры может оказаться наполовину за пределами экрана устройства (пока нет камеры дома, снять нечем, если нужен скрин то сделаю позже)

ет связано с тем, что dx и dy, которые для размещения в центре, расчитываются в самом начале. вообще поворот нужно в манифесте запретить, т.к. игра только для вертикальной ориентации.
Цитата:

Сообщение от ABTOMAT (Сообщение 168565)
Упд: надписи в меню не влазят в отведённое им пространство

эт из-за того, что меню под размер надписи не подстраивается, и шрифты на теле с 360х640 больше, чем на 240х320.

cherepets 14.11.2010 13:32

Ответ: Мои проекты
 
Цитата:

Сообщение от ABTOMAT (Сообщение 168565)
Ну, и флажки ставить, конечно, тоже нужно (оч. жаль, что нет мультитача)

Хм, а мультитач вообще в яве не реализуем?
Просто вчера после долгих издевательств над телефоном, он наконец "замультитачил". Хотелось бы этим воспользоваться)

А для флажков предлагаю такое решение:
в углу стоит маленькая кнопка-переключатель. Нажата - ставим флажки, иначе - открываем поле.

JACUK 15.11.2010 23:55

Ответ: Мои проекты
 
2cherepets
Цитата:

А для флажков предлагаю такое решение:
в углу стоит маленькая кнопка-переключатель. Нажата - ставим флажки, иначе - открываем поле.
Я сказал почти тоже!!!!

ABTOMAT 16.11.2010 16:57

Ответ: Мои проекты
 
Цитата:

Хм, а мультитач вообще в яве не реализуем?
Не знаю :-D Не во всех железках есть мультитач, в частности, у меня в телефоне нет.

Dj_Alex 20.11.2010 16:07

Ответ: Мои проекты
 
Вложений: 1
Добавил кнопку для установки флажков и сделал версию 360х480.

ABTOMAT 20.11.2010 17:14

Ответ: Мои проекты
 
Шикарно! Теперь всё влезает куда надо и т.п. Единственное: я бы кнопку флажка поместил внизу и сделал раза в 4 больше, чтобы её можно было давить пальцем левой руки.

alexprey 21.11.2010 21:21

Ответ: Мои проекты
 
Еще по саперу замечание. Было бы очень хорошо, сделать как на компе, когда пкм и лкп кликаешь по цифре

cherepets 21.11.2010 21:46

Ответ: Мои проекты
 
и для 320х480 версию было б здорово)

Dj_Alex 09.01.2011 20:08

Ответ: Мои проекты
 
Вложений: 2
За несколько дней написал круглый пинг-понг. Особо не заморачивался, поэтому игра без конца, нет меню и т.п. Зато есть бонусы.
Разрешение экрана любое.
Вложение 12328

Вложение 12329

Igor 09.01.2011 21:21

Ответ: Мои проекты
 
У симбиан в режиме отрисовки с джойстиком экран приложения 360*360, без - 640*360, но не рисуются софт-клавиши

Trazzy 09.01.2011 22:16

Ответ: Мои проекты
 
Цитата:

Сообщение от Dj_Alex (Сообщение 174995)
За несколько дней написал круглый пинг-понг..

Да, задумка интересная, но
Цитата:

Сообщение от Dj_Alex (Сообщение 174995)
.. игра без конца ...

И нереальная.. потому что за 10 минут я смог забить только одного шарика противнику потому что
Цитата:

Сообщение от Dj_Alex (Сообщение 174995)
.. есть бонусы.

и мне выпал Freeze (противник замер)..

psih1 10.01.2011 11:23

Ответ: Мои проекты
 
Идея хорошая!!! но какой прикол от игры в которой выграть нельзя?!

cherepets 10.01.2011 11:31

Ответ: Мои проекты
 
Прикольно))

Dj_Alex 10.01.2011 12:13

Ответ: Мои проекты
 
Забить можно, притом без freeze, только нужно постараться. Вообще скорость шарика постепенно увеличивается, а скорость ракетки противника фиксирована, поэтому противник может не успеть. А иногда он может сам себе забить, когда шарик летит под небольшим углом относительно горизонтали.

AVL 27.02.2011 20:30

Ответ: Мои проекты
 
А что за библиотека Lib_math? Что делает? Я нигде не ее видел, поиск ничего не дал.

YellowAfterlife 27.02.2011 21:47

Ответ: Мои проекты
 
Цитата:

Сообщение от AVL (Сообщение 180815)
А что за библиотека Lib_math? Что делает? Я нигде не ее видел, поиск ничего не дал.

Подскажите, а как этот вопрос относится к данной теме? Ведь никаких Lib_math ни в одной из опубликованных тут игр и не видно (при просмотре их как архивы).

Но, в общем, можно предположить что Lib_math должен представлять собой обертку для java.lang.Math, то есть в нем будут функции для всевозможных манипуляций над числами. Это abs, ceil, cos, floor, max, min, sin, sqrt, tan, toDegrees, toRadians. Так же там есть константы PI и E.

AVL 27.02.2011 22:52

Ответ: Мои проекты
 
В gWeatherInfo эта либа используется.
И зачем тогда она нужна, если почти все это стандартно есть в паскале?

Twice 28.02.2011 19:38

Ответ: Мои проекты
 
Цитата:

Сообщение от YellowAfterlife (Сообщение 180826)
Подскажите, а как этот вопрос относится к данной теме? Ведь никаких Lib_math ни в одной из опубликованных тут игр и не видно (при просмотре их как архивы).

Но, в общем, можно предположить что Lib_math должен представлять собой обертку для java.lang.Math, то есть в нем будут функции для всевозможных манипуляций над числами. Это abs, ceil, cos, floor, max, min, sin, sqrt, tan, toDegrees, toRadians. Так же там есть константы PI и E.

Все это есть по дефолту в мп

Dj_Alex 02.03.2011 12:17

Ответ: Мои проекты
 
Содержание ридми
Цитата:

Lib_math - Библиотека с некоторыми математическими (и не только) функциями

---------------------------------------------------------------------------------------------------------------

string get_utf8(string str) - Перекодировка строки в формат UTF-8 ???

integer hex2int(string a) - Переводит число из 16-ричного формата в 10-чный

string int2hex(integer a) - Переводит число из 10-чной формата в 16-ричный

string trim(string s) - Отсекает лишние пробелы в начале и конце строки

string write_int(integer base) - возвращает число base в виде строки ???

AVL 03.03.2011 00:10

Ответ: Мои проекты
 
Тогда я могу предположить что в gWeatherInfo используется только первая функция.


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

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