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

Project1

 找回密码
 注册会员
搜索
楼主: bbhh
打印 上一主题 下一主题

轩辕剑式的菜单问题

 关闭 [复制链接]

Lv1.梦旅人

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
帖子
1875
21
发表于 2008-3-29 01:20:26 | 只看该作者
以下引用水迭澜于2008-3-28 17:13:53的发言:


以下引用凌冰于2008-3-28 14:25:16的发言:
其实我之前用那个脚本的办法就是把图片改小



你你你你个同人男……竟然用bl图……顿时脑残……
话说修改窗口的脚本很基础了,建议lz学会为好~

没在意,是霸王阴功里的图!
话说,星辰殿的轩辕菜单,我当初改起来也是蛮费尽的(好像是07年的事了!囧)
不常在线,有事PM
回复 支持 反对

使用道具 举报

Lv1.梦旅人

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
帖子
1875
22
发表于 2008-3-29 01:22:31 | 只看该作者

点击那个论坛附件
不常在线,有事PM
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

悔恨的天使

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-2-26
帖子
726
23
发表于 2008-3-29 01:23:05 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1 小时
注册时间
2008-3-3
帖子
85
24
 楼主| 发表于 2008-3-29 01:24:06 | 只看该作者
以下引用凌冰于2008-3-28 17:20:26的发言:

没在意,是霸王阴功里的图!
话说,星辰殿的轩辕菜单,我当初改起来也是蛮费尽的(好像是07年的事了!囧)


能不能帮我改一下轩辕菜单啊,只要是在左边能显示70*70的头像就行。。其它的还好,感觉不用改,先谢谢了。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
帖子
1875
25
发表于 2008-3-29 01:26:41 | 只看该作者
以下引用Iselia雪于2008-3-28 17:23:05的发言:


以下引用凌冰于2008-3-28 17:20:26的发言:
没在意,是霸王阴功里的图!


YY的脚本功底至少比我高出10年,没10年也有8年,差不多和美兽夏哪一个级别。
你你你……出于尊敬也得换张!!!

我错了,我真的错了,我是出于崇拜,才用的
好吧!改好发上来
不常在线,有事PM
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1 小时
注册时间
2008-3-3
帖子
85
26
 楼主| 发表于 2008-3-29 01:27:15 | 只看该作者
我用的就是这个菜单:

http://rpg.blue/web/htm/news298.htm

帮我改一下,只要是在左边能显示70*70的头像就行。。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1 小时
注册时间
2008-3-3
帖子
85
27
 楼主| 发表于 2008-3-29 01:30:26 | 只看该作者
上传完了,脚本盲就是累。。。好在有好多热心人。。。。开心。。。。

http://rpg.blue/upload_program/files/轩辕剑菜单_87154148.rar
回复 支持 反对

使用道具 举报

Lv1.梦旅人

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
帖子
1875
28
发表于 2008-3-29 01:53:06 | 只看该作者
Scene_Menu New!改成这样
  1. #==============================================================================
  2. # ■ 仿轩辕剑式的菜单 BY 亿万星辰
  3. #==============================================================================
  4. # ■ Scene_Menu
  5. #------------------------------------------------------------------------------
  6. #  处理菜单画面的类。
  7. #==============================================================================

  8. class Scene_Menu
  9.   #--------------------------------------------------------------------------
  10.   # ● 初始化对像
  11.   #     menu_index : 命令光标的初期位置
  12.   #--------------------------------------------------------------------------
  13.   def initialize(menu_index = 0)
  14.     @menu_index = menu_index
  15.     @item_update = false
  16.     @skill_update = false
  17.     @equip_update = false
  18.     @status_update = false
  19.     @sys_update = false
  20.     @equip_status_update = false
  21.   end
  22.   #--------------------------------------------------------------------------
  23.   # ● 主处理
  24.   #--------------------------------------------------------------------------
  25.   def main
  26.     #----------------------------- 主菜单 -----------------------------------
  27.     # 生成命令窗口
  28.     @command_window = Window_MenuCommand.new(@menu_index)
  29.     # 同伴人数为 0 的情况下
  30.     if $game_party.actors.size == 0
  31.       # 物品、特技、装备、状态无效化
  32.       @command_window.disable_item(0)
  33.       @command_window.disable_item(1)
  34.       @command_window.disable_item(2)
  35.       @command_window.disable_item(3)
  36.     end
  37.     # 禁止存档的情况下
  38.     if $game_system.save_disabled
  39.       # 存档无效
  40.       @command_window.disable_item(4)
  41.     end
  42.     # 生成金钱窗口
  43.     @gold_window = Window_Gold.new
  44.     @gold_window.x = 0
  45.     @gold_window.y = 416
  46.     # 生成状态窗口
  47.     @status_window = Window_MenuStatus.new
  48.     @status_window.x = 0
  49.     @status_window.y = 64
  50.     #@status_window = Window_MenuEquip.new
  51.     #@status_window.x = 0
  52.     #@status_window.y = 64
  53.     #@status_window.visible = false
  54.     # 遮蔽窗口
  55.     @dummy_window = Window_Base.new(160, 64, 480, 416)
  56.     @dummy_window.back_opacity = 0
  57.     @dummy_sprite = Sprite.new(Viewport.new(160, 64, 480, 416))
  58.     @old_index = @menu_index
  59.     case @menu_index
  60.     when 0
  61.       @dummy_sprite.bitmap = Bitmap.new("Graphics/Pictures/item")
  62.     when 1
  63.       @dummy_sprite.bitmap = Bitmap.new("Graphics/Pictures/skill")
  64.     when 2
  65.       @dummy_sprite.bitmap = Bitmap.new("Graphics/Pictures/equip")
  66.     when 3
  67.       @dummy_sprite.bitmap = Bitmap.new("Graphics/Pictures/status")
  68.     when 4
  69.       @dummy_sprite.bitmap = Bitmap.new("Graphics/Pictures/system")
  70.     end
  71.     # 执行过渡
  72.     Graphics.transition
  73.     # 主循环
  74.     loop do
  75.       # 刷新游戏画面
  76.       Graphics.update
  77.       # 刷新输入信息
  78.       Input.update
  79.       # 刷新画面
  80.       update
  81.       # 如果切换画面就中断循环
  82.       if $scene != self
  83.         break
  84.       end
  85.     end
  86.     # 准备过渡
  87.     Graphics.freeze
  88.     # 释放窗口
  89.     @command_window.dispose
  90.     @gold_window.dispose
  91.     @status_window.dispose
  92.     #@status_window.dispose
  93.     @dummy_window.dispose
  94.     @dummy_sprite.dispose
  95.   end
  96.   #--------------------------------------------------------------------------
  97.   # ● 刷新画面
  98.   #--------------------------------------------------------------------------
  99.   def update
  100.     # 刷新窗口
  101.     #----------------------------- 主菜单 -----------------------------------
  102.     @command_window.update
  103.     @gold_window.update
  104.       @status_window.visible = true# and @status_window.visible = false if !@status_window.visible
  105.       @status_window.update
  106.     if @command_window.index != @old_index
  107.       case @command_window.index
  108.       when 0
  109.         @dummy_sprite.bitmap = Bitmap.new("Graphics/Pictures/item")
  110.       when 1
  111.         @dummy_sprite.bitmap = Bitmap.new("Graphics/Pictures/skill")
  112.       when 2
  113.         @dummy_sprite.bitmap = Bitmap.new("Graphics/Pictures/equip")
  114.       when 3
  115.         @dummy_sprite.bitmap = Bitmap.new("Graphics/Pictures/status")
  116.       when 4
  117.         @dummy_sprite.bitmap = Bitmap.new("Graphics/Pictures/system")
  118.       end
  119.       @old_index = @command_window.index
  120.     end
  121.     # 命令窗口被激活的情况下: 调用 update_command
  122.     if @command_window.active
  123.       update_command
  124.       return
  125.     end
  126.     # 状态窗口被激活的情况下: 调用 update_status
  127.     if @status_window.active
  128.       if @item_update
  129.         update_item_target
  130.         return
  131.       elsif @skill_update
  132.         update_skill_target
  133.         return
  134.       elsif @equip_status_update
  135.         update_status1
  136.       else
  137.         update_status
  138.         return
  139.       end
  140.     end
  141.         
  142.     #----------------------------- 物品菜单 ---------------------------------
  143.     if @item_update
  144.       @item_help_window.update
  145.       @item_window.update
  146.       # 物品窗口被激活的情况下: 调用 update_item
  147.       if @item_window.active
  148.         update_item
  149.         return
  150.       end
  151.     #----------------------------- 奇术菜单 ---------------------------------
  152.     elsif @skill_update
  153.       # 刷新窗口
  154.       @skill_help_window.update
  155.       @skill_window.update
  156.       # 特技窗口被激活的情况下: 调用 update_skill
  157.       if @skill_window.active
  158.         update_skill
  159.         return
  160.       end
  161.     #----------------------------- 装备菜单 ---------------------------------
  162.     elsif @equip_update
  163.       @equip_right_window.update
  164.       @equip_item_window.update
  165.       # 设置物品窗口的可视状态
  166.       @equip_item_window1.visible = (@equip_right_window.index == 0)
  167.       @equip_item_window2.visible = (@equip_right_window.index == 1)
  168.       @equip_item_window3.visible = (@equip_right_window.index == 2)
  169.       @equip_item_window4.visible = (@equip_right_window.index == 3)
  170.       @equip_item_window5.visible = (@equip_right_window.index == 4)
  171.       @equip_item_window6.visible = (@equip_right_window.index == 5)
  172.       @equip_item_window7.visible = (@equip_right_window.index == 6)
  173.       @equip_item_window8.visible = (@equip_right_window.index == 7)
  174.       # 获取当前装备中的物品
  175.       item1 = @equip_right_window.item
  176.       # 设置当前的物品窗口到 @item_window
  177.       case @equip_right_window.index
  178.       when 0
  179.         @equip_item_window = @equip_item_window1
  180.       when 1
  181.         @equip_item_window = @equip_item_window2
  182.       when 2
  183.         @equip_item_window = @equip_item_window3
  184.       when 3
  185.         @equip_item_window = @equip_item_window4
  186.       when 4
  187.         @equip_item_window = @equip_item_window5
  188.       when 5
  189.         @equip_item_window = @equip_item_window6
  190.       when 6
  191.         @equip_item_window = @equip_item_window7
  192.       when 7
  193.         @equip_item_window = @equip_item_window8
  194.       end
  195.       # 右窗口被激活的情况下
  196.       if @equip_right_window.active
  197.         # 删除变更装备后的能力
  198. #        @status_window.set_new_parameters(nil, nil, nil, @status_window.index)
  199.       end
  200.       # 物品窗口被激活的情况下
  201.       if @equip_item_window.active
  202.         # 获取现在选中的物品
  203.         item2 = @equip_item_window.item
  204.         # 变更装备
  205.         last_hp = @actor.hp
  206.         last_sp = @actor.sp
  207.         @actor.equip(@equip_right_window.index, item2 == nil ? 0 : item2.id)
  208.         # 获取变更装备后的能力值
  209.         new_atk = @actor.atk
  210.         new_pdef = @actor.pdef
  211.         new_mdef = @actor.mdef
  212.         # 返回到装备
  213.         @actor.equip(@equip_right_window.index, item1 == nil ? 0 : item1.id)
  214.         @actor.hp = last_hp
  215.         @actor.sp = last_sp
  216.         # 描画左窗口
  217. #        @status_window.set_new_parameters(new_atk, new_pdef, new_mdef, @status_window.index)
  218.       end
  219.       # 右侧窗口被激活的情况下: 调用 update_right
  220.       if @equip_right_window.active
  221.         update_right
  222.         return
  223.       end
  224.       # 物品窗口被激活的情况下: 调用 update_item
  225.       if @equip_item_window.active
  226.         update_equip_item
  227.         return
  228.       end
  229.     #----------------------------- 状态菜单 ---------------------------------
  230.     elsif @status_update
  231.       update_status_status
  232.       return
  233.     #----------------------------- 系统菜单 ---------------------------------
  234.     elsif @sys_update
  235.       if @end_window != nil and !@end_window.disposed?
  236.         update_end
  237.       elsif @bgm_window != nil and !@bgm_window.disposed? and @currentbgm_window != nil and !@currentbgm_window.disposed?
  238.         update_bgm
  239.       elsif @sfx_window != nil and !@sfx_window.disposed? and @currentsfx_window != nil and !@currentsfx_window.disposed?
  240.         update_sfx
  241.       elsif !@system_window.disposed?
  242.         update_system
  243.       end
  244.       return
  245.     end
  246.   end
  247.   
  248.   def update_command
  249.     # 按下 B 键的情况下
  250.     if Input.trigger?(Input::B)
  251.       # 演奏取消 SE
  252.       $game_system.se_play($data_system.cancel_se)
  253.       # 切换的地图画面
  254.       $scene = Scene_Map.new
  255.       return
  256.     end
  257.     # 按下 C 键的情况下
  258.     if Input.trigger?(Input::C)
  259.       # 同伴人数为 0、存档、游戏结束以外的场合
  260.       if $game_party.actors.size == 0 and @command_window.index < 4
  261.         # 演奏冻结 SE
  262.         $game_system.se_play($data_system.buzzer_se)
  263.         return
  264.       end
  265.       # 命令窗口的光标位置分支
  266.       case @command_window.index
  267.       when 0  # 物品
  268.         # 演奏确定 SE
  269.         $game_system.se_play($data_system.decision_se)
  270.         
  271.         # 生成帮助窗口、物品窗口
  272.         @item_help_window = Window_Help_New.new
  273.         @item_help_window.x = 160
  274.         @item_help_window.y = 480 - 64
  275.         @item_window = Window_Item_New.new
  276.         # 关联帮助窗口
  277.         @item_window.help_window = @item_help_window
  278.         # 生成目标窗口 (设置为不可见・不活动)
  279.         
  280.         # 切换到物品画面
  281.         @item_update = true
  282.         @command_window.active = false
  283.       when 1  # 特技
  284.         # 演奏确定 SE
  285.         $game_system.se_play($data_system.decision_se)
  286.         # 激活状态窗口
  287.         @command_window.active = false
  288.         @status_window.active = true
  289.         @status_window.index = 0
  290.       when 2  # 装备
  291.         # 演奏确定 SE
  292.         $game_system.se_play($data_system.decision_se)
  293.         # 激活状态窗口
  294.         @command_window.active = false
  295.         @status_window.active = true
  296.         @status_window.index = 0
  297.         @equip_status_update = true
  298.       when 3  # 状态
  299.         # 演奏确定 SE
  300.         $game_system.se_play($data_system.decision_se)
  301.         # 激活状态窗口
  302.         @command_window.active = false
  303.         @status_window.active = true
  304.         @status_window.index = 0
  305.       when 4  # 存档
  306.         # 演奏确定 SE
  307.         $game_system.se_play($data_system.decision_se)
  308.         @system_window = Window_SysCommand.new
  309.         @command_window.active = false
  310.         @sys_update = true
  311.       end
  312.       return
  313.     end
  314.   end
  315.   
  316.   def update_status
  317.     # 按下 B 键的情况下
  318.     if Input.trigger?(Input::B)
  319.       # 演奏取消 SE
  320.       $game_system.se_play($data_system.cancel_se)
  321.       # 激活命令窗口
  322.       @command_window.active = true
  323.       @status_window.active = false
  324.       @status_window.index = -2
  325.       return
  326.     end
  327.     # 按下 C 键的情况下
  328.     if Input.trigger?(Input::C)
  329.       # 命令窗口的光标位置分支
  330.       case @command_window.index
  331.       when 1  # 特技
  332.         # 本角色的行动限制在 2 以上的情况下
  333.         if $game_party.actors[@status_window.index].restriction >= 2
  334.           # 演奏冻结 SE
  335.           $game_system.se_play($data_system.buzzer_se)
  336.           return
  337.         end
  338.         # 演奏确定 SE
  339.         $game_system.se_play($data_system.decision_se)
  340.         @window_index = @status_window.index
  341.         @actor = $game_party.actors[@status_window.index]
  342.         # 生成帮助窗口、状态窗口、特技窗口
  343.         @skill_help_window = Window_Help_New.new
  344.         @skill_window = Window_Skill_New.new(@actor)
  345.         # 关联帮助窗口
  346.         @skill_window.help_window = @skill_help_window
  347.         @skill_help_window.x = 160
  348.         @skill_help_window.y = 480 - 64
  349.         @status_window.active = false
  350.         @skill_update = true
  351.       when 3  # 状态
  352.         # 演奏确定 SE
  353.         $game_system.se_play($data_system.decision_se)
  354.         # 切换到状态画面
  355.         # 获取角色
  356.         @actor = $game_party.actors[@status_window.index]
  357.         # 生成状态窗口
  358.         @status_status_window = Window_Status_New.new(@actor)
  359.         @status_window.active = false
  360.         @status_update = true
  361.       end
  362.       return
  363.     end
  364.   end
  365.   #--------------------------------------------------------------------------
  366.   # ● 物品刷新
  367.   #--------------------------------------------------------------------------
  368.   def update_item
  369.     # 按下 B 键的情况下
  370.     if Input.trigger?(Input::B)
  371.       # 演奏取消 SE
  372.       $game_system.se_play($data_system.cancel_se)
  373.       # 切换到菜单画面
  374.       @item_help_window.dispose
  375.       @item_window.dispose
  376.       @item_update = false
  377.       @command_window.active = true
  378.       return
  379.     end
  380.     # 按下 C 键的情况下
  381.     if Input.trigger?(Input::C)
  382.       # 获取物品窗口当前选中的物品数据
  383.       @item = @item_window.item
  384.       # 不使用物品的情况下
  385.       unless @item.is_a?(RPG::Item)
  386.         # 演奏冻结 SE
  387.         $game_system.se_play($data_system.buzzer_se)
  388.         return
  389.       end
  390.       # 不能使用的情况下
  391.       unless $game_party.item_can_use?(@item.id)
  392.         # 演奏冻结 SE
  393.         $game_system.se_play($data_system.buzzer_se)
  394.         return
  395.       end
  396.       # 演奏确定 SE
  397.       $game_system.se_play($data_system.decision_se)
  398.       # 效果范围是我方的情况下
  399.       if @item.scope >= 3
  400.         # 激活目标窗口
  401.         @item_window.active = false
  402.         @status_window.active = true
  403.         # 设置效果范围 (单体/全体) 的对应光标位置
  404.         if @item.scope == 4 || @item.scope == 6
  405.           @status_window.index = -1
  406.         else
  407.           @status_window.index = 0
  408.         end
  409.       # 效果在我方以外的情况下
  410.       else
  411.         # 公共事件 ID 有效的情况下
  412.         if @item.common_event_id > 0
  413.           # 预约调用公共事件
  414.           $game_temp.common_event_id = @item.common_event_id
  415.           # 演奏物品使用时的 SE
  416.           $game_system.se_play(@item.menu_se)
  417.           # 消耗品的情况下
  418.           if @item.consumable
  419.             # 使用的物品数减 1
  420.             $game_party.lose_item(@item.id, 1)
  421.             # 再描绘物品窗口的项目
  422.             @item_window.draw_item(@item_window.index)
  423.           end
  424.           @item_help_window.dispose
  425.           @item_window.dispose
  426.           # 切换到地图画面
  427.           $scene = Scene_Map.new
  428.           return
  429.         end
  430.       end
  431.       return
  432.     end
  433.   end
  434.   def update_item_target
  435.     # 按下 B 键的情况下
  436.     if Input.trigger?(Input::B)
  437.       # 演奏取消 SE
  438.       $game_system.se_play($data_system.cancel_se)
  439.       # 由于物品用完而不能使用的场合
  440.       unless $game_party.item_can_use?(@item.id)
  441.         # 再次生成物品窗口的内容
  442.         @item_window.refresh
  443.       end
  444.       # 删除目标窗口
  445.       @item_window.active = true
  446.       @status_window.index = -2
  447.       @status_window.active = false
  448.       return
  449.     end
  450.     # 按下 C 键的情况下
  451.     if Input.trigger?(Input::C)
  452.       # 如果物品用完的情况下
  453.       if $game_party.item_number(@item.id) == 0
  454.         # 演奏冻结 SE
  455.         $game_system.se_play($data_system.buzzer_se)
  456.         return
  457.       end
  458.       # 目标是全体的情况下
  459.       if @status_window.index == -1
  460.         # 对同伴全体应用物品使用效果
  461.         used = false
  462.         for i in $game_party.actors
  463.           used |= i.item_effect(@item)
  464.         end
  465.       end
  466.       # 目标是单体的情况下
  467.       if @status_window.index >= 0
  468.         # 对目标角色应用物品的使用效果
  469.         target = $game_party.actors[@status_window.index]
  470.         used = target.item_effect(@item)
  471.       end
  472.       # 使用物品的情况下
  473.       if used
  474.         # 演奏物品使用时的 SE
  475.         $game_system.se_play(@item.menu_se)
  476.         # 消耗品的情况下
  477.         if @item.consumable
  478.           # 使用的物品数减 1
  479.           $game_party.lose_item(@item.id, 1)
  480.           # 再描绘物品窗口的项目
  481.           @item_window.draw_item(@item_window.index)
  482.         end
  483.         # 再生成目标窗口的内容
  484.         @status_window.refresh
  485.         # 全灭的情况下
  486.         if $game_party.all_dead?
  487.           # 切换到游戏结束画面
  488.           $scene = Scene_Gameover.new
  489.           return
  490.         end
  491.         # 公共事件 ID 有效的情况下
  492.         if @item.common_event_id > 0
  493.           # 预约调用公共事件
  494.           $game_temp.common_event_id = @item.common_event_id
  495.           @item_help_window.dispose
  496.           @item_window.dispose
  497.           # 切换到地图画面
  498.           $scene = Scene_Map.new
  499.           return
  500.         end
  501.       end
  502.       # 无法使用物品的情况下
  503.       unless used
  504.         # 演奏冻结 SE
  505.         $game_system.se_play($data_system.buzzer_se)
  506.       end
  507.       return
  508.     end
  509.   end
  510.   #--------------------------------------------------------------------------
  511.   # ● 技能刷新
  512.   #--------------------------------------------------------------------------
  513.   def update_skill
  514.     # 按下 B 键的情况下
  515.     if Input.trigger?(Input::B)
  516.       # 演奏取消 SE
  517.       $game_system.se_play($data_system.cancel_se)
  518.       # 切换到菜单画面
  519.       @skill_help_window.dispose
  520.       @skill_window.dispose
  521.       @skill_update = false
  522.       @status_window.active = true
  523.       @status_window.index = @window_index
  524.       return
  525.     end
  526.     # 按下 C 键的情况下
  527.     if Input.trigger?(Input::C)
  528.       # 获取特技窗口现在选择的特技的数据
  529.       @skill = @skill_window.skill
  530.       # 不能使用的情况下
  531.       if @skill == nil or not @actor.skill_can_use?(@skill.id)
  532.         # 演奏冻结 SE
  533.         $game_system.se_play($data_system.buzzer_se)
  534.         return
  535.       end
  536.       # 演奏确定 SE
  537.       $game_system.se_play($data_system.decision_se)
  538.       # 效果范围是我方的情况下
  539.       if @skill.scope >= 3
  540.         # 激活目标窗口
  541.         @skill_window.active = false
  542.         @status_window.active = true
  543.         # 设置效果范围 (单体/全体) 的对应光标位置
  544.         if @skill.scope == 4 || @skill.scope == 6
  545.           @status_window.index = -1
  546.         elsif @skill.scope == 7
  547.           @status_window.index = @actor_index - 10
  548.         else
  549.           @status_window.index = 0
  550.         end
  551.       # 效果在我方以外的情况下
  552.       else
  553.         # 公共事件 ID 有效的情况下
  554.         if @skill.common_event_id > 0
  555.           # 预约调用公共事件
  556.           $game_temp.common_event_id = @skill.common_event_id
  557.           # 演奏特技使用时的 SE
  558.           $game_system.se_play(@skill.menu_se)
  559.           # 消耗 SP
  560.           @actor.sp -= @skill.sp_cost
  561.           # 再生成各窗口的内容
  562.           @skill_window.refresh
  563.           @status_window.refresh
  564.           @skill_help_window.dispose
  565.           @skill_window.dispose
  566.           # 切换到地图画面
  567.           $scene = Scene_Map.new
  568.           return
  569.         end
  570.       end
  571.       return
  572.     end
  573.   end
  574.   def update_skill_target
  575.     # 按下 B 键的情况下
  576.     if Input.trigger?(Input::B)
  577.       # 演奏取消 SE
  578.       $game_system.se_play($data_system.cancel_se)
  579.       # 删除目标窗口
  580.       @skill_window.active = true
  581.       @status_window.index = -2
  582.       @status_window.active = false
  583.       return
  584.     end
  585.     # 按下 C 键的情况下
  586.     if Input.trigger?(Input::C)
  587.       # 因为 SP 不足而无法使用的情况下
  588.       unless @actor.skill_can_use?(@skill.id)
  589.         # 演奏冻结 SE
  590.         $game_system.se_play($data_system.buzzer_se)
  591.         return
  592.       end
  593.       # 目标是全体的情况下
  594.       if @status_window.index == -1
  595.         # 对同伴全体应用特技使用效果
  596.         used = false
  597.         for i in $game_party.actors
  598.           used |= i.skill_effect(@actor, @skill)
  599.         end
  600.       end
  601.       # 目标是使用者的情况下
  602.       if @status_window.index <= -2
  603.         # 对目标角色应用特技的使用效果
  604.         target = $game_party.actors[@status_window.index + 10]
  605.         used = target.skill_effect(@actor, @skill)
  606.       end
  607.       # 目标是单体的情况下
  608.       if @status_window.index >= 0
  609.         # 对目标角色应用特技的使用效果
  610.         target = $game_party.actors[@status_window.index]
  611.         used = target.skill_effect(@actor, @skill)
  612.       end
  613.       # 使用特技的情况下
  614.       if used
  615.         # 演奏特技使用时的 SE
  616.         $game_system.se_play(@skill.menu_se)
  617.         # 消耗 SP
  618.         @actor.sp -= @skill.sp_cost
  619.         # 再生成各窗口内容
  620.         @status_window.refresh
  621.         @skill_window.refresh
  622.         # 全灭的情况下
  623.         if $game_party.all_dead?
  624.           # 切换到游戏结束画面
  625.           $scene = Scene_Gameover.new
  626.           return
  627.         end
  628.         # 公共事件 ID 有效的情况下
  629.         if @skill.common_event_id > 0
  630.           # 预约调用公共事件
  631.           $game_temp.common_event_id = @skill.common_event_id
  632.           @skill_help_window.dispose
  633.           @skill_window.dispose
  634.           # 切换到地图画面
  635.           $scene = Scene_Map.new
  636.           return
  637.         end
  638.       end
  639.       # 无法使用特技的情况下
  640.       unless used
  641.         # 演奏冻结 SE
  642.         $game_system.se_play($data_system.buzzer_se)
  643.       end
  644.       return
  645.     end
  646.   end
  647.   #--------------------------------------------------------------------------
  648.   # ● 装备刷新
  649.   #--------------------------------------------------------------------------
  650.   def update_right
  651.     # 按下 B 键的情况下
  652.     if Input.trigger?(Input::B)
  653.       # 演奏取消 SE
  654.       $game_system.se_play($data_system.cancel_se)
  655.       # 切换到菜单画面
  656.       @equip_help_window.dispose
  657.       @equip_right_window.dispose
  658.       @equip_item_window1.dispose
  659.       @equip_item_window2.dispose
  660.       @equip_item_window3.dispose
  661.       @equip_item_window4.dispose
  662.       @equip_item_window5.dispose
  663.       @equip_item_window6.dispose
  664.       @equip_item_window7.dispose
  665.       @equip_item_window8.dispose
  666.       @equip_update = false
  667.       @status_window.active = true
  668.     end
  669.     # 按下 C 键的情况下
  670.     if Input.trigger?(Input::C)
  671.       # 固定装备的情况下
  672.       if @actor.equip_fix?(@equip_right_window.index)
  673.         # 演奏冻结 SE
  674.         $game_system.se_play($data_system.buzzer_se)
  675.         return
  676.       end
  677.       # 演奏确定 SE
  678.       $game_system.se_play($data_system.decision_se)
  679.       # 激活物品窗口
  680.       @equip_right_window.active = false
  681.       @equip_item_window.active = true
  682.       @equip_item_window.index = 0
  683.       return
  684.     end
  685.   end
  686.   def update_equip_item
  687.     # 按下 B 键的情况下
  688.     if Input.trigger?(Input::B)
  689.       # 演奏取消 SE
  690.       $game_system.se_play($data_system.cancel_se)
  691.       # 激活右侧窗口
  692.       @equip_right_window.active = true
  693.       @equip_item_window.active = false
  694.       @equip_item_window.index = -1
  695.       return
  696.     end
  697.     # 按下 C 键的情况下
  698.     if Input.trigger?(Input::C)
  699.       # 演奏装备 SE
  700.       $game_system.se_play($data_system.equip_se)
  701.       # 获取物品窗口现在选择的装备数据
  702.       item = @equip_item_window.item
  703.       # 变更装备
  704.       @actor.equip(@equip_right_window.index, item == nil ? 0 : item.id)
  705.       # 激活右侧窗口
  706.       @equip_right_window.active = true
  707.       @equip_item_window.active = false
  708.       @equip_item_window.index = -1
  709.       # 再生成右侧窗口、物品窗口的内容
  710.       @equip_right_window.refresh
  711.       if @equip_right_window.index == 6 or @equip_right_window.index == 7
  712.         @equip_item_window7.refresh
  713.         @equip_item_window8.refresh
  714.       else
  715.         @equip_item_window.refresh
  716.       end
  717.       return
  718.     end
  719.   end
  720.   def update_status1
  721.     # 按下 B 键的情况下
  722.     if Input.trigger?(Input::B)
  723.       # 演奏取消 SE
  724.       $game_system.se_play($data_system.cancel_se)
  725.       # 激活命令窗口
  726.       @command_window.active = true
  727.       @status_window.active = false
  728.       @equip_status_update = false
  729.       @status_window.index = -2
  730.       return
  731.     end
  732.     # 按下 C 键的情况下
  733.     if Input.trigger?(Input::C)
  734.       # 命令窗口的光标位置分支
  735.         # 演奏确定 SE
  736.         $game_system.se_play($data_system.decision_se)
  737.         @equip_index = 0
  738.         @actor = $game_party.actors[@status_window.index]
  739.         @equip_help_window = Window_Help_New.new
  740.         @equip_help_window.x = 160
  741.         @equip_help_window.y = 480 - 64
  742.         @equip_right_window = Window_EquipRight_New.new(@actor)
  743.         @equip_item_window1 = Window_EquipItem_New.new(@actor, 0)
  744.         @equip_item_window2 = Window_EquipItem_New.new(@actor, 1)
  745.         @equip_item_window3 = Window_EquipItem_New.new(@actor, 2)
  746.         @equip_item_window4 = Window_EquipItem_New.new(@actor, 3)
  747.         @equip_item_window5 = Window_EquipItem_New.new(@actor, 4)
  748.         @equip_item_window6 = Window_EquipItem_New.new(@actor, 5)
  749.         @equip_item_window7 = Window_EquipItem_New.new(@actor, 6)
  750.         @equip_item_window8 = Window_EquipItem_New.new(@actor, 6)
  751.         # 关联帮助窗口
  752.         @equip_right_window.help_window = @equip_help_window
  753.         @equip_item_window1.help_window = @equip_help_window
  754.         @equip_item_window2.help_window = @equip_help_window
  755.         @equip_item_window3.help_window = @equip_help_window
  756.         @equip_item_window4.help_window = @equip_help_window
  757.         @equip_item_window5.help_window = @equip_help_window
  758.         @equip_item_window6.help_window = @equip_help_window
  759.         @equip_item_window7.help_window = @equip_help_window
  760.         @equip_item_window8.help_window = @equip_help_window
  761.         # 设置光标位置
  762.         @equip_right_window.index = @equip_index
  763.         @status_window.active = false
  764.         #@equip_status_update = false
  765.         @equip_update = true
  766.         # 设置物品窗口的可视状态
  767.         @equip_item_window1.visible = (@equip_right_window.index == 0)
  768.         @equip_item_window2.visible = (@equip_right_window.index == 1)
  769.         @equip_item_window3.visible = (@equip_right_window.index == 2)
  770.         @equip_item_window4.visible = (@equip_right_window.index == 3)
  771.         @equip_item_window5.visible = (@equip_right_window.index == 4)
  772.         @equip_item_window6.visible = (@equip_right_window.index == 5)
  773.         @equip_item_window7.visible = (@equip_right_window.index == 6)
  774.         @equip_item_window8.visible = (@equip_right_window.index == 7)
  775.         # 获取当前装备中的物品
  776.         item1 = @equip_right_window.item
  777.         # 设置当前的物品窗口到 @item_window
  778.         case @equip_right_window.index
  779.         when 0
  780.           @equip_item_window = @equip_item_window1
  781.         when 1
  782.           @equip_item_window = @equip_item_window2
  783.         when 2
  784.           @equip_item_window = @equip_item_window3
  785.         when 3
  786.           @equip_item_window = @equip_item_window4
  787.         when 4
  788.           @equip_item_window = @equip_item_window5
  789.         when 5
  790.           @equip_item_window = @equip_item_window6
  791.         when 6
  792.           @equip_item_window = @equip_item_window7
  793.         when 7
  794.           @equip_item_window = @equip_item_window8
  795.         end
  796.         # 右窗口被激活的情况下
  797.         if @equip_right_window.active
  798.           # 删除变更装备后的能力
  799. #          @status_window.set_new_parameters(nil, nil, nil)
  800.         end
  801.         # 物品窗口被激活的情况下
  802.         if @equip_item_window.active
  803.           # 获取现在选中的物品
  804.           item2 = @equip_item_window.item
  805.           # 变更装备
  806.           last_hp = @actor.hp
  807.           last_sp = @actor.sp
  808.           @actor.equip(@equip_right_window.index, item2 == nil ? 0 : item2.id)
  809.           # 获取变更装备后的能力值
  810.           new_atk = @actor.atk
  811.           new_pdef = @actor.pdef
  812.           new_mdef = @actor.mdef
  813.           # 返回到装备
  814.           @actor.equip(@equip_right_window.index, item1 == nil ? 0 : item1.id)
  815.           @actor.hp = last_hp
  816.           @actor.sp = last_sp
  817.           # 描画左窗口
  818.           #@status_window.set_new_parameters(new_atk, new_pdef, new_mdef)
  819.         end
  820.     end
  821.   end
  822.   #--------------------------------------------------------------------------
  823.   # ● 状态刷新
  824.   #--------------------------------------------------------------------------
  825.   def update_status_status
  826.     # 按下 B 键的情况下
  827.     if Input.trigger?(Input::B)
  828.       # 演奏取消 SE
  829.       $game_system.se_play($data_system.cancel_se)
  830.       # 切换到菜单画面
  831.       @status_status_window.dispose
  832.       @status_update = false
  833.       @status_window.active = true
  834.       return
  835.     end
  836.   end
  837.   
  838.   def update_system
  839.     @system_window.update
  840.     # 按下 B 键的情况下
  841.     if Input.trigger?(Input::B)
  842.       # 演奏取消 SE
  843.       $game_system.se_play($data_system.cancel_se)
  844.       # 切换到菜单画面
  845.       @system_window.dispose
  846.       @sys_update = false
  847.       @command_window.active = true
  848.       return
  849.     end
  850.     # 按下 C 键的情况下
  851.     if Input.trigger?(Input::C)
  852.       # 演奏确定 SE
  853.       $game_system.se_play($data_system.decision_se)
  854.       case @system_window.index
  855.       when 0
  856.         @bgm_window = Window_BGM_Volume.new(80, ["0%", "17%", "34%", "50%", "67%", "84%", "100%"])
  857.         @currentbgm_window = Window_CurrentBGM_Volume.new
  858.         @system_window.active = false
  859.       when 1
  860.         @sfx_window = Window_SFX_Volume.new(80, ["0%", "17%", "34%", "50%", "67%", "84%", "100%"])
  861.         @currentsfx_window = Window_CurrentSFX_Volume.new
  862.         @system_window.active = false
  863.       when 2
  864.         @system_window.dispose
  865.         $scene = Scene_Save.new
  866.       when 3
  867.         @system_window.dispose
  868.         $scene = Scene_Load.new(true)
  869.       when 4
  870.         @end_window = Window_EndCommand.new
  871.         @system_window.active = false
  872.       end
  873.       return
  874.     end
  875.   end
  876.   
  877.   def update_bgm
  878.     @bgm_window.update
  879.     if Input.trigger?(Input::B)
  880.       $game_system.se_play($data_system.cancel_se)
  881.       @system_window.active = true
  882.       @bgm_window.dispose
  883.       @currentbgm_window.dispose
  884.       return
  885.     end
  886.     if Input.trigger?(Input::C)
  887.       case @bgm_window.index
  888.       when 0
  889.         $game_system.bgm_volume = 0
  890.         $game_system.bgm_play($game_system.bgm_memorize)
  891.         @currentbgm_window.refresh
  892.       when 1
  893.         $game_system.bgm_volume = 17
  894.         $game_system.bgm_play($game_system.bgm_memorize)
  895.         @currentbgm_window.refresh
  896.       when 2
  897.         $game_system.bgm_volume = 34
  898.         $game_system.bgm_play($game_system.bgm_memorize)
  899.         @currentbgm_window.refresh
  900.       when 3
  901.         $game_system.bgm_volume = 50
  902.         $game_system.bgm_play($game_system.bgm_memorize)
  903.         @currentbgm_window.refresh
  904.       when 4
  905.         $game_system.bgm_volume = 67
  906.         $game_system.bgm_play($game_system.bgm_memorize)
  907.         @currentbgm_window.refresh
  908.       when 5
  909.         $game_system.bgm_volume = 84
  910.         $game_system.bgm_play($game_system.bgm_memorize)
  911.         @currentbgm_window.refresh
  912.       when 6
  913.         $game_system.bgm_volume = 100
  914.         $game_system.bgm_play($game_system.bgm_memorize)
  915.         @currentbgm_window.refresh
  916.       end
  917.       return
  918.     end
  919.   end
  920.   
  921.   def update_sfx
  922.     @sfx_window.update
  923.     if Input.trigger?(Input::B)
  924.       $game_system.se_play($data_system.cancel_se)
  925.       @sfx_window.dispose
  926.       @currentsfx_window.dispose
  927.       @system_window.active = true
  928.       return
  929.     end
  930.     if Input.trigger?(Input::C)
  931.       case @sfx_window.index
  932.       when 0
  933.         $game_system.se_volume = 0
  934.         $game_system.se_play($data_system.decision_se)
  935.         @currentsfx_window.refresh
  936.       when 1
  937.         $game_system.se_volume = 17
  938.         $game_system.se_play($data_system.decision_se)
  939.         @currentsfx_window.refresh
  940.       when 2
  941.         $game_system.se_volume = 34
  942.         $game_system.se_play($data_system.decision_se)
  943.         @currentsfx_window.refresh
  944.       when 3
  945.         $game_system.se_volume = 50
  946.         $game_system.se_play($data_system.decision_se)
  947.         @currentsfx_window.refresh
  948.       when 4
  949.         $game_system.se_volume = 67
  950.         $game_system.se_play($data_system.decision_se)
  951.         @currentsfx_window.refresh
  952.       when 5
  953.         $game_system.se_volume = 84
  954.         $game_system.se_play($data_system.decision_se)
  955.         @currentsfx_window.refresh
  956.       when 6
  957.         $game_system.se_volume = 100
  958.         $game_system.se_play($data_system.decision_se)
  959.         @currentsfx_window.refresh
  960.       end
  961.       $game_map.autoplay
  962.       return
  963.     end
  964.   end
  965.   
  966.   def update_end
  967.     @end_window.update
  968.     if Input.trigger?(Input::B)
  969.       $game_system.se_play($data_system.cancel_se)
  970.       @end_window.dispose
  971.       @system_window.active = true
  972.       return
  973.     end
  974.     if Input.trigger?(Input::C)
  975.       case @end_window.index
  976.       when 0
  977.         @end_window.dispose
  978.         @system_window.dispose
  979.         command_to_title
  980.       when 1
  981.         command_shutdown
  982.       end
  983.       return
  984.     end
  985.   end

  986.   def command_to_title
  987.     $game_system.se_play($data_system.decision_se)
  988.     Audio.bgm_fade(800)
  989.     Audio.bgs_fade(800)
  990.     Audio.me_fade(800)
  991.     $scene = Scene_Title.new
  992.   end

  993.   def command_shutdown
  994.     $game_system.se_play($data_system.decision_se)
  995.     Audio.bgm_fade(800)
  996.     Audio.bgs_fade(800)
  997.     Audio.me_fade(800)
  998.     $scene = nil
  999.   end
  1000. end
复制代码

系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
不常在线,有事PM
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1 小时
注册时间
2008-3-3
帖子
85
29
 楼主| 发表于 2008-3-31 16:38:11 | 只看该作者
冰王子,你给我改的是状态栏里的,我想改的是菜单左边那儿,这两天出差,没及时回复,表示歉意。。。。希望你能再给我改改啊
回复 支持 反对

使用道具 举报

Lv1.梦旅人

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
帖子
1875
30
发表于 2008-3-31 21:00:22 | 只看该作者
菜单左边那儿?
菜单左边不就是显示血条、头像的吗?我改的没错啊?{/fd}
不常在线,有事PM
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-29 07:51

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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