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

Project1

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

[RMVA发布] 在RMVA中的标题菜单添加其他选项

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
196 小时
注册时间
2010-10-20
帖子
143
跳转到指定楼层
1
发表于 2012-1-2 23:05:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 精灵使者 于 2012-1-15 13:51 编辑

本文所示的代码均不是完整的需要放到实际的环境中
大家是知道的,以前在RMVX中的时候可以动点小手脚来添加其他的项
RMVX的格式如下:
#==============================================================================
# ■ Scene_Title
#------------------------------------------------------------------------------
#  处理标题画面的类。
#==============================================================================
#--------------------------------------------------------------------------
  # ● 更新画面
  #--------------------------------------------------------------------------
  def update
    super
    @command_window.update
    if Input.trigger?(Input::C)
      case @command_window.index
      when 0    #New game
        command_new_game
      when 1    # Continue
        command_continue
      when 2    # Shutdown
        command_shutdown
      when 3    # 测试地图
        command_ceshi
      end
    end
  end
#--------------------------------------------------------------------------
  # ● 生成命令窗口
  #--------------------------------------------------------------------------
  def create_command_window
    s1 = Vocab::new_game
    s2 = Vocab::continue
    s3 = Vocab::shutdown
    s4 = "其他模式"
    @command_window = Window_Command.new(270, [s1, s2, s3, s4])
    # <--- @command_window = Window_Command.new(172, [s1, s2, s3, s4])
    @command_window.x = (1024 - @command_window.width) / 2
    @command_window.y = 450   #<------ @command_window.y = 288
    if @continue_enabled                    # 如果「继续」有效
      @command_window.index = 1             # 将光标移至「继续游戏」
    else                                    # 否则则将「继续游戏」半透明化
      @command_window.draw_item(1, false)
    end
    @command_window.openness = 0
    @command_window.open
  end

就是这样,在RMVX中只有一个处理标题界面的东西那就是Scene_Title
可是在RMVA中可恶的EB!竟然把Scene_Title分成了3个部分
分别是window_TitleCommand、DataManage、Scene_Title三个部分( T T EB!你这是明显给我们找麻烦啊!)
这三个部分联合处理一个开始界面,每个都有不同的代码,从汉化版的RMVA你们是知道的!
对于DataManage来说应该在设置:新游戏的下面添加一段与设置新游戏基本一样的代码
如,我添加的
#--------------------------------------------------------------------------
  # ● 设置其他模式
  #--------------------------------------------------------------------------
  def self.setup_zhizuo
    create_game_objects
    $game_party.setup_starting_members
    $game_map.setup(1)
    $game_player.moveto($data_system.start_x, $data_system.start_y)
    $game_player.refresh
    Graphics.frame_count = 0
  end

注意到def这行了没有 原来是
def self.setup_new_game
被我改成了
def self.setup_zhizuo
setup后面的名字可以随便起,不过要记住
对于window_TileCommand来说,他是组成标题中的那个框框里面的选项
#--------------------------------------------------------------------------
  # ● 生成指令列表
  #--------------------------------------------------------------------------
  def make_command_list
    add_command(Vocab::new_game, :new_game)
    add_command(Vocab::continue, :continue, continue_enabled)
    add_command("制作者名单", :zhizuo)
    add_command(Vocab::shutdown, :shutdown)
  end

add_command(XXXXX)的顺序决定就是框框里面的顺序了
add_command其实就跟VX里面的When X  command_XXX一样,是用于调用scene_Title中对应的选项一样
对于Scene_Title来说,他是组成标题画面的关键,他相当于司令员调用者上面两个
#--------------------------------------------------------------------------
  # ● 生成指令窗口
  #--------------------------------------------------------------------------
  def create_command_window
    @command_window = Window_TitleCommand.new
    @command_window.set_handler(:new_game, method(:command_new_game))
    @command_window.set_handler(:continue, method(:command_continue))
    @command_window.set_handler(:zhizuo, method(:command_zhizuo))
    @command_window.set_handler(:shutdown, method(:command_shutdown))
  end
#--------------------------------------------------------------------------
  # ● 指令 [制作者名单]
  #--------------------------------------------------------------------------
  def command_zhizuo
    DataManager.setup_zhizuo
    close_command_window
    fadeout_all
    $game_map.autoplay
    SceneManager.goto(Scene_Map)
  end

其实  @command_window.set_handler(:zhizuo, method(:command_zhizuo))中间的:command_zhizuo和zhizuo就是承接上面的add……的
制作者名单不用我说吧!
注意DataManager.setup_zhizuo这句就是调用上面的那个

Lv4.逐梦者

梦石
0
星屑
6865
在线时间
1666 小时
注册时间
2008-10-29
帖子
6710

贵宾

2
发表于 2012-1-2 23:30:10 | 只看该作者
这标题......
我还以为又是一个错区帖

点评

进来前准备转移来着……  发表于 2012-1-6 16:16
我也是……  发表于 2012-1-3 00:45











你知道得太多了

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
196 小时
注册时间
2010-10-20
帖子
143
3
 楼主| 发表于 2012-1-3 14:34:16 | 只看该作者
后知后觉 发表于 2012-1-2 23:30
这标题......
我还以为又是一个错区帖

只是改脚本,不是原创新的脚本不敢去掉如何两字……话说RMVA真麻烦……

点评

麻烦,但是更规范,我喜欢这种新的设计风格  发表于 2012-10-29 22:22
去掉也不足为过。已帮你编辑。  发表于 2012-1-15 13:51
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
105
在线时间
5250 小时
注册时间
2011-10-7
帖子
1885

开拓者贵宾

4
发表于 2012-1-3 15:23:51 | 只看该作者
不过这样的标题达到了可以吸引人的目的……

点评

貌似是的……  发表于 2012-1-6 16:21
只能吸引版主吧!  发表于 2012-1-6 16:16
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
61 小时
注册时间
2012-2-2
帖子
11
5
发表于 2012-2-6 10:37:27 | 只看该作者
换视角怎么搞
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
66 小时
注册时间
2010-6-27
帖子
17
6
发表于 2012-7-6 02:15:25 | 只看该作者
LZ能搞个脚本使用说明吗?我们菜鸟看不懂脚本!


‘‘──a2219119于2012-7-6 02:16补充以下内容:

回错地方,抱歉!
’’
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
49
在线时间
128 小时
注册时间
2012-8-5
帖子
53
7
发表于 2012-9-5 19:18:23 手机端发表。 | 只看该作者
我照你VA菜单添加选项的方法设置了个游戏帮助,但是接下去怎么做?我纯新人,帮帮我,目前点了那选项是没反应的

点评

最后的部分,def command_zhizuo 里面写你要做的动作  发表于 2012-10-29 22:23
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
55
在线时间
160 小时
注册时间
2012-2-10
帖子
98
8
发表于 2013-1-9 11:17:39 | 只看该作者
本帖最后由 狂歌天涯 于 2013-1-9 12:28 编辑

楼主的最后一段
# ● 指令 [制作者名单]
  #--------------------------------------------------------------------------
  def command_zhizuo
    DataManager.setup_zhizuo
    close_command_window
    fadeout_all
    $game_map.autoplay
    SceneManager.goto(Scene_Map)
  end

其中的最后一句SceneManager.goto(Scene_Map)改成SceneManager.call(Scene_Map)是不是好些?
goto用在标题上还可以,但是要是用在菜单上,返回的时候会回到标题界面,而不是菜单界面。改成call就好了。
在菜单界面里用楼主的这个方法
# ● 指令 [制作者名单]
  #--------------------------------------------------------------------------
  def command_zhizuo
    SceneManager.call(Scene_Map)
  end

只要这一行就好了,不然返回游戏界面的时候也会出错的。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
55
在线时间
89 小时
注册时间
2009-7-8
帖子
11
9
发表于 2013-1-19 17:49:43 | 只看该作者
这个先拿来看看试试了,谢谢了
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
10 小时
注册时间
2013-2-2
帖子
5
10
发表于 2013-2-5 13:01:24 | 只看该作者
那菜单怎么加
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-4 02:24

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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