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

Project1

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

[已经解决] 如何設置子菜單中"不達條件不能按的"選項

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
138 小时
注册时间
2008-11-28
帖子
73
跳转到指定楼层
1
发表于 2011-11-9 09:41:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 dancy60634 于 2011-11-14 12:38 编辑

新增檔案,裡面還有原作者的主菜單改法

PS.這是子菜單(點擊隊伍:出現三個選項)

精靈腳本
因為當精靈數=0時
點守護資訊會報錯(原腳本問題,無法改)
所以要把它關掉
可是不知道是不是子菜單無法這麼寫
子菜單目前的問題是
守護資訊雖然可以呈現無法按的黑色,但還是能點=口=
if $game_party.spirits.size == 0
@command_window.draw_item(2, false)   
end
究竟是哪邊錯了~~
  1. class Scene_Spirit
  2.   #--------------------------------------------------------------------------
  3.   # ● 主处理
  4.   #--------------------------------------------------------------------------
  5.   def main
  6.     # 生成命令窗口
  7.     s1 = "隊伍編制"
  8.     s2 = "守護之力"
  9.     s3 = "守護資訊"
  10.     s4 = "取消"
  11.     @command_window = Window_Command.new(192, [s1, s2, s3,s4])
  12.     @command_window.x = 320 - @command_window.width / 2
  13.     @command_window.y = 240 - @command_window.height / 2
  14.     if $game_party.spirits.size == 0
  15.       @command_window.draw_item(2, false)   
  16.     end

  17.     # 执行过渡
  18.     Graphics.transition
  19.     # 主循环
  20.     loop do
  21.       # 刷新游戏画面
  22.       Graphics.update
  23.       # 刷新输入情报
  24.       Input.update
  25.       # 刷新画面
  26.       update
  27.       # 如果画面切换的话就中断循环
  28.       if $scene != self
  29.         break
  30.       end
  31.     end
  32.     # 准备过渡
  33.     Graphics.freeze
  34.     # 释放窗口
  35.     @command_window.dispose
  36.     # 如果在标题画面切换中的情况下
  37.     if $scene.is_a?(Scene_Title)
  38.       # 淡入淡出画面
  39.       Graphics.transition
  40.       Graphics.freeze
  41.     end
  42.   end
  43.   #--------------------------------------------------------------------------
  44.   # ● 刷新画面
  45.   #--------------------------------------------------------------------------
  46.   def update
  47.     # 刷新命令窗口
  48.     @command_window.update
  49.     # 按下 B 键的情况下
  50.     if Input.trigger?(Input::B)
  51.       $scene = Scene_Menu.new
  52.       return
  53.     end
  54.     # 按下 C 键的场合下
  55.     if Input.trigger?(Input::C)
  56.       # 命令窗口光标位置分支
  57.       if $game_party.spirits.size == 0 and @command_window.index == 2
  58.         Sound.play_buzzer
  59.       end
  60.       Sound.play_decision
  61.       case @command_window.index
  62.       when 0  
  63.         $scene = Scene_PartyForm.new
  64.       when 1
  65.         $scene = Scene_SpiritChange.new
  66.       when 2  
  67.         $scene = Scene_SpiritStatus.new
  68.       when 3  # 取消
  69.         command_cancel
  70.       end
  71.       return
  72.     end
  73.   end
  74.   #--------------------------------------------------------------------------
  75.   # ● 选择命令 [取消] 时的处理
  76.   #--------------------------------------------------------------------------
  77.   def command_cancel
  78.     $scene = Scene_Menu.new
  79.   end
  80. end
复制代码

点评

本来是下了。。。但是文件损坏。。  发表于 2011-11-9 17:39
恩。。。加了东西。。还新定义了。。。恩。。还是放出你加的脚本吧。。。。  发表于 2011-11-9 11:35

Lv2.观梦者

梦石
0
星屑
354
在线时间
1036 小时
注册时间
2011-5-19
帖子
2098
2
发表于 2011-11-9 10:12:43 | 只看该作者
为何是
  1. s1 = "隊伍編制"

  2.     s2 = "守護之力"

  3.     s3 = "守護資訊"

  4.     s4 = "取消"
复制代码
貌似ruby也是从0开始的吗~~

在下纯小白,不负责任的路过~~

点评

MSQ
~~=W=~~多谢帮助  发表于 2011-11-14 11:26
- -b这个只是变量名而已...看上面@command_window = Window_Command.new(192, [s1, s2, s3,s4])  发表于 2011-11-14 11:25
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1160
在线时间
274 小时
注册时间
2011-7-24
帖子
272
3
发表于 2011-11-9 11:27:53 | 只看该作者
本帖最后由 昔日辉煌灬 于 2011-11-9 12:22 编辑
  1. if $game_party.spirits.size == 0
复制代码
if $game_party.spirits.size???  Game_Party有这东西???


。。论坛抽了。。。下过来的。。只有作者改法。。。看看先。。


。。无效化的话。。。@command_window.draw_item(2, false)
                                                                                      ↑..这个应该是1对应第二个选项...0对应第一个
  1. when 1
  2.         $scene = Scene_SpiritChange.new
  3.       when 2  
  4.         $scene = Scene_SpiritStatus.new
复制代码
看了那个txt。。。。是这样的。。。
  1. when 5      # 精霊
  2.         $scene = Scene_SpiritStatus.new(0, @command_window.index)
  3.       when 6      # パートナー
  4.         $scene = Scene_SpiritChange.new(@command_window.index)
复制代码
没有出现错误的话。。。可能没事。。。
  1. class Scene_Spirit
复制代码
不继承Base吗?

点评

hcm
不用脚本,只用事件不行吗?  发表于 2011-11-10 23:30
1.我要關掉的是第三個選項,所以,沒錯吧@@?2作者的TXT是主菜單,我做的是主菜單下的子菜單,.$scene =Scene_Spirit.new喚出,可能還是要看檔案比較清楚@@~  发表于 2011-11-9 14:31
那是新腳本(精靈腳本)裡新定義的東西,沒有問題,因為我在主菜單添加時很正常,就是到了子菜單可能哪裡寫錯了  发表于 2011-11-9 11:29
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
138 小时
注册时间
2008-11-28
帖子
73
4
 楼主| 发表于 2011-11-9 11:56:44 | 只看该作者
本帖最后由 dancy60634 于 2011-11-9 11:57 编辑
昔日辉煌灬 发表于 2011-11-9 11:27
if $game_party.spirits.size???  Game_Party有这东西???


新增了~還有原作者的主菜單改法

0_0點評按成回復了~糟糕
回复

使用道具 举报

Lv3.寻梦者

虚空人形

梦石
0
星屑
4604
在线时间
2037 小时
注册时间
2011-8-11
帖子
3398

贵宾

5
发表于 2011-11-10 23:29:13 | 只看该作者
       何须脚本呢?只要在“显示选项”前加标签XX,在想要有条件的选项下放“条件分歧”
当符合条件时就继续你的剧情,不符就加“跳转到标签XX”事件,加B一声就更好了。

点评

hcm
所以说嘛,与其对着脚本欲哭无泪不如用事件。  发表于 2011-11-11 12:57
因為我有多個子選單,整合畫面要修很多東西。如果找不到解法,我會把組隊和守護拆開,主要是折騰了兩三個小時的腳本不能用,真的很想知道原因  发表于 2011-11-11 00:18
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
270 小时
注册时间
2010-2-4
帖子
1305
6
发表于 2011-11-14 11:23:46 | 只看该作者
58行这里
  1. if $game_party.spirits.size == 0 and @command_window.index == 2

  2.         Sound.play_buzzer

  3.       end

复制代码
改成
  1. if $game_party.spirits.size == 0 and @command_window.index == 2

  2.         Sound.play_buzzer
  3.         return
  4.       end

复制代码

点评

謝謝~~太感激了~~~~~~~~~~~~  发表于 2011-11-14 12:36
好歹当年也当过大魔王过,orz
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-4 18:43

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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