MUD
第一.MUDOS中的三大类: 房间ROOM, 物品OBJECT和生物LIVING
1.1 [如何制作房间]
一个房间必定继承了ROOM,一个房间有三个非常重要的函数:create(), init()与refresh()这三个函数会在某些特定的时机被系统所呼叫。
inherit ROOM;
[create函数]
create()是房间被创建时候必定要调用的函数,相当于C当中的void main(),即主函数。
[init函数]
init()函数被调用的时机在于有生物(npc玩家)进入这个房的时候被调用。这时候有个函数this_player()会传回房间的这个人或是npc, this_player()就是触发调用init()函数的玩家。
intit()最常见的函数是int add_action("function", "action");它的作用是在进来的生物身上添加一个指令,并在玩家下达这个指令时去调用。
*********注意函数返回值,返回0则系统会对其他也有相同命令的函数一个一个尝试去执行,直到所有该命令函数都返回0. ---可以实现重载***********
最常用的写法是:
if (条件不合)
return notify_fail(错误讯息);
if (另一个条件不合)
return notify_fail(另一个错误讯息);
.............................
<所有可能导致错误的输入都过滤光了>
开始真正干活的部份....
return 1;
[refresh函数]
第一.MUDOS中的三大类: 房间ROOM, 物品OBJECT和生物LIVING
1.1 [如何制作房间]
一个房间必定继承了ROOM,一个房间有三个非常重要的函数:create(), init()与refresh()这三个函数会在某些特定的时机被系统所呼叫。
inherit ROOM;
[create函数]
create()是房间被创建时候必定要调用的函数,相当于C当中的void main(),即主函数。
[init函数]
init()函数被调用的时机在于有生物(npc玩家)进入这个房的时候被调用。这时候有个函数this_player()会传回房间的这个人或是npc, this_player()就是触发调用init()函数的玩家。
intit()最常见的函数是int add_action("function", "action");它的作用是在进来的生物身上添加一个指令,并在玩家下达这个指令时去调用。
*********注意函数返回值,返回0则系统会对其他也有相同命令的函数一个一个尝试去执行,直到所有该命令函数都返回0. ---可以实现重载***********
最常用的写法是:
if (条件不合)
return notify_fail(错误讯息);
if (另一个条件不合)
return notify_fail(另一个错误讯息);
.............................
<所有可能导致错误的输入都过滤光了>
开始真正干活的部份....
return 1;
[refresh函数]