
拖动卡牌时,卡牌会向鼠标右下方向偏移一段距离,dl们能帮我看看代码有问题吗
阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程
你遇到的问题可能是由于在拖动卡牌时,卡牌的锚点(anchor)没有正确设置导致的。Godot中,卡牌的锚点默认是设置在卡牌的中心点上,这可能会导致卡牌在拖动时偏移。
你可以尝试在卡牌的 drag_start 事件中设置卡牌的锚点为鼠标位置,例如:
func _on_Card_drag_start():
set_as_toplevel(true)
set_anchor_point(get_global_mouse_position())
这将设置卡牌的锚点为鼠标当前位置,从而使卡牌在拖动时保持在鼠标位置。
如果你已经设置了锚点,但卡牌仍然偏移,可以尝试在 drag 事件中更新卡牌的锚点,以跟踪鼠标的移动位置:
func _on_Card_drag():
set_anchor_point(get_global_mouse_position())
这将在卡牌拖动时不断更新锚点,以保持卡牌在鼠标位置。
如果你已经尝试了上述解决方案,但问题仍然存在,可以提供更多的代码和信息,以便更好地帮助你解决问题。