Project1

标题: 如何做这样的效果:使用物品后调出一个界面,内详 [打印本页]

作者: new1984    时间: 2008-5-12 22:55
标题: 如何做这样的效果:使用物品后调出一个界面,内详
物品--公共事件-插入脚本 脚本该怎么写?

这个物品就相当于一个专集,使用之后打开一个界面,
,里面有多首歌,选了某一首之后就能成为BGM播放了。{/hx}




我只有520分,给少了 愿意全部给。
{/dk}{/dk} [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 八云紫    时间: 2008-5-12 23:16
哦哦,那个,公共事件是拿来做什么的?
作者: new1984    时间: 2008-5-12 23:35
使用物品之后  不是要调出一个界面吗?
作者: 八云紫    时间: 2008-5-12 23:37
公共事件可以新建界面?感觉公共事件放这个没什么用处。

现在在上课中......,没VX,晚上帮你想想。
作者: new1984    时间: 2008-5-12 23:38
那如何使用物品之后 打开这个专集的截面?{/jy}
作者: Beside    时间: 2008-5-13 00:16
事件和脚本都可以完成
事件
参照[图片自制菜单]:
http://rpg.blue/web/htm/news129.htm
调用一些公共事件来完成这个界面 只要各个选项选了以后目的是更改bgm就可以了
脚本
新建一个sence和1个window
window里面各个bgm是选项  同上方法
然后物品的公共事件里插入脚本$sence = Sence_xxx.new就可以了
当然说的都是方法...具体要靠自己做
作者: new1984    时间: 2008-5-13 04:09
图片自制菜单的录象看完了,貌似我的要求没那么高,我只要默认的界面就OK了

感觉写scene和window 就是我想要的~~可是貌似我看了默认的 scene和window的脚本
写不出来啊啊~~{/ll}
作者: 雪流星    时间: 2008-5-13 07:24
XP提問區有一個腳本教程蒐集帖
LZ可以去慢慢的學習
作者: new1984    时间: 2008-5-13 17:06
VX和XP的 能一样吗?  我用的是VX{/fd}
作者: 暴风の龙    时间: 2008-5-13 17:09
自己用脚本写了这么个界面后,再用公共事件呼叫就可以了。
问题是这个脚本你会不会写,不会写还是考虑用图片是比较快的了。

作者: new1984    时间: 2008-5-13 21:07
以下引用暴风の龙于2008-5-13 9:09:02的发言:

自己用脚本写了这么个界面后,再用公共事件呼叫就可以了。
问题是这个脚本你会不会写,不会写还是考虑用图片是比较快的了。

图片自制菜单,我的机器是装不了PS的 何况也不会用PS

脚本的话  刚才 参照站里的一些教程,自己尝试了一下,,失败~~~{/ll}{/ll}
作者: Beside    时间: 2008-5-13 21:13
我已经写了一个
  1. class Scene_Music < Scene_Base
  2.   #--------------------------------------------------------------------------
  3.   # ● 初始化对象
  4.   #     menu_index : 指令光标初期位置
  5.   #--------------------------------------------------------------------------
  6.   def initialize(menu_index = 0)
  7.     @menu_index = menu_index
  8.   end
  9.   #--------------------------------------------------------------------------
  10.   # ● 开始处理
  11.   #--------------------------------------------------------------------------
  12.   def start
  13.     super
  14.     create_menu_background                #创建菜单背景
  15.     create_command_window                 #创建命令窗口
  16.   end
  17.   #--------------------------------------------------------------------------
  18.   # ● 结束处理
  19.   #--------------------------------------------------------------------------
  20.   def terminate
  21.     super
  22.     dispose_menu_background               #菜单背景释放
  23.     @command_window.dispose               #命令窗口释放
  24.   end
  25.   #--------------------------------------------------------------------------
  26.   # ● 更新画面
  27.   #--------------------------------------------------------------------------
  28.   def update
  29.     super
  30.     update_menu_background                #菜单背景更新
  31.     @command_window.update                #命令窗口更新
  32.     update_command_selection              #更新命令选择
  33.   end
  34.   #--------------------------------------------------------------------------
  35.   # ● 生成指令窗口
  36.   #--------------------------------------------------------------------------
  37.   #下面是命令窗口的创建! s1,s2,s3就是各个选项
  38.   def create_command_window               
  39.     s1 = "music_1"
  40.     s2 = "music_2"
  41.     s3 = "music_3"
  42.   #于是我们创建了一个命令窗口,宽度160,选择项是s1~s3
  43.     @command_window = Window_Command.new(160, [s1, s2, s3])
  44.     @command_window.index = @menu_index
  45.   end
  46.   #--------------------------------------------------------------------------
  47.   # ● 更新指令选择
  48.   #--------------------------------------------------------------------------
  49.   #这个是页面刷新过程中等待你进行下步操作的内容定义
  50.   def update_command_selection
  51.     #当[取消]键按下的时候
  52.     if Input.trigger?(Input::B)
  53.       Sound.play_cancel
  54.       $scene = Scene_Map.new
  55.     #当[确定]键按下的时候
  56.     elsif Input.trigger?(Input::C)
  57.       Sound.play_decision
  58.       case @command_window.index
  59.       when 0   
  60.     #这里就是最后1步 执行你选中某项以后的命令
  61.         Audio.bgm_play("Audio/BGM/Scene1")
  62.       when 1
  63.         Audio.bgm_play("Audio/BGM/Scene2")
  64.       when 2      
  65.         Audio.bgm_play("Audio/BGM/Scene3")
  66.       end
  67.     end
  68.   end
  69.   
  70. end

  71.   
复制代码

然后你只需要在公共事件里写上$scene = Scene_Music.new
希望你能认真看明白再用!配合snstar等大大写的教程看就会明白了 [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: new1984    时间: 2008-5-13 22:06
貌似这个是XP的??


s4 = Vocab::status  VX这个是什么意思?
作者: 雪流星    时间: 2008-5-13 22:27
鑑定完畢
是VX腳本

並不是說VX腳本就一定要
s4 = Vocab::Status

這句的意思是調用Vocab腳本內的Status方法
而該方法其實是返回你在數據庫設置[狀態]指令的字符串
作者: Beside    时间: 2008-5-13 23:10
以下引用snstar2006于2008-5-13 14:27:54的发言:

鑑定完畢
是VX腳本

並不是說VX腳本就一定要
s4 = Vocab::Status

這句的意思是調用Vocab腳本內的Status方法
而該方法其實是返回你在數據庫設置[狀態]指令的字符串

是这样的.
Vocab::Status是一个模块  其实
s4 = Vocab::Status 等同于 s4 = "状态"
因为在Vocab这个模块里Status为"状态"
作者: new1984    时间: 2008-5-14 00:39
谢谢各位的解答,让我受益匪浅。

菜鸟让各位受累了!
作者: sizz123    时间: 2008-5-14 01:07
   界面不一定要用脚本写,用事件做也是一样的




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1