Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > MidletPascal > Библиотеки

Ответ
 
Опции темы
Старый 14.11.2011, 16:39   #1
barsunduk
ПроЭктировщик
 
Аватар для barsunduk
 
Регистрация: 09.05.2010
Адрес: рф ро шахты
Сообщений: 177
Написано 66 полезных сообщений
(для 271 пользователей)
Lib_spr спрайты с защитой от дурака

я долго пытался разобраться с библиотекой Lib_sprite, но она у меня так и не заработала. только и делает, что периодически виснет. жаль. вещь хорошая, по идее.

потратил выходной, чтобы написать аналог. защита от дурака не дает мидлету зависнуть при проверке столкновения, убегании за край экрана или при смене кадра. (исключение составляет общая для всех параметров функция set(), которую можно было и не объявлять как public. с ее помощью при большом желании можно завесить мидлет)

кроме того добавил такую мелочь, как возможность немного автоматизировать смену фреймов. если для спрайта установить параметр setframeback(sprindex, 1);, то анимация, дойдя до последнего кадра, не начнется сначала (как при 0), а пойдет в обратную сторону.

проверок на столкновение две - попиксельная (для скорости - до первого совпадения) и - по прямоугольнику спрайта. в попиксельной можно регулировать переменную minalpha, чтобы, например, добиться реакции только на полностью непрозрачные пиксели. или на все, кроме полностью прозрачных.

для каждого спрайта можно задавать трансформацию, величину шага для движения, видимость, активность, уровень (это чтобы менять порядок вывода спрайтов на экран).

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

проверка на столкновение срабатывает, если параметр активности (getenable(sprindex)/setenable(sprindex, 0/1)) у обоих спрайтов не равен нулю.

ах да, еще есть параметр привязки координат к углам или сторонам. по умолчанию - по центру. т.е. getx(sprindex), gety(sprindex) вернет координаты центра спрайта на экране, а getx0(sprindex), gety0(sprindex) - верхний левый угол.

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

в архиве - пример использования, мануал, сама либа и исходники c комментариями.
Вложения
Тип файла: zip Lib_spr.zip (10.6 Кб, 735 просмотров)
__________________
to be or not to be - it's not a question!
2b or not 2b = ff

Последний раз редактировалось barsunduk, 18.11.2011 в 18:48. Причина: добавлен порог прозрачности для столкновений
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо barsunduk за это полезное сообщение:
Rock2roll (19.11.2011), scimitar (07.03.2012)
Старый 14.11.2011, 19:25   #2
barsunduk
ПроЭктировщик
 
Аватар для barsunduk
 
Регистрация: 09.05.2010
Адрес: рф ро шахты
Сообщений: 177
Написано 66 полезных сообщений
(для 271 пользователей)
Ответ: Lib_spr спрайты с защитой от дурака

попались рабочие примеры работы с Lib_sprite. всё отлично работает... поторопился я с написанием аналога, походу...
__________________
to be or not to be - it's not a question!
2b or not 2b = ff
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com