Project1

标题: 怎么把物品栏设置只剩物品、存档、退出游戏? [打印本页]

作者: rrz1    时间: 2013-6-22 20:49
标题: 怎么把物品栏设置只剩物品、存档、退出游戏?
嗯感觉不需要去掉存档选项。
我只搜得到设置的只剩物品、退出游戏的
然后自己试了一下改脚本也没弄对
求教改哪里
作者: 长奁    时间: 2013-6-22 23:00
本帖最后由 长奁 于 2013-6-22 23:03 编辑

嘛…你们只发脚本这治标不治本呐……

权当教教入门级的脚本吧。
——————————————————————
在“Scene_Menu”里找到这段
  1.   #--------------------------------------------------------------------------
  2.   # ● 生成命令窗口
  3.   #--------------------------------------------------------------------------
  4.   def create_command_window
  5.     s1 = Vocab::item
  6.     s2 = Vocab::skill
  7.     s3 = Vocab::equip
  8.     s4 = Vocab::status
  9.     s5 = Vocab::save
  10.     s6 = Vocab::game_end
  11.     @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
  12.     @command_window.index = @menu_index
  13.     if $game_party.members.size == 0          # 如果队伍为空
  14.       @command_window.draw_item(0, false)     # 无效化物品选项
  15.       @command_window.draw_item(1, false)     # 无效化技能选项
  16.       @command_window.draw_item(2, false)     # 无效化装备选项
  17.       @command_window.draw_item(3, false)     # 无效化状态选项
  18.     end
  19.     if $game_system.save_disabled             # 如果禁止存档
  20.       @command_window.draw_item(4, false)     # 无效化存档选项
  21.     end
  22.   end
复制代码
这点简单的英文该认得不咯。
把不需要的选项去掉,然后根据后边的中文提示稍加改改变成这样:
  1.   #--------------------------------------------------------------------------
  2.   # ● 生成命令窗口
  3.   #--------------------------------------------------------------------------
  4.   def create_command_window
  5.     s1 = Vocab::item
  6.     s5 = Vocab::save
  7.     s6 = Vocab::game_end
  8.     @command_window = Window_Command.new(160, [s1, s5, s6])
  9.     @command_window.index = @menu_index
  10.     if $game_party.members.size == 0          # 如果队伍为空
  11.       @command_window.draw_item(0, false)     # 无效化物品选项
  12.     end
  13.     if $game_system.save_disabled             # 如果禁止存档
  14.       @command_window.draw_item(1, false)     # 无效化存档选项
  15.     end
  16.   end
复制代码
紧接着它下边就跟着改成:
  1.    #--------------------------------------------------------------------------
  2.   # ● 更新命令窗口
  3.   #--------------------------------------------------------------------------
  4.   def update_command_selection
  5.     if Input.trigger?(Input::B)
  6.       Sound.play_cancel
  7.       $scene = Scene_Map.new
  8.     elsif Input.trigger?(Input::C)
  9.       if $game_party.members.size == 0 and @command_window.index < 4
  10.         Sound.play_buzzer
  11.         return
  12.       elsif $game_system.save_disabled and @command_window.index == 4
  13.         Sound.play_buzzer
  14.         return
  15.       end
  16.       Sound.play_decision
  17.       case @command_window.index
  18.       when 0      # 物品
  19.         $scene = Scene_Item.new
  20.       when 1      # 存档
  21.         $scene = Scene_File.new(true, false, false)
  22.       when 2      # 结束游戏
  23.         $scene = Scene_End.new
  24.       end
  25.     end
  26.   end
复制代码
O了~如果是没有角色的、解谜之类游戏的话,或者不需要显示角色的,
可以搜索“@status_window = Window_MenuStatus.new(160, 0)”然后在前边加个#符号,把它屏蔽掉。当然直接删掉也可以。
接着搜索所有带“@status_window”的行,都一律屏蔽掉。
当然金钱窗口要去掉也是同理了。

如果要改变选项的坐标(如使之居中之类)可以在
“@command_window.index = @menu_index”
下面加入“@command_window.x = ”或者"@command_window.y = "
改变金钱窗口位置则是“@gold_window = Window_Gold.new(0, 360)”后面的0代表x坐标,360代表y。


呃…如果楼主不爱看这些,依上方法边写边整理好了一个=v=,可以直接复制去用。放在脚本“Main”上方。
  1. #==============================================================================
  2. # ■ Scene_Menu
  3. #------------------------------------------------------------------------------
  4. #  处理菜单画面的类。
  5. #==============================================================================

  6. class Scene_Menu < Scene_Base
  7.   WLH = 24  # 窗口行高(Window Line Height)
  8.   #--------------------------------------------------------------------------
  9.   # ● 初始化对像
  10.   #     menu_index : 命令窗口光标初始位置
  11.   #--------------------------------------------------------------------------
  12.   def initialize(menu_index = 0)
  13.     @menu_index = menu_index
  14.   end
  15.   #--------------------------------------------------------------------------
  16.   # ● 开始处理
  17.   #--------------------------------------------------------------------------
  18.   def start
  19.     super
  20.     create_menu_background
  21.     create_command_window
  22.     x = (Graphics.width - 160) / 2
  23.     y = (Graphics.height - WLH * 3 - 32) / 2 - (WLH + 32) / 2
  24.     # 如果不要金钱窗口,上行的“- (WLH + 32) / 2”就删去
  25.     @gold_window = Window_Gold.new(x, y + WLH * 3 + 32)
  26.     # 如果不要金钱窗口,上行就删去
  27.   end
  28.   #--------------------------------------------------------------------------
  29.   # ● 结束处理
  30.   #--------------------------------------------------------------------------
  31.   def terminate
  32.     super
  33.     dispose_menu_background
  34.     @command_window.dispose
  35.     @gold_window.dispose
  36.     # 如果不要金钱窗口,上行就删去
  37.   end
  38.   #--------------------------------------------------------------------------
  39.   # ● 更新画面
  40.   #--------------------------------------------------------------------------
  41.   def update
  42.     super
  43.     update_menu_background
  44.     @command_window.update
  45.     @gold_window.update
  46.     # 如果不要金钱窗口,上行就删去
  47.     if @command_window.active
  48.       update_command_selection
  49.     end
  50.   end
  51.   #--------------------------------------------------------------------------
  52.   # ● 生成命令窗口
  53.   #--------------------------------------------------------------------------
  54.   def create_command_window
  55.     s1 = Vocab::item
  56.     s5 = Vocab::save
  57.     s6 = Vocab::game_end
  58.     @command_window = Window_Command.new(160, [s1, s5, s6])
  59.     @command_window.index = @menu_index
  60.     @command_window.x = (Graphics.width - 160) / 2
  61.     @command_window.y = (Graphics.height - WLH * 3 - 32) / 2 - (WLH + 32) / 2
  62.     # 如果不要金钱窗口,上行的“- (WLH + 32) / 2”就删去
  63.     if $game_party.members.size == 0          # 如果队伍为空
  64.       @command_window.draw_item(0, false)     # 无效化物品选项
  65.     end
  66.     if $game_system.save_disabled             # 如果禁止存档
  67.       @command_window.draw_item(1, false)     # 无效化存档选项
  68.     end
  69.   end
  70.   #--------------------------------------------------------------------------
  71.   # ● 更新命令窗口
  72.   #--------------------------------------------------------------------------
  73.   def update_command_selection
  74.     if Input.trigger?(Input::B)
  75.       Sound.play_cancel
  76.       $scene = Scene_Map.new
  77.     elsif Input.trigger?(Input::C)
  78.       if $game_party.members.size == 0 and @command_window.index < 4
  79.         Sound.play_buzzer
  80.         return
  81.       elsif $game_system.save_disabled and @command_window.index == 4
  82.         Sound.play_buzzer
  83.         return
  84.       end
  85.       Sound.play_decision
  86.       case @command_window.index
  87.       when 0      # 物品
  88.         $scene = Scene_Item.new
  89.       when 1      # 存档
  90.         $scene = Scene_File.new(true, false, false)
  91.       when 2      # 结束游戏
  92.         $scene = Scene_End.new
  93.       end
  94.     end
  95.   end
  96. end
复制代码



这下应该够详细了~那啥抱歉,随便找的新建范例做的OTZ,一下子就翻到这啥了……
我记得楼主你有看过我这个脚本,呃,再次打打广告吧【。

还有啥不懂的就问我好了。不想水了帖子可以发消息。




@protosssonny p叔我有很认真回答问题欸
求糖
作者: 长奁    时间: 2013-6-22 23:11
本帖最后由 长奁 于 2013-6-22 23:12 编辑

唔…我感觉又彻头彻尾的二了
连个贴求别扣分OTZ,太懒了 不想编辑……

全局搜索
  1. $scene = Scene_Menu.new(4)
复制代码
其中4改成1

全局搜索
  1. $scene = Scene_Menu.new(5)
复制代码
其中5改成2

@protosssonny 这下好了~
不过.......
啊啊啊啊啊啊啊啊啊啊啊啊啊我的作业!!!!
拖延症君你是闹哪样啊!!!!!!!!!!!!


顺便.P叔果然是名不虚传的负责任。OTZ。




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