ds_stack_read

使用此函数,您可以重新创建保存的DS堆栈(以前使用ds_stack_write()作为字符串写入的堆栈)。您必须首先创建一个新的DS堆栈来读取该字符串,如果DS堆栈已经存在并且其中存储了信息,则在读取之前将清除该堆栈。为游戏创建保存/加载机制时,此函数至关重要。

请注意,如果指定的DS字符串是GameMaker编写的:Studio 1.2. x运行时(或更早版本),您应该指定可选参数"legacy",将其设置为true,作为之后更改的字符串格式。

 

语法:

ds_stack_read(id, str [, legacy]);

参数类型描述
idDS Stack要读入的数据结构的ID。
strString要从中读取的字符串。
legacyBoolean可选可以为truefalse,也可以完全省略。

 

返回:

N/A

 

例子:

stack = ds_stack_create();
ini_open("save.ini");
var str = ini_read_string("Stacks", "0", "");
if (str != "")
{
    ds_stack_read(stack, str);
}
ini_close();

上述代码创建一个堆栈并将索引存储在变量"stack"中。然后打开ini文件并从中读取字符串,检查以确保字符串不会首先返回为空。然后将此字符串读入新创建的DS堆栈。