如果要使边缘不接收点击事件,则可以在Area2D节点上添加一个InputEventRect节点,并将其作为Area2D的子节点。 然后,将InputEventRect节点的Rect属性设置为稍微小于Area2D节点的大小。 这将导致单击事件不再在Area2D的边缘触发。
代码示例:
using Godot;
public class MyArea2D : Area2D
{
private InputEventRect _inputEventRect;
public override void _Ready()
{
//create a new InputEventRect node as a child of the Area2D node
_inputEventRect = new InputEventRect();
AddChild(_inputEventRect);
//set the Rect property of the InputEventRect to be slightly smaller than the Area2D node
_inputEventRect.Rect = new Rect2(Vector2.Zero, new Vector2(Width - 10, Height - 10));
}
}
以上代码创建了一个MyArea2D类,该类继承自Area2D。 _Ready()方法创建一个InputEventRect节点作为Area2D的子节点,并将其Rect属性设置为稍微小于Area2D节点的大小。 这将使Area2D的边缘不再接收点击事件。