forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Полезные функции (http://forum.boolean.name/forumdisplay.php?f=17)
-   -   Направленный курсор (http://forum.boolean.name/showthread.php?t=9034)

Ky3R_94 31.08.2009 14:23

Направленный курсор
 
Вложений: 1
Вот решил сделать курсор, который смог бы поворачиватся в том направлении, в котором движется мышька) Это была моя давняя мечта ещё с тех пор как впервые я увидел его в Worms 3D =^D. А теперь вот решил выложить сюда, может быть кому пригодиться?)))

CRASHER 01.09.2009 23:44

Ответ: Направленный курсор
 
А чтож описание на английцком?
Движение курсора немного угловаты, а так вобще сдоровско, молорец))

Ky3R_94 03.09.2009 00:02

Ответ: Направленный курсор
 
Цитата:

А чтож описание на английцком?
У меня в блитзе вместо русского языка закарлючки) Я просто не задумывался о том что можно и на русском писать)
Вкратце опишу всё самое необходимое:
- глобалим в свой код глобалки
- копируем все функции
- копируем код создания анимационной ленты либо открываем с помошью LoadAnimImage уже готовую
- в mainloop'e или где надо перед Flip'ом (или у кого как) ставим функции UpdateCursorCoords() и DrawDirectCursor().
Цитата:

Движение курсора немного угловаты
Эту проблему легко устранить, лишь добавив ещё одну глобалку, наприм. result_cursor_angle и сделать с ней такое:

If result_cursor_angle<cursor_angle Then result_cursor_angle=result_cursor_angle+1
If result_cursor_angle>cursor_angle Then result_cursor_angle=result_cursor_angle-1


Ну и, естественно, в функции DrawDirectCursor() поменять cursor_angle на result_cursor_angle. Я такой трюк уже вроде делал, но я его убрал из-за того, что на неособо крупных разрешениях курсор всё время подтормаживал.

ABTOMAT 03.09.2009 10:36

Ответ: Направленный курсор
 
Код:

For i=0 To 359
        SetBuffer ImageBuffer(cursor_arrow,i)
        temp_as=LoadImage("arrow.bmp")
        HandleImage temp_as,16,16
        RotateImage temp_as,i
        DrawImage temp_as,16,16
Next

Бегло посмотрел. Я бы не советовал грузить 360 раз. Ну и ещё парочка мест суровых.
З.Ы. И да, кто после загруженных изображений будет память очищать?

Ky3R_94 20.09.2009 16:23

Ответ: Направленный курсор
 
Ну, извиняйте. Эту часть кода я сделал как пример (вроде даже в исходнике об этом сказал). Я просто выкладывал саму "систему" создания таких курсоров, а люди - пусть что хотят, то и берут из неё.

Ky3R_94 04.12.2009 02:47

Ответ: Направленный курсор
 
нашёл проблему угловатости. просто нужно поставить фиксацию fps до 60 хотя бы

Dream 05.12.2009 02:12

Ответ: Направленный курсор
 
хм... а страные у вас метода... а слабо шаг делать меньше?
и вобще, забудьте про такую команду как RotateImage в циклах!!


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

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