API手册

本篇为进阶教程,初级用户可以无视


FIXME无双引擎的API还不是很完善,个别函数以后可能还会做调整.
此后的进阶功能,基本上都会以API的形式提供.这样一方面开发起来比较方便,另一方面也可以保持原有剧本的简洁性.
另外,也可以直接在剧本中使用Python的标准函数.

根据python的语法,类似@休息(秒数, clear=False, mute=False)也可以直接写成休息(秒数, False, False),
@自动前进(textWaitTime = 0.08)也可以直接写成@自动前进(0.08)。
另外,所有类似 xx = oo 的参数其实都是可选参数,oo就是默认值。这种可选参数可以不用填写,例如 @自动前进() 的效果就和 @自动前进(0.08) 的效果相同

打开网址(网址)

中文版: 打开网址(网址)
英文版: OpenURL(URL)

功能

利用默认浏览器打开网址

示例

@打开网址( 'http://gamediy.net' ) 

打开文件(文件名, relative = True)

中文版: 打开文件(文件名, relative = True)
英文版: OpenFile(filename, relative = True)

功能

打开一个文件,可以是文本,音乐,图片等等,总之就是windows能打开的东西都能打开.

示例

@打开文件( '音乐/无双主题音乐.ogg' )  ## 利用相对路径名打开无双根目录下的文件 
@打开文件( 'c:/无双文档.doc', 否 )    ## 利用绝对路径名打开任意目录下的文件,注意要加 否 

清空对话(角色标记)

中文版: 清空对话(角色标记)
英文版: ClearDialog(tag)

功能

清空角色的对话内容,主要用于全屏文本模式.也可以用来隐藏对话框

备注

该函数和直接在剧本中使用 ' ' 的区别在于, ' ' 需要一次鼠标点击才能继续前进,而 清空对话 不需要

隐藏对话(角色标记)

中文版:隐藏对话(角色标记)
英文版:HideDialog(tag)

功能

根据 角色标记 隐藏对应的对话框.

备注

该函数和 清空对话 的区别在于,它不会清空对话框里面的内容.所以下次角色开始说话时,以前说的内容也会显示出来.
主要在游戏中的一些特殊桥段中使用.

退出游戏()

中文版: 退出游戏()
英文版: ExitGame()

功能

直接退出游戏,无提示

休息(秒数, clear=False, mute=False)

中文版: 休息(秒数, clear=False, mute=False)
英文版: Sleep(seconds, clear=False, mute=False)

功能

使系统暂停 秒数 , 可以同时清屏和静音

备注

系统暂停期间会屏蔽用户输入,但其他逻辑如动画会照常运转

设置文本速度( speed = 0.03 )

中文版: 设置文本速度( speed = 0.03 )
英文版: SetTextSpeed( speed = 0.03 )

功能

设置文本动画的速度,数值越大,速度越慢.数值为0时,文本会瞬间出现(无动画)

备注

在剧本的关键地方修改一下文本动画速度,可以起到烘托气氛的作用

自动前进(textWaitTime = 0.08)

中文版: 自动前进(textWaitTime = 0.08)
英文版: AutoContinue(textWaitTime = 0.08)

功能

自动前进,每个字等待textWaitTime秒

备注

textWaitTime小于0时,关闭自动前进功能.

屏蔽输入(是)

中文版: 屏蔽输入(是)
英文版: BlockInput(True)

功能

可以屏蔽用户输入.使用 屏蔽输入(否) 重新接收用户输入

备注

搭配 自动前进 可以做一段无需用户输入的小剧情.但要注意不能在需要用户输入的地方(如分支选项处)屏蔽用户输入,否则可能造成游戏死锁.

绘制(组名, tag, x, y, z = 0, anchor = 'NW', alias = None)

中文版: 绘制(组名, tag, x, y, z = 0, anchor = 'NW', alias = None)
英文版: Draw(group, tag, x, y, z = 0, anchor = 'NW', alias = None)

功能

根据锚点定位系统来绘制一张图片

备注

和 显示 指令很像,但是 group 和 tag 都可以用Python变量了
使用alias(别名),可以方便地将同一张图片绘制多次
z值控制图片的遮挡顺序.z值越大图片越靠前(会挡住z值较小的图片)

返回值

绘制指令能够返回新生成的图片,方便后续处理,具体参考示例.

示例

@绘制('无双', '高兴', 0, 0, anchor = '左上')
和 显示 无双 高兴 的效果差不多(除了坐标)

@绘制('无双', '高兴', 0, 0)
@无双变量2 = 绘制('无双', '高兴', 400, 0, alias = '无双2')
会在屏幕上同时显示两个无双.其中 无双2 可以单独操作,例如随后可以调用
隐藏 无双2
将这个图片隐藏掉
另外,还可以使用
@无双变量2.线稿化()
效果和
@无双2.线稿化()
相同

隐藏(组名)

中文版: 隐藏(组名)
英文版: Hide(group)

功能

隐藏图片

备注

组名可以用Python变量

示例

@隐藏('无双')
效果和 隐藏 无双 一样

说(内容, who = None)

中文版: 说(内容, who = None)
英文版: Say(text, who = None)

功能

利用角色来说话,和说话指令类似

备注

内容和角色都可以是Python变量

示例

@说('我想说的话', w)
效果和 w '我想说的话' 一样

播放音乐(音乐文件路径)

中文版: 播放音乐(音乐文件路径)
英文版: PlayMusic(file)

功能

播放一个音乐文件.和在无双脚本中中使用 音乐 指令相同.

静音()

中文版: 静音()
英文版: Mute()

功能

静音.和在无双脚本中使用 静音 指令相同.

设置系统变量(变量名,变量值)

中文版: 设置系统变量(变量名,变量值)
英文版: SetSystemParam(param, value)

功能

保存一个”系统级”的变量,供以后使用,该变量会在退出游戏时自动保存,进入游戏时自动载入.
变量名和变量值可以为任意的python变量类型.

备注

可以用来存储玩家已经达成了哪些结局,打出了哪些CG,等等.

读取系统变量(变量名)

中文版: 读取系统变量(变量名)
英文版: GetSystemParam(param)

功能

和 设置系统变量 配套使用

备注

返回以前使用 设置系统变量 保存的值.如果以前没有用 设置系统变量 来保存这个值,则返回空值(None)

复制(对象)

中文版: 复制(对象)
英文版: Copy(object)

功能

返回对象的一份拷贝

备注

主要用于快速定义角色,参见角色定义详解

打印(内容)

中文版: 打印(内容)
英文版: print(content)

参数

内容:要打印的内容

备注

其实就是Python的print…调试时也许有用

消息框(文本内容,title="无双提示")

中文版: 消息框(文本内容,title=“无双提示”)
英文版: MessageBox(text, title=“无双提示”)

功能

弹出一个系统消息提示框.消息内容为 文本内容 ,消息框标题为 标题 .

备注

好像没什么用…

运行脚本(脚本文件名)

中文版: 运行脚本(脚本文件名)
英文版: RunScript(filename)

功能

加载一个Python脚本

参数

脚本文件名:脚本文件的名称(无需包含目录名).

备注

脚本文件可以放在根目录的'代码'目录下,也可以放在游戏目录下.把Python脚本放到其他文件里面,可以使剧本更清爽.
<双生>的界面和角色定义,就放到了单独的脚本文件里(界面.txt)

界面系统相关API

请参考界面系统


doc/api.txt · 最后更改: 2010/09/30 08:59 由 lance
到顶部