幻想森林

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

[RM2K&2K3] 求助,关于等待播放完毕和画面色调的脚本语句

[复制链接]

14

主题

79

帖子

665

积分

⑤进阶

积分
665
QQ
发表于 2009-6-22 15:23:10 | 显示全部楼层 |阅读模式
这是一个从网上获得的脚本
#--------------------------------------------------------------------------
# 开始菜单前加入图片
# 作者 : 擇
#--------------------------------------------------------------------------

class Scene_logo
  #--------------------------------------------------------------------------
  # ● 住处理
  #--------------------------------------------------------------------------
  def main
    # 播放LOGO音效
    Audio.se_play("Audio/SE/012-logo.ogg")
    # 生成标题图形
    @sprite = Sprite.new
    @sprite.bitmap = RPG::Cache.title("logo")
    # 生成位置为画面中央
    @sprite.x = (640 - @sprite.bitmap.width) / 2
    @sprite.y = (480 - @sprite.bitmap.height) / 2
    # 透明度(0为完全透明)
    @sprite.opacity = 255
    # 执行过渡
    Graphics.transition
    # 主循环
    loop do
      # 刷新游戏画面
      Graphics.update
      # 刷新输入信息
      Input.update
      # 刷新画面
      update
      # 如果画面被切换就中断循环
      if $scene != self
        break
      end
    end
    # 装备过渡
    Graphics.freeze
    # 释放标题图形
    @sprite.bitmap.dispose
    @sprite.dispose   
  end
  #--------------------------------------------------------------------------
  # ● 刷新画面
  #--------------------------------------------------------------------------
  def update
    # 按下 A,B,C,下,上,左,右 键的情况下
    if Input.trigger?(Input::A)
      refresh
    end
    if Input.trigger?(Input::B)
      refresh
    end
    if Input.trigger?(Input::C)
      refresh
    end
    if Input.trigger?(Input:OWN)
      refresh
    end
    if Input.trigger?(Input::UP)
      refresh
    end
    if Input.trigger?(Input::RIGHT)
      refresh
    end
    if Input.trigger?(Input:EFT)
      refresh
    end
    def refresh
      # 等待220帧  我这里设置的帧数是se播放完所需的必要帧数  可能略长
      for i in 0...200
        Graphics.update
      end
      $scene = Scene_Title.new
    end
  end
end
#==============================================================================
# ■ Main
#------------------------------------------------------------------------------
#  各定义结束后、从这里开始实际处理。
#==============================================================================
begin
  # 准备过渡
  # 设置系统默认字体
  Font.default_name = (["黑体","宋体"])
  Graphics.freeze
  # 生成场景对像 (标题画面)
  $scene = Scene_logo.new
  # $scene 为有效的情况下调用 main 过程
  while $scene != nil
    $scene.main
  end
  # 淡入淡出
  Graphics.transition(20)
  rescue Errno::ENOENT
  # 补充 Errn:ENOENT 以外错误
  # 无法打开文件的情况下、显示信息后结束
  filename = $!.message.sub("No such file or directory - ", "")
  print("找不到文件 #{filename}。 ")
end


#==============================================================================

这个脚本的刷新画面是按照按键来反映的。等待是我后添加的,因为要播放logo音效。
求助:
1.我尝试过去掉按键反应,只是纯等待。未果……
2.我用的等待比较生硬,有没有等待这个音频播放完毕的脚本语句呢?
3.从logo转到title画面,比较生硬,能否先调整画面色调,制作出一个黑屏的效果,然后再转到title再调整回来呢?

多谢。我折腾了半天……
回复

使用道具 举报

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-6-22 20:37:04 | 显示全部楼层
不用试就知道LOGO  播放   按任意键  就跳到  TITLE。。。但是不明白LZ的意思
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-6-22 20:39:55 | 显示全部楼层
1。
2。  都不明白是什么意思,要的是什么效果呢?
3。  执行过渡
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

14

主题

79

帖子

665

积分

⑤进阶

积分
665
QQ
 楼主| 发表于 2009-6-22 20:50:33 | 显示全部楼层
多谢关注。
1和2的意思是,能不能把这个脚本改成如下效果:
播放logo画面和logo音乐。logo音乐播放完20帧,自动跳到title画面
3.这个执行过度从哪里加进去?
回复 支持 反对

使用道具 举报

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-6-22 21:37:05 | 显示全部楼层
我按照VX来说。。。

似乎没有获取音乐时间的函数。。。那么自己看看这个音乐是多长时间的

比如 1:40

那么折合成贞   1分钟 40 秒 =  (60+40) * 60 贞 = 6000

要+20贞    为
  6020 贞
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

14

主题

79

帖子

665

积分

⑤进阶

积分
665
QQ
 楼主| 发表于 2009-6-22 21:38:58 | 显示全部楼层
我尝试把按任意键 改成 等待,但是总是出错。能帮忙改一下吗?
VX是1:40吗?我用XP,是不是1:20来着。
回复 支持 反对

使用道具 举报

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-6-22 21:39:54 | 显示全部楼层
另外,这个似乎对你有帮助


Graphics.fadeout(duration) (RGSS2)
将画面淡出。

duration 是执行淡出所需的的画格数。

Graphics.fadein(duration) (RGSS2)
将画面淡入。

duration 是执行淡入所需的的画格数。
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-6-22 21:40:43 | 显示全部楼层
VX  1:60   

XP   1:40  

那么我上面那楼说的是VX的。。。对XP没有任何用处。。。
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2009-6-22 21:45:17 | 显示全部楼层
明天再说吧。。。我不行了。。休息去了
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

14

主题

79

帖子

665

积分

⑤进阶

积分
665
QQ
 楼主| 发表于 2009-6-22 22:04:52 | 显示全部楼层
回复  secondsen
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-18 19:17 , Processed in 0.026408 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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