楼主:
zcecil (无声无息)
2014-06-11 16:58:45我的建议是不需要让用的人烦恼编号的问题
怎么说呢? 根据vobj定义放在那里会有两种情况
1. 在 vobjd.c 里的 array
这种情况其实 type 就已经可以足够, vobjd 可以自己照顺序
给定编号或是完全不用编号, 因为 type + name 应该会是一个 unique
的 pair 足以辨识物品. 就算会有重复的名字, 新加物品的时候只要
加在同type最后面那编号就不会有变动.
所以可以直接把 "p1" "p4" 之类当作物品类别就好. 减少一个让wiz
犯错的机会(定到重复的编号)
2. 从各区域/房间动态注册
这样就变成要求各区域要用自己的 type, 其它和前面的情况一样.
或者为了要让分辨物品类别变得简单, 就变成要在type里加上类别编码.
譬如说可以吃的东西一定要 f开始 那某 area 的物品类别可能就叫 farea
是说这样其实也不用烦恼设定者的问题...
※ 引述《laechan (小太保)》之铭言:
: 目前 tmi2_v3_改 已完成虚拟物品暨怪物掉落物管理系统,采用之前我
: 在 sanc 为虚拟物品系统定义的物品编号方式,而 vobj 指令亦采用我
: 在 sanc 所使用的指令语法。那为了使拿到 tmi2_v3_改 的使用者能对
: 该系统快速上手,有几个东西想趁现在汇整一下大家的意见。
: 首先物品是以 一个英文字母+三个数字 为编号方式
: > vobj -ext
: 虚拟物品名称 编号 单位 种类 价格 携带 交易 贩卖
: ===============================================================
: 兔毛 m001 个 怪掉落 362 99 可 可
: 一个兔毛,可向收集品商人购买。
: 兔牙 m002 个 怪掉落 501 99 可 可
: 一个兔牙,可向收集品商人购买。
: ===============================================================
: > call /adm/daemons/vobjd;vobj_data;"query_array";"兔毛"
: OBJ(/adm/daemons/vobjd)-> vobj_data( "query_array", "兔毛" ) =
: ({ "m001","兔毛", "个", "怪掉落", 362, 99, " 可 ", " 可 ",
: "一个兔毛,可向收集品商人购买。" })
: 上面 ({ }) 集合内的元素就是我用来描述一个虚拟物品用的,要增加
: 其它元素,只要动相关档案就可,我之后会说明怎么做。
: 那为何兔毛会宣告为 m001 这个编号呢?就是我这次想跟大家讨论的。
: */
: 这一份建议内容会编写在 /adm/daemons/vobjd.c 内供使用者参考,
: 因为当物品数量达到数百个时,若没有做适当的分类,一定会产生管
: 理及列表上的不便,而这份编号内容就是给使用者看的最低限度的编
: 号依据原则。
: 所以希望集思广义一下,使这份建议的内容更完整。
: (下一次讨论则是希望定出一些 tmi2_v3_改 通用的 m 类物品)
: 以下是 sanc 目前使用的 vobj -list。sanc 有 "设定者" 字段,这
: 个在 tmi2_v3_改 默认是没有此字段的,因为我默认 tmi2_v3_改 只
: 有一位 wiz。
: 编号 名称 设定者 单位 性 质 携带 价钱 卖店 交易
: ============================================================================
: s002 bueq纪录卡 laechan 张 系统类 1 10 不可 不可
: .
: .