欢迎光临散文网 会员登陆 & 注册

【Godot】教你实现PC和手机端的虚拟摇杆

2023-07-11 15:54 作者:蓝甘  | 我要投稿

extends Sprite2D

var maxlen = 100

var ondraging = -1


func get_dot_pos():

var vni = $Tip.position.normalized()

return vni


func _input(event):

if event is InputEventScreenTouch:

if ondraging == -1:

var mouse_pos = (event.position - self.global_position).length()

if mouse_pos <= maxlen:

ondraging = event.index

$Tip.set_global_position(event.position)

else:

if ondraging == event.index:

ondraging = -1

$Tip.position = Vector2.ZERO

elif event is InputEventScreenDrag and event.index == ondraging:

$Tip.set_global_position(event.position)

if $Tip.position.length() > maxlen:

$Tip.position = get_dot_pos() * maxlen

【Godot】教你实现PC和手机端的虚拟摇杆的评论 (共 条)

分享到微博请遵守国家法律