anbian3.c
来自「C实现的MUD,对大家基本入门网络游戏很有帮助!」· C语言 代码 · 共 117 行
C
117 行
// /u/beyond/mr/anbian3.c// this is made by beyond// update 1997.6.20#include <ansi.h>#define SHIP_TO __DIR__"hubian2"inherit ROOM;void check_trigger();void on_board();void arrive();void close_passage();int do_yell(string arg);void reset();void create(){ set("short",HIW"岸边"NOR); set("long", @long这里是慕容家的家仆和丫鬟出入太湖的水上码头,只见人们来来往往,一个个风尘仆仆,码头边的老船夫见到你走过来,马上笑呵呵的迎了上去。湖面(humian)上有几只小舟正在游弋。long); set("outdoors", "mr"); set("exits",([ "north" : __DIR__"houyuan1", ])); set("item_desc", ([ "humian" : "近岸处有一叶小舟,也许喊(yell)一声船家就能听见。\n", ])); set("outdoors", "suzhou"); setup();}void init(){ add_action("do_yell", "yell");}void check_trigger(){ object room; if(!query("exits/enter") ) { if( !(room = find_object(__DIR__"zhou4")) ) room = load_object(__DIR__"zhou4"); if( room = find_object(__DIR__"zhou4") ) { if((int)room->query("yell_trigger")==0 ) { room->set("yell_trigger", 1); set("exits/enter", __DIR__"zhou4"); room->set("exits/out", __FILE__); message("vision", "一叶扁舟缓缓地驶了过来,艄公将一块踏脚" "板搭上堤岸,以便乘客\n上下。\n", this_object() ); message("vision", "艄公将一块踏脚板搭上堤岸,形成一个向上" "的阶梯。\n", room); remove_call_out("on_board"); call_out("on_board", 15); } else message("vision", "只听得湖面不远处隐隐传来:“别急嘛," "这儿正忙着呐……”\n",this_object() ); } else message("vision", "ERROR: boat not found\n", this_object() ); } else message("vision", "岸边一只小舟上的老艄公说道:正等着你呢,上来吧。\n", this_object() );}void on_board(){ object room; if( !query("exits/enter") ) return; message("vision", "艄公把踏脚板收了起来,竹篙一点,扁舟向湖中驶去。\n", this_object() ); if( room = find_object(__DIR__"zhou4") ) { room->delete("exits/out"); message("vision", "艄公把踏脚板收起来,说了一声“坐稳喽”," "竹篙一点,扁舟向\n湖中驶去。\n", room ); } delete("exits/enter"); remove_call_out("arrive"); call_out("arrive", 20);}void arrive(){ object room; if( room = find_object(__DIR__"zhou4") ) { room->set("exits/out", __DIR__"hubian2"); message("vision", "艄公说“到啦,上岸吧”,随即把一块踏脚板" "搭上堤岸。\n",room ); } remove_call_out("close_passage"); call_out("close_passage", 20);}void close_passage(){ object room, *ob; int i; if( room = find_object(__DIR__"zhou4") ) { tell_room(room, "艄公轻声说道:“都下船吧,我也要回去了。”\n", ({})); ob = all_inventory(room); for(i = 0; i < sizeof(ob); i++) { if (userp(ob[i])) { if (!living(ob[i])) tell_room(room, "艄公把$N抬下了船。\n", ob[i]); else tell_room(room, "$N听了艄公的话,乖乖地下了船
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?