forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Библиотеки (http://forum.boolean.name/forumdisplay.php?f=124)
-   -   Lib_spr спрайты с защитой от дурака (http://forum.boolean.name/showthread.php?t=15844)

barsunduk 14.11.2011 16:39

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

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

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

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

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

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

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

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

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

в архиве - пример использования, мануал, сама либа и исходники c комментариями.

barsunduk 14.11.2011 19:25

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


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

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