| 
 
| 赞 | 1 |  
| VIP | 255 |  
| 好人卡 | 52 |  
| 积分 | 1 |  
| 经验 | 77416 |  
| 最后登录 | 2016-1-18 |  
| 在线时间 | 1269 小时 |  
 Lv1.梦旅人 薄凉看客
	梦石0 星屑50 在线时间1269 小时注册时间2010-6-20帖子1316 | 
| 
本帖最后由 恋′挂机 于 2013-7-12 12:30 编辑
x
加入我们,或者,欢迎回来。您需要 登录 才可以下载或查看,没有帐号?注册会员  
 一.标题
 1.效果截图
 
   很简单,这个是最简单的仅仅只是修改了选择窗口的坐标
 2.效果截图复制代码    @command_window.x = 300 - @command_window.width / 2
    @command_window.y = 200
   很简单,只是多了“制作”选项,这个在本站已经有了,我只不过再简单说明一下
 测试时,已经有了制作选项,接着说,下面有两种方法:复制代码    s1 = "新游戏"
    s2 = "继续"
    s3 = "制作"
    s4 = "退出"
    @command_window = Window_Command.new(192, [s1, s2, s3, s4])
第一种:不执行场所移动直接在标题场景中显示制作者或制作群
 效果截图:
 
   复制代码      when 0  # 新游戏
        command_new_game
      when 1  # 继续
        command_continue
      when 2  # 制作
        command_maker
      when 3  # 退出
        command_shutdown
      end
    end
  end
  #----
这是第一种方法复制代码  #--------------------------------------------------------------------------
  # ● 命令 : 制作
  #--------------------------------------------------------------------------
  def command_maker
    p"游戏制作:————"
  end
第二种方法:场所移动通过事件说明
 效果截图
 
   场所移动到地图2,坐标无所谓,然后在地图2上编辑事件即可复制代码  #--------------------------------------------------------------------------
  # ● 命令 : 制作
  #--------------------------------------------------------------------------
  def command_maker
    # 演奏确定 SE
    $game_system.se_play($data_system.decision_se)
    # 停止 BGM
    Audio.bgm_stop
    # 重置测量游戏时间用的画面计数器
    Graphics.frame_count = 0
    # 生成各种游戏对像
    $game_temp          = Game_Temp.new
    $game_system        = Game_System.new
    $game_switches      = Game_Switches.new
    $game_variables     = Game_Variables.new
    $game_self_switches = Game_SelfSwitches.new
    $game_screen        = Game_Screen.new
    $game_actors        = Game_Actors.new
    $game_party         = Game_Party.new
    $game_troop         = Game_Troop.new
    $game_map           = Game_Map.new
    $game_player        = Game_Player.new
    # 设置初期同伴位置
    $game_party.setup_starting_members
    # 设置初期位置的地图
    $game_map.setup(2)
    # 主角向初期位置移动
    $game_player.moveto(10, 10)
    # 刷新主角
    $game_player.refresh
    # 执行地图设置的 BGM 与 BGS 的自动切换
    $game_map.autoplay
    # 刷新地图 (执行并行事件)
    $game_map.update
    # 切换地图画面
    $scene = Scene_Map.new
  end
   3.效果截图
 
   很简单,在Scene_Title43行下加入
 使其框透明复制代码@command_window.opacity = 0
把脚本40行改为
 把选择条拉长复制代码@command_window = Window_Command.new(720, [s1, s2, s3])
4.纯事件标题
 这个本站上已经很多了,不再说明。我再补充一点想法。
 想法1.将标题图制成图块优先级设为5,选择一张雾图形,在数据库中设置移动,这就是一个很简单的动态标题
 想法2.巧用自动原件
 在本站我下的某自动原件就是这个
 
   用它在工程里画图:
 
   再利用PS或其他软件,在下边四个矩形中加入"开始游戏"等等
 在此之前还可以利用远景或雾图形,使其更加美观
 
 二.菜单
 菜单主要是发挥自己的想象力
 下面我主要介绍一些简单的脚本:
 在所有窗口下都可以加入:
 分别是X,Y坐标以及窗口透明度,这里以Scene_Menu中的窗口为例这个是窗口的X,Y坐标和窗口大小可以任意来调复制代码
    @command_window.x = 0
    @command_window.y = 0
    @command_window.opacity = 0
在Scene_Menu44行左右
 下边分别有每个窗口的坐标:
 例如
 这个就是时间窗口的XY坐标,同样也可以在他下面加入复制代码@playtime_window.x = 0
    @playtime_window.y = 0
使其窗口半透明复制代码@playtime_window.opacity = 150
调了之后可能会发现菜单中有黑色区域以时间窗口为例在
 其之下可以加入复制代码@playtime_window.opacity = 150
这样便可以显示地图复制代码@playtime = Spriteset_Map.new
 最后就是公共事件自制菜单了,这个柳柳有视频我也不多说了
 
 
 
 
 ==========补充==========
 跳过标题画面:
 主站上是有这个脚本的在http://rpg.blue/article-40257.html但是我试用了一下,发现了一个问题
  就是当你执行战斗测试时,就会进入地图,就是不会执行战斗测试  所以…………………………………… 将原脚本中这两行#掉复制代码    #[url=home.php?mod=space&uid=114926]@sprite[/url] = Sprite.new
    #@sprite.bitmap = RPG::Cache.title($data_system.title_name)
同样把上面的脚本#掉复制代码$game_system.bgm_play($data_system.title_bgm)
同样把上面的脚本#掉复制代码    #@sprite.bitmap.dispose
    #@sprite.dispose
同样把上面的脚本#掉复制代码$game_system.se_play($data_system.decision_se)
在脚本32行下加上这时候测试时就已经有效果了
 接着改!
 把原窗口XY坐标调整一下
 其实很简单,在生成生成系统对像之后调用新游戏的内容(就是command_new_game)复制代码    @command_window.x = 500 - @command_window.width / 2
    @command_window.y = 500
再把相关生成标题图形、释放标题图形、演奏标题 BGM全部#掉,其实
 可以不#掉。很简单吧!复制代码$game_system.se_play($data_system.decision_se)
你也许会问
 等此类脚本都在怎么还会跳过标题画面呢?复制代码    # 生成命令窗口
    s1 = "新游戏"
    s2 = "继续"
    s3 = "退出"
    @command_window = Window_Command.new(192, [s1, s2, s3])
    @command_window.back_opacity = 160
    @command_window.x = 500 - @command_window.width / 2
    @command_window.y = 500
其实在脚本76行左右的
 就已经告诉你答案了,在生成系统对象等等之后场所移动复制代码      # 如果画面被切换就中断循环
      if $scene != self
        break
      end
    end
因为画面被切换所以中断循环,之前改了窗口的XY坐标(调出屏幕)
 这次补充就到这里吧!
   
 | 
 评分
查看全部评分
 |