📄 zhike.old
字号:
// zhike.c 知客inherit NPC;#include <ansi.h>void create(){ set_name("知客道长", ({ "zhike daozhang", "zhike" })); set("long", "他是武当山的知客道长。\n"); set("gender", "男性"); set("age", 30); set("attitude", "peaceful"); set("shen_type", 1); set("class", "taoist"); set("str", 20); set("int", 20); set("con", 25); set("dex", 20); set("max_qi", 300); set("max_jing", 200); set("neili", 300); set("max_neili", 300); set("combat_exp", 5000); set("score", 1000); set_skill("force", 60); set_skill("dodge", 40); set_skill("unarmed", 40); set_skill("parry", 40); set_skill("sword", 40); set_skill("wudang-jian", 20); set_skill("taoism", 20); map_skill("parry", "wudang-jian"); map_skill("sword", "wudang-jian"); create_family("武当派", 3, "弟子"); set("chat_chance",2); set("chat_msg", ({ "知客道长说道:我武当地灵人杰,香火鼎盛,普天下的人都来朝拜敬香。\n", "知客道长说道:玄岳门乃武当出入门户,我等一定要精心守卫(guard),不可丝毫懈殆。\n" })); setup(); carry_object("/clone/weapon/changjian")->wield();}void init(){ object ob; ::init(); if( interactive(ob=this_player()) && !is_fighting() ) { remove_call_out("greeting"); call_out("greeting", 1, ob); } add_action("do_volunteer","volunteer"); add_action("do_volunteer","guard");}void greeting(object ob){ mapping myfam; myfam = (mapping)ob->query("family"); if(!myfam || myfam["family_name"] != "武当派") say ("知客道长笑咪咪地说:这位"+RANK_D->query_respect(ob) + ",欢迎到武当来,进来喝杯茶,歇歇腿吧。\n"); else say ("知客道长笑咪咪地说:这位"+RANK_D->query_respect(ob) + ",一路辛苦了。\n"); return;}void attempt_apprentice(object ob){ if ((int)ob->query("guard", 1) < 10) { command("say " + RANK_D->query_respect(ob) + "你对我武当派尽了多少心力,有几分忠心呢?"); return; } if ((int)ob->query("shen") < 0) { command("say 我武当乃是堂堂名门正派,对弟子要求极严。"); command("say 在德行方面," + RANK_D->query_respect(ob) + "是否还做得不够?"); return; } command("say 好吧,贫道就收下你了。"); command("recruit " + ob->query("id"));}int do_volunteer(){ object me=this_player(); object* ob; int i; if (me->query_temp("in_guard")) return notify_fail("知客道长对你说:你专心守好山门,别想打两份工。\n"); ob = users(); for (i=sizeof(ob); i>0; i--) { if (ob[i-1]->query_temp("in_guard")) return notify_fail("知客道长对你说:已经有人守山门了,你一会再来吧。\n"); } tell_room(environment(me),me->query("name")+"开始在武当山门值守。\n"); me->set("old_degree",me->query("degree")); me->set("degree", HIG"山门守卫"NOR); me->set_temp("in_guard","1"); me->save(); remove_call_out("end_guard"); call_out("end_guard", 150, me); remove_call_out("clone_meng"); call_out("clone_meng", 30, me); return 1;}void clone_meng(object me){ object ob; tell_room(environment(me),"山下突然冲上来一伙蒙面大汉。\n"); ob=new("/d/wudang/npc/mengmian.c"); ob->move(environment(me)); call_out("clone_meng", 100, me);}void end_guard(object me){ me->set("degree",me->query("old_degree")); me->add("guarded",1); me->delete_temp("in_guard"); me->save(); remove_call_out("clone_meng"); tell_room(environment(me),me->query("name")+"在武当山门值守期已满。\n");// tell_object(me,"你在武当山门值守期已满。\n");}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -