目标
1.从 Welcome 场景跳转到 mainPackedScene游戏主场景
2.学习预设体使用
切换场景:
1.新建2个场景 ,welcome.tscn 和 main.tscn ;
2.给welcome场景绑定脚本,并声明场景变量
public partial class Welcome : Node2D
{
[Export]
private PackedScene mainPackedScene;
}
3.mainPackedScene属性和场景进行绑定


public partial class Welcome : Node2D
{
[Export]
private PackedScene mainPackedScene;
public override void _Process(double delta)
{
if (Input.IsActionJustPressed("开始游戏"))
{
SceneTree sceneTree = this.GetTree();
sceneTree.ChangeSceneToPacked(mainPackedScene);
}
}
}
预设体:
using Godot;
using System;
public partial class Welcome : Node2D
{
[Export]
private PackedScene mainPackedScene;
public override void _Process(double delta)
{
if (Input.IsActionJustPressed("攻击"))
{
//实例化新场景,并返回了一个根节点
Node node = mainPackedScene.Instantiate();
//添加进来
this.GetTree().CurrentScene.AddChild(node);
}
}
}
PS:还可以指定场景文件绝对路径实现场景的切换。虽然简单,当然灵活性没有上面的方法好,
SceneTree sceneTree = this.GetTree();
sceneTree.ChangeSceneToFile("res://scene/main.tscn");
总结:
1.场景节点和精灵节点 一样,也可以绑定脚本
2.C# export 注解声明场景变量
3.prefab预设体到使用
游戏场景切换与预设体使用
840

被折叠的 条评论
为什么被折叠?



