赞 | 0 |
VIP | 0 |
好人卡 | 0 |
积分 | 1 |
经验 | 1372 |
最后登录 | 2013-2-15 |
在线时间 | 19 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 50
- 在线时间
- 19 小时
- 注册时间
- 2010-7-5
- 帖子
- 30
|
- #脚本功能:字幕系统
- #使用方法:main之前建立一个类,全选后粘贴。将脚本中的人名替换为自己要写的内容。
- #使用的时候在事件中使用脚本$scene = Scene_Credit.new,播放完之后返回开头画面。
- #如果想播放完之后返回地图,$scene = Scene_Credit.new(Scene_Map)
- #效果:谢幕字幕
- #版权:未知,有任何版权纠纷,本站不负任何责任。
- # Scene_Credit
- #
- # 制作人员名单
- #
- class Scene_Credit
- CREDIT=<<_END_
- 这里填内容
- _END_
- end
- class Scene_Credit
- def initialize(return_scene = nil)
- if return_scene.nil?
- return_scene = Scene_Title.new
- end
- @return_scene = return_scene
- end
-
- def scene_start
- credit_lines = CREDIT.split(/\n/)
- credit_bitmap = Bitmap.new(640,32 * credit_lines.size)
- credit_lines.each_index do |i|
- line = credit_lines [ i ]
- credit_bitmap.draw_text(0,i * 32,640,32,line,1)
- end
- @credit_sprite = Sprite.new(Viewport.new(0,50,640,380))
- @credit_sprite.bitmap = credit_bitmap
- @credit_sprite.oy = -430
- @frame_index = 0
- @last_flag = false
- end
- def scene_end
- @credit_sprite.dispose
- end
-
- def last?
- return (@frame_index >= @credit_sprite.bitmap.height + 480)
- end
-
- def last
- if not @last_flag
- Audio.bgm_fade(10000)
- @last_flag = true
- @last_count = 0
- else
- @last_count += 1
- end
- if @last_count >= 300
- $scene = @return_scene
- end
- end
-
- def update
- @frame_index += 1
- return if cancel?
- last if last?
- @credit_sprite.oy += 1
- end
- def cancel?
- if Input.trigger?(Input::B)
- $scene = @return_scene
- return true
- end
- return false
- end
- def main
- scene_start
- # 过渡
- Graphics.transition
- # 主循环
- loop do
- Graphics.update
- Input.update
- update
- if $scene != self
- break
- end
- end
- # 准备过渡
- Graphics.freeze
- scene_end
- end
- end
复制代码 完毕 |
|