自定义虚拟摇杆
虚拟摇杆主要有一个父UI和多个子UI组成,父UI为virtual_joystick
,子UI为virtual_joystick_slider
, 其中子UI需要有一个为主拖动杆
virtual_joystick
用来响应一些自定义事件
有以下一些属性:
vj_press_region_type
可点击区域类型(0方 1圆)vj_active_percent
移动超过主摇杆move_radius
多少时才触发move相关事件vj_center
摇杆中心位置,以此算方向与百分比vj_is_press_center
是否以按下时的位置为中心vj_is_release_reset
松开的时候是否设置到按下之前的位置vj_auto_move
c++会处理移动vj_auto_skill
c++会处理技能指示器的位 置
提供一些新的事件,可以正确判断多指同时按下的情况:
on_vj_press
摇杆按下,取代on_mouse_down
on_vj_release
摇杆松开,取代on_mouse_up
on_vj_move_start
摇杆开始移动,摇杆的百分比超过vj_active_percent
时触发on_vj_move
摇杆移动,摇杆的百分比超过vj_active_percent
后有移动才会触发on_vj_move_end
会在on_vj_release
之前触发
这些事件都会传递这些参数: x
,y
,percent
。 x
,y
表示摇杆方向(ui坐标系),percent
表示摇杆的百分比
virtual_joystick_slider
拖动杆,可以以某点为中心跟随鼠标移动
vj_is_main_slider
是否是主拖动杆(用来计算数据x
,y
,percent
)vj_toggle_show
是否在按下和松开的时候改变visiblevj_move_radius
移动范围半径(当vj_is_press_center
=false
时,会将按下前位置作为中心;当为true
时,以按下的位置为中心. 按父节点高为1)vj_move_ratio
相对于鼠标移动的多少,默认是1。即若鼠标移动100,UI会在移动范围内移动100 *vj_move_percent