Re: [wizs] 問題請教(二十四)
看板mud_sanc (Sanctuary - 聖殿)作者laechan (小太保)時間14年前 (2011/07/21 20:37)推噓0(0推 0噓 0→)留言0則, 0人參與討論串2/4 (看更多)
※ 引述《amosdeus (幽素)》之銘言:
: 第一個問題:
: 6061 11/11 laechan R: [問題] 法術施展間隔
: 以前有, ready_attack 大概是這樣, 假設發特攻 +a,
: 發法術 +b, 發動 en 攻擊 +c
: a+c > 一回合極限 -> 下一回合 en 不發動
: b+c > 一回合極限 -> 下一回合 en 不發動
: 通常特攻的 ready_attack 都會比較短.
: =================================================
: 但是因為 ready_attack 的累加經常出問題, 出問題時
: 玩家在戰鬥中就會一直發不出攻擊, 所以就取消了相關
: 判斷.
: 請問現在用什麼參數當作特攻的延遲時間
: 作用是新的技能使用的到
: _slash
: //劍術加速 20% Plain in 2011.07.19
: //劍術攻擊速度增加 Fencing quicken
: if(me->query("skill/kencing quicken"))
: {
: me_ra = me->query("ready_attack");
: me_ra = ( me_ra / 10 ) * 2;
: me->add("ready_attack",-me_ra);
: }
既然只有新的技能會使用到,你可以自己寫,參數設在 temp_data
區的 time_record 欄位即可,例如
me->add_temp("time_record/ready_slash",-me_ra);
: 第二個問題:
: 請問如何玩家使用wp時 special 能夠被執行
: 新的技能的構想是當劍士學習到 魔法劍專精(Improved Magicslash)
: 裝備劍類武器讀取 me->query("skill/improved magicslash")
技能英文名盡量取短一點,比方 xxx-magic slash。
: 可以執行劍類武器時 special 或者應該從哪個函數去作修改。
: Plain@Sanc
這個東西本來就有,那比較有可能的就是被 /* */ 掉了。
> grep -n special_fun *.c
[/adm/daemons/mob_d.c]
383: call_other(me,"special_fun",me,tar);
392: call_other(wp,"special_fun",me,tar);
> grep -n special_fun *
[/adm/daemons/user_d.20100609]
1354: wp->special_fun(me,tar);
所以我才會說,請不要把前人的 /* */ 或 // 拿掉,不然
到時找不到屍體,要復原很困難。
這東西原先是寫在 /adm/daemons/user_d.c 的 execute_attack
函數裡頭,這很合理,玩家欲執行每次的 en/普攻 時就順便讀
取武器的 special 值來隨機執行武器特殊攻擊...
/*
else if(wp=me->query_wp())
{
if(wp->query("special") > random(100))
{
wp->special_fun(me,tar);
return ;
}
}
*/
因為沒有註明移除原因,所以不清楚為何移除,但移除一定是有
理由的(我猜跟當初的 debug 1 的 bug 有關)。
要復原可以,前提是:
1. special 值不能被濫設(很多都設 9x 以上,有設等於沒設)
2. 我會額外加幾個判斷來防止它被瞬間大量執行。
(用 time_record 來做就可)
wp 的 special_fun 寫法跟 mob 的 special_fun 寫法相同。
Belldandy.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.117.9.179
討論串 (同標題文章)
mud_sanc 近期熱門文章
PTT遊戲區 即時熱門文章
21
49