作者laechan (小太保)
看板mud_sanc
標題Re: [討論] 關於盜賊特攻
時間Mon Jul 19 08:49:35 2010
※ 引述《hlead (希多)》之銘言:
: times=2;
: for(i=0;i<times;i++)
: {
: if(!target) break;
: if(skob && function_exists("start_skill",skob))
: skob->start_skill(target,lv,sk);
: // 發招延遲設定
: // 若使用的技能程式本身就有最低起始發招時間的設定, 則到此為止
: }
: /cmds/std/_force.c 190行後面的附近幾行...
: 能判別skn = ooxx 時 times = 1嗎?
: ex:
: skn==phantom-strike
: backstab
: funeral-wind
已加入。
: 然後好像要加個
: if(target)
: target->kill_ob(me);
: 因為沒加的話,shut完,怪不會打人= ="
force 因為以前有 drafight 跟 kaioken, 所以 kill_ob
通常是寫在 /d/force/各檔 喔。
你可以參考像 windlance.c 裡頭 kill_ob 的位置.
: --------
: 另外還有就是。
: force funeral-wind arsdo
: 執行時段錯誤: *Modulus by zero.
: 程式: d/force/funeral-wind.c:143
: 物件: /d/force/funeral-wind
: /std/user#53760 "cmd_hook" std/user.c:295
: /cmds/std/_force "cmd_force" cmds/std/_force.c:223
: /d/force/funeral-wind "start_skill" d/force/funeral-wind.c:143
: 五指跟氣劍指都會自己找怪打得說orz...
: 似乎是force沒支援!?
tars=user->query_attackers();
for(i=0;i<max_num;i++)
{
a = i % sizeof(tars);
%(=取mod=modulus) 後面接的東西不能為 0。
改成如下即可..
// 玩家有攻擊目標時才做底下的動作
if(tars=user->query_attackers())
{
write(identify(tars)+"\n"); // 保險起見看一下所抓的
for(i=0;i<max_num;i++)
{
a = i % sizeof(tars);
.
.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.225.161.28
1F:推 hlead :嗯..我知道阿..只是我看其他檔也沒加..avert 07/19 09:02
2F:→ hlead :感激..@@ 07/19 09:03
3F:→ laechan :grep -n kill_ob /d/force/*.c 就可看到 07/19 10:06
4F:推 hlead :嗯...ok了! thanks 07/19 13:28