基本上若有新的 ask,仍將支援舊的格式,這是聖殿的一貫做法。
也就是說目前的 inquiry/xxx, 以及 inquiry_func/xxx 的設定方
式新的 ask 指令仍舊可以支援。
但是,我的意思就是,新的 ask 自然可以支援新的格式。
set("ask_keywords",({"laechan","satin","nobu"}));
set("ask_func","ask_func");
int ask_func(object ppl,string str)
{
switch(str)
{
case "laechan":
.
.
.
}
}
關鍵程式段為..
if(mob->query("ask_func"))
{
keywords=mob->query("ask_keywords");
if(member_array(ask_what,keywords)==1)
return notify_fail(mob->query("chi_name")+" 一臉茫然地看著你。\n");
call_other(mob,mob->query("ask_func"),ppl,ask_what);
return 1;
}
這個今天會實裝。有實裝新的東西時我會一併說明。
這項修改的用意,是提供 ask xxx about ooo 更彈性的設定,所以
我應該會新增一個函數叫做 mob_say。
mob_say("*sigh"); // 判斷到星號就做表情用語
mob_say(({"*sigh",
"這件事情非常地難解決......",
"我想我還是另外找其它人好了."}));
換言之它支援單一字串以及陣列參數,用以替代以往的..
command("sigh");
command("say 這件事情非常地難解決......");
command("say 我想我還是另外找其它人好了.");
另外,如果是...
mob_say("*sigh",1);
就代表「只講給你聽」。通常大部份情況下用 write 也可。
Laechan
--
※ 發信站: 批踢踢實業坊(ptt.cc)
※ 編輯: laechan 來自: 61.225.161.245 (10/25 09:52)