?? jian.c
字號:
// sample master.c code
// xiake island master.c
inherit NPC;
inherit F_MASTER;
void consider();
string ask_me();
void create()
{
set_name("簡長老", ({"jian zhanglao", "jian", "zhanglao"}));
set("title", "丐幫九袋長老");
set("nickname", "執法長老");
set("gender", "男性");
set("age", 50);
set("beggarlvl",9);
set("long",
"簡長老是丐邦的執法長老,代幫主執掌法刀以及青竹令等。\n"
"他向來嫉惡如仇,弟子中有誰犯過,出手決不容情。\n");
set("attitude", "peaceful");
set("class", "beggar");
// set("no_get", "1");
set("str", 24);
set("int", 20);
set("con", 24);
set("dex", 20);
set("qi", 900);
set("max_qi", 900);
set("jing", 100);
set("max_jing", 100);
set("neili", 1500);
set("max_neili", 1500);
set("jiali", 100);
set("inquiry", ([
"青竹令" : (: ask_me :)
]));
set("combat_exp", 100000);
set("score", 20000);
set_skill("fengmo-zhang",150);
set_skill("liuhe-zhang",150);
set_skill("strike",90);
set_skill("force", 95); // 基本內功
set_skill("huntian-qigong", 90); // 混天氣功
set_skill("unarmed", 90); // 基本拳腳
set_skill("xianglong-zhang", 85); // 降龍十八掌
set_skill("dodge", 90); // 基本躲閃
set_skill("xiaoyaoyou", 95); // 逍遙游
set_skill("parry", 85); // 基本招架
set_skill("staff", 90); // 基本棍杖
map_skill("force", "huntian-qigong");
map_skill("unarmed", "xianglong-zhang");
map_skill("dodge", "xiaoyaoyou");
create_family("丐幫", 18, "九袋長老");
setup();
}
init()
{
object ob;
mapping myfam;
::init();
if (interactive(ob = this_player()) && !is_fighting()) {
myfam = (mapping)ob->query("family");
if ((!myfam || myfam["family_name"] != "丐幫") &&
(!wizardp(ob))) {
remove_call_out("saying");
call_out("saying",2,ob);
}
}
}
void saying(object ob)
{
if (!ob || environment(ob) != environment())
return;
message_vision("\n簡長老看了$N一眼,冷冷地說到:“洪幫主他老人家說我不該"
"隨意責打丐幫弟子,\n你又不屬我丐幫,我打你總可以吧?”\n"
"說完右腿一抬,$N順勢應了一招青城派的「屁股向后,平沙落雁式」"
"--叭嘰\n\n", ob);
remove_call_out("kicking");
call_out("kicking",1,ob);
}
void kicking(object ob)
{
if (!ob || environment(ob) != environment())
return;
if (environment(ob)->query("short")=="暗道"){
ob->move("/d/city/pomiao");
message("vision","只聽“嘭”地一聲,緊接著" + ob->query("name") +
"從小門里飛了出來,屁股上有一個清楚的鞋印。\n", environment(ob), ob);
}
}
void attempt_apprentice(object ob)
{
command("say 老夫不收徒弟," + RANK_D->query_respect(ob) + "還是請回吧。");
}
string ask_me()
{
mapping fam;
object ob,me=this_player();
string *sname;
int i;
if (!(fam = me->query("family")) || fam["family_name"] != "丐幫")
return RANK_D->query_respect(me) +
"與本派素無來往,不知此話從何談起?";
ob = new(__DIR__"obj/qingzhu-ling");
ob->move(me);
message_vision("$N獲得一面青竹令。\n",me);
return "好吧,憑這面青竹令,你可自由向你的同門大師兄挑戰。";
}
int accept_object(object ob, object obj)
{
object me = this_object();
mapping my_fam = me->query("family");
if (!my_fam || (my_fam["family_name"] != "丐幫"))
return notify_fail("你哪里來的青竹令?\n");
if ( ob->query_temp("have_cloth") && present("po bu", ob) )
{
command("say 既然升袋,就當牢記幫規,為民除害!");
message_vision("$N把破布釘在$n的破衣服上,儼然一個新口袋。\n", me, ob);
ob->delete_temp("have_cloth");
ob->set("title",ob->query("newtitle"));
if (ob->query("title") == "丐幫一袋弟子")
{
if (ob->query("beggarlvl") <= 1 )
{
ob->add("combat_exp",250);
ob->set("beggarlvl",2);
}
ob->set("beggarlvl",2);
}
if (ob->query("title") == "丐幫二袋弟子")
{
if (ob->query("beggarlvl") <= 2 )
{
ob->add("combat_exp",500);
ob->set("beggarlvl",3);
}
ob->set("beggarlvl",3);
}
if (ob->query("title") == "丐幫三袋弟子")
{
if (ob->query("beggarlvl") <= 3 )
{
ob->add("combat_exp",1000);
ob->set("beggarlvl",4);
}
ob->set("beggarlvl",4);
}
if (ob->query("title") == "丐幫四袋弟子")
{
if (ob->query("beggarlvl") <= 4 )
{
ob->add("combat_exp",1500);
ob->set("beggarlvl",5);
}
ob->set("beggarlvl",5);
}
if (ob->query("title") == "丐幫五袋弟子")
{
if (ob->query("beggarlvl") <= 5 )
{
ob->add("combat_exp",2000);
ob->set("beggarlvl",6);
}
ob->set("beggarlvl",6);
}
if (ob->query("title") == "丐幫六袋弟子")
{
if (ob->query("beggarlvl") <= 6 )
{
ob->add("combat_exp",3000);
ob->set("beggarlvl",7);
}
ob->set("beggarlvl",7);
}
if (ob->query("title") == "丐幫七袋弟子")
{
if (ob->query("beggarlvl") <= 7 )
{
ob->add("combat_exp",4000);
ob->set("beggarlvl",8);
}
ob->set("beggarlvl",8);
}
if (ob->query("title") == "丐幫八袋弟子")
{
if (ob->query("beggarlvl") <= 8 )
{
ob->add("combat_exp",5000);
ob->set("beggarlvl",9);
}
ob->set("beggarlvl",9);
}
if (ob->query("title") == "丐幫九袋長老")
{
if (ob->query("beggarlvl") <= 9 )
{
ob->add("combat_exp",10000);
ob->set("beggarlvl",9);
}
ob->set("beggarlvl",9);
}
ob->save();
remove_call_out("destroying");
call_out("destroying", 1, me, obj);
return 1;
}
}
void destroying(object me, object obj)
{
destruct(obj);
return;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -