UID279613
帖子
精華
主題
積分110
現金
積極性
威望
違規
熱心
推廣次數
閱讀權限5
註冊時間2010-7-29
在線時間 小時
最後登錄1970-1-1
TA的每日心情 | 慵懶 2012-9-4 12:51 PM |
---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到
|
本帖最後由 s980216 於 2012-3-27 10:20 PM 編輯
想寫一個腳本
使用技能時給他一個 bonus 有持續時間 而且有 CD
持續時間完結時我自己再寫一次 bonus 把之前的刪掉
測試過知道腳本上的bonus 會輕易被洗掉 (換裝備...升級等等)
想寫個 while loop 並設條件在持續時間內他換裝備 升級時可以補回 bonus 給他
理論上那些事件標籤就跟 IF 一樣吧...
但不幸地問題出現了...應該是loop 裡的 bonus 一直跑...
以下紅色應該是問題所在
希望前輩們可以幫個忙指點一下
OnPCUseSkillEvent: //(有技能發動時自動偵測--全玩家)
set @Ninjaskill,90000;
//持續時間
set @Ninjaskillcd,300000;
//CD
if ((@useskill_id == 532) && (@useskill_lv ==10)) {
bonus bMatk,300;
bonus bFixedCastRate,-100;
bonus bCastrate,-50;
skilleffect 270,0;
set Nj_bunsinjyutsu,1;
addtimer @Ninjaskill,"Nj_skillTimer1::OnTimeout";
set Nj_skillcold,1;
addtimer @Ninjaskillcd,"Nj_skillTimer2::OnTimeout";
while (@Ninjaskill != 0)
{
OnPCBaseLvUpEvent:
bonus bMatk,300;
bonus bFixedCastRate,-100;
bonus bCastrate,-50;
OnPCJobLvUpEvent:
bonus bMatk,300;
bonus bFixedCastRate,-100;
bonus bCastrate,-50;
OnPCStatCalcEvent:
bonus bMatk,300;
bonus bFixedCastRate,-100;
bonus bCastrate,-50;
OnPCEquipEvent:
bonus bMatk,300;
bonus bFixedCastRate,-100;
bonus bCastrate,-50;
OnPCUnequipEvent:
bonus bMatk,300;
bonus bFixedCastRate,-100;
bonus bCastrate,-50;
}
end; - script Nj_skillTimer1 -1,{
OnTimeout:
skilleffect 289,0;
bonus bMatk,-300;
bonus bFixedCastRate,100;
bonus bCastrate,50;
set Nj_bunsinjyutsu,0;
end; }
- script Nj_skillTimer2 -1,{
OnTimeout:
set Nj_skillcold,0;
end; } |
|