我是 gdscript 的新手,我正在开发一个乒乓球游戏项目,以触摸作为输入类型。我无法移动 kinematicBody2D(桨)

问题描述 投票:0回答:1

这是代码 扩展 KinematicBody2D

var is_dragging = false var touchpos = 0

func _input(事件): 如果事件是InputEventMouseButton: 如果事件.is_pressed(): is_dragging = true 别的: is_dragging = false 如果是拖动: touchpos = 事件.位置

func _physical_process(_delta): 如果是拖动: touchpos.x = 70 $Sprite.global_position = touchpos

我原以为球会在桨上弹起,但它正在穿过桨,因为只有雪碧在移动。不是 kinematicBody2D。那么,谁能告诉我该怎么做?

touch godot touch-event gdscript godot3
1个回答
0
投票

你基本上自己回答了。您的代码仅更改精灵的位置,而不更改运动体的位置。

改变:

$Sprite.global_position = touchpos

global_position = touchpos

这将带动他们所有孩子的整个身体。

© www.soinside.com 2019 - 2024. All rights reserved.