package server.buffs.buffclasses.cygnus;
import client.MapleBuffStat;
import client.MapleJob;
import server.MapleStatEffect;
import server.MapleStatInfo;
import server.buffs.AbstractBuffClass;
/**
*
* @author Maple
*/
public class WindArcherBuff extends AbstractBuffClass {
public WindArcherBuff() {
buffs = new int[]{
13001022, //元素: 風暴
13101024, //妖精援助
13101023, //快速之箭
13111023, //阿爾法
13111024, //翡翠花園
13121004, //風之祈禱
13121005, //會心之眼
13120008, //極限阿爾法
13121053, //守護者榮耀
13121054, //風暴使者
};
}
@Override
public boolean containsJob(int job) {
return MapleJob.is皇家騎士團(job) && (job / 100) % 10 == 3;
}
@Override
public void handleBuff(MapleStatEffect eff, int skill) {
switch (skill) {
case 13001022:// 元素: 風暴
eff.statups.put(MapleBuffStat.STORM_ELEMENTAL, eff.info.get(MapleStatInfo.x));
eff.statups.put(MapleBuffStat.INDIE_DAM_R, eff.info.get(MapleStatInfo.indieDamR));
break;
case 13101024:// 妖精援助
eff.statups.put(MapleBuffStat.SOULARROW, 1);
eff.statups.put(MapleBuffStat.CRITICAL_RATE, eff.info.get(MapleStatInfo.x));
eff.statups.put(MapleBuffStat.INDIE_PAD, eff.info.get(MapleStatInfo.indiePad));
break;
case 13101023:// 快速之箭
eff.statups.put(MapleBuffStat.BOOSTER, eff.info.get(MapleStatInfo.x));
break;
case 13111023://阿爾法
eff.statups.put(MapleBuffStat.ALBATROSS, eff.info.get(MapleStatInfo.x));
eff.statups.put(MapleBuffStat.INDIE_MAX_HP, eff.info.get(MapleStatInfo.indieMhp));
eff.statups.put(MapleBuffStat.INDIE_PAD, eff.info.get(MapleStatInfo.indiePad));
eff.statups.put(MapleBuffStat.INDIE_BOOSTER, eff.info.get(MapleStatInfo.indieBooster));//true?
eff.statups.put(MapleBuffStat.INDIE_CR_R, eff.info.get(MapleStatInfo.indieCr));
break;
case 13120008://極限阿爾法
eff.statups.put(MapleBuffStat.ALBATROSS, eff.info.get(MapleStatInfo.x));
eff.statups.put(MapleBuffStat.INDIE_MAX_HP, eff.info.get(MapleStatInfo.indieMhp));
eff.statups.put(MapleBuffStat.INDIE_PAD, eff.info.get(MapleStatInfo.indiePad));
eff.statups.put(MapleBuffStat.INDIE_BOOSTER, eff.info.get(MapleStatInfo.indieBooster));//true?
eff.statups.put(MapleBuffStat.INDIE_CR_R, eff.info.get(MapleStatInfo.indieCr));
break;
case 13111024:// 翡翠花園
//spawn
break;
case 13121004:// 風之祈禱
eff.statups.put(MapleBuffStat.ACCURACY_PERCENT, eff.info.get(MapleStatInfo.x));
eff.statups.put(MapleBuffStat.HAMSTRING, eff.info.get(MapleStatInfo.y));
eff.statups.put(MapleBuffStat.AVOID_PERCENT, eff.info.get(MapleStatInfo.prop));
eff.statups.put(MapleBuffStat.INDIE_MHP_R, eff.info.get(MapleStatInfo.indieMhpR));
break;
case 13121005:// 會心之眼
eff.statups.put(MapleBuffStat.SHARP_EYES, (eff.info.get(MapleStatInfo.x) << 8) + eff.info.get(MapleStatInfo.criticaldamageMax));
break;
case 13121053:// 守護者榮耀
eff.statups.put(MapleBuffStat.INDIE_DAM_R, eff.info.get(MapleStatInfo.indieDamR));
eff.statups.put(MapleBuffStat.INDIE_MAX_DAMAGE_OVER, eff.info.get(MapleStatInfo.indieMaxDamageOver));
break;
case 13121054:// 風暴使者
eff.statups.put(MapleBuffStat.STORM_BRINGER, eff.info.get(MapleStatInfo.x));
break;
default:
System.out.println("Unhandled Buff: " + skill);
break;
}
}
}