设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1261|回复: 4
打印 上一主题 下一主题

[已经解决] logo的问题

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
56 小时
注册时间
2011-9-22
帖子
60
跳转到指定楼层
1
发表于 2011-10-9 08:03:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这个是在朋友的脚本里看到的 但是我发现他的游戏实际上只显示了logo3 而且音效没有播放完就闪过了
我试着按照脚本上的说明改了时间 可是还是一样一闪而过

class Scene_logo
  #--------------------------------------------------------------------------
  # ● 住处理
  #--------------------------------------------------------------------------
  def main
    # 播放LOGO音效
    Audio.se_play("Audio/SE/logo.ogg")     #自己添加素材
    # 生成标题图形
    @sprite = Sprite.new
    @sprite.bitmap = RPG::Cache.title("游戏开始")
    @sprite.bitmap = RPG::Cache.title("logo1")
    @sprite.bitmap = RPG::Cache.title("logo2")
    @sprite.bitmap = RPG::Cache.title("logo3") #自己添加图片,放在Title文件夹下
    # 生成位置为画面中央
    @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

    # 等待280帧  我这里设置的帧数是se播放完所需的必要帧数
   # 根据你自己设置的se来进行调试和修改
    for i in 0...280  
    end
    # 淡入淡出
    Graphics.transition(20)
    $scene = Scene_Title.new
  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
i

Lv1.梦旅人

梦石
0
星屑
50
在线时间
237 小时
注册时间
2011-7-28
帖子
81
2
发表于 2011-10-9 08:28:46 | 只看该作者
这个脚本都是错误,建议楼主不要用了
  1. @sprite.bitmap = RPG::Cache.title("游戏开始")
  2.     @sprite.bitmap = RPG::Cache.title("logo1")
  3.     @sprite.bitmap = RPG::Cache.title("logo2")
  4.     @sprite.bitmap = RPG::Cache.title("logo3") #自己添加图片,放在Title文件夹下
复制代码
这四句重复得给@sprite.bitmap赋值,前三局根本没有用,就相当于
  1. @sprite.bitmap = RPG::Cache.title("logo3")
复制代码
一句,def update 的for循环里面什么事也没有做,相当于什么都没有,纯粹浪费游戏资源
看看网络,数不清的信息扑面而来,你知道了什么是冗余;看看每一天的生活,日复一日,许多的无奈,你理解了什么是缺陷;生命里充满了不可预知,明天将发生什么,谁也不知道,这就是动态。 ...
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
56 小时
注册时间
2011-9-22
帖子
60
3
 楼主| 发表于 2011-10-10 08:10:14 | 只看该作者
这个。。不是我用的 想要那种logo效果的话怎么办
i
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
64 小时
注册时间
2011-4-1
帖子
39
4
发表于 2011-10-10 12:32:57 | 只看该作者
module Sword
  Sword29_Name = Array.new
#=======================================
#★ 魔劍工舖 - 標題畫面前顯示LOGO 1.02
# 轉貼腳本請著名出處:http://blog.yam.com/a870053jjkj/
# 如果採用在遊戲中,看你高興是否顯示腳本出處,但嚴禁說是自己寫的腳本!!
#=======================================
#●使用者自定設置
Sword29_XPVX = 0     # 此腳本用於XP時設為0;此腳本用在VX時設為1
Sword29_Making = 20           #淡出或淡入效果的時間
Sword29_Time = 80          #LOGO的顯示時間
Sword29_Title = 10         #顯示下1個或到標題畫面的間隔時間,每40約1秒
Sword29_End = 13             #提前結束的按鈕,數值可參考事件[按鍵輸入處理]
#設定顯示的圖片,[]內的數字為圖片編號,可自行添加Sword29_Name[編號]
#編號必須依0、1、2、3、4的順序,圖片請存在遊戲資料夾內的Pictures資料夾裡面
Sword29_Name[0] = "logo"

=begin
詳細設置說明請參考:http://blog.yam.com/a870053jjkj/article/23816810
=end
  $Sword ? $Sword[29] = 202 : $Sword = {29=>202} # 腳本使用標誌
end
#=======================================
#■ 處理標題畫面的類別
class Scene_Title
  include Sword # 連接自定設置
  $Sword_NoRepeat2 = []
  #-------------------------------------------------------------
  #● 主處理
  alias sword29_main main
  def main
    (sword29_main ; return) if $Sword_NoRepeat2[0] # 防止重新時重複顯示
    $Sword_NoRepeat2[0] = true
    for i in Sword29_Name
      # 產生圖片
      sword_logo = Sprite.new
      sword_logo.bitmap = Sword29_XPVX == 0 ?
      RPG::Cache.picture(i) : Cache.picture(i)
      sword_logo.opacity = 0
      Graphics.transition
      b = 255 / Sword29_Making
      # 顯示圖片的處理
      (sword_input ; sword_logo.opacity += b) while sword_logo.opacity <= 254
      a = 0
      (sword_input ; a += 1) while a < Sword29_Time
      # 清除圖片的處理
      (sword_input ; sword_logo.opacity -= b) while sword_logo.opacity >= 1
      sword_logo.bitmap.dispose ; sword_logo.dispose
      # 顯示下一張前的間隔時間
      a = 0
      (sword_input ; a += 1) while a < Sword29_Title
      Graphics.freeze
      (sword29_main ; return) if $Sword_NoRepeat2[1]
    end
    sword29_main
  end
  #-------------------------------------------------------------
  #● 更新畫面與按鍵
  def sword_input
    Graphics.update unless $Sword_NoRepeat2[1]
    unless Sword29_End == 0
      Input.update
      (Graphics.freeze ; $Sword_NoRepeat2[1] = true) if Input.trigger?(Sword29_End)
    end
  end
end
在自定義的地方打上圖片名稱就好了      取自魔劍工舖
回复

使用道具 举报

Lv2.观梦者

(?????)

梦石
0
星屑
787
在线时间
1327 小时
注册时间
2011-7-18
帖子
3184

贵宾

5
发表于 2011-10-12 18:36:21 | 只看该作者
  1.     # 等待280帧  我这里设置的帧数是se播放完所需的必要帧数
  2.    # 根据你自己设置的se来进行调试和修改
  3.     for i in 0...280  
  4.     end
复制代码
我怀疑这真的能等待么……
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-7-20 19:18

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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