FMOD Studio User Manual 2.02

24. 脚本 API 引用 | 系统

模块: System

studio.system 模块提供通用的系统级功能。

system.require(fileName)

将 javascript 文件加载为库。传递的 fileName 可以是相对路径或绝对路径。正在加载的文件应该包含一个模块。例如:

module.exports = {
    foobar: function() {
        // 执行
    },
};

然后可以使用该模块:

var MyModule = studio.system.require("utils/file_name.js"); // 相对于脚本的绝对路径或文件路径
MyModule.foobar();

加载相关模块文件时,建议将模块放在不同的文件夹中,例如子文件夹。这确保模块的文件不会作为顶级脚本文件加载。这会加载相对于进行此调用的脚本的脚本,因此无法使用来自控制台的相对路径的 system.require

返回加载的 js 模块对象,如果不成功,则返回 null

system.backtrace()

将调用堆栈作为字符串数组返回。

system.verbose(msg)

记录详细消息。

system.print(msg)

记录消息。

system.warn(msg)

记录警告。

system.error(msg)

记录错误。

system.message(msg)

在弹出对话框中记录消息(阻止)。

system.question(msg)

提示对给定消息做出“是”/“否”响应并返回布尔值(阻塞)。

system.getText(msg[, defaultText])

提示输入文本并返回字符串,如果取消(阻塞),则返回 null。

system.getNumber(msg[, defaultText])

提示输入数字并返回值,如果取消(阻塞),则返回 null。

system.start(pathToExecutable,processOptions)

使用选项对象运行外部进程 { workingDir, args, timeout (milliseconds)}(阻塞)。

返回一个结果对象 { exitCode, standardOutput, standardError }

system.startAsync(pathToExecutable,processOptions)

使用选项对象 { workingDir, args } 运行外部异步进程。

返回表示异步进程的studio.system.ScriptProcess对象。

system.getFile(filePath)

返回一个studio.system.File对象,代表 filePath 中的文件。

system.openMode

与 studio.system.File.open()一起使用的枚举,用于描述文件打开的模式。可能的价值是:

system.permission

studio.system.File.setPermissions()一起使用的枚举,用于更改文件的权限。可以使用studio.system.File.permissions查询文件的权限。可以将这些值组合在一起以测试多个权限和所有权值。可能的价值是:

类: File

studio.system.File 对象可用于与磁盘上的文件进行交互。可以使用system.getFile()创建 studio.system.File

File.exists()

如果对象表示的文件存在于磁盘上,则返回 true ,否则返回 false

File.open(openModeFlag)

openModeFlag 指定的模式打开文件。可用选项由system.openMode枚举描述。如果操作成功,则返回 true ,否则返回 false

File.writeText(text)

text 作为 Utf8 写入文件。返回实际写入的字节数,如果发生错误则返回 -1。

File.readText(maxSize)

以 Utf8 格式从文件中读取最多 maxSize 字节并返回结果字符串。

File.writeBinary(byteArray)

byteArray 写入文件。返回实际写入的字节数,如果发生错误则返回 -1。

File.readBinary(maxSize)

从文件中读取最多 maxSize 字节并返回结果。

File.close()

关闭文件并将所有更改刷新到磁盘。如果操作成功,则返回 true ,否则返回 false

File.copy(filePath)

将文件复制到指定的绝对 filePathfilePath 中不存在的目录将根据需要创建。

File.remove()

从磁盘中删除文件。该操作不可撤消,并且文件无法从 Windows 的回收站或 Mac OS X 的垃圾箱中恢复。如果操作成功,则返回 true,否则返回 false

File.size()

以字节为单位返回文件的大小。

File.permissions()

如果文件存在于磁盘上,则返回system.permission标志的完整或组合,否则返回 0。

File.setPermissions(permissions)

将文件的system.permission标志设置为指定的 permissions 。如果成功则返回 true,如果不能修改权限则返回 false。

类: ScriptProcess

studio.system.ScriptProcess 对象可用于与使用system.startAsync()启动的进程进行交互。

ScriptProcess.isRunning()

如果进程正在运行并准备好读取或写入,则返回 true ,否则返回 false

ScriptProcess.readAllStandardOutput()

返回进程标准输出中的所有可用数据。

ScriptProcess.readAllStandardError()

返回进程标准错误中的所有可用数据。

ScriptProcess.writeStandardInput(text, timeout)

text 写入进程的标准输入,并等待进程写回标准输出的 timeout 毫秒数。

ScriptProcess.kill()

终止进程,使其立即退出。