Project1

标题: 关于装备栏扩展脚本报错问题 [打印本页]

作者: 造小梦    时间: 2022-4-2 19:49
标题: 关于装备栏扩展脚本报错问题
本帖最后由 造小梦 于 2022-4-2 19:51 编辑

如题,我给游戏加了个脚本,可以自定义角色的装备类型及其数量,但当我设定的装备数量大于6时,游戏就会报错,这是怎么回事?求大佬指点[pre

这是报错的地方↓

脚本↓
RUBY 代码复制
  1. #==============================================================================
  2. # 此脚本来自 rpg.blue
  3. #------------------------------------------------------------------------------
  4. #  ■ 新增装备风格
  5. #  by:VIPArcher
  6. #  使用说明:在角色备注栏/职业备注栏里备注 <slot_type:x> 则角色变为x号装备风格
  7. #  优先读取职业栏的风格备注。
  8. #------------------------------------------------------------------------------
  9. #   ◆ 搭配后知后觉的装备栏扩充脚本风味更佳(需要把他的脚本放在脚本这个上面)
  10. #==============================================================================
  11. $VIPArcherScript ||= {};$VIPArcherScript[:slot_type] = 20140803
  12. #==============================================================================
  13. # ★ 设定部分 ★
  14. #==============================================================================
  15.  
  16. module VIPArcher
  17.   SLOT_TYPE = {
  18.   0 => [0,3,4,4,1,2],    # 普通  
  19.   1 => [0,0,3,4,1,2],    # 双刀单饰品 (这两个是默认的东西最好别改)
  20.   # 从这里开始添加装备风格
  21.   2 => [0,0,3,4,4,1,1],  # 双刀双饰品
  22.   3 => [0,4,4,4,1,2],            # 召唤物升级
  23.   4 => [0,3,4,1]        # 普通召唤物
  24.   # 在这里继续添加类型。
  25.   } # <= 这个大括号不能删
  26. end
  27.  
  28. class Game_BattlerBase
  29.   #--------------------------------------------------------------------------
  30.   # ● 获取装备风格
  31.   #--------------------------------------------------------------------------
  32.   def slot_type
  33.     classes = $data_classes[@class_id]
  34.     classes.note  =~ /<特殊框架\s*:(.*)>/i
  35.     return $1.to_i if $1!= nil
  36.     actor.note  =~ /<特殊框架\s*:(.*)>/i
  37.     return $1.to_i if $1!= nil
  38.     features_set(FEATURE_SLOT_TYPE).max || 0
  39.   end
  40. end
  41. class Game_Actor < Game_Battler
  42.   alias vip_20140803_es equip_slots
  43.  
  44.   #--------------------------------------------------------------------------
  45.   # ● 获取装备栏的数组
  46.   #--------------------------------------------------------------------------
  47.   def equip_slots
  48.     return VIPArcher::SLOT_TYPE[slot_type] if
  49.     VIPArcher::SLOT_TYPE[slot_type] != nil
  50.     vip_20140803_es
  51.   end
  52. end
  53. class Window_EquipSlot < Window_Selectable
  54.   def actor=(actor)
  55.     return if @actor == actor
  56.     @actor = actor
  57.     create_contents
  58.     refresh
  59.   end
  60. end

作者: KB.Driver    时间: 2022-4-17 19:17
从描述看可能是以下问题
(1)备注写得不对,没生效
(2)读取的是旧存档

楼主可以先自测一下是哪种,或者提供相应线索给大家看看
作者: 造小梦    时间: 2022-4-24 12:56
KB.Driver 发表于 2022-4-17 19:17
从描述看可能是以下问题
(1)备注写得不对,没生效
(2)读取的是旧存档

生效了,装备栏里有第七个栏,但一点第七个栏就会闪退,开的是新档
作者: VIPArcher    时间: 2022-5-28 00:58
我看这脚本似乎不对,你试试这个版本的
装备栏风格扩展




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