加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

godot 切换场景和数据的保存

(2016-06-06 10:53:37)
标签:

game

godot

独立游戏开发

分类: godot
在godot 并没有全局变量或全局函数,如果要和各个场景之间进行交互或数据的保留,那么将变得不可能,
因为每一个场景都是独立的,当切换场景时候,所有的数据都被清空。
那么该如何保存不同场景之间的数据呢?
godot 引入了一个 autoload 功能,就是每个场景都自动加载一个相同节点(或资源),就是每个场景都会包含这个节点,该节点的数据将会一直保存,这样就可以在每个场景之间交互数据了

设置autoload ,首先在点击 scene 按钮,选择 project setting,点击 autoload 添加节点
http://s2/mw690/006ulARagy72gog2LYJ61&690切换场景和数据的保存" TITLE="godot 切换场景和数据的保存" />

path 选项是选择 节点,通常是一个 脚本文件,(也可以是一个场景,可以实现场景间的切换),后面的
Node name 可以随便填写,这里是gobal,点击 Add  完成

这样每一个场景都会自动加载该节点,那怎样去使用呢?

使用autoload ,godot 所有对象都是节点,所以 上面添加的 gobal.gd 脚本必须 继承 node(extends Node)

get_node("/root/gobal")  就可以引用到该节点,gobal 是node name,上面你填写的名称

这样你可以在 gobal.gd 脚本中添加各种 功能 ,使用 变量来保存 游戏玩家的 信息 等等,

下面是使用 这个脚本来 切换 场景
http://s6/mw690/006ulARagy72goSBioB75&690切换场景和数据的保存" TITLE="godot 切换场景和数据的保存" />

新建一个场景,随便添加节点,保存
然后再第一个场景上 添加 按钮(Button),当点击的时候就切换场景,并为根节点添加一个脚本
来处理按钮的点击
http://s13/mw690/006ulARagy72gptre0Y4c&690切换场景和数据的保存" TITLE="godot 切换场景和数据的保存" />

其中 connect函数是可以链接各种事件,

不同的节点是有不同的事件,如下图
点击 链接按钮
http://s6/mw690/006ulARagy72gpHSifre5&690切换场景和数据的保存" TITLE="godot 切换场景和数据的保存" />

从节点 Button 的继承来看,canvasItem ,control 和baseButton 等等,都有一些特定的事件
包含的各种输入事件,状态等等!可以使用这些事件来进行一些自定义


好的,现在可以点击运行 项目,点击按钮的时候就切换到特定场景了

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有