[wizs] 阻斷玩家施法
這個理論上 fist 也適用。
玩家 spell 時...
目標 技能 級數 技能值 連擊數 下什麼指令
me->set_temp("cmd_cast_data",({target,skob,lv, skill,clients,"spell "+str}));
所以假設在怪物的 special_fun 裡面這麼寫...
obs=all_inventory(environment(mob));
foreach(ob in obs)
if(ob && userp(ob) && ob->query_temp("cmd_cast_data"))
halt_spell(ob,mob,HIR"$N的施法被$O中斷了!!"NOR);
則全域函數 halt_spell 的寫法大致是...
void halt_spell(object ob,object mob,string msg)
{
if(ob)
{
ob->delete_temp("cmd_cast_data");
if(mob)
show(ob,mob,msg);
else
{
msg=substr(msg,"$O","");
tell_object(ob,msg);
}
}
}
新區域的怪物預定會有這個東西,即你的 spell 有時會
有失效的情況,但 cast 不受影響。
Laechan
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.117.3.82
mud_sanc 近期熱門文章
PTT遊戲區 即時熱門文章
18
25
4
12
21
33
-17
30