?? zhou.c
字號:
return 1; } if (hubo == 22) { if ( ob->query("kar") > 40 ){ if( random(ob->query("kar")) > 30 ){ message_vision("$N微微一笑,凝神守一,心地空明,隨隨便便的伸出雙手手指,左手畫了一個方塊,右手畫了一個圓圈,\n"+ "方者正方,圓者渾圓。\n", ob); say("周伯通大吃一驚,過了半晌才道:“這定是你從娘胎里學(xué)來的本領(lǐng),那便易辦了。”\n"); message_vision("周伯通將他領(lǐng)悟出來的這門天下無比的奇功,一古腦兒都教給了$N。\n", ob); ob->delete_temp("zuoyou_hubo");// log_file("ZHOU",sprintf("%s(%s)從周伯通處領(lǐng)悟到雙手互搏于: %s\n",ob->name(1), getuid(ob), ctime(time()))); ob->set("double_attack", 1); return 1; } else { ob->delete_temp("zuoyou_hubo"); message_vision("$N又伸出兩根食指在地上劃畫,但畫出來的仍舊是方塊有點象圓圈,圓圈又有點象方塊。\n", ob); write("看來并不是這么簡單。\n"); ob->add("zhou/failed", 1); return 1; } } message_vision("$N又伸出兩根食指在地上劃畫,但畫出來的仍舊是方塊有點象圓圈,圓圈又有點象方塊。\n", ob); message_vision("$N終于發(fā)現(xiàn)自己是一輩子也練不會這門功夫了。\n", ob); ob->delete_temp("zuoyou_hubo"); ob->add("zhou/failed", 1); command("disapp " + ob->query("id")); return 1; } return 0;}int do_draw(string arg){ object ob=this_player(); if (!ob->query_temp("zuoyou_hubo")) return 0; if (arg == "fang" || arg == "方" || arg == "yuan" || arg == "圓") return notify_fail("周伯通怒道:讓你同時畫方圓!\n"); if (arg == "fang yuan" || arg == "方圓") return do_fangyuan(); return 0;}int do_learn(string arg){ object me=this_player(); string skill, teacher, skill_name; object ob; int master_skill, my_skill, gin_cost, rand; if (me->is_busy()) return 0; if(!arg || (sscanf(arg, "%s %s", teacher, skill)!=2 )) return 0; if (teacher != "zhou" && teacher != "botong") return 0; if( me->is_fighting() ) return 0; if( !(ob = present(teacher, environment(me))) || !ob->is_character()) { write("你要向誰求教?\n"); return 1; } if( !living(ob) ) { write("嗯....你得先把" + ob->name() + "弄醒再說。\n"); return 1; } if( !me->query("zhou/jieyi")) { write("周伯通奇怪地看著你,問道:你是誰呀?\n"); return 1; } if (skill != "kongming-quan" && skill != "空明拳") { write("這項技能你恐怕必須找別人學(xué)了。\n"); return 1; } my_skill = me->query_skill(skill, 1); master_skill = ob->query_skill(skill, 1); if( my_skill >= master_skill ) { write("你在空明拳上的造詣已經(jīng)不下老頑童了!\n"); return 1; } if( !SKILL_D(skill)->valid_learn(me) ) { write("你必須是空手并且有足夠的內(nèi)功和內(nèi)力才可以學(xué)習(xí)空明拳。\n"); return 1; } gin_cost = 150 / (int)me->query("int"); if( !my_skill ) { gin_cost *= 2; me->set_skill(skill,0); } rand = random(20); if (rand == 4) gin_cost *= 2; else if (rand == 15) gin_cost += 4; if( (int)me->query("potential") < 1 ) { write("你的潛能已經(jīng)發(fā)揮到極限了,沒有辦法再學(xué)了。\n"); return 1; } message_vision("$N向$n請教有關(guān)「空明拳」的問題。\n", me, ob); if( (int)me->query("jing") > gin_cost ) { write("周伯通念道:老子《道德經(jīng)》里有句話道:“埏植以為器,當(dāng)其無,有器之用。鑿戶牖以為室,當(dāng)其無,有室之用。”\n"); write("周伯通吟口訣道:大成若缺,其用不弊,大盈若沖,其用不窮。\n"); if( (string)SKILL_D(skill)->type()=="martial" && my_skill * my_skill * my_skill / 10 > (int)me->query("combat_exp") ) { write("也許是缺乏實戰(zhàn)經(jīng)驗,你對老頑童的講解總是無法領(lǐng)會。\n"); } else { if (rand == 13) { write("就在你試圖領(lǐng)悟其中道理的時候,老頑童忽然在你旁邊大做鬼臉,又故意放了個屁來搗亂,搞得你心煩意亂。\n"); write("結(jié)果你什么都沒學(xué)到。\n"); return 1; } else if (rand == 5) { write("周伯通講解了兩句,忽然不耐煩起來,拉著你道:“咱倆玩四個人打架可好?”\n"); write("結(jié)果你只好陪他玩耍了一陣。\n"); return 1; } else if (rand == 4) { write("就在你試圖領(lǐng)悟其中道理的時候,老頑童忽然在你旁邊大做鬼臉,又故意放了個屁來搗亂,搞得你心煩意亂。\n"); write("結(jié)果你花了比平常多一倍的精力。\n"); } else if (rand == 15) { write("就在你試圖領(lǐng)悟其中道理的時候,老頑童忽然在你旁邊大做鬼臉,又故意放了個屁來搗亂,搞得你心煩意亂。\n"); write("結(jié)果你花了比平常多得多的精力。\n"); } if(skill_name = SKILL_D(skill)->query_skill_name(my_skill)) write("你聽了老頑童的指導(dǎo),對「" + skill_name + "」這一招似乎有些心得。\n"); else write("你聽了老頑童的指導(dǎo),似乎有些心得。\n"); me->add("potential", -1); me->improve_skill(skill, random(me->query_int())); } } else { gin_cost = me->query("jing"); write("你今天太累了,結(jié)果什么也沒有學(xué)到。\n"); } me->receive_damage("jing", gin_cost ); return 1;}void finish(object me){ me->delete_temp("jiuyin/asking"); me->delete_temp("jiuyin/question"); me->delete_temp("jiuyin/story"); if (me->query_temp("jiuyin/count") > 0 && random(me->query_temp("jiuyin/count")) > 10) { me->delete_temp("jiuyin/count"); me->set_temp("jiuyin/passed", 1); command("admire " + me->query("id")); command("say 原來我們是同道中人啊。"); command("hoho"); message_vision("\n", me); command("say 你陪我陪了這么久,一定很無聊吧?"); command("hmm"); command("ah " + this_object()->query("id")); command("say 這樣吧,我教你點好玩的功夫!"); command("grin"); } else { me->delete_temp("jiuyin/count"); me->add("jiuyin/shang-failed", 1); command("disapp"); command("say 真可惜,你的見聞實在太差,下次再來陪我玩吧。"); }}int ask_quest(){ object me = this_player(); if (me->query_temp("jiuyin/story") == 2) { if (me->query_temp("jiuyin/asking")) { command("say 我們不是正在玩么?專心點!"); command("kick " + me->query("id")); return 1; } me->set_temp("jiuyin/asking", 1); me->set_temp("jiuyin/count", 0); command("say 準(zhǔn)備好,我們開始啦!"); call_out("ask_question", 1, me); call_out("finish", 60, me ); return 1; } return 0;}int do_answer(string arg){ object me = this_player(); string answer; if (!me->query_temp("jiuyin/asking") || !me->query_temp("jiuyin/question")) return 0; if( !arg || arg=="" ) { write("想好答案再回答。\n"); return 1; } switch ((int) me->query_temp("jiuyin/question")) { case 1: answer="hamagong"; break; case 2: answer="xianglong-zhang"; break; case 3: answer="tanzhi-shentong"; break; case 4: answer="hubo"; break; case 5: answer="xiantian-qigong"; break; case 6: answer="qixing-array"; break; case 7: answer="shuishangpiao"; break; case 8: answer="yiyang-zhi"; break; case 9: answer="qimen-wuxing"; break; case 10: answer="wugou"; break; case 11: answer="anran-zhang"; break; case 12: answer="six-finger"; break; case 13: answer="beiming-shengong"; break; case 14: answer="lingboweibu"; break; case 15: answer="lonely-sword"; break; case 16: answer="qiankun-danuoyi"; break; case 17: answer="kanglongwuhui"; break; case 18: answer="jiuyang-shengong"; break; case 19: answer="jiuyin-baiguzhua"; break; case 20: answer="kongming-quan"; break; } if (arg == answer) { me->add_temp("jiuyin/count", 1); command("say 不錯不錯,有點頭腦嘛。"); command("praise " + me->query("id")); } else { me->add_temp("jiuyin/count", -1); command("say 錯!"); command("papaya " + me->query("id")); } command("say 再來一題吧。"); me->delete_temp("jiuyin/question"); call_out("ask_question", 1, me); return 1;}void ask_question(object me){ int quest; if (me->query_temp("jiuyin/asking")) { message_vision("\n", me); command("say 注意聽好了!"); message_vision(HIW"用 answer 來回答,回答請使用拼音輸入,不要用漢字。\n"NOR, me); quest = random(20); command("say " + questions[quest]); message_vision("\n", me); me->set_temp("jiuyin/question", quest+1); } return;}int accept_object(object who, object ob){ if ((string)ob->query("id") == "fan he") { command("say 是黃老邪的小丫頭叫你幫忙送飯來么?"); message_vision(HIC"周伯通不等$N回答,已經(jīng)開始將食物塞進嘴中。\n"NOR, who); message_vision(HIC"周伯通吃完,干笑了一下,才對$N問道:“不知道你吃過了沒有?\n"NOR, who); command("say 黃老邪想要我的九陰真經(jīng),把我關(guān)了十五年啦。"); command("sing3"); command("say 你想不想聽聽我說故事?"); call_out("destroying", 1, ob); who->set_temp("jiuyin/fanhe", 1); return 1; } if (who->query("jiuyin/xia") && (string)ob->query("id") == "jiuyin xiajuan") { command("ah " + who->query("id")); command("say 這正是我被黃老邪騙去的九陰真經(jīng)下卷。"); command("say 不知道你有沒有拿到上卷呢?"); call_out("destroying", 1, ob); who->set_temp("jiuyin/give", 1); return 1; } if (who->query("jiuyin/shang") && (string)ob->query("id") == "jiuyin shangjuan") { if (!who->query_temp("jiuyin/give")) { command("say 這本九陰真經(jīng)上卷你不想要了?"); return 0; } who->delete_temp("jiuyin/give"); call_out("destroying", 1, ob); message_vision(HIC"周伯通將手上的九陰真經(jīng)的上卷和下卷合而為一。\n"NOR, who); command("say 兄弟,我就把這本九陰真經(jīng)交給你了,你可要好好保管它!"); who->delete("jiuyin/shang"); who->delete("jiuyin/xia"); who->set("jiuyin/full", 1); new("/clone/book/jiuyin-book.c")->move(who); message("channel:rumor", MAG"【謠言】某人:"+who->query("name")+"拿到《九陰真經(jīng)》啦。\n"NOR, users()); return 1; } return 0;}void destroying(object obj){ if (!obj) return; destruct(obj);}int ask_kungfu(){ object me = this_player(); if (me->query_temp("jiuyin/passed")) { me->delete_temp("jiuyin/passed"); command("say 這些功夫是我自己的創(chuàng)作,可厲害的很啊。"); if (me->query("kar") > 40 && random(10) == 0) { command("say 上次我碰巧誤闖入黃老邪的五行陣,就把書藏在那里了。"); command("say 本來想自己去拿的,誰知道那個五行陣很邪,差點把老命送在那里了。"); command("say 我看小兄弟的運氣好象不錯,你自己去試試吧!"); me->delete("jiuyin/shang-failed"); me->set("jiuyin/shang", 1); } else { command("heihei " + this_object()->query("id")); message_vision(HIC"周伯通卻只是告訴$N如何施展,完全不演練給$N看。\n", me); message_vision("$N無論怎么練習(xí)就是無法成功。\n"NOR, me); command("sigh"); command("say 我這高深武功,你大概別想學(xué)了吧。"); me->add("jiuyin/shang-failed", 1); } return 1; } return 0;}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -