Godot 3.1-动态加载资源

时间:2018-11-26 00:27:15

标签: game-engine godot gdscript

我正在尝试动态加载资源。它在计算机上正常工作,但是在android上会发生以下错误:

内置函数“ dict2inst”中的类型无效。无法将参数1从Nil转换为Dictionary。

我正在尝试加载一些先前导出的Curve2D。 这是代码:

extends Node

var paths = []

const path_dir = "res://paths/"

func _ready():
    load_paths()
    pass

func random_path():
    return paths[randi() % paths.size()]

func load_paths():
    var dir = Directory.new()
    dir.change_dir(path_dir)
    dir.list_dir_begin()

    var path_file = dir.get_next()
    var path
    while path_file != "":
        if dir.current_is_dir():
            pass
        else:
            print("loading: " + path_dir + path_file)
            path = load(path_dir + path_file)
            if path && path is Curve2D: #error occours here
                paths.append(path)

        path_file = dir.get_next()

1 个答案:

答案 0 :(得分:0)

问题是由于版本3.1而引起的。不是稳定版本。在godot 3.0.6中工作正常...