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

Project1

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

[已经解决] 求助!怎么做出ESC菜单离队的效果

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
274 小时
注册时间
2014-2-22
帖子
335
跳转到指定楼层
1
发表于 2014-3-16 14:25:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
就是在ESC菜单里选择让队友离队,但不可以让主角离队的这种效果怎么做

Lv3.寻梦者

梦石
0
星屑
1257
在线时间
423 小时
注册时间
2011-6-30
帖子
497
2
发表于 2014-3-19 11:13:18 手机端发表。 | 只看该作者
本帖最后由 0newing 于 2014-3-20 00:44 编辑

在菜单的脚本里新增一个整队的选项……然后增加相应的指令
思路就是这样,给出代码如下……(复制粘贴到Scene_Menu下)
感觉最后两行不太完善……请大神再做修改
RUBY 代码复制
  1. #==============================================================================
  2. # ■ Scene_Menu
  3. #------------------------------------------------------------------------------
  4. #  处理菜单画面的类。
  5. #==============================================================================
  6.  
  7. class Scene_Menu < Scene_Base
  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.     @gold_window = Window_Gold.new(0, 360)
  23.     @status_window = Window_MenuStatus.new(160, 0)
  24.   end
  25.   #--------------------------------------------------------------------------
  26.   # ● 结束处理
  27.   #--------------------------------------------------------------------------
  28.   def terminate
  29.     super
  30.     dispose_menu_background
  31.     @command_window.dispose
  32.     @gold_window.dispose
  33.     @status_window.dispose
  34.   end
  35.   #--------------------------------------------------------------------------
  36.   # ● 更新画面
  37.   #--------------------------------------------------------------------------
  38.   def update
  39.     super
  40.     update_menu_background
  41.     @command_window.update
  42.     @gold_window.update
  43.     @status_window.update
  44.     if @command_window.active
  45.       update_command_selection
  46.     elsif @status_window.active
  47.       update_actor_selection
  48.     end
  49.   end
  50.   #--------------------------------------------------------------------------
  51.   # ● 生成命令窗口
  52.   #--------------------------------------------------------------------------
  53.   def create_command_window
  54.     s1 = Vocab::item
  55.     s2 = Vocab::skill
  56.     s3 = Vocab::equip
  57.     s4 = Vocab::status
  58.     s5 = Vocab::save
  59.     s6 = "整队"
  60.     s7 = Vocab::game_end
  61.     @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6, s7])
  62.     @command_window.index = @menu_index
  63.     if $game_party.members.size == 0          # 如果队伍为空
  64.       @command_window.draw_item(0, false)     # 无效化物品选项
  65.       @command_window.draw_item(1, false)     # 无效化技能选项
  66.       @command_window.draw_item(2, false)     # 无效化装备选项
  67.       @command_window.draw_item(3, false)     # 无效化状态选项
  68.     end
  69.     if $game_system.save_disabled             # 如果禁止存档
  70.       @command_window.draw_item(4, false)     # 无效化存档选项
  71.     end
  72.   end
  73.   #--------------------------------------------------------------------------
  74.   # ● 更新命令窗口
  75.   #--------------------------------------------------------------------------
  76.   def update_command_selection
  77.     if Input.trigger?(Input::B)
  78.       Sound.play_cancel
  79.       $scene = Scene_Map.new
  80.     elsif Input.trigger?(Input::C)
  81.       if $game_party.members.size == 0 and @command_window.index < 4
  82.         Sound.play_buzzer
  83.         return
  84.       elsif $game_system.save_disabled and @command_window.index == 4
  85.         Sound.play_buzzer
  86.         return
  87.       end
  88.       Sound.play_decision
  89.       case @command_window.index
  90.       when 0      # 物品
  91.         $scene = Scene_Item.new
  92.       when 1,2,3  # 技能、装备、状态
  93.         start_actor_selection
  94.       when 4      # 存档
  95.         $scene = Scene_File.new(true, false, false)
  96.       when 5      # 整队
  97.         start_actor_selection
  98.       when 6      # 结束游戏
  99.         $scene = Scene_End.new
  100.       end
  101.     end
  102.   end
  103.   #--------------------------------------------------------------------------
  104.   # ● 角色选择开始
  105.   #--------------------------------------------------------------------------
  106.   def start_actor_selection
  107.     @command_window.active = false
  108.     @status_window.active = true
  109.     if $game_party.last_actor_index < @status_window.item_max
  110.       @status_window.index = $game_party.last_actor_index
  111.     else
  112.       @status_window.index = 0
  113.     end
  114.   end
  115.   #--------------------------------------------------------------------------
  116.   # ● 角色选择结束
  117.   #--------------------------------------------------------------------------
  118.   def end_actor_selection
  119.     @command_window.active = true
  120.     @status_window.active = false
  121.     @status_window.index = -1
  122.   end
  123.   #--------------------------------------------------------------------------
  124.   # ● 角色选择更新
  125.   #--------------------------------------------------------------------------
  126.   def update_actor_selection
  127.     if Input.trigger?(Input::B)
  128.       Sound.play_cancel
  129.       end_actor_selection
  130.     elsif Input.trigger?(Input::C)
  131.       $game_party.last_actor_index = @status_window.index
  132.       Sound.play_decision
  133.       case @command_window.index
  134.       when 1  # 技能
  135.         $scene = Scene_Skill.new(@status_window.index)
  136.       when 2  # 装备
  137.         $scene = Scene_Equip.new(@status_window.index)
  138.       when 3  # 状态
  139.         $scene = Scene_Status.new(@status_window.index)
  140.       when 5  # 整队
  141.         if @status_window.index == 0
  142.           Sound.play_buzzer
  143.         else
  144.           [url=home.php?mod=space&uid=95897]@actor[/url] = $game_party.members[@status_window.index]
  145.           $game_party.remove_actor(@actor.id)
  146.           @status_window.refresh
  147.           start_actor_selection
  148.         end
  149.       end
  150.     end
  151.   end
  152. end

来自: Android客户端

评分

参与人数 1星屑 +80 收起 理由
丿梁丶小柒 + 80 我很赞同

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-5 10:34

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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