PCgame 版 (精华区)
发信人: ghost (正在奋发中,wait), 信区: mud
标 题: ~~2
发信站: 听涛站 (Wed Jun 21 17:39:09 2000), 转信
[物品的制造]
要制作物品, 首先必须 inherit OBJECT; 理由与做房间时必须
inherit ROOM 一样 OBJECT 是最基本的物品, 如果你要做的东西是武
器 防具 地图等, 你必须 inherit WEAPON, ARMOR, MAP 等等才能获
得这种类别的物品所拥有的特性 现在请注意一下, 我们现有的系统在
这里有些小臭虫, 在你 inherit WEAPON 或其他子类别时, 请你把 inherit
OBJECT 这行消掉, 否则会造成错误 同时, 你不可以同时继承 WEAPON,
又继承 ARMOR, 这也会造成错误, 理由跟上面的错误相同
物品的重要函数只有 create() 与 init(), 作用与 ROOM 中的同
名函数大致相同
[create() 函数]
要写 create() 函数, 最好的方法是拿现成的同类物品来修改 因
为不同类的物品往往可以 set 不同的属性, 而且特性极多, 有重量
价格 攻击力(武器) 防御能力(防具) 使用寿命(火把)等等 很难记
得完整, 所以我劝你找一个较完整档案来修改
[init() 函数]
与 ROOM 中的 init 函数类似, 但是被呼叫的时机多了许多, 共有
下列的几种情况:
1. 物品摆在房间中, 有一个玩家走进来
2. 一个物品突然出现在某个玩家所在的房间中
3. 一个物品突然出现在某个玩家的物品栏中
物品的 init 函数大多还是用在写 add_action 上面, 这些 action 会
生效的场合归结起来很简单, 就是:
「玩家用 l 或是 i 指令看得到这个物品的时候」
同一个房间中他人或怪物身上的东西时不算, 装在袋子的东西不算 这
点要注意一下
[怪物]
简单的怪物很好做, 连 init 都不用写, 只需要写 create(), 唯
一的问题是属性太多了, 要一一理解得花上相当的时间才行
会做复杂动作的怪物则需要相当的技巧, 并且了解有哪些变数可以
被拦截下来改写利用 等你有一定的程度时, 再来找个怪物参考参考较
好
怪物要 inherit MONSTER; 它也没有 refresh() 这个函数
--
我是沧海一小龙
游到东来游到西
找寻未知的东西
只求逍遥在人间
※ 来源:.听涛站 cces.net.[FROM: 匿名天使的家]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:4.597毫秒