作者laechan (小太保)
看板mud_sanc
标题[wizs] 已实装系统及物件细节说明
时间Fri May 7 09:53:06 2010
这一篇专门写已实装系统或物件的使用细节说明。
01、陷阱房
定义:待在该房间持续中陷阱伤害,离开该房间伤害消失
使用:范例程式 /d/crazy/1/room/004.c
1)
将 inherit ROOM 更改为 inherit TRAP_ROOM
该定义放在 /include/mudlib.h 属全域定义变数
TRAP_ROOM = /std/trap_room.c
各陷井的定义放在 /open/trap.h
2)在房间设定 traps 资料如
set("traps/poison",(["period":10,"effect":1]));
period: 循环伤害或定身的周期
effect: 伤害值(hp趴数)或定身秒数
3)update /d/crazy/1/room/004.c
测试:
[陷阱] 你遭受了来自这里的毒气攻击!(151)!
上面的 set("traps/xxx" 一次可设定不只一行(即多重陷井)
後续:目前陷阱型态定义两种, /open/trap.h 的增改请先
以这两种为主, 日後有需要新增新的再建议後扩充.
/open/trap.h 各 wiz 都可增改, 增改前先用 gwiz 问一下
任何房间只要增改上面两样东西就可以让房间变陷阱房。
但不了解 trap_room.c 架构者则暂时不要在有定义 init 函数
的房间实装陷阱房。
02、战斗中狂出现 $N 的问题已解决。
细节以後有空再说明,简单的说就是 tmp=substr(msg,"$N","XXX");
因此之後应该使用的字串变数应该是 tmp (msg 是原先包含有 $N 的)
,结果在处理上却是..tmp = msg+"\n" 变成上面的 substr 有做等
於没做,才会在讯息里一直看到 $N。
03、战斗中受伤讯息的显示异常部份也解决。
主要是 mname 与 tname 原先各自代表 me 与 tar 的 chi_name
,然後在最终显示受伤讯息时,有一部份讯息就必须替换为「你」
跟「你」,这一部份原先的 show(已被我改过) 漏做,补上後就
正常了。
04、新的 /d/spell/return.c 档实装。
旧的 return.c 即 hlead 有参与修改的档案,另存为
/d/spell/reutrn.hlead旧版本
新的 return.c 档略过对牧师单人传送的成功率判断、及多人传
送时的人数限制,并采用新的成功率判断公式。
Lv30 并设定为无条件可传送成功。
以上面为前提,允许房间设定 set("no_return",lv); 它的意义
就是假设你 lv 设 10,则玩家的 return spell 必须施展 Lv11
以上(含) 才能传送,不然就会看到该房间有十重的魔法力场阻
隔了传送的相关讯息。同样的,欲传送过去的房间也可以这样设
各位 wizs 们可以依上面的说明,自行设定你区域下的房间。要
强调的是 set("no_return",30) 它只对无法施展 Lv30 归还术
的玩家有效。
未来 return.c 档可再依施展者为 单纯主职/进阶/进阶为玛法
三种来规划施展成功率公式,这以後有时间时再做就好,现在可
再解决的其它重点问题,先解决。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
1F:推 hmml :陷"阱"?? 05/07 18:19
难怪我每次都觉得怪怪的..^^;
※ 编辑: laechan 来自: 111.253.173.47 (05/09 21:07)