/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package server.buffs.buffclasses.hero; import client.MapleBuffStat; import constants.GameConstants; import server.MapleStatEffect; import server.MapleStatInfo; import server.buffs.AbstractBuffClass; /** * * @author Maple */ public class LuminousBuff extends AbstractBuffClass { public LuminousBuff() { buffs = new int[]{ 27001004, //Mana Well 27101004, 27111004, //Shadow Shell 27111005, //Dusk Guard 27111006, //Photic Meditation // 27121005, //Dark Crescendo 27121006, //Arcane Pitch 27100003, //Black Blessing }; } @Override public boolean containsJob(int job) { return GameConstants.isLuminous(job); } @Override public void handleBuff(MapleStatEffect eff, int skill) { switch (skill) { case 27001004: // Mana Well eff.statups.put(MapleBuffStat.MP_R, eff.info.get(MapleStatInfo.indieMmpR)); break; case 27101004://booster eff.statups.put(MapleBuffStat.BOOSTER, eff.info.get(MapleStatInfo.x)); break; case 27111004: eff.info.put(MapleStatInfo.time, Integer.valueOf(2100000000)); eff.statups.put(MapleBuffStat.PRESSURE_VOID, Integer.valueOf(3)); break; case 27111005: // Dusk Guard eff.statups.put(MapleBuffStat.Dusk_Guard, eff.info.get(MapleStatInfo.mdd)); eff.statups.put(MapleBuffStat.SPIRIT_LINK, eff.info.get(MapleStatInfo.pad)); break; case 27111006: // Photic Meditation eff.statups.put(MapleBuffStat.ENHANCED_MATK, eff.info.get(MapleStatInfo.emad)); break; // case 27121005: // Dark Crescendo TODO: Count up GMS-Like // eff.info.put(MapleStatInfo.time, Integer.valueOf(180000)); // eff.statups.put(MapleBuffStat.DARK_CRESCENDO, eff.info.get(MapleStatInfo.x)); // break; case 27121006: // Arcane Pitch eff.statups.put(MapleBuffStat.IGNORE_DEF, eff.info.get(MapleStatInfo.x)); eff.statups.put(MapleBuffStat.FINALATTACK, eff.info.get(MapleStatInfo.y)); break; case 27100003: //Black Blessing //TODO break; default: System.out.println("Unhandled Buff: " + skill); break; } } }