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

Project1

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

[已经解决] 用这个任务系统怎么放到菜单里?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
106 小时
注册时间
2012-4-13
帖子
278
跳转到指定楼层
1
发表于 2012-5-16 20:42:58 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

Lv1.梦旅人

梦石
0
星屑
210
在线时间
252 小时
注册时间
2010-10-30
帖子
51
2
发表于 2012-5-16 20:58:25 | 只看该作者
Scene_Menu找到这个  把里面的东西全部换成下面的东东

  1. #==============================================================================
  2. # ■ Scene_Menu
  3. #------------------------------------------------------------------------------
  4. #  处理菜单画面的类。
  5. #==============================================================================

  6. class Scene_Menu < Scene_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对象
  9.   #     menu_index : 指令光标初期位置
  10.   #--------------------------------------------------------------------------
  11.   def initialize(menu_index = 0)
  12.     @menu_index = menu_index
  13.   end
  14.   #--------------------------------------------------------------------------
  15.   # ● 开始处理
  16.   #--------------------------------------------------------------------------
  17.   def start
  18.     super
  19.     create_menu_background
  20.     create_command_window
  21.     @gold_window = Window_Gold.new(0, 360)
  22.     @status_window = Window_MenuStatus.new(160, 0)
  23.   end
  24.   #--------------------------------------------------------------------------
  25.   # ● 结束处理
  26.   #--------------------------------------------------------------------------
  27.   def terminate
  28.     super
  29.     dispose_menu_background
  30.     @command_window.dispose
  31.     @gold_window.dispose
  32.     @status_window.dispose
  33.   end
  34.   #--------------------------------------------------------------------------
  35.   # ● 更新画面
  36.   #--------------------------------------------------------------------------
  37.   def update
  38.     super
  39.     update_menu_background
  40.     @command_window.update
  41.     @gold_window.update
  42.     @status_window.update
  43.     if @command_window.active
  44.       update_command_selection
  45.     elsif @status_window.active
  46.       update_actor_selection
  47.     end
  48.   end
  49.   #--------------------------------------------------------------------------
  50.   # ● 生成指令窗口
  51.   #--------------------------------------------------------------------------
  52.   def create_command_window
  53.     s1 = Vocab::item
  54.     s2 = Vocab::skill
  55.     s3 = Vocab::equip
  56.     s4 = Vocab::status
  57.     s5 = Vocab::save
  58.     s6 = Vocab::game_end
  59.     s7 = "任务"
  60.     @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6,s7])
  61.     @command_window.index = @menu_index
  62.     if $game_party.members.size == 0          # 同伴人数为 0 的情况下
  63.       @command_window.draw_item(0, false)     # 物品无效化
  64.       @command_window.draw_item(1, false)     # 特技无效化
  65.       @command_window.draw_item(2, false)     # 装备无效化
  66.       @command_window.draw_item(3, false)     # 状态无效化
  67.     end
  68.     if $game_system.save_disabled             # 禁止存档的情况下
  69.       @command_window.draw_item(4, false)     # 存档无效化
  70.     end
  71.   end
  72.   #--------------------------------------------------------------------------
  73.   # ● 更新指令选择
  74.   #--------------------------------------------------------------------------
  75.   def update_command_selection
  76.     if Input.trigger?(Input::B)
  77.       Sound.play_cancel
  78.       $scene = Scene_Map.new
  79.     elsif Input.trigger?(Input::C)
  80.       if $game_party.members.size == 0 and @command_window.index < 4
  81.         Sound.play_buzzer
  82.         return
  83.       elsif $game_system.save_disabled and @command_window.index == 4
  84.         Sound.play_buzzer
  85.         return
  86.       end
  87.       Sound.play_decision
  88.       case @command_window.index
  89.       when 0      # 物品
  90.         $scene = Scene_Item.new
  91.       when 1,2,3  # 特技、装备、状态
  92.         start_actor_selection
  93.       when 4      # 存档
  94.         $scene = Scene_File.new(true, false, false)
  95.       when 5      # 游戏结束
  96.         $scene = Scene_End.new
  97.        when 6      # 任务
  98.         $scene = Scene_Task.new(Scene_Map.new, 0)
  99.       end
  100.     end
  101.   end
  102.   #--------------------------------------------------------------------------
  103.   # ● アクター選択の開始
  104.   #--------------------------------------------------------------------------
  105.   def start_actor_selection
  106.     @command_window.active = false
  107.     @status_window.active = true
  108.     if $game_party.last_actor_index < @status_window.item_max
  109.       @status_window.index = $game_party.last_actor_index
  110.     else
  111.       @status_window.index = 0
  112.     end
  113.   end
  114.   #--------------------------------------------------------------------------
  115.   # ● アクター選択の終了
  116.   #--------------------------------------------------------------------------
  117.   def end_actor_selection
  118.     @command_window.active = true
  119.     @status_window.active = false
  120.     @status_window.index = -1
  121.   end
  122.   #--------------------------------------------------------------------------
  123.   # ● アクター選択の更新
  124.   #--------------------------------------------------------------------------
  125.   def update_actor_selection
  126.     if Input.trigger?(Input::B)
  127.       Sound.play_cancel
  128.       end_actor_selection
  129.     elsif Input.trigger?(Input::C)
  130.       $game_party.last_actor_index = @status_window.index
  131.       Sound.play_decision
  132.       case @command_window.index
  133.       when 1  # スキル
  134.         $scene = Scene_Skill.new(@status_window.index)
  135.       when 2  # 装備
  136.         $scene = Scene_Equip.new(@status_window.index)
  137.       when 3  # ステータス
  138.         $scene = Scene_Status.new(@status_window.index)
  139.       end
  140.     end
  141.   end
  142. end
复制代码
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
48
在线时间
841 小时
注册时间
2010-8-11
帖子
1135
3
发表于 2012-5-19 07:31:40 | 只看该作者
在main之前,Scene_Menu之后新建脚本,输入以下的脚本即可。
  1. class Scene_Menu < Scene_Base
  2.    def create_command_window
  3.     s1 = Vocab::item
  4.     s2 = Vocab::skill
  5.     s3 = Vocab::equip
  6.     s4 = Vocab::status
  7.     s5 = Vocab::save
  8.     s6 = Vocab::game_end
  9.     s7 = "任务"
  10.     @command_window = Window_Command.new(160, [s1, s2, s3, s4, s7, s5, s6])
  11.     @command_window.index = @menu_index
  12.     if $game_party.members.size == 0          # 如果無人在隊
  13.       @command_window.draw_item(0, false)     # 禁用[用品]
  14.       @command_window.draw_item(1, false)     # 禁用[技能]
  15.       @command_window.draw_item(2, false)     # 禁用[整備]
  16.       @command_window.draw_item(3, false)     # 禁用[狀態]
  17.     end
  18.     if $game_system.save_disabled             # 如果禁止存檔
  19.       @command_window.draw_item(4, false)     # 禁用[存檔]
  20.     end
  21.   end
  22.    #--------------------------------------------------------------------------
  23.   # * 更新指令選擇輸入資訊
  24.   #--------------------------------------------------------------------------
  25.   def update_command_selection
  26.     if Input.trigger?(Input::B)
  27.       Sound.play_cancel
  28.       $scene = Scene_Map.new
  29.     elsif Input.trigger?(Input::C)
  30.       if $game_party.members.size == 0 and @command_window.index < 4
  31.         Sound.play_buzzer
  32.         return
  33.       elsif $game_system.save_disabled and @command_window.index == 4
  34.         Sound.play_buzzer
  35.         return
  36.       end
  37.       Sound.play_decision
  38.       case @command_window.index
  39.       when 0      # 用品
  40.         $scene = Scene_Item.new
  41.       when 1,2,3  # 技能,整備,狀態
  42.         start_actor_selection
  43.       when 4
  44.         $scene = Scene_Task.new(Scene_Menu.new(4))
  45.       when 5      # 存檔
  46.         $scene = Scene_File.new(true, false, false)
  47.       when 6      # 結束遊戲
  48.         $scene = Scene_End.new
  49.       end
  50.     end
  51.   end
  52. end
复制代码
注意,此法未经测试,可能会出错。

评分

参与人数 1星屑 +200 收起 理由
Luciffer + 200 替楼主给分

查看全部评分

回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
106 小时
注册时间
2012-4-13
帖子
278
4
 楼主| 发表于 2012-5-19 20:23:25 | 只看该作者
zdc223658 发表于 2012-5-16 20:58
Scene_Menu找到这个  把里面的东西全部换成下面的东东

如果没有任务的话会有错误……有任务的话翻到下一页也会有错误


‘‘──食人族幽灵于2012-5-19 20:36补充以下内容

不过得等我月亮时候……
’’

点评

等等,那是任务的问题……两人都行……都给分把!  发表于 2012-5-19 20:30
←别人那偷来的签名
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
89 小时
注册时间
2012-6-20
帖子
65
5
发表于 2012-6-25 17:22:27 | 只看该作者
先用用……
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-24 21:50

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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