#NVL变数记录 Tags: NVLMaker

本工具为使用吉里吉里/KAG开发的免费开源软件。 下载最新版本、疑问、讨论、添加自制游戏、推荐素材等,请访问THE NVL Maker官网。



这里列出了游戏系统中的相关变数名称和作用,当需要修改系统时可以参考。 为自有变数命名时也请避开这些已有的变数名。

##系统参数

游戏初始化时所用到的系统变数和默认值。 在系统设置界面对应文件option.ksmacro_ui.ks里也可以找到相关操作。

变数名类型默认值说明
sf.初始化Booleanfalse当第一次执行游戏,其他数值初始化完毕后,该值被设为true
sf.cglistDictionary%[]登陆CG时,会将对应CG名的值设为1,可根据sf.cglist['图片名']的值判断这张CG是否已经登陆
sf.历史Array[]每个存档对应的最后一句对话将被保存在对应编号里,例如存档0对应的就是sf.历史[0]
sf.最近存储页Int1存档、读取系统翻到的页数,当玩家打开存档、读取界面时,会自动翻到上次打开的页面
kag.allskipBooleanfalsetrue-skip时跳过全部/false-skip时只跳过已读
kag.textspeedInt5跳字速度,范围0-10,10为最快(不等待)
kag.autospeedInt5自动前进速度,范围0-10,10为最快(不等待)
变数名类型默认值说明
sf.语音初始化Boolean0当第一次执行游戏,音量相关系统数值初始化完毕后,该值被设为1
kag.bgmvolumeInt50音乐音量
kag.sevolumeInt100音效总音量(包括一般音效和语音)
sf.sevolumeInt50音效音量、因为系统变数kag.se[0].volume不会被保存而额外设置的值
sf.voicevolumeInt50语音音量、因为系统变数kag.se[1].volume不会被保存而额外设置的值

##界面相关

###NVL自有配置文件

类型均为dictionay或Array,保存位置为macro文件夹下。 THE NVL Maker的编辑器会按照一定格式,将编辑好的界面参数写入这些文件。 而游戏在运行时则通过macro.ks文件载入,读取具体的坐标、图片名、颜色代码等。

变数名文件对应界面说明
f.settingsetting.tjs选项按钮
f.config_titleuititle.tjs标题画面
f.config_diauidia.tjs对话界面
f.config_menuuimenu.tjs主选单
f.config_slposuislpos.tjs存储、读取系统排版
f.config_optionuioption.tjs系统设置界面
f.config_historyuihistory.tjs历史记录界面
f.config_namenamelist.tjs主要人物姓名,包括人物名和颜色代码
f.config_saveuisave.tjs存储系统图片
f.config_loaduiload.tjs读取系统图片
f.config_cgmodeuicgmode.tjsCG鉴赏界面

###存取系统相关

可在save.ksload.ksmacro_sl.ksMySaveLoadFunction.tjs内找到相关变数的操作。保存位置为nvl文件夹下。

变数名类型说明
sf.历史Array每个存档对应的最后一句对话将被保存在对应编号里,例如存档0对应的就是sf.历史[0]
sf.最近存储页Int存档、读取系统翻到的页数,当玩家打开存档、读取界面时,会自动翻到上次打开的页面
f.config_slDictionary当在保存界面时,指向f.config_save,当在读取界面时,指向f.config_load,用于调用对应界面的图片
tf.最近档案Int当点下某个存档或读取按钮时,记录对应的档案编号
sf.最近档案Int当保存成功时,会将最后一次保存的档案编号记录到这里,对应的按钮会显示New!符号

###CG鉴赏模式相关

可在cgmode.ksmacro_cg.ks内找到相关变数的操作。保存位置为nvl文件夹下。

变数名类型说明
sf.cglistDictionary登陆CG时,会将对应CG名的值设为1,可根据sf.cglist['图片名']的值判断这张CG是否已经登陆
f.cginfoString所有要显示的CG文件名列表,默认为cglist.txt
f.cglistArrayCG缩略图(CG列表内每行第一张CG)的列表,从f.cginfo对应的文件内读取
tf.CG页数Int根据每页可显示的CG数和CG缩略图总数,计算出一共需要翻几页
tf.当前CG页Int当前翻到的CG页数,玩家每次打开CG鉴赏界面时,都会默认翻到第一页
tf.CG差分Array点下CG缩略图按钮时,会取得对应的CG差分(CG列表内同一行的所有CG中已经登陆的)并保存到这个变数内
tf.CG编号Int点下CG缩略图按钮时,接下来要显示的CG编号,每当显示一张编号就增加1,直到tf.CG差分的内容都显示完毕
tf.当前CGString根据tf.CG差分tf.CG编号取得的将要显示的CG图片文件名

###BGM鉴赏模式相关

可在bgm.ksmacro_bgm.ks内找到相关变数的操作。保存位置为nvl文件夹下。

变数名类型说明
f.bgmlistArray读取bgmlist.txt的内容,取得曲目名和对应的音乐文件名
f.bgmnumpInt音乐鉴赏模式每页显示的曲目数,默认为12,分成两栏,左右各6首
tf.BGM页数Int根据每页可显示的曲目数和bgmlist.txt内的曲目总数,计算出一共需要翻几页
tf.当前BGM页Int当前翻到的BGM页数,玩家每次打开BGM鉴赏界面时,都会默认翻到第一页
tf.当前BGMString当点下曲目按钮时,取得对应播放的音乐文件名

###movepos指令相关

位置为nvl/macro_play.ks 相比原版的移动指令[move],这个自定义指令会取得当前图片所在的位置,然后进行相对移动,因此用到了很多临时变数。 注:[move]是不管图片在哪,都移动到指定坐标,而[movepos]可以做出“从现在的位置向左移动20像素”这样的效果。

变数名说明
tf.layer移动的图层名
tf.left图层现在的位置
tf.top图层现在的位置
tf.oop图层现在的透明度
tf.x横向移动的值,默认为0(不移动)
tf.y纵向移动的值,默认为0(不移动)
tf.opacity透明度的值,默认和图层现在的透明度相同(不改变)
tf.x2由tf.left和tf.x计算出的图片将要移动到的坐标
tf.y2由tf.top和tf.y计算出的图片将要移动到的坐标
tf.path由tf.x2、tf.y2和tf.opacity组成的移动路径

###插件相关

为了保证插件效果能够正常保存读取而使用到的记录变数。

变数名所在文件说明
f.rainsrain.ks下雨粒子效果
f.snowssnow.ks下雪粒子效果
f.sakurassakura.ks樱花粒子效果
f.momijismomiji.ks红叶粒子效果
f.fireflysfirefly.ks萤火虫粒子效果
f.noisesoldMovie.ks旧电影效果
f.pnoisesoldMovie.ks旧电影效果
f.fogsfog.ks雾气效果

###其他

变数名类型说明
f.姓String主角姓氏,当有内容时,调用[主角]指令就会显示成【姓名】格式
f.名String主角名字,当有内容时,调用[主角]指令就会显示成【姓名】格式
tf.clickedInt记录上次点击鼠标左键的时间,判断点击间隔,避免左键点击显示对话框时,再次戳到隐藏对话框按钮