Project1

标题: 如何在战斗选项中添加选项 [打印本页]

作者: BT狂人    时间: 2011-5-21 06:59
标题: 如何在战斗选项中添加选项
在 战斗 逃跑 后面增加一个选项,该怎么添加、dsu_plus_rewardpost_czw
作者: 白鬼    时间: 2011-5-21 19:16
你要添加的选项是什么内容,希望这个选项达到什么效果?
作者: BT狂人    时间: 2011-5-21 20:28
回复 白鬼 的帖子

存档,添加我会了、但是怎么用?
作者: 双叶GL    时间: 2011-5-21 20:35
本帖最后由 双叶GL 于 2011-5-22 12:09 编辑

直接照着复制然后在修改就可以了,具体你要怎么样,可以直接给你脚本
主要就是修改这数据"Window_PartyCommand"
  def initialize
    super(0, 0, 640, 64) 选项框大小
    self.contents = Bitmap.new(width - 32, height - 32)
    self.back_opacity = 160 透明度
    @commands = ["战斗", "逃跑", "测试"]
    @item_max = 3 可选择上限
    @column_max = 3 选项上限
    draw_item(0, normal_color)
    draw_item(1, $game_temp.battle_can_escape ? normal_color : disabled_color)
    draw_item(2, $XXXX)XXXX改成你需要的数据地址
    self.active = false
    self.visible = false
    self.index = 0
  end
直接调用就是$Scene_Save
想做即时存档,就是一次性那种就直接复制一些东西,
例如直接复制一个Scene_Save,Scene_Load,Scene_File
然后把里面的最前排修改,这就是地址
在修改里面的class Scene_Save < Scene_File,这地方就是地址
Scene_File就是文件夹生成,先修改这地址的名字,例如Scene_File_UP
然后把存档读取最前排的class Scene_XXXX < Scene_File改成class Scene_XXXX < Scene_File_UP
其他的都是这样类似

接下来就是
修改
  def make_filename(file_index)
    return "Save#{file_index + 1}.rxdata"//这里的文件名因为即时直接改成return "Save(XX任意只要不会重复).rxdata"
  end
end

然后就是去掉再次的确定选项,和方向键移动,
    # 按下方向键下的情况下
    if Input.repeat?(Input::DOWN)
      # 方向键下的按下状态不是重复的情况下、
      # 并且光标的位置在 3 以前的情况下
      if Input.trigger?(Input::DOWN) or @file_index < 3
        # 演奏光标 SE
        $game_system.se_play($data_system.cursor_se)
        # 光标向下移动
        @savefile_windows[@file_index].selected = false
        @file_index = (@file_index + 1) % 4
        @savefile_windows[@file_index].selected = true
        return
      end
    end
    # 按下方向键上的情况下
    if Input.repeat?(Input::UP)
      # 方向键上的按下状态不是重复的情况下、
      # 并且光标的位置在 0 以后的情况下
      if Input.trigger?(Input::UP) or @file_index > 0
        # 演奏光标 SE
        $game_system.se_play($data_system.cursor_se)
        # 光标向上移动
        @savefile_windows[@file_index].selected = false
        @file_index = (@file_index + 3) % 4
        @savefile_windows[@file_index].selected = true
        return
      end
    end
  end
  全部去掉

    # 生成存档文件窗口
    @savefile_windows = []
    for i in 0
      @savefile_windows.push(Window_SaveFile.new(i, make_filename(i)))
    end
这里也可以去掉,或者修改成只有1个存档,编号最开始就是0,1,2,3,这样就是4个存档
其他的自己慢慢做吧,直接全做完,你还是不会
作者: BT狂人    时间: 2011-5-22 12:24
双叶GL 发表于 2011-5-21 20:35
直接照着复制然后在修改就可以了,具体你要怎么样,可以直接给你脚本
主要就是修改这数据"Window_PartyComman ...

谢谢了、


BT狂人于2011-5-22 12:37补充以下内容:
  @savefile_windows = []
  for i in 0
  @savefile_windows.push(Window_SaveFile.new(i, make_filename(i)))
end

这里提示出错、

脚本'Scene_File'的88行 发生了NoMethodError。
undefined method 'each' for 0:Fixnum
怎么回事?
作者: 双叶GL    时间: 2011-5-22 16:21
BT狂人 发表于 2011-5-22 12:24
谢谢了、

    @savefile_windows = []
    for i in 0
      @savefile_windows.push(Window_SaveFile.new(i, make_filename(i)))
    end
改成
    @savefile_windows = []
    for i in 0..0
      @savefile_windows.push(Window_SaveFile.new(i, make_filename(i)))
    end




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1