|
发表于 2006-7-25 17:37:53
|
显示全部楼层
我们能够这么做是因为——
1。用了事件做标题
2。用了这个脚本
#脚本功能:开始游戏时显示图片,按键后进入
#使用方法:见具体内容
#效果:开始游戏时显示图片并播放音效.按键后才进入标题
#版权:本论坛擇
class Scene_logo
#--------------------------------------------------------------------------
# ● 住处理
#--------------------------------------------------------------------------
def main
# 播放LOGO音效
Audio.se_play("Audio/SE/079-Monster01.ogg")
# 生成标题图形
@sprite = Sprite.new
@sprite.bitmap = RPG::Cache.title("001-Title01")
# 生成位置为画面中央
@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
$scene = Scene_Title.new
Audio.se_stop
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 |
|