加载中…
个人资料
天娜
天娜
  • 博客等级:
  • 博客积分:0
  • 博客访问:58,830
  • 关注人气:65
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

吉里吉里KAG入门 其二:前景层和背景层的操作

(2009-11-28 11:10:15)
标签:

krkr

游戏

分类: 简单易懂教程

如上一节图例所示,文字ADV游戏是通过多图层叠加显示而成。从下往上依次是:背景层(base)、前景层(layer)、文字层(message)。

背景层显示背景图像,背景层只有一个,默认为可见。

前景层显示立绘以及其他游戏图片,前景层可以使用多个。

文字层显示游戏中的文字内容,文字层可以使用多个。按钮图片作为和文字link并列功能,其位置在文字层上。

系统默认的层的数量是前景层3个,文字层2个。根据自身需要在config.tjs中进行更改,比如想要前景层显示左中右各站立三个人物+对话框+头像,文字层中一般对话+人名显示+选项按钮层,则将前景层设置为5个,文字层设置为3个。

在实际使用中,前景层的编号是layer=0~4,而文字层的编号是layer=message0~message2,同类中编号越大的层位置越靠上,会遮挡位置较低的层的内容。

 

一、KAG命令基本格式

1、  KAG命令有使用@引导和放在[ ]内两种写法,效果等价,但是@必须放在行头,而[]可以接在行末。

2、  KAG命令由命令名属性两部分构成,属性中分为必须填写的属性选择性填写的属性(选择填写的属性都有其默认值,不填写的情况下为默认值),属性之间用半角空格隔开,书写次序不分前后。所有的KAG命令以及其对应的属性可参考docjpn/kag3doc文件夹中的日文页面的中段“タグリファレンス”页,最近还出了大部分汉化的这个KAG说明文档哦,可以在http://kcddp.keyfc.net的置顶中找到。

 

二、关于前景层和背景层的KAGeXpress命令

========== 显示背景 ==========

# 切换出一张背景图片(bg0.jpg应放在bgimage文件夹)

@bg storage=bg0 time=1000

# 花样切换到另一个背景图片(bg1.jpg应放在bgimage文件夹)

@bg storage=bg1 time=1000 method=universal rule=30

其中storage后接被导入的图像文件名(后缀可写可省略,注意尽量避免所有图片文件有重名现象);

time后接变化时间,单位是毫秒;

method=universal是指执行渐变效果,后面的rule指向的是其要使用的模板图像(已在rule文件夹内,自己打开瞅一眼吧)

切换新背景即得到场景变换的效果,比如背景换成食堂就去了食堂……如果不指定渐变样式,默认是整体淡入淡出变化。一般除了通常的场景图像,还会准备黑屏black.jpg和白屏white.jpg两个文件实现渐黑或者白化的变化。

注:在实际游戏中,切换背景后要增加一点等待时间让玩家的意识接受新背景,一般还会加入等待命令@wait time=500。

 

========== 显示立绘 ==========

# 在前景层的中央显示某立绘图片(图片sample1.png应当放置在fgimage文件夹中)

@fg layer=0 storage=sample1 pos=c

#在其左右各显示另外两个立绘(图片sample2.png,sample3.png应放在同文件夹)

@fg layer=1 storage=sample2 pos=l

@fg layer=2 storage=sample3 pos=r

属性layer指定图像放置的前景层层数,一个前景层只能放置一张图像,放入新图像时旧的会被替换,不能同时显示。

属性storage指向被导入的立绘图片文件名,图片使用带透明度的png格式,宽度一般为游戏屏幕的一半。

属性pos指定立绘的水平位置,可以使用的位置有l,lc,c,lr,r五种,常用的是l,c,r三种(别跟我说你不认识这是left,center和right……注意中间不是middle的m哦)。

注:如果立绘中的人物较宽,中间的立绘层级较低时可能会被左右图挡在后面不好看,实际上想要在画面中同时显示三个人物时,最好将中间的设置为layer=2比如

@fg layer=2 storage=sample1 pos=c

@fg layer=0 storage=sample2 pos=l

@fg layer=1 storage=sample2 pos=r

人物的不同表情通常是很多张完整的立绘,持有同人物的多张立绘图像时,在同层同一位置放入另一张立绘图像就完成表情变化。注意不要放在不同的位置上,不然就成了双胞胎了。

========== 擦除图像 ==========

# 擦除某前景层的图像

@cl layer=0 ;可加入time属性

# 擦除背景层图像(会变成黑色)

@cl layer=base ;可加入time属性

# 擦除背景、前景、文字层的所有内容

@cl all ;不可加入time属性

# 清除前景层和文字层的内容,保留背景

@cl all keep=back ;不可加入time属性,另请确定你的KAGeXpress是beta2的补丁版本,否则此项目可能会出现问题。

 

三、关于前景层和背景层的常用KAG命令

========== 显示图像的@image命令 ==========

常用属性如下

storage=图像名

layer=层数(注意前景层直接写数字,而不是layer=layer0,背景层=base)

page=fore或back(默认fore)

visible=true或false(可见或者不可见,前景1以上默认false)

left=左端像素位置

top=顶端像素位置

(注意,用此命令不能使用time,没有效果!)

在背景层显示背景的例子

@image layer=base storage=bg0

在前景层0(300,50)位置为左上角显示某图片的例子

@image layer=0 storage=sample visible=true left=300 top=50

 

========== 擦除图像的@freeimage命令 ==========

@freeimage layer=需要清除的背景或前景层(base,或0以上整数)

 擦除前景层1的例子

@freeimage layer=1

 

========== 用以改变图层属性的@layopt命令 ==========

常用属性

layer=目标层(某前景层或某文字层)

page=前后(fore或者back)

visible=是否可见(true或者false)

opacity=透明度(0~255,0为全透明)

autohide=右键文字层隐藏模式时此图层是否一并隐藏(true或者false,默认false)

使前景层1为半透明的例子

@layopt layer=1 page=fore visible=true opacity=180 autohide=true

因为总共是255所以一半大约是180。前景层半透明这属性……在表达某个人的幽灵状态之类的时候大概用得上吧(默)

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有