幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
楼主: takoya

[KR] [求助]如何在KRKR中實現血槽的功能?(已解決)

[复制链接]

8

主题

122

帖子

1364

积分

⑥精研

积分
1364
发表于 2007-12-19 17:56:58 | 显示全部楼层
。。。目前连Kag都不太搞得清楚的人路过。。。

(试图用Kag搞出厉害的效果。。。未遂。。。)——问题重重。。。 [s:6]

现在只会用action layer搞个移动,淡入淡出什么的。。。再用逐帧动画弄点伪效果。。。  [s:6]
回复 支持 反对

使用道具 举报

32

主题

1176

帖子

10216万

积分

⑥精研

大家都爱好少年

积分
102162186
发表于 2007-12-19 18:51:28 | 显示全部楼层
你可以问我楼上[殴] [s:16]

P。S 话说……淡入淡出效果……我曾经根本就不当他们是效果……但当我现在努力在脚本里实践这一切时,才发现这种不为人知的细节里有多少艰辛……[<---跑题]
战,然后死!
回复 支持 反对

使用道具 举报

36

主题

996

帖子

350万

积分

⑧专业

积分
3507413
发表于 2007-12-19 18:56:58 | 显示全部楼层
的确可以问我……
话说……淡入淡出……在kag里或者tjs里实现的确不麻烦…………不过我不会rm…………夜你加油……
回复 支持 反对

使用道具 举报

8

主题

122

帖子

1364

积分

⑥精研

积分
1364
发表于 2007-12-19 19:01:37 | 显示全部楼层
大感谢~~~以后遇到问题一定求教~~

不过大大们都很忙,所以我一般都自己研究到山穷水尽,气绝身亡的边缘才敢出来劳烦大家。。。
回复 支持 反对

使用道具 举报

32

主题

1176

帖子

10216万

积分

⑥精研

大家都爱好少年

积分
102162186
发表于 2007-12-19 19:04:39 | 显示全部楼层
[s:6] 其实RMXP只是单纯淡入什么的还好……但如果是设置比较华丽的效果……比如说对话框卷动啊……人物眨眼啊……弹字啊[这个在KR里完全是自带功能……]右键菜单啊……系统变量啊……
全部……都需要动脚本……
我正在思索为什么就算这样我还在用RMXP|||
战,然后死!
回复 支持 反对

使用道具 举报

122

主题

3954

帖子

24万

积分

超级版主

传说中的Bunny坑神~!

Rank: 8Rank: 8

积分
244543

声命组铜赏

发表于 2007-12-19 23:01:39 | 显示全部楼层
一来发现3页了居然没有用到这个最简单的解决办法:
============================================================
两种用法:
一个血槽浪费一个层的话:
[image layer=1 storage="bar" clipleft=0 cliptop=0 clipheight=20 clipwidth="&f.hp"]
之类的,clipwidth就可以限定图片的长度. (和TJS一点关系都没有啊~)

熟悉pimage的话:
[pimage layer=1 storage="bar" dx=267 dy=352 sw=&sf.音乐音量*3.3 page="fore"]
比如说这种
dx和dy代表在大图上显示的位置,
sw代表截取的长度,(用变量当然没问题啦)
然后每次改变数值时候刷新下画面就行.

愿意的话可以在参数里用计算式,比如100*f.A/f.B之类的,都没有问题.
如果需要连续改变数值自己写个if+jump的循环然后每加减一刷新一次画面.

至于你的move带参数的问题...是怎么写的呢?
http://www.nvlmaker.net/
回复 支持 反对

使用道具 举报

122

主题

3954

帖子

24万

积分

超级版主

传说中的Bunny坑神~!

Rank: 8Rank: 8

积分
244543

声命组铜赏

发表于 2007-12-19 23:12:58 | 显示全部楼层
关于数值条插件的问题--不太推荐新手使用...不过还是贴一下供参考...
(自己实验时候写的,所以代码很WS,还用中文做变量名...表抽我)

这是左右箭头修改中间数值槽的用法...不太对口,不过操作数值条的方法是在TJS函数里的.
  1. [iscript]
  2. //------------------------------------------------------------------------------------
  3. //音量调节函数
  4. //------------------------------------------------------------------------------------
  5. function optionVolume(类型,增加)
  6. {
  7. if (增加==true && 类型=='bgm' && sf.音乐音量<100)  sf.音乐音量++;
  8. if (增加==false && 类型=='bgm' && sf.音乐音量>0) sf.音乐音量--;
  9. if (增加==true && 类型=='se' && sf.音效音量<100)  sf.音效音量++;
  10. if (增加==false && 类型=='se' && sf.音效音量>0) sf.音效音量--;
  11. kag.bgm.setOptions(%['gvolume'=> sf.音乐音量]);
  12. kag.se[0].setOptions(%['gvolume'=>sf.音效音量]);
  13. global.variablebar_object.setVariableBarOption("bar1", void, void, void,sf.音乐音量, true); //就是这里啦
  14. global.variablebar_object.setVariableBarOption("bar2", void, void, void,sf.音效音量, true);
  15. }
  16. [endscript]
复制代码

实际创建按钮的部分:
如果把"点下按钮时调用的函数"改成"每过一段时间执行的函数",就可以做到自动刷新画面的效果.
  1. ;创建按钮
  2. [locate x=255 y=353]
  3. [button graphic=小箭头_左 ontimer="optionVolume('bgm',false)" interval=50]
  4. [locate x=599 y=353]
  5. [button graphic=小箭头_右 ontimer="optionVolume('bgm',true)" interval=50]
  6. [locate x=255 y=442]
  7. [button graphic=小箭头_左 ontimer="optionVolume('se',false)" interval=50]
  8. [locate x=599 y=442]
  9. [button graphic=小箭头_右 ontimer="optionVolume('se',true)" interval=50]
复制代码

创建变量槽:
  1. ;创建2个变量条
  2. @createVariableBar name=bar1 storage=数值条_变量 scrolllength=328 direction=right canselect=false min=0 max=100 page="fore"
  3. @setVariableBarOption name=bar1 visible=true left=267 top=352 value=&sf.音乐音量
  4. @createVariableBar name=bar2 storage=数值条_变量 scrolllength=328 direction=right canselect=false min=0 max=100 page="fore"
  5. @setVariableBarOption name=bar2 visible=true left=267 top=441 value=&sf.音效音量
复制代码
http://www.nvlmaker.net/
回复 支持 反对

使用道具 举报

18

主题

428

帖子

5260

积分

⑦老手

在美工荒中挣扎的全能

积分
5260
QQ
发表于 2007-12-19 23:47:06 | 显示全部楼层
move的路径里代入变量可以用TJS拼合字符串。

比如说&"'('+tf.x+','+tf.y+','+tf.opacity+')'"
其实这是KAG有爱的地方之一啊。

(PS,我不保证上面这个是对的,不过思路大概就是这样了)
回复 支持 反对

使用道具 举报

122

主题

3954

帖子

24万

积分

超级版主

传说中的Bunny坑神~!

Rank: 8Rank: 8

积分
244543

声命组铜赏

发表于 2007-12-19 23:54:34 | 显示全部楼层
间接的用法:
@eval exp="f.test='(0,0,0)(0,0,255)'"
@move layer=1 time=400 path=&f.test
像这么用OK.
所以,也可以变成:
@eval exp="f.a='0'"
@eval exp="f.test='(0,0,0)('+&.f.a+',0,255)'"
@move layer=6 time=400 path=&f.test

注意""和''的使用就没问题了...
http://www.nvlmaker.net/
回复 支持 反对

使用道具 举报

4

主题

22

帖子

123

积分

③业余

积分
123
 楼主| 发表于 2007-12-20 11:03:27 | 显示全部楼层
引用第25楼CountD于2007-12-19 23:01发表的  :
一来发现3页了居然没有用到这个最简单的解决办法:
============================================================
两种用法:
一个血槽浪费一个层的话:
[image layer=1 storage="bar" clipleft=0 cliptop=0 clipheight=20 clipwidth="&f.hp"]
.......

原來可以這麽簡單ORZ
看來我的基礎實在是太[s:5]
非常感謝COUNTD!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-5 09:11 , Processed in 0.019555 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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