查看: 34838|回复: 63

[RMVA发布] 【薄雾】VA动态标题脚本

[复制链接]

唯一的信徒

梦石
0
星屑
1697
在线时间
1359 小时
注册时间
2013-1-29
回帖
1537
发表于 2013-4-9 08:59:44 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 LBQ 于 2013-12-5 13:41 编辑

title.jpg

范例地址:http://lbqlocker.weebly.com/uplo ... hronicles_title.zip


这个也算是我的简单的一个标题脚本了=-=。。。。于是这个标题脚本功能有:
  • 背景滚动
  • 背景萤火虫系统





发现bug!!!!!
补丁:
[pre lang="ruby" line="1"]#LBQ标题菜单补丁——修复了进入第一个地图没有淡入的问题
class Scene_Title
  #--------------------------------------------------------------------------
  # ● 指令“开始游戏”
  #--------------------------------------------------------------------------
  alias lbq_bugfix_title_newgame command_new_game
  def command_new_game
    fadeout_all
    lbq_bugfix_title_newgame
  end
end
[/pre]


↓ 测试用版本 ↓
[pre lang="ruby" line="1"]#encoding:utf-8
#==============================================================================
# ■ 薄雾年代记标题脚本
#------------------------------------------------------------------------------
#  薄雾年代记的标题脚本
#==============================================================================


#==============================================================================
# 介绍:
#      这个不完全是薄雾的标题脚本,但是是那个的普适版,作者:LBQ,请自由使用,转载
#==============================================================================
# 2013/12/4 Dev1.2 再次托小刀的福弄了._.
#==============================================================================


# 设置模块
module LBQ
  module MC_Title
   
    #logo还有选项的淡入速度,数字越大淡出淡入越快
    FADE_SPEED=4
   
   
    #黑暗层的淡入淡出速度,数字越大淡出淡入越快。第一项是进入场景,第二项是退出
    MASK_FADE=[5,3]
   
   
   
    #背景滑动速度,默认是[2,1],即为每两帧横向滑动一个单位。
    SHIFT_SPEED=[2,1]
   
    #图像设置
    GRAPHICS=['Choice','spark','logo','background']
   
    #生成一个新的闪光点的间隔时间
    TIME_SPARK=12
   
    #分辨率设定
    RESOLUTION=[544,416]
   
    #储存文件的文件夹名称,位于Graphics文件夹下面
    FOLDER="MC_Title"
   
    #离开界面的时候的BGM淡出速度,单位毫秒
    BGM_FADE=1600
   
    #3个层的Z坐标设定。
    Z_SETTINGS=[0,0,0]
   
    #闪光的生命周期。(半衰期,总共生命周期)←装X的设定
    LIFE_CYCLE=[300,500]
  end
end


#Cache加强
module Cache
  include LBQ::MC_Title
  #--------------------------------------------------------------------------
  # ● 标题
  #--------------------------------------------------------------------------
  def self.mc_title(filename)
    load_bitmap("Graphics/#{FOLDER}/", filename)
  end
end


#==============================================================================
# ■ LBQ Spark
#------------------------------------------------------------------------------
#  闪光的精灵类
#==============================================================================
class Sprite_lbqSpark < Sprite_Base
  include LBQ::MC_Title
  
  attr_reader :delete_me
  def initialize(viewport=nil)
    @timer=0
    super(viewport)
    self.bitmap=Cache.mc_title(GRAPHICS[1])
    @opacity_speed=10
    @zoom_change=0
    set_rand_stats
   
  end
  
  
  def update
    super
        @timer+=1
    calc_speed
    self.x += @x_speed
    self.y += @y_speed
    if @timer<=LIFE_CYCLE[0]
      self.opacity += @opacity_speed
    else
      self.opacity -= @opacity_speed*2
    end
   
    self.angle += @angle_speed
    self.zoom_x += @zoom_change
    self.zoom_y += @zoom_change
    if @timer>=LIFE_CYCLE[1]
      self.visible=false
      @delete_me = true
    end
   
     
   
   
  end
  def calc_speed
  end
  def set_rand_stats
    @x_speed=(rand(4)-2)*0.8
    @y_speed=(rand(4)-2)*0.8
    @x_speed+=rand(2)-1 if @x_speed==0
    @y_speed+=rand(2)-1 if @y_speed==0
    @opacity_speed=2
    @angle_speed=rand(3)-3
    self.opacity = 1
    self.angle = rand(360)

      rand_num=rand(9)
      case rand_num
      when 0
        self.x,self.y=0,0
      when 1
        self.x,self.y=RESOLUTION[0],RESOLUTION[1]
      when 2
        self.x,self.y=RESOLUTION[0],0
      when 3
        self.x,self.y=0,RESOLUTION[1]
      when 4
        self.x,self.y=RESOLUTION[0]/2,0
      when 5
        self.x,self.y=RESOLUTION[0]/2,RESOLUTION[1]
      when 6
        self.x,self.y=0,208
      when 7
        self.x,self.y=RESOLUTION[0],RESOLUTION[1]/2
      when 8
        self.x,self.y=RESOLUTION[0]/2 ,RESOLUTION[1]/2
      end
      

   
    self.zoom_x=(rand(100) + 100) / 100.0
    self.zoom_y = self.zoom_x
    self.blend_type=1
  end
  def get_rand_pos
    pos=[]
    case rand(4)
    when 0
      pos[0]=0
    when 1
      pos[0]=200
    when 2
      pos[0]=300
    when 3
      pos[0]=500
    when 4
      pos[0]=100
    end
   
    case rand(4)
    when 0
      pos[1]=0
    when 1
      pos[1]=200
    when 2
      pos[1]=300
    when 3
      pos[1]=500
    when 4
      pos[1]=100
    end
    return pos
  end
  
end


#==============================================================================
# ■ MC Choice
#------------------------------------------------------------------------------
#  可爱的选项~
#==============================================================================
# 选项用精灵类
class Sprite_MCchoice < Sprite_Base
  include LBQ::MC_Title
  #设置
  MAX_INDEX=3
  MIN_INDEX=1
  #初始化
  def initialize(viewport=nil)
    super(viewport)
   
    #光标Index
    if DataManager.save_file_exists?
      @index=2
    else
      @index=1
    end
   
   
    #动态阶段
    @stage=1
  end
  
  
  #更新方法
  def update
    #super
    super
   
    #基础的动态设定
    case @stage
    when 1
      
      #更新选项
      update_cursor
      
      #再次强化不透明度
      self.opacity=0
      
      #之后转成第二步
      @stage+=1

    when 2
      #变得透明
      self.opacity+=FADE_SPEED
      #如果已经变完了
      if self.opacity>=255
        #进入第三步
        @stage+=1
      end
    when 3
      #好的,于是咱来进行光标更新
      if Input.trigger?(:LEFT)
        Sound.play_cursor
        if @index==MIN_INDEX
          @index=MAX_INDEX
        else
          @index-=1
        end
        #输入完毕之后再更新
        update_cursor
        
      elsif Input.trigger?(:RIGHT)
        Sound.play_cursor
        if @index==MAX_INDEX
          #强化条件
          @index=MIN_INDEX
         
        else
          @index+=1
        end
        #输入完毕之后再更新
        update_cursor
      end
      
    end
  end
  
  #index外置接口
  def index
    @index
  end
  
  #更新光标
  def update_cursor
    #设置当前bitmap名字
      bitmap_name="#{GRAPHICS[0]}#{@index}"
      self.bitmap=Cache.mc_title(bitmap_name)
    end
  #设置当前index  
  def set_index(index)
    @index=index
  end
  
end



#==============================================================================
# ■ Scene_Title
#------------------------------------------------------------------------------
#  标题类
#==============================================================================
# Scene类
class Scene_Title < Scene_Base
    include LBQ::MC_Title
  def start
    super
    return if @bg_sprite
    @sparks=[]
   
    @timer=0
   
   
    #抄袭原版的=-=
    SceneManager.clear
    Graphics.freeze
   
    #创建显示端口
    create_viewports
   
    #创建背景
    create_background
   
    #创建精灵类
    create_sprites
   
    #播放标题音乐
    play_title_music
   
    #动态阶段
    @stage=0
   
  end
  
  #创建各种显示端口
  def create_viewports
    #背景
    #RESOLUTION[0],RESOLUTION[1]
    @bg_vp=Viewport.new(0,0,RESOLUTION[0],RESOLUTION[1])
   
    #选项
    @choice_vp=Viewport.new(0,0,RESOLUTION[0],RESOLUTION[1])
    @choice_vp.z=Z_SETTINGS[0]
   
    @spark_vp=Viewport.new(0,0,RESOLUTION[0],RESOLUTION[1])
    @spark_vp.z=Z_SETTINGS[1]
   
    @mask_vp=Viewport.new(0,0,RESOLUTION[0],RESOLUTION[1])
    @mask_vp.z=Z_SETTINGS[2]
  end
  
  
  #创建背景
  def create_background
    #滚动的背景
    @bg_sprite=Plane.new(@bg_vp)
   
    #设置背景图像
    @bg_sprite.bitmap=Cache.mc_title(GRAPHICS[3])
  end
  
  
  #更新
  def update
    super
   
    #计时器+
    @timer+=1
   
    #滚动
    @bg_sprite.ox+=SHIFT_SPEED[1] if @timer%SHIFT_SPEED[0]==0
   
     @sparks.push(Sprite_lbqSpark.new(@spark_vp)) if @timer%TIME_SPARK==0
     @sparks.each{|spk|spk.update }
     @sparks.each do |s|
       if s.delete_me
         @sparks.delete(s)
       end
     end
     

   
   
    case @stage
    when 0
      if @entered_save
        deal_with_already_entered
      end
      @mask_sprite.opacity-=MASK_FADE[0]
      if @mask_sprite.opacity<=0
        @stage=1
      end
      
    when 1
      #淡入阶段
      @logo_sprite.opacity+=FADE_SPEED
      if @logo_sprite.opacity>=255
        @stage=2
      end
      #更新选项
      @choice_sprite.update
    when 2
      @for_save = false
      @choice_sprite.update
      #如果确定了
      if Input.trigger?(:C)
        Sound.play_ok
        case @choice_sprite.index
        when 1
          @stage=3
        when 2
          @stage=4
        when 3
          @stage=5
        end
      end
    when 3
      Audio.bgm_fade(BGM_FADE)
      @mask_sprite.opacity+=MASK_FADE[1]
      if @mask_sprite.opacity>=255
        command_new_game
      end
    when 4
      @stage = 2
      @for_save = true
      command_continue
    when 5
      Audio.bgm_fade(BGM_FADE)
      @mask_sprite.opacity+=MASK_FADE[1]
      if @mask_sprite.opacity>=255
        exit
      end
    end
   
  end
  #--------------------------------------------------------------------------
  # ● 指令“继续游戏”
  #--------------------------------------------------------------------------
  def command_continue
    SceneManager.call(Scene_Load)
  end
  #--------------------------------------------------------------------------
  # ● 结束处理
  #--------------------------------------------------------------------------
  def terminate
    super
    SceneManager.snapshot_for_background
    return if @for_save
    @logo_sprite.dispose
    @choice_sprite.dispose
    @bg_sprite.dispose
    @bg_vp.dispose
    @choice_vp.dispose
  end
  #--------------------------------------------------------------------------
  # ● 指令“开始游戏”
  #--------------------------------------------------------------------------
  def command_new_game
    DataManager.setup_new_game
    $game_map.autoplay
    SceneManager.goto(Scene_Map)
  end
  def create_sprites
    @logo_sprite=Sprite_Base.new(@choice_vp)   
    @logo_sprite.bitmap=Cache.mc_title(GRAPHICS[2])
    @logo_sprite.opacity=0
   
    @choice_sprite=Sprite_Base.new(@choice_vp)
   
    @choice_sprite=Sprite_MCchoice.new(@choice_vp)
    @choice_sprite.opacity=0
   
    @mask_sprite=Sprite.new(@mask_vp)
    @mask_sprite.bitmap=Bitmap.new(RESOLUTION[0],RESOLUTION[1])
    @mask_sprite.bitmap.fill_rect(0,0,RESOLUTION[0],RESOLUTION[1],Color.new(0,0,0))
  end
  
  def play_title_music
    $data_system.title_bgm.play
    RPG::BGS.stop
    RPG::ME.stop
  end
  
end
[/pre]

评分

参与人数 11星屑 +380 赞 +3 收起 理由
Yanhuai + 1 我很赞同
祈A/Sea + 1 精品文章
chuhaoyu123 + 1 精品文章
黑白界 + 100 精品文章
冲啊小笼包 + 60 我很赞同
月华风 + 20 塞糖
king + 100 喜欢
美丽晨露 + 10 精品文章
0newing + 4 凑整
Mic_洛洛 + 66 我很赞赏

查看全部评分

『我只是一个正在潜心修炼的渣乐师罢了』
Dear Time\(^o^)/~


假如上面的图片挂了的话麻烦各位去发个帖 @ 一下 orzFly 让他修复 deartime

梦石
0
星屑
407
在线时间
1291 小时
注册时间
2013-1-12
回帖
3349

贵宾

发表于 2013-4-9 10:47:19 | 显示全部楼层
表示很稀飯 效果粉好
不過我把SPARK的文件改成楠貓表情.... 表示笑果也很好....
第4個CHOICE圖片是為什麼有? 也沒用到  是什麼特別的時後的么?

点评

LBQ
发现bug。。。如果在使用的话麻烦打补丁(加在本标题脚本的下面)  发表于 2013-4-10 08:49

回复

使用道具 举报

唯一的信徒

梦石
0
星屑
1697
在线时间
1359 小时
注册时间
2013-1-29
回帖
1537
 楼主| 发表于 2013-4-9 11:08:16 | 显示全部楼层
76213585 发表于 2013-4-9 10:47
表示很稀飯 效果粉好
不過我把SPARK的文件改成楠貓表情.... 表示笑果也很好....
第4個CH ...

楠猫效果好??? 。。。不科学。。。
Choice4 的确没有用。。。。是计划中的东西。。。之后功能取消了。。。删了好了。。。

点评

LBQ
果然咱欢乐很少。。。。  发表于 2013-4-9 11:31
笑果...  发表于 2013-4-9 11:22
『我只是一个正在潜心修炼的渣乐师罢了』
Dear Time\(^o^)/~


假如上面的图片挂了的话麻烦各位去发个帖 @ 一下 orzFly 让他修复 deartime
回复

使用道具 举报

梦石
0
星屑
48
在线时间
294 小时
注册时间
2012-12-1
回帖
890
发表于 2013-4-9 11:15:25 | 显示全部楼层
华丽丽的赶脚~

点评

LBQ
发现bug。。。如果在使用的话麻烦打补丁(加在本标题脚本的下面)  发表于 2013-4-10 08:55
LBQ
发现bug。。。如果在使用的话麻烦打补丁(加在本标题脚本的下面)  发表于 2013-4-10 08:52
终于可以挂签名了
回复

使用道具 举报

梦石
0
星屑
48
在线时间
560 小时
注册时间
2012-12-29
回帖
1003
发表于 2013-4-9 12:48:05 | 显示全部楼层
这是标题天气效果吧,看起来不错哦~

哎呦,不错哦~   (不错你妹啊~) 开玩笑的,噗~
MOBA以及回合制的一个创新,点这里查看游戏新思路
回复

使用道具 举报

梦石
0
星屑
9716
在线时间
2775 小时
注册时间
2008-9-5
回帖
3458

开拓者短篇八RM组冠军短篇九导演组亚军白银编剧

发表于 2013-4-9 18:26:46 | 显示全部楼层
抱走~
以后研究~
回复

使用道具 举报

梦石
20
星屑
1840
在线时间
6925 小时
注册时间
2012-12-14
回帖
10960

短篇十战斗者组别冠军开拓者贵宾短篇九勇士组亚军

发表于 2013-4-9 19:13:50 | 显示全部楼层
求XP相同的效果
大家好,这里是晨露的说。请多多指教。
刚入门RM软件制作,请大家多多帮助我哦。
落雪君的欢乐像素教程,欢迎查阅。

回复

使用道具 举报

唯一的信徒

梦石
0
星屑
1697
在线时间
1359 小时
注册时间
2013-1-29
回帖
1537
 楼主| 发表于 2013-4-10 08:53:25 | 显示全部楼层
@shinyshinyh @cinderelmini @我爱吴悦淇 @熊猫抱树

发现bug。。。麻烦去主楼打补丁。。。。。。(加在原插件的下面)

本人对此深表歉意。。。

点评

很用心的咧~~赞LBQ菌一个~  发表于 2013-4-10 19:19
能不能移植到XP呢?  发表于 2013-4-10 12:11
『我只是一个正在潜心修炼的渣乐师罢了』
Dear Time\(^o^)/~


假如上面的图片挂了的话麻烦各位去发个帖 @ 一下 orzFly 让他修复 deartime
回复

使用道具 举报

梦石
0
星屑
677
在线时间
509 小时
注册时间
2011-4-25
回帖
155
发表于 2013-4-10 11:25:55 | 显示全部楼层
@LBQ 感觉这个没MOG脚本里动态标题好看

点评

原创和扒来的是一回事吗?  发表于 2013-4-10 19:00
回复

使用道具 举报

梦石
0
星屑
75
在线时间
1074 小时
注册时间
2012-1-16
回帖
1855
发表于 2013-4-10 18:05:15 | 显示全部楼层
嗯,MS还可以的说……收下了……
LBQ大好人…抱走研究…
本人目前已被作业山压死,有事请烧(call)纸(me)……
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部