Tags: NVLMaker

#NVL界面数据说明(二)保存与读取界面


#(零)整体结构说明

如上一文档所说,保存、读取界面一共有三个配置文件。那是因为这两个界面共用同一套排版,但是用户可以选择不同的图片和文字颜色。因此排版部分(坐标、显示内容等)被记录在uislpos内。 保存界面会使用到哪些图片和颜色,记录在uisave内,读取则是在uiload内。uisave/uiload的结构是完全相同的。

文件名说明
uisave保存游戏界面图素
uiload读取游戏界面图素
uislpos保存、读取游戏界面排版

#(一)uisave/uiload

##(1)一般控件&按钮*

nametype说明
bgdstring背景图片名
lastsavemarkstring最近保存的档案旁边会出现这个图片
button按钮*特殊控件,一个按钮代表一个存档栏位
back按钮*返回上层界面按钮,由于如上所说,坐标和图片分开记录,这里的按钮和其他界面按钮不同
up按钮*向前翻页按钮
down按钮*向后翻页按钮

###①按钮*的结构

没有参数x/y,其他都与一般按钮相同。

nametype说明
normalstring按钮-一般状态下的图片
overstring按钮-hover状态下的图片
onstring按钮-click状态下的图片
entersestring按钮-hover状态时播放的音效
clicksestring按钮-click状态时播放的音效

##(2)颜色组

存取界面上所有的文字都可以单独指定位置、大小和颜色,所以在这个地方有茫茫多的各种颜色。 而且凡是在SL按钮上的颜色都是包括一般、选中、按下三个状态的,所以下面就有这么多的颜色组:

nametype说明
num颜色组存档按钮编号的颜色组
date颜色组存档日期
bookmark颜色组书签名(*
history颜色组显示在存档按钮上,最近一句对话的记录
draw特殊颜色组请见下方说明

###①一般颜色组结构

nametype说明
normalcolor按钮-一般状态下的文字颜色
overcolor按钮-hover状态下的文字颜色
oncolor按钮-click状态下的文字颜色

###②draw颜色组结构

存取界面还有一个功能就是当鼠标移动到某个存档按钮上时,玩家可以选择是否在其他位置显示额外信息。 这些额外信息包括截图、书签名、日期、最近一句对话的记录。因此有了这个额外颜色组。

nametype说明
talkcolor额外信息:最近一句对话记录的颜色
bookmarkcolor额外信息:书签名颜色
datecolor额外信息:存档日期颜色

#(二)排版配置文件uislpos

于是剩下的坐标、是否使用该控件、字体大小等信息就被放到了uislpos里面。

##(1)一般控件

nametype说明
pagefont文字设置组SL画面上所有的文字将适用这些设置(包括加粗、斜体、阴影、描边等效果的设定、不包括字号)
snapshot特殊设置组hover时显示的截图设置
drawmark特殊设置组hover时显示的书签名文字设置
drawdate特殊设置组hover时显示的日期文字设置
drawtalk特殊设置组hover时显示的最近对话文字设置

###①全页面文字设定pagefont

nametype说明
boldbool是否粗体
italicbool是否斜体
shadowbool是否阴影
edgebool是否描边
shadowcolorcolor文字阴影色
edgecolorcolor文字描边色

###②snapshot

SL按钮hover时显示的存档缩略图。鼠标离开按钮即消失

nametype说明
visiblebool是否可见(等于是否使用该功能)
xint显示的坐标
yint显示的坐标

###③drawmark

SL按钮hover时显示的书签名,鼠标离开按钮即消失

nametype说明
usebool是否使用
xint显示的坐标
yint显示的坐标
sizeint文字大小

###④drawdate

SL按钮hover时显示的日期名,鼠标离开按钮即消失

nametype说明
usebool是否使用
xint显示的坐标
yint显示的坐标
sizeint文字大小

###⑤drawtalk

SL按钮hover时显示的最近对话,鼠标离开按钮即消失

nametype说明
usebool是否使用
xint显示的坐标
yint显示的坐标
sizeint文字大小
countint每行的文字数,超过会自动换行
spaceint每行的高度

##(2)SL按钮相关控件

SL按钮的位置、描绘在SL按钮上的文字设置等。

nametype说明
locateSL按钮位置设置组通过一个嵌套的array来记录每页显示几个SL按钮和它们的位置
num特殊设置组按钮上的档案编号设置
date特殊设置组按钮上的存档日期设置
bookmark特殊设置组按钮上的书签名设置
history特殊设置组按钮上的最近对话设置
lastsavemark特殊设置组按钮上最近存档标记设置
smallsnap特殊设置组按钮上显示的小截图设置

###①locate

就是个array套array, locate[0][0]代表第一个存档按钮的位置x,locate[0][1]代表第一个存档按钮的位置y。 locate[1][0]代表第二个存档按钮的位置x,以此类推。 存取界面一共能翻几页是由Config.tjs里设定的存档总数/这里的SL按钮个数(即locate.count)计算出来的。 locate.count不会超过30(每页最多只允许显示30个SL按钮栏位),也不会超过Config.tjs里设定的存档总数。

###②num

存档按钮的编号格式,显示在游戏里是“pre+该存档编号+after”,可以组成类似:“第X章”、“【no.X】”这样的效果。 这里开始(2)num到(5)history都是描绘在存档按钮上的文字, 因此他们的坐标是相对按钮本身而言的。例如0,0就是对应SL按钮的左上角。 (6)lastsavemark/(7)smallsnap的坐标也是相对按钮的,但它们并不描绘在按钮上(可以显示在按钮周围),因此坐标可以为负值。

nametype说明
usebool是否使用
xint显示的坐标
yint显示的坐标
heightint文字大小
prestring存档按钮编号数字的前缀,例如File No. xxx
afterstring存档按钮编号数字的后缀,例如 xxx章

###③date

存档按钮上描绘的存档日期文字

nametype说明
usebool是否使用
xint显示的坐标
yint显示的坐标
heightint文字大小

###④bookmark

存档按钮上描绘的书签名文字

nametype说明
usebool是否使用
xint显示的坐标
yint显示的坐标
heightint文字大小

###⑤history

存档按钮上描绘的最近对话文字

nametype说明
usebool是否使用
xint显示的坐标
yint显示的坐标
heightint文字大小
numint每行字数……目前是只支持单行,超过num限定长度的对话会被省略变成“……”

###⑥lastsavemark

最近保存档案旁边会出现这个图片标记。图片标记可以出现在按钮之外的地方(相对坐标可以为负值或超过按钮长度)。

nametype说明
usebool是否使用
xint显示的坐标
yint显示的坐标

###⑦smallsnap

每个存档按钮对应的档案截图,图片可以出现在按钮之外的地方(相对坐标可以为负值或超过按钮长度)。 smallsnap和hover时在固定位置显示的snapshot使用的都是存档对应的图片,大小即是Config.tjs里设定的存档截图大小。

nametype说明
usebool是否使用
xint显示的坐标
yint显示的坐标

##(3)SL界面其他按钮*

这里的按钮参数格式也比较特殊,总之当初就这么设定成array了,我也不记得为什么(喂)

nametype说明
uparray向前翻页按钮,up[0]up[1]up[2]分别代表坐标x,坐标y和是否使用。
downarray向后翻页按钮,down[0]down[1]down[2]分别代表坐标x,坐标y和是否使用。
backarray返回上层界面按钮,back[0]back[1]back[2]分别代表坐标x,坐标y和是否使用。

Written with StackEdit.