Godot 4 C#中Node2D的set_as_top_level()方法无法使用求助
解决Godot 4 C#中Node2D无法调用SetAsTopLevel()的问题
Godot 4 对C# API进行了调整,原Node2D的SetAsTopLevel()方法已被移除,取而代之的是**TopLevel布尔属性**,直接赋值即可实现相同功能。
修改你的_Ready()方法中的对应代码:
public override void _Ready() { Timer timer = (Timer)GetNode("Timer"); Sprite2D sprite = (Sprite2D)GetNode("Sprite2D"); timer.Start(lifetime/60f); sprite.LookAt(GetGlobalMousePosition()); direction = GetGlobalMousePosition(); // 替换原来的SetAsTopLevel(true); TopLevel = true; }
补充说明
Godot 4的C# API更贴合C#的编码习惯,大量原有的Setter/Getter方法都被替换为属性形式,比如这类控制节点层级的操作,直接通过属性赋值就能完成,无需调用方法。
内容的提问来源于stack exchange,提问作者Hail or Bail
相关产品推荐
相关产品推荐

