幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4351|回复: 11

[KR] 事件回忆功能右键返回回忆菜单要怎么写?(已解决)

[复制链接]

32

主题

114

帖子

1148

积分

⑥精研

积分
1148
发表于 2010-1-1 10:39:52 | 显示全部楼层 |阅读模式
首先,标志画面是first.ks





如上图,点了按钮“EXTRA”后将进入extra.ks





再点按钮“事件回顾”后将进入datamode.ks,也就是事件回顾菜单





可回顾的事件开启后,按钮出现(如上图)

点击后跳转到事件回顾,命令如下:


*事件回顾
[fadeoutbgm time=500]
[backlay]
[freeimage layer="base" page="back"]
[current layer="message0" page="back"]
[er]
[stoptrans]
[trans method="crossfade" time=500]
[wt]
[current layer="message0" page="fore"]
;=====================================================
;禁止历史记录
[history output="false"]
;设定右键返回事件回顾菜单
[rclick enabled="true" jump="true" storage="datamode.ks" target=*back]
;=====================================================
[if exp="f.beydata==1"]
[jump storage="Memory05.ks" target=*op1]
[endif]


*back
[stopquake]
[backlay]
[freeimage layer=0 page="back"]
[freeimage layer=1 page="back"]
[freeimage layer=2 page="back"]
[freeimage layer=3 page="back"]
[freeimage layer=4 page="back"]
[freeimage layer=5 page="back"]
[position layer=message0 frame="对话框" visible="false" page=back]
[current layer="message0" page="fore"]
[er]
[stoptrans]
[trans method="crossfade" time=200]
[wt]
[current layer="message0" page="back"]
[playbgm storage="open"]
[jump storage="datamode.ks" target="*start"]



点击按钮后,会进入相应的回忆事件,图上显示的是Memory05.ks



Memory05.ks开头的命令是:


*start|回忆 贝丽儿的过往
;=====================================================
;设定右键菜单
[rclick enabled="true" call="true" storage="rmenu.ks" target=*start]
;允许历史记录
[history output="true"]
;=====================================================
*op1
[对话框][字速 sp=60]
直到现在,我依然清楚的记得第一次见到贝丽儿的情景。[p]


为什么要特意写成这样呢?

是因为我设定成,游戏内容与回忆内容是同一个文件

所以前面*start针对的是正常进行游戏中的命令

而*op1则是玩家从回忆菜单跳转过来时,为了避免遇到
[rclick enabled="true" call="true" storage="rmenu.ks" target=*start]
[history output="true"]
这两条命令所采取的措施


按照我的理想,应该是:

(1)玩家在进行游戏时,剧情自然进展到Memory05.ks时,
[rclick enabled="true" call="true" storage="rmenu.ks" target=*start]
[history output="true"]
这两条命令起作用,则右键可以呼唤出有存储、读取按钮的菜单rmenu.ks

(2)当玩家是从回忆事件菜单进入Memory05.ks时,
则首先遇到的命令是:
[history output="false"]
[rclick enabled="true" jump="true" storage="datamode.ks" target=*back]
且因为是跳转到Memory05.ks里的标签*op1,跳过了
[rclick enabled="true" call="true" storage="rmenu.ks" target=*start]
[history output="true"]
所以右键不会呼唤出有存储、读取按钮的菜单rmenu.ks
(因为回忆事件是不可以储存的,否则就乱套了。。。)
右键应该返回到事件回忆菜单datamode.ks才对

可是。。。。。

当我依照上面的写法,在回忆事件进行中右键单击的时候

所有按钮都没有显示出来。。。。

不仅如此,当我继续右键,想返回extra.ks时

变成了下面这样:



对话框闪烁了一下就消失了

我隐约看见应该显示在左上角的按钮显示在对话框上。。。。

而我继续右键,本应该返回标题画面的。。。。

可是却没有效,画面一直停留在extra.ks如上图这张上。。。

不断如此。。。。。。
回复

使用道具 举报

32

主题

114

帖子

1148

积分

⑥精研

积分
1148
 楼主| 发表于 2010-1-1 10:46:10 | 显示全部楼层
(————————为免混淆清除这贴内容————————)
回复 支持 反对

使用道具 举报

32

主题

114

帖子

1148

积分

⑥精研

积分
1148
 楼主| 发表于 2010-1-1 10:52:45 | 显示全部楼层
(————————为免混淆清除这贴内容————————)
回复 支持 反对

使用道具 举报

7

主题

138

帖子

1162

积分

⑥精研

脑残的我。。。。

积分
1162
QQ
发表于 2010-1-1 18:51:55 | 显示全部楼层
没有必要把代码全部复制上来了啊。。。最好可以简述一下到底是什么问题。。。
既然是回忆功能中右键返回没有效果那么说明就是你自己禁用了,也许是一些指令的先后问题
对于datamode.ks中的
;禁止右键隐藏消息层的功能
[rclick enabled="false"]
这个不是很理解,之前先设定了[rclick enabled="true" jump="true" target=*return]
设定在此界面右键可以返回,而跳转了之后又禁用了右键?
然后就是因为你的这个设定,此时右键处于禁用状态,由于条件判断
[if exp="f.beydata==1"]
[jump storage="Memory05.ks" target=*op1]
[endif]
跳转到了Memory05.ks里的*op1标签,虽然说你在Memory05.ks里重新定义了右键设定,但你跳转的是标签*op1,把*start里对右键的设定跳过去了,自然就还是禁用的状态,所以我想把
[jump storage="Memory05.ks" target=*op1]这里的*op1改成*start就好了
回复 支持 反对

使用道具 举报

32

主题

114

帖子

1148

积分

⑥精研

积分
1148
 楼主| 发表于 2010-1-2 02:32:16 | 显示全部楼层
对不起,前面是我太急了,没讲清楚。。。。

而且我没有把有问题的命令写出来,所以造成了混淆。。。。

我还是重讲一遍吧,是这样的。。。。

首先,标志画面是first.ks





如上图,点了按钮“EXTRA”后将进入extra.ks





再点按钮“事件回顾”后将进入datamode.ks,也就是事件回顾菜单





可回顾的事件开启后,按钮出现(如上图)

点击后跳转到事件回顾,命令如下:


*事件回顾
[fadeoutbgm time=500]
[backlay]
[freeimage layer="base" page="back"]
[current layer="message0" page="back"]
[er]
[stoptrans]
[trans method="crossfade" time=500]
[wt]
[current layer="message0" page="fore"]
;=====================================================
;禁止历史记录
[history output="false"]
;设定右键返回事件回顾菜单
[rclick enabled="true" jump="true" storage="datamode.ks" target=*back]
;=====================================================
[if exp="f.beydata==1"]
[jump storage="Memory05.ks" target=*op1]
[endif]


*back
[stopquake]
[backlay]
[freeimage layer=0 page="back"]
[freeimage layer=1 page="back"]
[freeimage layer=2 page="back"]
[freeimage layer=3 page="back"]
[freeimage layer=4 page="back"]
[freeimage layer=5 page="back"]
[position layer=message0 frame="对话框" visible="false" page=back]
[current layer="message0" page="fore"]
[er]
[stoptrans]
[trans method="crossfade" time=200]
[wt]
[current layer="message0" page="back"]
[playbgm storage="open"]
[jump storage="datamode.ks" target="*start"]



点击按钮后,会进入相应的回忆事件,图上显示的是Memory05.ks



Memory05.ks开头的命令是:


*start|回忆 贝丽儿的过往
;=====================================================
;设定右键菜单
[rclick enabled="true" call="true" storage="rmenu.ks" target=*start]
;允许历史记录
[history output="true"]
;=====================================================
*op1
[对话框][字速 sp=60]
直到现在,我依然清楚的记得第一次见到贝丽儿的情景。[p]


为什么要特意写成这样呢?

是因为我设定成,游戏内容与回忆内容是同一个文件

所以前面*start针对的是正常进行游戏中的命令

而*op1则是玩家从回忆菜单跳转过来时,为了避免遇到
[rclick enabled="true" call="true" storage="rmenu.ks" target=*start]
[history output="true"]
这两条命令所采取的措施


按照我的理想,应该是:

(1)玩家在进行游戏时,剧情自然进展到Memory05.ks时,
[rclick enabled="true" call="true" storage="rmenu.ks" target=*start]
[history output="true"]
这两条命令起作用,则右键可以呼唤出有存储、读取按钮的菜单rmenu.ks

(2)当玩家是从回忆事件菜单进入Memory05.ks时,
则首先遇到的命令是:
[history output="false"]
[rclick enabled="true" jump="true" storage="datamode.ks" target=*back]
且因为是跳转到Memory05.ks里的标签*op1,跳过了
[rclick enabled="true" call="true" storage="rmenu.ks" target=*start]
[history output="true"]
所以右键不会呼唤出有存储、读取按钮的菜单rmenu.ks
(因为回忆事件是不可以储存的,否则就乱套了。。。)
右键应该返回到事件回忆菜单datamode.ks才对

可是。。。。。

当我依照上面的写法,在回忆事件进行中右键单击的时候

所有按钮都没有显示出来。。。。

不仅如此,当我继续右键,想返回extra.ks时

变成了下面这样:

  

对话框闪烁了一下就消失了

我隐约看见应该显示在左上角的按钮显示在对话框上。。。。

而我继续右键,本应该返回标题画面的。。。。

可是却没有效,画面一直停留在extra.ks如上图这张上。。。

不断如此。。。。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

32

主题

114

帖子

1148

积分

⑥精研

积分
1148
 楼主| 发表于 2010-1-2 02:54:39 | 显示全部楼层
我真的不知道自己是哪里写错了。。。。。。

麻烦大人耐心看完我写的命令,帮我指出哪里有错好么。。。。

感激不尽的说。。。。。。。
回复 支持 反对

使用道具 举报

32

主题

114

帖子

1148

积分

⑥精研

积分
1148
 楼主| 发表于 2010-1-2 02:56:32 | 显示全部楼层
难道是因为正式剧情和回忆菜单都使用同一个Memory05.ks的关系么?

难道一定要把回忆菜单使用的剧情部分额外再另复制出来?

可是那样好占地方的说。。。。我这个方法真的行不通嘛?
回复 支持 反对

使用道具 举报

7

主题

138

帖子

1162

积分

⑥精研

脑残的我。。。。

积分
1162
QQ
发表于 2010-1-2 14:51:00 | 显示全部楼层
其实我想问。。。你有用我说的方法去解决一下么
可以的话先把我说的话再看一次
回复 支持 反对

使用道具 举报

32

主题

114

帖子

1148

积分

⑥精研

积分
1148
 楼主| 发表于 2010-1-2 18:02:23 | 显示全部楼层
引用第7楼pengyu5008于2010-01-02 14:51发表的  :
其实我想问。。。你有用我说的方法去解决一下么
可以的话先把我说的话再看一次
我的新回帖就是针对殿的回复发出的呀
前面的禁用右键和标签*op1都是我特意写的
用意也在上面的回帖里说明了,请殿耐心看一下

禁用右键命令是我在多次写“跳转回菜单”命令失败后,为了继续游戏制作而临时写下来预防报错的临时命令
是特意那样写的,我实际想写但总是出错、需要大人们纠正的命令已经在上面的回帖里写出了

至于*op1是为了在实际剧情与回忆剧情并用一个文件时命令不冲撞而特意设置的
为的就是跳过*start下的那两条命令,出错的写法我已经在上面的回帖里写出了
出什么错也详细写了,烦请大人耐心看一下,帮帮我好吗?感激不尽的说。。。
回复 支持 反对

使用道具 举报

32

主题

114

帖子

1148

积分

⑥精研

积分
1148
 楼主| 发表于 2010-1-2 18:17:01 | 显示全部楼层
我一上来因为太过着急,所以直接复制了一大堆命令过来

造成殿的混淆了,对不起。。。。。

我把新回帖也修改到顶楼了,请殿帮我看一看。。。。

*back
[stopquake]
[backlay]
[freeimage layer=0 page="back"]
[freeimage layer=1 page="back"]
[freeimage layer=2 page="back"]
[freeimage layer=3 page="back"]
[freeimage layer=4 page="back"]
[freeimage layer=5 page="back"]
[position layer=message0 frame="对话框" visible="false" page=back]
[current layer="message0" page="fore"]
[er]
[stoptrans]
[trans method="crossfade" time=200]
[wt]
[current layer="message0" page="back"]
[playbgm storage="open"]
[jump storage="datamode.ks" target="*start"]


这段写法究竟哪里不对了,拜托请帮我指出

谢谢。。。谢谢。。。。拜托的说。。。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2024-4-20 06:47 , Processed in 0.034960 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表