Project1

标题: 【VA】不會用這作的道具選擇系統 [打印本页]

作者: xiangelt    时间: 2011-12-28 23:50
标题: 【VA】不會用這作的道具選擇系統
就是比方說對話途中出現道具選項,選對了能推進劇情的那種
我試著去製作這類事件卻發現自己不會!求教ing~
作者: 银星星    时间: 2011-12-29 00:02
本帖最后由 银星星 于 2011-12-29 00:09 编辑

可以用显示选择项,如果不是你想要做的那样,说出来,我看看能不能帮上你的忙。
作者: ilmynasan    时间: 2011-12-29 00:04
本帖最后由 ilmynasan 于 2011-12-28 11:05 编辑

恩~亲试着使用变量操作?
比如说,设定一个变量为“选项正错”
在道具选项中,如果选对的话,变量+1,选错的话变量不变。
到时候判断选择正错的时候,设定个
条件分叉如果变量”选项正错“ > X 的话,剧情发生什么的?

如果只是纯粹有无某个道具的话,
条件分叉 -> 4 -> 物品 XX 持有时 就好了……

以上……这是我的小白做法
作者: xiangelt    时间: 2011-12-29 00:15
银星星 发表于 2011-12-29 00:02
可以用显示选择项,如果不是你想要做的那样,说出来,我看看能不能帮上你的忙。 ...

我心目中是想做解謎類遊戲
例子:
你看見一個鎖著的箱子,跟它對話就會跳出【你身上所擁有的道具】的列表,選中道具就能打開箱子


【其實主要是因為ACE多了個「道具選擇處理」系統,想找機會學學】
作者: ilmynasan    时间: 2011-12-29 00:23
xiangelt 发表于 2011-12-28 11:15
我心目中是想做解謎類遊戲
例子:
你看見一個鎖著的箱子,跟它對話就會跳出【你身上所擁有的道具】的列表 ...

接着钻我那变量牛角……

那你就
1.箱子对话,变量+1
2.道具里设定 钥匙 的公共事件为 变量-1
3.箱子里的剧本分叉,如果变量=0的话,打开得到道具
作者: xiangelt    时间: 2011-12-29 00:31
ilmynasan 发表于 2011-12-29 00:23
接着钻我那变量牛角……

那你就

問題是,你不知道角色接觸箱子時身上有哪些道具……
所以最重要是【如何呼喚出身上所有道具讓玩家選擇】……
作者: 各种压力的猫君    时间: 2011-12-29 00:53
本帖最后由 各种压力的猫君 于 2011-12-29 01:11 编辑

默认只有物品为“重要物品”分类才会出现在选择菜单中
  1. #==============================================================================
  2. # ■ Window_ItemList
  3. #------------------------------------------------------------------------------
  4. #  アイテム画面で、所持アイテムの一覧を表示するウィンドウです。
  5. #==============================================================================

  6. class Window_ItemList < Window_Selectable
  7.   #--------------------------------------------------------------------------
  8.   # ● アイテムをリストに含めるかどうか
  9.   #--------------------------------------------------------------------------
  10.   def include?(item)
  11.     case @category
  12.     when :item
  13.       item.is_a?(RPG::Item) && !item.key_item?
  14.     when :weapon
  15.       item.is_a?(RPG::Weapon)
  16.     when :armor
  17.       item.is_a?(RPG::Armor)
  18.     when :key_item
  19.       item.is_a?(RPG::Item) && item.key_item?
  20.   #--------------------------------------------------------------------------
  21.     when :all_item
  22.       item.is_a?(RPG::Item)
  23.     when :everything
  24.       true
  25.   #--------------------------------------------------------------------------
  26.     else
  27.       false
  28.     end
  29.   end
  30. end

  31. #==============================================================================
  32. # ■ Window_KeyItem
  33. #------------------------------------------------------------------------------
  34. #  イベントコマンド[アイテム選択の処理]に使用するウィンドウです。
  35. #==============================================================================

  36. class Window_KeyItem < Window_ItemList
  37.   #--------------------------------------------------------------------------
  38.   # ● 入力処理の開始
  39.   #--------------------------------------------------------------------------
  40.   def start
  41.   #--------------------------------------------------------------------------
  42.     self.category = :everything
  43.     # 如果想不显示武器和防具就把上面一行的 :everything 换成 :all_item
  44.   #--------------------------------------------------------------------------
  45.     update_placement
  46.     refresh
  47.     select(0)
  48.     open
  49.     activate
  50.   end
  51. end
复制代码
以上脚本插入到Main以上,即可选择所有物品
(其实修改的不多,建议你对照原有的自己改进去)
至于用法,选择物品会返回物品ID到指定变量,
你只要在下面用条件分歧判断变量ID是否为对应的物品ID就可以了。
之后可以不用把这个变量归零,因为下一次选择时会自动返回新的ID(取消选择会返回0)
作者: 精灵使者    时间: 2011-12-29 01:08
我似乎以前做过这个功能……来着
作者: 怕鼠的猫    时间: 2011-12-29 08:48
我前两天也是遇到这个问题,后来又高人解释了一下。
物品 数据库中 要把某些物品设置生“贵重物品”,这些物品出现在主角身上后就能在选单中选择了。




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